
Eiffel Forum License, version 1

Permission is hereby granted to use, copy, modify and/or distribute
this package, provided that:

  - copyright notices are retained unchanged

  - any distribution of this package, whether modified or not,
    includes this file

Permission is hereby also granted to distribute binary programs which
depend on this package, provided that:

  - if the binary program depends on a modified version of this
    package, you must publicly release the modified version of this
    package

THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT WARRANTY. ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE TO ANY PARTY FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES ARISING IN ANY WAY OUT OF THE USE OF THIS PACKAGE.

