1. Source Code.
The "source code" for a work means the
preferred form of the work for making modi-
fications to it. "Object code" means any non-
source 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 program-
ming language, one that is widely used
among developers working in that language.
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 Stan-
dard 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, Correspond-
ing 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 automati-
cally from other parts of the Corresponding
Source.
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, un-
der 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 ap-
plicable 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