I've published the code for the first shmaht contract prototype implementing the concept of transfer burn: funding tokenized system development with ethers that are gradually unlocked when tokens are transferred and burnt.
Shmaht contract prototype code is published on Github and available under MIT license. I've used OpenZeppelin family of contracts as a foundation for development.
Transfer burn AltICO concept advantages: increased investor protection, alignment of incentives for developers and investors, guaranteed liquidity.
I've described the concept in more detail in my previous post.
Shmaht contract system consists of three contracts:
Notable Crowdsdale contract features
- Any token holder can burn tokens and withdraw ethers at the rate determined at the crowdsale
- Tokens can be burnt and withdrawn only after the end of the crowdsale
- Crowdsale participants are able to donate a part of ethers to developers. Donated ethers are immediately available for withdrawal by developers
- Ethers are transferred to the Vault contract instead of the developers' wallet.
Notable Token contract features
- When transferring tokens from one address to another part of the tokens is burned
- The number of burned tokens is determined by the function
getTransferBurnValueand decreases linearly over time from 10% to 0.1% over 100 days
- When withdrawing ethers from the crowdsale contract, an appropriate number of tokens are burned using the
Notable Vault contract features
- Shmaht contract developers do not have access to funds collected during the crowdsdale (excluding donations)
- Developers can withdraw a proportional number of ethers when tokens are burned during execution of transfer function