//** github.com/euphoria-io/heim@v0.0.0-20191219050951-978c921063e6 **//

{{Types "CC-BY-4.0 MIT"}}

# Heim Licensing

All software in this repository is open source. Source code is offered
under the permissive MIT license. Other files, such as documentation,
art, and graphics, are offered under the CC-BY 4.0 license.

Please pay careful attention to the license that applies if you reuse or modify
any of these components.

## art, doc, and client/res

Files under the `art`, `doc`, and `client/res` directories are offered under
the terms of the [CC BY 4.0](http://creativecommons.org/licenses/by/4.0/)
license.  You'll find a copy in the `LICENSE` file in each of these
directories.

## everything else

The heim source code is licensed to the public under the terms of the MIT
license. See `LICENSE.mit` for details.
