	Azara, v2.7, copyright (C) 1993-2002 Wayne Boucher
	and Department of Biochemistry, University of Cambridge.

This is a license for Azara, v2.7.

This license is to be signed by you on behalf of your institution
(hereinafter referred to as the "LICENSEE"), and returned to
Wayne Boucher (hereinafter referred to as the "LICENSOR").
The computer program, including source code and documentation,
are hereinafter referred to as the "SOFTWARE".

Terms of the License

1.  A non-exclusive, non-transferable license is granted to the LICENSEE
to install and use the SOFTWARE on an appropriate computer system or systems
located at LICENSEE's institution to which the LICENSEE has authorized access.
Use of the SOFTWARE is restricted to LICENSEE and any collaborators at this
institution who have agreed to accept the terms of this license.

2.  The LICENSOR retains ownership of all materials (including magnetic tape,
unless provided by the LICENSEE) and SOFTWARE delivered to LICENSEE.  Any
modifications or derivative works based on the SOFTWARE are considered part
of the SOFTWARE and ownership thereof is retained by the LICENSOR, and are
to be made available to him upon request.

3.  The LICENSEE may make a reasonable number of copies of the SOFTWARE for
the purposes of backup, maintenance of the SOFTWARE, or development of
derivative works based on the SOFTWARE.  These additional copies will carry
the copyright notice and will be controlled by this license, and will be
destroyed by the LICENSEE upon termination of this license.

4.  The LICENSEE shall not use SOFTWARE for any purpose (research or
otherwise) that is supported by a "for profit" organization without prior
written authorization from the LICENSOR.

5.  The LICENSEE shall not disclose in any form either the delivered SOFTWARE
or any modifications or derivative works based on the SOFTWARE to third
parties without prior written authorization from the LICENSOR.

6.  If the LICENSEE receives a request to furnish all or any portion of the
SOFTWARE to any third party, he will not fulfill such a request, and will
refer it in writing to the LICENSOR.

7.  The LICENSEE agrees that the SOFTWARE is furnished on an "as is" basis,
and that the LICENSOR in no way warrants the SOFTWARE or any of its results
and is in no way liable for any use LICENSEE makes of the SOFTWARE.

8.  LICENSEE agrees that any reports or publications of results obtained with
the SOFTWARE will acknowledge its use by an appropriate citation, such as

	"Data were processed [in part] using the Azara suite of programs,
	provided by Wayne Boucher and the Department of Biochemistry,
	University of Cambridge.  The code may be obtained via anonymous
	ftp to www.bio.cam.ac.uk in the directory ~ftp/pub/azara."

9.  The terms of this license shall not be limited in time.

To evidence your acceptance of the terms and conditions set forth above,
please sign in the indicated space and return this letter to the LICENSOR.


Wayne Boucher



_________________________  Date



_________________________________________________________________ Signature



_________________________________________________________________ Name



_________________________________________________________________ Institution



_________________________________________________________________ Address



_________________________________________________________________ Email
