------------------------  Folding@home Software License ------------------------
Copyright 2001-2014. Stanford University. All Rights Reserved.

License Agreement:

Please carefully read the following terms and conditions before using
this software. Use of this software indicates acceptance of this license
agreement and disclaimer of all warranties.

Disclaimer of Warranty:

IN NO EVENT SHALL STANFORD UNIVERSITY BE LIABLE TO ANY PARTY FOR DIRECT,
INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING LOST
PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION,
EVEN IF STANFORD UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.

STANFORD UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE AND ACCOMPANYING
DOCUMENTATION PROVIDED HEREUNDER IS PROVIDED "AS IS". Folding@home HAS
NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR
MODIFICATIONS.

Restrictions:

You may use this software on a computer system only if you own the
system or have the written permission of the owner.

You may not alter the software or associated data files.

You may only use unmodified versions of Folding@home obtained through
authorized distributors to connect to the Folding@home servers. Use of
other software to connect to the Folding@home servers is strictly
prohibited. This prohibition includes 3rd party installers which
download directly from Stanford web sites, unless written permission is
granted from Stanford University.

Distribution of this software is prohibited. It may only be obtained by
downloading from Stanford's web site (http://folding.stanford.edu and
pages linked therein) or the web site of one of our commercial partners
(NVIDIA and AMD).
--------------------------------------------------------------------------------
