Contract Overview
Balance:
0 MOVR
MOVR Value:
$0.00
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Contract Name:
Minter
Compiler Version
v0.8.0+commit.c7dfd78e
Contract Source Code (Solidity)
/** *Submitted for verification at moonriver.moonscan.io on 2021-11-01 */ pragma solidity ^0.8.0; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } library SafeMath { function mul(uint256 a, uint256 b) internal pure returns (uint256 c) { if (a == 0) { return 0; } c = a * b; assert(c / a == b); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { assert(b <= a); return a - b; } function add(uint256 a, uint256 b) internal pure returns (uint256 c) { c = a + b; assert(c >= a); return c; } } interface TOKEN { function mint(address to, uint256 amount) external; } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } contract Minter is Ownable { using SafeMath for uint256; bool private initialized = false; //syncs minter and vault modifier hasUpdated { if (remainingSupply > 0 && sharesSupply > 0) { uint256 secondsPassed = SafeMath.sub(block.timestamp, lastMintTime); uint256 mintAmount = secondsPassed.mul(remainingSupply).div(dailyRate); if (mintAmount > remainingSupply) { mintAmount = remainingSupply; } profitPerShare = SafeMath.add(profitPerShare, (mintAmount * mintMagnitude) / sharesSupply); remainingSupply = remainingSupply.sub(mintAmount); lastMintTime = block.timestamp; } _; } modifier onlyPositiveBal { require(myMintShare() > 0); _; } event onAddShares( address indexed farmAddress, uint256 shares, uint256 timestamp ); event onRemoveShares( address indexed farmAddress, uint256 shares, uint256 timestamp ); event onMint( address indexed farmAddress, uint256 tokensMinted ); uint256 constant private mintMagnitude = 2 ** 64; uint32 constant private dailyRate = 96000000; //0.09% of the remainingSupply a day mapping(address => uint256) public sharesBalanceLedger; mapping(address => int256) private mintedBy; uint256 public remainingSupply = 180*1e9*1e18; //200 bil max supply - 20 bil pre-minted (5% (10 bil) airdrop, 5% (10 bil) initial liquidity) uint256 public lastMintTime = block.timestamp; uint256 private sharesSupply = 0; uint256 private profitPerShare = 0; TOKEN bep20; fallback() external payable { revert(); } receive() external payable { revert(); } function mint() hasUpdated onlyPositiveBal external returns(uint256){ address _contractAddress = msg.sender; uint256 _mintAmount = myMintShare(); mintedBy[_contractAddress] += (int256) (_mintAmount * mintMagnitude); bep20.mint(_contractAddress, _mintAmount); emit onMint(_contractAddress, _mintAmount); return _mintAmount; } function addSharesFor(address _contractAddress, uint256 _shares) hasUpdated onlyOwner public returns (uint256) { return _addShares(_contractAddress, _shares); } function _addShares(address _contractAddress, uint256 _amountOfShares) private returns(uint256) { require(_amountOfShares > 0 && _amountOfShares.add(sharesSupply) > sharesSupply); sharesSupply = sharesSupply.add(_amountOfShares); sharesBalanceLedger[_contractAddress] = sharesBalanceLedger[_contractAddress].add(_amountOfShares); int256 _updatedMintedBy = (int256) (profitPerShare * _amountOfShares); mintedBy[_contractAddress] += _updatedMintedBy; emit onAddShares(_contractAddress, _amountOfShares, block.timestamp); return _amountOfShares; } function removeSharesFor(address _contractAddress, uint256 _shares) hasUpdated onlyOwner public { require(_shares > 0 && _shares <= sharesBalanceLedger[_contractAddress]); sharesSupply = sharesSupply.sub(_shares); sharesBalanceLedger[_contractAddress] = sharesBalanceLedger[_contractAddress].sub(_shares); int256 _updatedPayouts = (int256) (profitPerShare * _shares); mintedBy[_contractAddress] -= _updatedPayouts; emit onRemoveShares(_contractAddress, _shares, block.timestamp); } function totalSupply() public view returns(uint256) { return sharesSupply; } function myShares() public view returns (uint256) { address _contractAddress = msg.sender; return sharesOf(_contractAddress); } function myEstimatedMintShare() public view returns (uint256) { address _contractAddress = msg.sender; return estimateMintShareOf(_contractAddress); } function estimateMintShareOf(address _contractAddress) public view returns (uint256) { uint256 _profitPerShare = profitPerShare; if (remainingSupply > 0) { uint256 secondsPassed = SafeMath.sub(block.timestamp, lastMintTime); uint256 mintAmount = secondsPassed.mul(remainingSupply).div(dailyRate); if (mintAmount > remainingSupply) { mintAmount = remainingSupply; } _profitPerShare = SafeMath.add(_profitPerShare, (mintAmount * mintMagnitude) / sharesSupply); } return (uint256) ((int256) (_profitPerShare * sharesBalanceLedger[_contractAddress]) - mintedBy[_contractAddress]) / mintMagnitude; } function myMintShare() public view returns (uint256) { address _contractAddress = msg.sender; return mintShareOf(_contractAddress) ; } function mintShareOf(address _contractAddress) public view returns (uint256) { return (uint256) ((int256) (profitPerShare * sharesBalanceLedger[_contractAddress]) - mintedBy[_contractAddress]) / mintMagnitude; } function sharesOf(address _contractAddress) public view returns (uint256) { return sharesBalanceLedger[_contractAddress]; } function setTokenAfterDeploy(address _tokenAddress) onlyOwner public returns (address){ require(initialized == false, 'A token has already been set for this contract.'); bep20 = TOKEN(address(_tokenAddress)); //pad initialized = true; return _tokenAddress; } }
[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"farmAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"onAddShares","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"farmAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokensMinted","type":"uint256"}],"name":"onMint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"farmAddress","type":"address"},{"indexed":false,"internalType":"uint256","name":"shares","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"onRemoveShares","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"uint256","name":"_shares","type":"uint256"}],"name":"addSharesFor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"}],"name":"estimateMintShareOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastMintTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"mint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"}],"name":"mintShareOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"myEstimatedMintShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"myMintShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"myShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"remainingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"},{"internalType":"uint256","name":"_shares","type":"uint256"}],"name":"removeSharesFor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_tokenAddress","type":"address"}],"name":"setTokenAfterDeploy","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"sharesBalanceLedger","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_contractAddress","type":"address"}],"name":"sharesOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405260008060146101000a81548160ff0219169083151502179055506c02459c82a05e9a2ad320000000600355426004556000600555600060065534801561004957600080fd5b5061006661005b61006b60201b60201c565b61007360201b60201c565b610137565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b61193e806101466000396000f3fe6080604052600436106100f75760003560e01c8063b937a5b31161008a578063e7a965f211610059578063e7a965f214610352578063f2fde38b1461038f578063f5eb42dc146103b8578063f8aefefc146103f557610101565b8063b937a5b314610294578063cf29ea1f146102bf578063d0d21604146102ea578063da0239a61461032757610101565b8063594d9302116100c6578063594d9302146101d65780638da5cb5b146102135780639d4635201461023e5780639e7a47571461026957610101565b80631249c58b1461010657806318160ddd1461013157806323d1cd1d1461015c5780635454dc501461019957610101565b3661010157600080fd5b600080fd5b34801561011257600080fd5b5061011b61041e565b60405161012891906115a4565b60405180910390f35b34801561013d57600080fd5b50610146610659565b60405161015391906115a4565b60405180910390f35b34801561016857600080fd5b50610183600480360381019061017e9190611371565b610663565b60405161019091906115a4565b60405180910390f35b3480156101a557600080fd5b506101c060048036038101906101bb9190611371565b610717565b6040516101cd91906115a4565b60405180910390f35b3480156101e257600080fd5b506101fd60048036038101906101f89190611371565b610860565b60405161020a9190611500565b60405180910390f35b34801561021f57600080fd5b50610228610998565b6040516102359190611500565b60405180910390f35b34801561024a57600080fd5b506102536109c1565b60405161026091906115a4565b60405180910390f35b34801561027557600080fd5b5061027e6109c7565b60405161028b91906115a4565b60405180910390f35b3480156102a057600080fd5b506102a96109dc565b6040516102b691906115a4565b60405180910390f35b3480156102cb57600080fd5b506102d46109f1565b6040516102e191906115a4565b60405180910390f35b3480156102f657600080fd5b50610311600480360381019061030c9190611371565b610a06565b60405161031e91906115a4565b60405180910390f35b34801561033357600080fd5b5061033c610a1e565b60405161034991906115a4565b60405180910390f35b34801561035e57600080fd5b506103796004803603810190610374919061139a565b610a24565b60405161038691906115a4565b60405180910390f35b34801561039b57600080fd5b506103b660048036038101906103b19190611371565b610b79565b005b3480156103c457600080fd5b506103df60048036038101906103da9190611371565b610c71565b6040516103ec91906115a4565b60405180910390f35b34801561040157600080fd5b5061041c6004803603810190610417919061139a565b610cba565b005b60008060035411801561043357506000600554115b156104e557600061044642600454610fc1565b9050600061047b6305b8d80063ffffffff1661046d6003548561100e90919063ffffffff16565b61107790919063ffffffff16565b905060035481111561048d5760035490505b6104ba60065460055468010000000000000000846104ab9190611714565b6104b591906116e3565b61108d565b6006819055506104d581600354610fc190919063ffffffff16565b6003819055504260048190555050505b60006104ef6109dc565b116104f957600080fd5b600033905060006105086109dc565b9050680100000000000000008161051f9190611714565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461056d91906115f9565b92505081905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166340c10f1983836040518363ffffffff1660e01b81526004016105d192919061151b565b600060405180830381600087803b1580156105eb57600080fd5b505af11580156105ff573d6000803e3d6000fd5b505050508173ffffffffffffffffffffffffffffffffffffffff167f0f632fd389970cd3b065f85dce83c297194646c14c7ef2e302cb3307b04c77208260405161064991906115a4565b60405180910390a2809250505090565b6000600554905090565b600068010000000000000000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546006546106fc9190611714565b610706919061176e565b61071091906116e3565b9050919050565b6000806006549050600060035411156107af57600061073842600454610fc1565b9050600061076d6305b8d80063ffffffff1661075f6003548561100e90919063ffffffff16565b61107790919063ffffffff16565b905060035481111561077f5760035490505b6107aa83600554680100000000000000008461079b9190611714565b6107a591906116e3565b61108d565b925050505b68010000000000000000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836108449190611714565b61084e919061176e565b61085891906116e3565b915050919050565b600061086a6110da565b73ffffffffffffffffffffffffffffffffffffffff16610888610998565b73ffffffffffffffffffffffffffffffffffffffff16146108de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d590611584565b60405180910390fd5b60001515600060149054906101000a900460ff16151514610934576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161092b90611564565b60405180910390fd5b81600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600060146101000a81548160ff021916908315150217905550819050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60045481565b6000803390506109d681610c71565b91505090565b6000803390506109eb81610663565b91505090565b600080339050610a0081610717565b91505090565b60016020528060005260406000206000915090505481565b60035481565b600080600354118015610a3957506000600554115b15610aeb576000610a4c42600454610fc1565b90506000610a816305b8d80063ffffffff16610a736003548561100e90919063ffffffff16565b61107790919063ffffffff16565b9050600354811115610a935760035490505b610ac06006546005546801000000000000000084610ab19190611714565b610abb91906116e3565b61108d565b600681905550610adb81600354610fc190919063ffffffff16565b6003819055504260048190555050505b610af36110da565b73ffffffffffffffffffffffffffffffffffffffff16610b11610998565b73ffffffffffffffffffffffffffffffffffffffff1614610b67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5e90611584565b60405180910390fd5b610b7183836110e2565b905092915050565b610b816110da565b73ffffffffffffffffffffffffffffffffffffffff16610b9f610998565b73ffffffffffffffffffffffffffffffffffffffff1614610bf5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bec90611584565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610c65576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5c90611544565b60405180910390fd5b610c6e81611283565b50565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6000600354118015610cce57506000600554115b15610d80576000610ce142600454610fc1565b90506000610d166305b8d80063ffffffff16610d086003548561100e90919063ffffffff16565b61107790919063ffffffff16565b9050600354811115610d285760035490505b610d556006546005546801000000000000000084610d469190611714565b610d5091906116e3565b61108d565b600681905550610d7081600354610fc190919063ffffffff16565b6003819055504260048190555050505b610d886110da565b73ffffffffffffffffffffffffffffffffffffffff16610da6610998565b73ffffffffffffffffffffffffffffffffffffffff1614610dfc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610df390611584565b60405180910390fd5b600081118015610e4b5750600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548111155b610e5457600080fd5b610e6981600554610fc190919063ffffffff16565b600581905550610ec181600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610fc190919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600081600654610f149190611714565b905080600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f65919061176e565b925050819055508273ffffffffffffffffffffffffffffffffffffffff167f86b79d04ba4ba4313a5f432df60c0caf9ee3ceeb353e83437e421e66fdaa9cf48342604051610fb49291906115bf565b60405180910390a2505050565b600082821115610ffa577f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b81836110069190611802565b905092915050565b6000808314156110215760009050611071565b818361102d9190611714565b905081838261103c91906116e3565b14611070577f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b5b92915050565b6000818361108591906116e3565b905092915050565b6000818361109b919061168d565b9050828110156110d4577f4e487b7100000000000000000000000000000000000000000000000000000000600052600160045260246000fd5b92915050565b600033905090565b6000808211801561110857506005546111066005548461108d90919063ffffffff16565b115b61111157600080fd5b6111268260055461108d90919063ffffffff16565b60058190555061117e82600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461108d90919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000826006546111d19190611714565b905080600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461122291906115f9565b925050819055508373ffffffffffffffffffffffffffffffffffffffff167f47c76810fd0974f74ad4cf16225531ab0d4b715d03f69f5e0c3854908ef88dbf84426040516112719291906115bf565b60405180910390a28291505092915050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600081359050611356816118da565b92915050565b60008135905061136b816118f1565b92915050565b60006020828403121561138357600080fd5b600061139184828501611347565b91505092915050565b600080604083850312156113ad57600080fd5b60006113bb85828601611347565b92505060206113cc8582860161135c565b9150509250929050565b6113df81611836565b82525050565b60006113f26026836115e8565b91507f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008301527f64647265737300000000000000000000000000000000000000000000000000006020830152604082019050919050565b6000611458602f836115e8565b91507f4120746f6b656e2068617320616c7265616479206265656e2073657420666f7260008301527f207468697320636f6e74726163742e00000000000000000000000000000000006020830152604082019050919050565b60006114be6020836115e8565b91507f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726000830152602082019050919050565b6114fa81611872565b82525050565b600060208201905061151560008301846113d6565b92915050565b600060408201905061153060008301856113d6565b61153d60208301846114f1565b9392505050565b6000602082019050818103600083015261155d816113e5565b9050919050565b6000602082019050818103600083015261157d8161144b565b9050919050565b6000602082019050818103600083015261159d816114b1565b9050919050565b60006020820190506115b960008301846114f1565b92915050565b60006040820190506115d460008301856114f1565b6115e160208301846114f1565b9392505050565b600082825260208201905092915050565b600061160482611848565b915061160f83611848565b9250817f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0383136000831215161561164a5761164961187c565b5b817f80000000000000000000000000000000000000000000000000000000000000000383126000831216156116825761168161187c565b5b828201905092915050565b600061169882611872565b91506116a383611872565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156116d8576116d761187c565b5b828201905092915050565b60006116ee82611872565b91506116f983611872565b925082611709576117086118ab565b5b828204905092915050565b600061171f82611872565b915061172a83611872565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156117635761176261187c565b5b828202905092915050565b600061177982611848565b915061178483611848565b9250827f8000000000000000000000000000000000000000000000000000000000000000018212600084121516156117bf576117be61187c565b5b827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0182136000841216156117f7576117f661187c565b5b828203905092915050565b600061180d82611872565b915061181883611872565b92508282101561182b5761182a61187c565b5b828203905092915050565b600061184182611852565b9050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6118e381611836565b81146118ee57600080fd5b50565b6118fa81611872565b811461190557600080fd5b5056fea2646970667358221220e04e28756ea65dff29c4f1daf5c82ae9b3aa8f34c55ecb31e284c5a5a0c435fc64736f6c63430008000033
Deployed ByteCode Sourcemap
2374:5626:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4206:8;;;2374:5626;4144:8;;;4230:383;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5985:90;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7320:225;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6422:725;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7698:299;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1360:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3946:46;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6083:150;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7155:157;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6241:173;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3687:54;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3800:45;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4621:174;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1815:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7553:137;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5431:546;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4230:383;4290:7;2562:1;2544:15;;:19;:39;;;;;2582:1;2567:12;;:16;2544:39;2540:535;;;2598:21;2622:43;2635:15;2652:12;;2622;:43::i;:::-;2598:67;;2678:18;2699:49;3633:8;2699:49;;:34;2717:15;;2699:13;:17;;:34;;;;:::i;:::-;:38;;:49;;;;:::i;:::-;2678:70;;2780:15;;2767:10;:28;2763:91;;;2825:15;;2812:28;;2763:91;2885:73;2898:14;;2945:12;;3581:7;2915:10;:26;;;;:::i;:::-;2914:43;;;;:::i;:::-;2885:12;:73::i;:::-;2868:14;:90;;;;2989:31;3009:10;2989:15;;:19;;:31;;;;:::i;:::-;2971:15;:49;;;;3048:15;3033:12;:30;;;;2540:535;;;3162:1:::1;3146:13;:11;:13::i;:::-;:17;3138:26;;;::::0;::::1;;4309:24:::2;4336:10;4309:37;;4357:19;4379:13;:11;:13::i;:::-;4357:35;;3581:7;4443:11;:27;;;;:::i;:::-;4403:8;:26;4412:16;4403:26;;;;;;;;;;;;;;;;:68;;;;;;;:::i;:::-;;;;;;;;4482:5;;;;;;;;;;;:10;;;4493:16;4511:11;4482:41;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::2;;;;;;;;;;;;::::0;::::2;;;;;;;;;4546:16;4539:37;;;4564:11;4539:37;;;;;;:::i;:::-;;;;;;;;4594:11;4587:18;;;;4230:383:::0;:::o;5985:90::-;6028:7;6055:12;;6048:19;;5985:90;:::o;7320:225::-;7388:7;3581;7494:8;:26;7503:16;7494:26;;;;;;;;;;;;;;;;7453:19;:37;7473:16;7453:37;;;;;;;;;;;;;;;;7436:14;;:54;;;;:::i;:::-;7426:94;;;;:::i;:::-;7415:122;;;;:::i;:::-;7408:129;;7320:225;;;:::o;6422:725::-;6498:7;6518:23;6544:14;;6518:40;;6593:1;6575:15;;:19;6571:426;;;6611:21;6635:43;6648:15;6665:12;;6635;:43::i;:::-;6611:67;;6695:18;6716:49;3633:8;6716:49;;:34;6734:15;;6716:13;:17;;:34;;;;:::i;:::-;:38;;:49;;;;:::i;:::-;6695:70;;6799:15;;6786:10;:28;6782:97;;;6848:15;;6835:28;;6782:97;6911:74;6924:15;6972:12;;3581:7;6942:10;:26;;;;:::i;:::-;6941:43;;;;:::i;:::-;6911:12;:74::i;:::-;6893:92;;6571:426;;;3581:7;7096:8;:26;7105:16;7096:26;;;;;;;;;;;;;;;;7055:19;:37;7075:16;7055:37;;;;;;;;;;;;;;;;7037:15;:55;;;;:::i;:::-;7027:95;;;;:::i;:::-;7016:123;;;;:::i;:::-;7009:130;;;6422:725;;;:::o;7698:299::-;7776:7;1591:12;:10;:12::i;:::-;1580:23;;:7;:5;:7::i;:::-;:23;;;1572:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7818:5:::1;7803:20;;:11;;;;;;;;;;;:20;;;7795:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;7908:13;7886:5;;:37;;;;;;;;;;;;;;;;;;7954:4;7940:11;;:18;;;;;;;;;;;;;;;;;;7976:13;7969:20;;7698:299:::0;;;:::o;1360:87::-;1406:7;1433:6;;;;;;;;;;;1426:13;;1360:87;:::o;3946:46::-;;;;:::o;6083:150::-;6124:7;6144:24;6171:10;6144:37;;6199:26;6208:16;6199:8;:26::i;:::-;6192:33;;;6083:150;:::o;7155:157::-;7199:7;7219:24;7246:10;7219:37;;7274:29;7286:16;7274:11;:29::i;:::-;7267:36;;;7155:157;:::o;6241:173::-;6294:7;6314:24;6341:10;6314:37;;6369;6389:16;6369:19;:37::i;:::-;6362:44;;;6241:173;:::o;3687:54::-;;;;;;;;;;;;;;;;;:::o;3800:45::-;;;;:::o;4621:174::-;4723:7;2562:1;2544:15;;:19;:39;;;;;2582:1;2567:12;;:16;2544:39;2540:535;;;2598:21;2622:43;2635:15;2652:12;;2622;:43::i;:::-;2598:67;;2678:18;2699:49;3633:8;2699:49;;:34;2717:15;;2699:13;:17;;:34;;;;:::i;:::-;:38;;:49;;;;:::i;:::-;2678:70;;2780:15;;2767:10;:28;2763:91;;;2825:15;;2812:28;;2763:91;2885:73;2898:14;;2945:12;;3581:7;2915:10;:26;;;;:::i;:::-;2914:43;;;;:::i;:::-;2885:12;:73::i;:::-;2868:14;:90;;;;2989:31;3009:10;2989:15;;:19;;:31;;;;:::i;:::-;2971:15;:49;;;;3048:15;3033:12;:30;;;;2540:535;;;1591:12:::1;:10;:12::i;:::-;1580:23;;:7;:5;:7::i;:::-;:23;;;1572:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4750:37:::2;4761:16;4779:7;4750:10;:37::i;:::-;4743:44;;4621:174:::0;;;;:::o;1815:201::-;1591:12;:10;:12::i;:::-;1580:23;;:7;:5;:7::i;:::-;:23;;;1572:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1924:1:::1;1904:22;;:8;:22;;;;1896:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;1980:28;1999:8;1980:18;:28::i;:::-;1815:201:::0;:::o;7553:137::-;7618:7;7645:19;:37;7665:16;7645:37;;;;;;;;;;;;;;;;7638:44;;7553:137;;;:::o;5431:546::-;2562:1;2544:15;;:19;:39;;;;;2582:1;2567:12;;:16;2544:39;2540:535;;;2598:21;2622:43;2635:15;2652:12;;2622;:43::i;:::-;2598:67;;2678:18;2699:49;3633:8;2699:49;;:34;2717:15;;2699:13;:17;;:34;;;;:::i;:::-;:38;;:49;;;;:::i;:::-;2678:70;;2780:15;;2767:10;:28;2763:91;;;2825:15;;2812:28;;2763:91;2885:73;2898:14;;2945:12;;3581:7;2915:10;:26;;;;:::i;:::-;2914:43;;;;:::i;:::-;2885:12;:73::i;:::-;2868:14;:90;;;;2989:31;3009:10;2989:15;;:19;;:31;;;;:::i;:::-;2971:15;:49;;;;3048:15;3033:12;:30;;;;2540:535;;;1591:12:::1;:10;:12::i;:::-;1580:23;;:7;:5;:7::i;:::-;:23;;;1572:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5556:1:::2;5546:7;:11;:63;;;;;5572:19;:37;5592:16;5572:37;;;;;;;;;;;;;;;;5561:7;:48;;5546:63;5538:72;;;::::0;::::2;;5638:25;5655:7;5638:12;;:16;;:25;;;;:::i;:::-;5623:12;:40;;;;5714:50;5756:7;5714:19;:37;5734:16;5714:37;;;;;;;;;;;;;;;;:41;;:50;;;;:::i;:::-;5674:19;:37;5694:16;5674:37;;;;;;;;;;;;;;;:90;;;;5777:22;5829:7;5812:14;;:24;;;;:::i;:::-;5777:60;;5878:15;5848:8;:26;5857:16;5848:26;;;;;;;;;;;;;;;;:45;;;;;;;:::i;:::-;;;;;;;;5926:16;5911:58;;;5944:7;5953:15;5911:58;;;;;;;:::i;:::-;;;;;;;;1651:1;5431:546:::0;;:::o;598:119::-;656:7;686:1;681;:6;;674:14;;;;;;;;;;;;708:1;704;:5;;;;:::i;:::-;697:12;;598:119;;;;:::o;298:188::-;356:9;385:1;380;:6;376:41;;;406:1;399:8;;;;376:41;433:1;429;:5;;;;:::i;:::-;425:9;;459:1;454;450;:5;;;;:::i;:::-;:10;443:18;;;;;;;;;;;;298:188;;;;;:::o;494:96::-;552:7;581:1;577;:5;;;;:::i;:::-;570:12;;494:96;;;;:::o;725:135::-;783:9;811:1;807;:5;;;;:::i;:::-;803:9;;833:1;828;:6;;821:14;;;;;;;;;;;;725:135;;;;:::o;60:98::-;113:7;140:10;133:17;;60:98;:::o;4803:620::-;4890:7;4936:1;4918:15;:19;:71;;;;;4977:12;;4941:33;4961:12;;4941:15;:19;;:33;;;;:::i;:::-;:48;4918:71;4910:80;;;;;;5018:33;5035:15;5018:12;;:16;;:33;;;;:::i;:::-;5003:12;:48;;;;5102:58;5144:15;5102:19;:37;5122:16;5102:37;;;;;;;;;;;;;;;;:41;;:58;;;;:::i;:::-;5062:19;:37;5082:16;5062:37;;;;;;;;;;;;;;;:98;;;;5173:23;5226:15;5209:14;;:32;;;;:::i;:::-;5173:69;;5283:16;5253:8;:26;5262:16;5253:26;;;;;;;;;;;;;;;;:46;;;;;;;:::i;:::-;;;;;;;;5329:16;5317:63;;;5347:15;5364;5317:63;;;;;;;:::i;:::-;;;;;;;;5400:15;5393:22;;;4803:620;;;;:::o;2176:191::-;2250:16;2269:6;;;;;;;;;;;2250:25;;2295:8;2286:6;;:17;;;;;;;;;;;;;;;;;;2350:8;2319:40;;2340:8;2319:40;;;;;;;;;;;;2176:191;;:::o;7:139:1:-;;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:262::-;;405:2;393:9;384:7;380:23;376:32;373:2;;;421:1;418;411:12;373:2;464:1;489:53;534:7;525:6;514:9;510:22;489:53;:::i;:::-;479:63;;435:117;363:196;;;;:::o;565:407::-;;;690:2;678:9;669:7;665:23;661:32;658:2;;;706:1;703;696:12;658:2;749:1;774:53;819:7;810:6;799:9;795:22;774:53;:::i;:::-;764:63;;720:117;876:2;902:53;947:7;938:6;927:9;923:22;902:53;:::i;:::-;892:63;;847:118;648:324;;;;;:::o;978:118::-;1065:24;1083:5;1065:24;:::i;:::-;1060:3;1053:37;1043:53;;:::o;1102:370::-;;1265:67;1329:2;1324:3;1265:67;:::i;:::-;1258:74;;1362:34;1358:1;1353:3;1349:11;1342:55;1428:8;1423:2;1418:3;1414:12;1407:30;1463:2;1458:3;1454:12;1447:19;;1248:224;;;:::o;1478:379::-;;1641:67;1705:2;1700:3;1641:67;:::i;:::-;1634:74;;1738:34;1734:1;1729:3;1725:11;1718:55;1804:17;1799:2;1794:3;1790:12;1783:39;1848:2;1843:3;1839:12;1832:19;;1624:233;;;:::o;1863:330::-;;2026:67;2090:2;2085:3;2026:67;:::i;:::-;2019:74;;2123:34;2119:1;2114:3;2110:11;2103:55;2184:2;2179:3;2175:12;2168:19;;2009:184;;;:::o;2199:118::-;2286:24;2304:5;2286:24;:::i;:::-;2281:3;2274:37;2264:53;;:::o;2323:222::-;;2454:2;2443:9;2439:18;2431:26;;2467:71;2535:1;2524:9;2520:17;2511:6;2467:71;:::i;:::-;2421:124;;;;:::o;2551:332::-;;2710:2;2699:9;2695:18;2687:26;;2723:71;2791:1;2780:9;2776:17;2767:6;2723:71;:::i;:::-;2804:72;2872:2;2861:9;2857:18;2848:6;2804:72;:::i;:::-;2677:206;;;;;:::o;2889:419::-;;3093:2;3082:9;3078:18;3070:26;;3142:9;3136:4;3132:20;3128:1;3117:9;3113:17;3106:47;3170:131;3296:4;3170:131;:::i;:::-;3162:139;;3060:248;;;:::o;3314:419::-;;3518:2;3507:9;3503:18;3495:26;;3567:9;3561:4;3557:20;3553:1;3542:9;3538:17;3531:47;3595:131;3721:4;3595:131;:::i;:::-;3587:139;;3485:248;;;:::o;3739:419::-;;3943:2;3932:9;3928:18;3920:26;;3992:9;3986:4;3982:20;3978:1;3967:9;3963:17;3956:47;4020:131;4146:4;4020:131;:::i;:::-;4012:139;;3910:248;;;:::o;4164:222::-;;4295:2;4284:9;4280:18;4272:26;;4308:71;4376:1;4365:9;4361:17;4352:6;4308:71;:::i;:::-;4262:124;;;;:::o;4392:332::-;;4551:2;4540:9;4536:18;4528:26;;4564:71;4632:1;4621:9;4617:17;4608:6;4564:71;:::i;:::-;4645:72;4713:2;4702:9;4698:18;4689:6;4645:72;:::i;:::-;4518:206;;;;;:::o;4730:169::-;;4848:6;4843:3;4836:19;4888:4;4883:3;4879:14;4864:29;;4826:73;;;;:::o;4905:525::-;;4963:19;4980:1;4963:19;:::i;:::-;4958:24;;4996:19;5013:1;4996:19;:::i;:::-;4991:24;;5184:1;5116:66;5112:74;5109:1;5105:82;5100:1;5097;5093:9;5086:17;5082:106;5079:2;;;5191:18;;:::i;:::-;5079:2;5371:1;5303:66;5299:74;5296:1;5292:82;5288:1;5285;5281:9;5277:98;5274:2;;;5378:18;;:::i;:::-;5274:2;5422:1;5419;5415:9;5408:16;;4948:482;;;;:::o;5436:305::-;;5495:20;5513:1;5495:20;:::i;:::-;5490:25;;5529:20;5547:1;5529:20;:::i;:::-;5524:25;;5683:1;5615:66;5611:74;5608:1;5605:81;5602:2;;;5689:18;;:::i;:::-;5602:2;5733:1;5730;5726:9;5719:16;;5480:261;;;;:::o;5747:185::-;;5804:20;5822:1;5804:20;:::i;:::-;5799:25;;5838:20;5856:1;5838:20;:::i;:::-;5833:25;;5877:1;5867:2;;5882:18;;:::i;:::-;5867:2;5924:1;5921;5917:9;5912:14;;5789:143;;;;:::o;5938:348::-;;6001:20;6019:1;6001:20;:::i;:::-;5996:25;;6035:20;6053:1;6035:20;:::i;:::-;6030:25;;6223:1;6155:66;6151:74;6148:1;6145:81;6140:1;6133:9;6126:17;6122:105;6119:2;;;6230:18;;:::i;:::-;6119:2;6278:1;6275;6271:9;6260:20;;5986:300;;;;:::o;6292:527::-;;6351:19;6368:1;6351:19;:::i;:::-;6346:24;;6384:19;6401:1;6384:19;:::i;:::-;6379:24;;6573:1;6505:66;6501:74;6498:1;6494:82;6489:1;6486;6482:9;6475:17;6471:106;6468:2;;;6580:18;;:::i;:::-;6468:2;6759:1;6691:66;6687:74;6684:1;6680:82;6676:1;6673;6669:9;6665:98;6662:2;;;6766:18;;:::i;:::-;6662:2;6811:1;6808;6804:9;6796:17;;6336:483;;;;:::o;6825:191::-;;6885:20;6903:1;6885:20;:::i;:::-;6880:25;;6919:20;6937:1;6919:20;:::i;:::-;6914:25;;6958:1;6955;6952:8;6949:2;;;6963:18;;:::i;:::-;6949:2;7008:1;7005;7001:9;6993:17;;6870:146;;;;:::o;7022:96::-;;7088:24;7106:5;7088:24;:::i;:::-;7077:35;;7067:51;;;:::o;7124:76::-;;7189:5;7178:16;;7168:32;;;:::o;7206:126::-;;7283:42;7276:5;7272:54;7261:65;;7251:81;;;:::o;7338:77::-;;7404:5;7393:16;;7383:32;;;:::o;7421:180::-;7469:77;7466:1;7459:88;7566:4;7563:1;7556:15;7590:4;7587:1;7580:15;7607:180;7655:77;7652:1;7645:88;7752:4;7749:1;7742:15;7776:4;7773:1;7766:15;7793:122;7866:24;7884:5;7866:24;:::i;:::-;7859:5;7856:35;7846:2;;7905:1;7902;7895:12;7846:2;7836:79;:::o;7921:122::-;7994:24;8012:5;7994:24;:::i;:::-;7987:5;7984:35;7974:2;;8033:1;8030;8023:12;7974:2;7964:79;:::o
Swarm Source
ipfs://e04e28756ea65dff29c4f1daf5c82ae9b3aa8f34c55ecb31e284c5a5a0c435fc
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.