MONSTERS INC $MIKE
What is $MIKE?
Overview
The MIKE token contract integrates ERC-20 standard functionalities with advanced features like dividend distribution in $INC tokens and liquidity pool interactions through the Pusex V2 router. It's designed to reward users for transactions and provide a sustainable ecosystem for the token.
Public and External Functions
These functions are accessible by all users and external contracts:
transfer(address recipient, uint256 amount): Transfers tokens from the caller's account to the recipient. This function may also trigger a swap and liquidity provision mechanism if certain conditions are met, distributing $INC rewards as part of the transaction.
approve(address spender, uint256 amount): Sets amount as the allowance of spender over the caller's tokens. This is standard ERC-20 functionality allowing third-party spending.
transferFrom(address sender, address recipient, uint256 amount): Moves amount tokens from sender to recipient using the allowance mechanism. This function is used in conjunction with approve.
increaseAllowance(address spender, uint256 addedValue) and decreaseAllowance(address spender, uint256 subtractedValue): Safely increase or decrease the allowance without the risk of the double-spend issue.
claim(): Allows users to claim their accumulated $INC rewards, facilitating the distribution of dividends.
Owner-Only Functions
These functions are restricted to the contract owner:
setDistributor(address _distributor, bool migrate): Sets or migrates to a new dividend distributor contract. This is critical for managing the rewards mechanism and possibly upgrading it.
setTaxCollector(address wallet): Designates an address as the tax collector, which could be used for collecting transaction fees or other tax-related functionalities.
setPair(address pair, bool value): Updates liquidity pool pairs for trading and rewards distribution. Essential for maintaining compatibility with DEXes and ensuring liquidity.
setSplit(uint256 _split): Adjusts the distribution split between different operational needs, like marketing, development, or rewards, ensuring flexibility in fund allocation.
excludeFromFees(address account, bool excluded): Excludes specific addresses from transaction fees, commonly used for contracts, owner addresses, or strategic partners to facilitate operations.
setDividendExempt(address holder, bool exempt): Excludes or includes addresses in dividend distributions, allowing for strategic adjustments to the rewards mechanism.
launch(): Activates trading, enabling transactions on the network. This function is critical for controlling the initial market conditions.
withdrawTax(): Allows the owner or designated tax collector to withdraw collected taxes or fees, providing liquidity for operations or rewards.
Internal Functions
Internal functions are only accessible within the contract itself and by derived contracts:
_transfer(address sender, address recipient, uint256 amount): Contains the logic for transferring tokens, including checks, balances updates, and event emitting. It's overridden to include reward distribution and swap mechanisms.
swapBack(): Converts a portion of the tokens in the contract to $INC tokens for rewards. This function is called internally during transfers under certain conditions.
swapTokensForEth(uint256 tokenAmount): Swaps MIKE tokens for ETH within the contract, usually part of the liquidity provision process or preparing ETH for $INC token purchase.
Private Functions
These functions are only accessible within the contract and are not visible to external contracts or users:
_beforeTokenTransfer(address from, address to): Hook that's called before any transfer of tokens. This can include additional checks or operations that need to be performed before the actual token transfer, such as dividend distribution logic or anti-whale mechanisms.
Conclusion
This documentation provides a detailed overview of the functionalities embedded within the MIKE token contract. Each function plays a role in ensuring the contract operates efficiently, from facilitating user transactions and reward distributions to managing contract parameters and ensuring liquidity. For a full understanding and verification of the contract's behavior, a line-by-line review and testing in a secure environment are recommended.
Last updated