COPYRIGHT:

Copyright (C) 1998-2002,2006-2012 Glenn Randers-Pehrson
                                  (glennrp at users.sf.net)
Portions copyright (C) 2005       Greg Roelofs

DISCLAIMERS:

The pngcrush computer program is supplied "AS IS".  The Author disclaims all
warranties, expressed or implied, including, without limitation, the
warranties of merchantability and of fitness for any purpose.  The
Author assumes no liability for direct, indirect, incidental, special,
exemplary, or consequential damages, which may result from the use of
the computer program, even if advised of the possibility of such damage.
There is no warranty against interference with your enjoyment of the
computer program or against infringement.  There is no warranty that my
efforts or the computer program will fulfill any of your particular purposes
or needs.  This computer program is provided with all faults, and the entire
risk of satisfactory quality, performance, accuracy, and effort is with
the user.

LICENSE:

Permission is hereby irrevocably granted to everyone to use, copy, modify,
and distribute this source code, or portions hereof, or executable programs
compiled from it, for any purpose, without payment of any fee, subject to
the following restrictions:

1. The origin of this source code must not be misrepresented.

2. Altered versions must be plainly marked as such and must not be
   misrepresented as being the original source.

3. This Copyright notice, disclaimer, and license may not be removed
   or altered from any source or altered source distribution.
