Folding@Home distributed computing client

Copyright 2001-2009. 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 
NOTLIMITED 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, or de-compile or 
reverse engineer the software.

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 (Sony, 
NVIDIA, and ATI).
