Contract 0xd309db6dc4054f7be823be476d9ca1c5d4b0bb49

Txn Hash Method
Block
From
To
Value [Txn Fee]
0x2fcf11feececab771b574d5ea84f5303723487189d8236e564486816351076ca0x60806040231366422021-11-26 0:18:3911 days 11 hrs ago0x5c8403a2617aca5c86946e32e14148776e37f72a IN  Contract Creation0 FTM0.343900511402
[ Download CSV Export 
Latest 1 internal transaction
Parent Txn Hash Block From To Value
0x2fcf11feececab771b574d5ea84f5303723487189d8236e564486816351076ca231366422021-11-26 0:18:3911 days 11 hrs ago 0x5c8403a2617aca5c86946e32e14148776e37f72a  Contract Creation0 FTM
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
eERC

Compiler Version
v0.8.6+commit.11564f7e

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at FtmScan.com on 2021-11-26
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.6;

// A modification of OpenZeppelin ERC20
// Original can be found here: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/ERC20/ERC20.sol

contract eERC {
	event Transfer(address indexed from, address indexed to, uint value);
	event Approval(address indexed owner, address indexed spender, uint value);
	//event BulkTransfer(address indexed from, address[] indexed recipients, uint[] amounts);

	mapping (address => mapping (address => bool)) private _allowances;
	mapping (address => uint) private _balances;

	string private _name;
	string private _symbol;
	bool private _init;
    uint public treasuryFees;
    uint public epochBlock;
    address public pool;
    bool public ini;
    uint public burnBlock;
    uint public burnModifier;

	function init() public {
	    require(ini==false);ini=true;
		//_treasury = 0xeece0f26876a9b5104fEAEe1CE107837f96378F2;
		//_founding = 0xAE6ba0D4c93E529e273c8eD48484EA39129AaEdc;
		//_staking = 0x0FaCF0D846892a10b1aea9Ee000d7700992B64f8;
		//emit Transfer(0x6B51c705d1E78DF8f92317130a0FC1DbbF780a5A,0xeece0f26876a9b5104fEAEe1CE107837f96378F2,29e23);
	    //_balances[pool] = _balances[pool] - 46762716725205235873429;
	    //_balances[pool] = 92365947461693200000000;
	    //_balances[0xeece0f26876a9b5104fEAEe1CE107837f96378F2] += 46762716725205235873429;
	    //emit Transfer(pool,0xeece0f26876a9b5104fEAEe1CE107837f96378F2,46762716725205235873429);
		burnBlock = epochBlock;
		burnModifier = 500;
	}
	
//	function genesis(uint b, address p) public {
//		require(msg.sender == 0xAE6ba0D4c93E529e273c8eD48484EA39129AaEdc);//founding
//		epochBlock = b;
//		pool = p;
//	}

	function name() public view returns (string memory) {
		return _name;
	}

	function symbol() public view returns (string memory) {
		return _symbol;
	}

	function totalSupply() public view returns (uint) {//subtract balance of treasury
		return 3e24-_balances[0xeece0f26876a9b5104fEAEe1CE107837f96378F2];
	}

	function decimals() public pure returns (uint) {
		return 18;
	}

	function balanceOf(address a) public view returns (uint) {
		return _balances[a];
	}

	function transfer(address recipient, uint amount) public returns (bool) {
		_transfer(msg.sender, recipient, amount);
		return true;
	}

	function disallow(address spender) public returns (bool) {
		delete _allowances[msg.sender][spender];
		emit Approval(msg.sender, spender, 0);
		return true;
	}

	function approve(address spender, uint amount) public returns (bool) { // hardcoded spookyswap router, also spirit
		if (spender == 0xF491e7B69E4244ad4002BC14e878a34207E38c29||spender == 0x16327E3FbDaCA3bcF7E38F5Af2599D2DDc33aE52) {
			emit Approval(msg.sender, spender, 2**256 - 1);
			return true;
		}
		else {
			_allowances[msg.sender][spender] = true; //boolean is cheaper for trading
			emit Approval(msg.sender, spender, 2**256 - 1);
			return true;
		}
	}

	function allowance(address owner, address spender) public view returns (uint) { // hardcoded spookyswap router, also spirit
		if (spender == 0xF491e7B69E4244ad4002BC14e878a34207E38c29||spender == 0x16327E3FbDaCA3bcF7E38F5Af2599D2DDc33aE52||_allowances[owner][spender] == true) {
			return 2**256 - 1;
		} else {
			return 0;
		}
	}

	function transferFrom(address sender, address recipient, uint amount) public returns (bool) { // hardcoded spookyswap router, also spirit
		require(msg.sender == 0xF491e7B69E4244ad4002BC14e878a34207E38c29||msg.sender == 0x16327E3FbDaCA3bcF7E38F5Af2599D2DDc33aE52||_allowances[sender][msg.sender] == true);
		_transfer(sender, recipient, amount);
		return true;
	}

// burns some tokens in the pool on liquidity unstake
	function burn(uint amount) public {
		require(msg.sender == 0x0FaCF0D846892a10b1aea9Ee000d7700992B64f8); //staking
		_burn(amount);
	}

	function _burn(uint amount) internal {
		require(_balances[pool] > amount);
		_balances[pool] -= amount;
		_balances[0xeece0f26876a9b5104fEAEe1CE107837f96378F2]+=amount;//treasury
		emit Transfer(pool,0xeece0f26876a9b5104fEAEe1CE107837f96378F2,amount);
		I(pool).sync(); // in general it's better not to have it with small amounts. exchanging a bit of accuracy for less ftm drainage. however staking contract might need to sync
	}

	function _transfer(address sender, address recipient, uint amount) internal {
	    uint senderBalance = _balances[sender];
		require(sender != address(0)&&senderBalance >= amount);
		_beforeTokenTransfer(sender, amount);
		_balances[sender] = senderBalance - amount;
		if(recipient==pool){
		    uint genesis = epochBlock;
		    require(genesis!=0);
		    uint blocksPassed = block.number - genesis;
		    uint maxBlocks = 31536000;
		    if(blocksPassed<maxBlocks){
		        uint toBurn = (100 - blocksPassed*100/maxBlocks);// percent
		        if(toBurn>0&&toBurn<=100){
		            uint treasuryShare = amount*toBurn/1000;//10% is max burn
	            	amount -= treasuryShare;
            		_balances[0xeece0f26876a9b5104fEAEe1CE107837f96378F2] += treasuryShare;//treasury
        			treasuryFees+=treasuryShare;
		        }
		    }
		}
		_balances[recipient] += amount;
		emit Transfer(sender, recipient, amount);
	}

/*	function bulkTransfer(address[] memory recipients, uint[] memory amounts) public returns (bool) { // will be used by the contract, or anybody who wants to use it
		require(recipients.length == amounts.length && amounts.length < 100,"human error");
		uint senderBalance = _balances[msg.sender];
		uint total;
		for(uint i = 0;i<amounts.length;i++) {
		    total += amounts[i];// careful, it does not burn anything as regular transfer does
		    _balances[recipients[i]] += amounts[i];
		}
		require(senderBalance >= total,"balance is low");
		if (msg.sender == 0xeece0f26876a9b5104fEAEe1CE107837f96378F2){//treasury
			_beforeTokenTransfer(msg.sender, total);
		}
		_balances[msg.sender] = senderBalance - total; //only records sender balance once, cheaper
		emit BulkTransfer(msg.sender, recipients, amounts);
		return true;
	}*/

	function _beforeTokenTransfer(address from, uint amount) internal {
//is not required with latest changes and proxies not being locked
//emission safety check, treasury can't dump more than allowed. but with limits all over treasury might not be required anymore
//and with fee on transfer can't be useful without modifying the state, so again becomes expensive
//even on ftm it can easily become a substantial amount of fees to pay the nodes, so better remove it and make sure that other safety checks are enough
//		if(from == 0xeece0f26876a9b5104fEAEe1CE107837f96378F2) {//from treasury
//			require(epochBlock != 0);
//			uint w = withdrawn;
//			uint max = (block.number - epochBlock)*31e15;
//			require(max>=w+amount);
//			uint allowed = max - w;
//			require(_balances[0xeece0f26876a9b5104fEAEe1CE107837f96378F2] >= amount);
//			if (withdrawn>2e24){//this can be more complex and balanced in future upgrades, can for example depend on the token price. will take 4 years at least though
//				withdrawn = 0;
//				epochBlock = block.number-5e5;
//			} else {
//				withdrawn+=amount;
//			}
//		}
		uint pB = _balances[pool];
		if(pB > 1e22 && block.number >= burnBlock) {
			uint toBurn = pB*10/burnModifier;
			burnBlock+=86400;
			_burn(toBurn);
		}
	}

	function setBurnModifier(uint amount) external {
		require(msg.sender == 0x5C8403A2617aca5C86946E32E14148776E37f72A && amount>=200 && amount<10000);
		burnModifier = amount;
	}
}

interface I{
	function sync() external;
}

Contract Security Audit

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"burnBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burnModifier","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"disallow","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"epochBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ini","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"init","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pool","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setBurnModifier","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"treasuryFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

608060405234801561001057600080fd5b506118ef806100206000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c806370a08231116100ad578063a9ed9cb811610071578063a9ed9cb81461030e578063c1493a311461033e578063dd62ed3e1461035c578063e1c7392a1461038c578063f3f5112a1461039657610121565b806370a08231146102545780638d97ab1d1461028457806395d89b41146102a25780639a67430f146102c0578063a9059cbb146102de57610121565b806318160ddd116100f457806318160ddd146101ae57806323b872dd146101cc578063313ce567146101fc57806342966c681461021a578063596401eb1461023657610121565b806306fdde031461012657806309554cdf14610144578063095ea7b31461016057806316f0115b14610190575b600080fd5b61012e6103b4565b60405161013b91906115a9565b60405180910390f35b61015e6004803603810190610159919061148c565b610446565b005b61017a6004803603810190610175919061144c565b6104b6565b6040516101879190611558565b60405180910390f35b6101986106fc565b6040516101a5919061153d565b60405180910390f35b6101b6610722565b6040516101c391906115cb565b60405180910390f35b6101e660048036038101906101e191906113f9565b610793565b6040516101f39190611558565b60405180910390f35b6102046108d8565b60405161021191906115cb565b60405180910390f35b610234600480360381019061022f919061148c565b6108e1565b005b61023e610939565b60405161024b91906115cb565b60405180910390f35b61026e6004803603810190610269919061138c565b61093f565b60405161027b91906115cb565b60405180910390f35b61028c610988565b6040516102999190611558565b60405180910390f35b6102aa61099b565b6040516102b791906115a9565b60405180910390f35b6102c8610a2d565b6040516102d591906115cb565b60405180910390f35b6102f860048036038101906102f3919061144c565b610a33565b6040516103059190611558565b60405180910390f35b6103286004803603810190610323919061138c565b610a4a565b6040516103359190611558565b60405180910390f35b610346610b46565b60405161035391906115cb565b60405180910390f35b610376600480360381019061037191906113b9565b610b4c565b60405161038391906115cb565b60405180910390f35b610394610caa565b005b61039e610cf9565b6040516103ab91906115cb565b60405180910390f35b6060600280546103c3906117b6565b80601f01602080910402602001604051908101604052809291908181526020018280546103ef906117b6565b801561043c5780601f106104115761010080835404028352916020019161043c565b820191906000526020600020905b81548152906001019060200180831161041f57829003601f168201915b5050505050905090565b735c8403a2617aca5c86946e32e14148776e37f72a73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148015610496575060c88110155b80156104a3575061271081105b6104ac57600080fd5b8060098190555050565b600073f491e7b69e4244ad4002bc14e878a34207e38c2973ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148061054557507316327e3fbdaca3bcf7e38f5af2599d2ddc33ae5273ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156105d8578273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9257fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040516105c7919061158e565b60405180910390a3600190506106f6565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9257fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040516106e9919061158e565b60405180910390a3600190505b92915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006001600073eece0f26876a9b5104feaee1ce107837f96378f273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546a027b46536c66c8e300000061078e91906116e3565b905090565b600073f491e7b69e4244ad4002bc14e878a34207e38c2973ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061082257507316327e3fbdaca3bcf7e38f5af2599d2ddc33ae5273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b806108b95750600115156000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b6108c257600080fd5b6108cd848484610cff565b600190509392505050565b60006012905090565b730facf0d846892a10b1aea9ee000d7700992b64f873ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461092d57600080fd5b61093681611023565b50565b60095481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600760149054906101000a900460ff1681565b6060600380546109aa906117b6565b80601f01602080910402602001604051908101604052809291908181526020018280546109d6906117b6565b8015610a235780601f106109f857610100808354040283529160200191610a23565b820191906000526020600020905b815481529060010190602001808311610a0657829003601f168201915b5050505050905090565b60055481565b6000610a40338484610cff565b6001905092915050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81549060ff02191690558173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256000604051610b359190611573565b60405180910390a360019050919050565b60065481565b600073f491e7b69e4244ad4002bc14e878a34207e38c2973ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161480610bdb57507316327e3fbdaca3bcf7e38f5af2599d2ddc33ae5273ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b80610c725750600115156000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b15610c9f577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9050610ca4565b600090505b92915050565b60001515600760149054906101000a900460ff16151514610cca57600080fd5b6001600760146101000a81548160ff0219169083151502179055506006546008819055506101f4600981905550565b60085481565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610d805750818110155b610d8957600080fd5b610d938483611292565b8181610d9f91906116e3565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f6257600060065490506000811415610e4d57600080fd5b60008143610e5b91906116e3565b905060006301e13380905080821015610f5e57600081606484610e7e9190611689565b610e889190611658565b6064610e9491906116e3565b9050600081118015610ea7575060648111155b15610f5c5760006103e88288610ebd9190611689565b610ec79190611658565b90508087610ed591906116e3565b9650806001600073eece0f26876a9b5104feaee1ce107837f96378f273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f3a9190611602565b925050819055508060056000828254610f539190611602565b92505081905550505b505b5050505b81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610fb19190611602565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161101591906115cb565b60405180910390a350505050565b8060016000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541161109057600080fd5b8060016000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461110191906116e3565b92505081905550806001600073eece0f26876a9b5104feaee1ce107837f96378f273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461116b9190611602565b9250508190555073eece0f26876a9b5104feaee1ce107837f96378f273ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161120591906115cb565b60405180910390a3600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561127757600080fd5b505af115801561128b573d6000803e3d6000fd5b5050505050565b600060016000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905069021e19e0c9bab24000008111801561131357506008544310155b1561135d576000600954600a8361132a9190611689565b6113349190611658565b9050620151806008600082825461134b9190611602565b9250508190555061135b81611023565b505b505050565b6000813590506113718161188b565b92915050565b600081359050611386816118a2565b92915050565b6000602082840312156113a2576113a1611875565b5b60006113b084828501611362565b91505092915050565b600080604083850312156113d0576113cf611875565b5b60006113de85828601611362565b92505060206113ef85828601611362565b9150509250929050565b60008060006060848603121561141257611411611875565b5b600061142086828701611362565b935050602061143186828701611362565b925050604061144286828701611377565b9150509250925092565b6000806040838503121561146357611462611875565b5b600061147185828601611362565b925050602061148285828601611377565b9150509250929050565b6000602082840312156114a2576114a1611875565b5b60006114b084828501611377565b91505092915050565b6114c281611717565b82525050565b6114d181611729565b82525050565b6114e08161175f565b82525050565b6114ef81611771565b82525050565b6000611500826115e6565b61150a81856115f1565b935061151a818560208601611783565b6115238161187a565b840191505092915050565b61153781611755565b82525050565b600060208201905061155260008301846114b9565b92915050565b600060208201905061156d60008301846114c8565b92915050565b600060208201905061158860008301846114d7565b92915050565b60006020820190506115a360008301846114e6565b92915050565b600060208201905081810360008301526115c381846114f5565b905092915050565b60006020820190506115e0600083018461152e565b92915050565b600081519050919050565b600082825260208201905092915050565b600061160d82611755565b915061161883611755565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561164d5761164c6117e8565b5b828201905092915050565b600061166382611755565b915061166e83611755565b92508261167e5761167d611817565b5b828204905092915050565b600061169482611755565b915061169f83611755565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156116d8576116d76117e8565b5b828202905092915050565b60006116ee82611755565b91506116f983611755565b92508282101561170c5761170b6117e8565b5b828203905092915050565b600061172282611735565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600061176a82611755565b9050919050565b600061177c82611755565b9050919050565b60005b838110156117a1578082015181840152602081019050611786565b838111156117b0576000848401525b50505050565b600060028204905060018216806117ce57607f821691505b602082108114156117e2576117e1611846565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b61189481611717565b811461189f57600080fd5b50565b6118ab81611755565b81146118b657600080fd5b5056fea264697066735822122079aafc389e834118dfd423c972a9b63d3a86043f3704c9d0f49e85b912a0c9b564736f6c63430008060033

Deployed ByteCode Sourcemap

234:7423:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1752:74;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7475:179;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2548:473;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;750:19;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1914:155;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3368:367;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2074:66;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3795:137;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;826:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2145:86;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;776:15;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1831:78;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;690:24;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2236:138;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2379:164;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;721:22;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3026:337;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;856:715;;;:::i;:::-;;798:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1752:74;1789:13;1816:5;1809:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1752:74;:::o;7475:179::-;7549:42;7535:56;;:10;:56;;;:71;;;;;7603:3;7595:6;:11;;7535:71;:87;;;;;7617:5;7610:6;:12;7535:87;7527:96;;;;;;7643:6;7628:12;:21;;;;7475:179;:::o;2548:473::-;2611:4;2681:42;2670:53;;:7;:53;;;:108;;;;2736:42;2725:53;;:7;:53;;;2670:108;2666:351;;;2812:7;2791:41;;2800:10;2791:41;;;2821:10;2791:41;;;;;;:::i;:::-;;;;;;;;2845:4;2838:11;;;;2666:351;2905:4;2870:11;:23;2882:10;2870:23;;;;;;;;;;;;;;;:32;2894:7;2870:32;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;2974:7;2953:41;;2962:10;2953:41;;;2983:10;2953:41;;;;;;:::i;:::-;;;;;;;;3007:4;3000:11;;2548:473;;;;;:::o;750:19::-;;;;;;;;;;;;;:::o;1914:155::-;1958:4;2011:9;:53;2021:42;2011:53;;;;;;;;;;;;;;;;2006:4;:58;;;;:::i;:::-;1999:65;;1914:155;:::o;3368:367::-;3454:4;3531:42;3517:56;;:10;:56;;;:114;;;;3589:42;3575:56;;:10;:56;;;3517:114;:155;;;;3668:4;3633:39;;:11;:19;3645:6;3633:19;;;;;;;;;;;;;;;:31;3653:10;3633:31;;;;;;;;;;;;;;;;;;;;;;;;;:39;;;3517:155;3509:164;;;;;;3678:36;3688:6;3696:9;3707:6;3678:9;:36::i;:::-;3726:4;3719:11;;3368:367;;;;;:::o;2074:66::-;2115:4;2133:2;2126:9;;2074:66;:::o;3795:137::-;3856:42;3842:56;;:10;:56;;;3834:65;;;;;;3914:13;3920:6;3914:5;:13::i;:::-;3795:137;:::o;826:24::-;;;;:::o;2145:86::-;2196:4;2214:9;:12;2224:1;2214:12;;;;;;;;;;;;;;;;2207:19;;2145:86;;;:::o;776:15::-;;;;;;;;;;;;;:::o;1831:78::-;1870:13;1897:7;1890:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1831:78;:::o;690:24::-;;;;:::o;2236:138::-;2302:4;2313:40;2323:10;2335:9;2346:6;2313:9;:40::i;:::-;2365:4;2358:11;;2236:138;;;;:::o;2379:164::-;2430:4;2448:11;:23;2460:10;2448:23;;;;;;;;;;;;;;;:32;2472:7;2448:32;;;;;;;;;;;;;;;;2441:39;;;;;;;;;;;2511:7;2490:32;;2499:10;2490:32;;;2520:1;2490:32;;;;;;:::i;:::-;;;;;;;;2534:4;2527:11;;2379:164;;;:::o;721:22::-;;;;:::o;3026:337::-;3098:4;3168:42;3157:53;;:7;:53;;;:108;;;;3223:42;3212:53;;:7;:53;;;3157:108;:145;;;;3298:4;3267:35;;:11;:18;3279:5;3267:18;;;;;;;;;;;;;;;:27;3286:7;3267:27;;;;;;;;;;;;;;;;;;;;;;;;;:35;;;3157:145;3153:206;;;3317:10;3310:17;;;;3153:206;3352:1;3345:8;;3026:337;;;;;:::o;856:715::-;900:5;895:10;;:3;;;;;;;;;;;:10;;;887:19;;;;;;911:4;907:3;;:8;;;;;;;;;;;;;;;;;;1533:10;;1521:9;:22;;;;1563:3;1548:12;:18;;;;856:715::o;798:21::-;;;;:::o;4378:947::-;4462:18;4483:9;:17;4493:6;4483:17;;;;;;;;;;;;;;;;4462:38;;4531:1;4513:20;;:6;:20;;;;:45;;;;;4552:6;4535:13;:23;;4513:45;4505:54;;;;;;4564:36;4585:6;4593;4564:20;:36::i;:::-;4641:6;4625:13;:22;;;;:::i;:::-;4605:9;:17;4615:6;4605:17;;;;;;;;;;;;;;;:42;;;;4666:4;;;;;;;;;;;4655:15;;:9;:15;;;4652:589;;;4680:12;4695:10;;4680:25;;4731:1;4722:7;:10;;4714:19;;;;;;4742:17;4777:7;4762:12;:22;;;;:::i;:::-;4742:42;;4793:14;4810:8;4793:25;;4843:9;4830:12;:22;4827:409;;;4866:11;4904:9;4900:3;4887:12;:16;;;;:::i;:::-;:26;;;;:::i;:::-;4881:3;:32;;;;:::i;:::-;4866:48;;4947:1;4940:6;:8;:21;;;;;4958:3;4950:6;:11;;4940:21;4937:290;;;4979:18;5014:4;5007:6;5000;:13;;;;:::i;:::-;:18;;;;:::i;:::-;4979:39;;5062:13;5052:23;;;;;:::i;:::-;;;5149:13;5092:9;:53;5102:42;5092:53;;;;;;;;;;;;;;;;:70;;;;;;;:::i;:::-;;;;;;;;5200:13;5186:12;;:27;;;;;;;:::i;:::-;;;;;;;;4962:265;4937:290;4853:383;4827:409;4671:570;;;4652:589;5269:6;5245:9;:20;5255:9;5245:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;5302:9;5285:35;;5294:6;5285:35;;;5313:6;5285:35;;;;;;:::i;:::-;;;;;;;;4454:871;4378:947;;;:::o;3937:436::-;4005:6;3987:9;:15;3997:4;;;;;;;;;;;3987:15;;;;;;;;;;;;;;;;:24;3979:33;;;;;;4036:6;4017:9;:15;4027:4;;;;;;;;;;;4017:15;;;;;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;4102:6;4047:9;:53;4057:42;4047:53;;;;;;;;;;;;;;;;:61;;;;;;;:::i;:::-;;;;;;;;4142:42;4128:64;;4137:4;;;;;;;;;;;4128:64;;;4185:6;4128:64;;;;;;:::i;:::-;;;;;;;;4199:4;;;;;;;;;;;4197:12;;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3937:436;:::o;6181:1289::-;7308:7;7318:9;:15;7328:4;;;;;;;;;;;7318:15;;;;;;;;;;;;;;;;7308:25;;7346:4;7341:2;:9;:38;;;;;7370:9;;7354:12;:25;;7341:38;7338:128;;;7387:11;7407:12;;7404:2;7401;:5;;;;:::i;:::-;:18;;;;:::i;:::-;7387:32;;7436:5;7425:9;;:16;;;;;;;:::i;:::-;;;;;;;;7447:13;7453:6;7447:5;:13::i;:::-;7381:85;7338:128;6247:1223;6181:1289;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;152:139::-;198:5;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;204:87;;;;:::o;297:329::-;356:6;405:2;393:9;384:7;380:23;376:32;373:2;;;411:79;;:::i;:::-;373:2;531:1;556:53;601:7;592:6;581:9;577:22;556:53;:::i;:::-;546:63;;502:117;363:263;;;;:::o;632:474::-;700:6;708;757:2;745:9;736:7;732:23;728:32;725:2;;;763:79;;:::i;:::-;725:2;883:1;908:53;953:7;944:6;933:9;929:22;908:53;:::i;:::-;898:63;;854:117;1010:2;1036:53;1081:7;1072:6;1061:9;1057:22;1036:53;:::i;:::-;1026:63;;981:118;715:391;;;;;:::o;1112:619::-;1189:6;1197;1205;1254:2;1242:9;1233:7;1229:23;1225:32;1222:2;;;1260:79;;:::i;:::-;1222:2;1380:1;1405:53;1450:7;1441:6;1430:9;1426:22;1405:53;:::i;:::-;1395:63;;1351:117;1507:2;1533:53;1578:7;1569:6;1558:9;1554:22;1533:53;:::i;:::-;1523:63;;1478:118;1635:2;1661:53;1706:7;1697:6;1686:9;1682:22;1661:53;:::i;:::-;1651:63;;1606:118;1212:519;;;;;:::o;1737:474::-;1805:6;1813;1862:2;1850:9;1841:7;1837:23;1833:32;1830:2;;;1868:79;;:::i;:::-;1830:2;1988:1;2013:53;2058:7;2049:6;2038:9;2034:22;2013:53;:::i;:::-;2003:63;;1959:117;2115:2;2141:53;2186:7;2177:6;2166:9;2162:22;2141:53;:::i;:::-;2131:63;;2086:118;1820:391;;;;;:::o;2217:329::-;2276:6;2325:2;2313:9;2304:7;2300:23;2296:32;2293:2;;;2331:79;;:::i;:::-;2293:2;2451:1;2476:53;2521:7;2512:6;2501:9;2497:22;2476:53;:::i;:::-;2466:63;;2422:117;2283:263;;;;:::o;2552:118::-;2639:24;2657:5;2639:24;:::i;:::-;2634:3;2627:37;2617:53;;:::o;2676:109::-;2757:21;2772:5;2757:21;:::i;:::-;2752:3;2745:34;2735:50;;:::o;2791:147::-;2886:45;2925:5;2886:45;:::i;:::-;2881:3;2874:58;2864:74;;:::o;2944:301::-;3116:122;3232:5;3116:122;:::i;:::-;3111:3;3104:135;3094:151;;:::o;3251:364::-;3339:3;3367:39;3400:5;3367:39;:::i;:::-;3422:71;3486:6;3481:3;3422:71;:::i;:::-;3415:78;;3502:52;3547:6;3542:3;3535:4;3528:5;3524:16;3502:52;:::i;:::-;3579:29;3601:6;3579:29;:::i;:::-;3574:3;3570:39;3563:46;;3343:272;;;;;:::o;3621:118::-;3708:24;3726:5;3708:24;:::i;:::-;3703:3;3696:37;3686:53;;:::o;3745:222::-;3838:4;3876:2;3865:9;3861:18;3853:26;;3889:71;3957:1;3946:9;3942:17;3933:6;3889:71;:::i;:::-;3843:124;;;;:::o;3973:210::-;4060:4;4098:2;4087:9;4083:18;4075:26;;4111:65;4173:1;4162:9;4158:17;4149:6;4111:65;:::i;:::-;4065:118;;;;:::o;4189:238::-;4290:4;4328:2;4317:9;4313:18;4305:26;;4341:79;4417:1;4406:9;4402:17;4393:6;4341:79;:::i;:::-;4295:132;;;;:::o;4433:392::-;4611:4;4649:2;4638:9;4634:18;4626:26;;4662:156;4815:1;4804:9;4800:17;4791:6;4662:156;:::i;:::-;4616:209;;;;:::o;4831:313::-;4944:4;4982:2;4971:9;4967:18;4959:26;;5031:9;5025:4;5021:20;5017:1;5006:9;5002:17;4995:47;5059:78;5132:4;5123:6;5059:78;:::i;:::-;5051:86;;4949:195;;;;:::o;5150:222::-;5243:4;5281:2;5270:9;5266:18;5258:26;;5294:71;5362:1;5351:9;5347:17;5338:6;5294:71;:::i;:::-;5248:124;;;;:::o;5459:99::-;5511:6;5545:5;5539:12;5529:22;;5518:40;;;:::o;5564:169::-;5648:11;5682:6;5677:3;5670:19;5722:4;5717:3;5713:14;5698:29;;5660:73;;;;:::o;5739:305::-;5779:3;5798:20;5816:1;5798:20;:::i;:::-;5793:25;;5832:20;5850:1;5832:20;:::i;:::-;5827:25;;5986:1;5918:66;5914:74;5911:1;5908:81;5905:2;;;5992:18;;:::i;:::-;5905:2;6036:1;6033;6029:9;6022:16;;5783:261;;;;:::o;6050:185::-;6090:1;6107:20;6125:1;6107:20;:::i;:::-;6102:25;;6141:20;6159:1;6141:20;:::i;:::-;6136:25;;6180:1;6170:2;;6185:18;;:::i;:::-;6170:2;6227:1;6224;6220:9;6215:14;;6092:143;;;;:::o;6241:348::-;6281:7;6304:20;6322:1;6304:20;:::i;:::-;6299:25;;6338:20;6356:1;6338:20;:::i;:::-;6333:25;;6526:1;6458:66;6454:74;6451:1;6448:81;6443:1;6436:9;6429:17;6425:105;6422:2;;;6533:18;;:::i;:::-;6422:2;6581:1;6578;6574:9;6563:20;;6289:300;;;;:::o;6595:191::-;6635:4;6655:20;6673:1;6655:20;:::i;:::-;6650:25;;6689:20;6707:1;6689:20;:::i;:::-;6684:25;;6728:1;6725;6722:8;6719:2;;;6733:18;;:::i;:::-;6719:2;6778:1;6775;6771:9;6763:17;;6640:146;;;;:::o;6792:96::-;6829:7;6858:24;6876:5;6858:24;:::i;:::-;6847:35;;6837:51;;;:::o;6894:90::-;6928:7;6971:5;6964:13;6957:21;6946:32;;6936:48;;;:::o;6990:126::-;7027:7;7067:42;7060:5;7056:54;7045:65;;7035:81;;;:::o;7122:77::-;7159:7;7188:5;7177:16;;7167:32;;;:::o;7205:121::-;7263:9;7296:24;7314:5;7296:24;:::i;:::-;7283:37;;7273:53;;;:::o;7332:198::-;7467:9;7500:24;7518:5;7500:24;:::i;:::-;7487:37;;7477:53;;;:::o;7536:307::-;7604:1;7614:113;7628:6;7625:1;7622:13;7614:113;;;7713:1;7708:3;7704:11;7698:18;7694:1;7689:3;7685:11;7678:39;7650:2;7647:1;7643:10;7638:15;;7614:113;;;7745:6;7742:1;7739:13;7736:2;;;7825:1;7816:6;7811:3;7807:16;7800:27;7736:2;7585:258;;;;:::o;7849:320::-;7893:6;7930:1;7924:4;7920:12;7910:22;;7977:1;7971:4;7967:12;7998:18;7988:2;;8054:4;8046:6;8042:17;8032:27;;7988:2;8116;8108:6;8105:14;8085:18;8082:38;8079:2;;;8135:18;;:::i;:::-;8079:2;7900:269;;;;:::o;8175:180::-;8223:77;8220:1;8213:88;8320:4;8317:1;8310:15;8344:4;8341:1;8334:15;8361:180;8409:77;8406:1;8399:88;8506:4;8503:1;8496:15;8530:4;8527:1;8520:15;8547:180;8595:77;8592:1;8585:88;8692:4;8689:1;8682:15;8716:4;8713:1;8706:15;8856:117;8965:1;8962;8955:12;8979:102;9020:6;9071:2;9067:7;9062:2;9055:5;9051:14;9047:28;9037:38;;9027:54;;;:::o;9087:122::-;9160:24;9178:5;9160:24;:::i;:::-;9153:5;9150:35;9140:2;;9199:1;9196;9189:12;9140:2;9130:79;:::o;9215:122::-;9288:24;9306:5;9288:24;:::i;:::-;9281:5;9278:35;9268:2;;9327:1;9324;9317:12;9268:2;9258:79;:::o

Swarm Source

ipfs://79aafc389e834118dfd423c972a9b63d3a86043f3704c9d0f49e85b912a0c9b5
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Validator ID :
0 FTM

Amount Staked
0

Amount Delegated
0

Staking Total
0

Staking Start Epoch
0

Staking Start Time
0

Proof of Importance
0

Origination Score
0

Validation Score
0

Active
0

Online
0

Downtime
0 s
Address Amount claimed Rewards Created On Epoch Created On
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.