1. Source Code.
The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any
form of a work.
A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the
case of interfaces specified for a particular programming language, one that is widely used among developers working in that
The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the
normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable
use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to
the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window
system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce
the work, or an object code interpreter used to run it.
The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an
executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not
include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified
in performing those activities but which are not part of the work. For example, Corresponding Source includes interface
definition files associated with source files for the work, and the source code for shared libraries and dynamically linked
subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between
those subprograms and other parts of the work.
The Corresponding Source need not include anything that users can regenerate automatically from other parts of the
The Corresponding Source for a work in source code form is that same work.
2. Basic Permissions.
All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the
stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output
from running a covered work is covered by this License only if the output, given its content, constitutes a covered work.
This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and
propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You
may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide
you with facilities for running those works, provided that you comply with the terms of this License in conveying all material
for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on
your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material
outside their relationship with you.
Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed;
section 10 makes it unnecessary.
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations
under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting
circumvention of such measures.
When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent
such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any
intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties'
legal rights to forbid circumvention of technological measures.
4. Conveying Verbatim Copies.
You may convey 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; keep intact all notices stating that this
License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence
of any warranty; and give all recipients a copy of this License along with the Program.
You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a
6. Conveying Modified Source Versions.
You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code
under the terms of section 4, provided that you also meet all of these conditions:
a) The work must carry prominent notices stating that you modified it, and giving a relevant date.
b) The work must carry prominent notices stating that it is released under this License and any conditions added under
section 7. This requirement modifies the requirement in section 4 to "keep intact all notices".
c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This
License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its
parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it
does not invalidate such permission if you have separately received it.
d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has
interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so.