FTM Price: $0.573919 (-1.34%)
Gas: 10 GWei
 

Sponsored

Transaction Hash
Method
Block
From
To
Value
Transfer747429162024-01-24 17:42:30151 days ago1706118150IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0027934649.73856383
Transfer703231872023-11-08 6:42:56228 days ago1699425776IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0020053534
Approve676069612023-08-30 8:30:03298 days ago1693384203IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0023510850.96214348
Approve669144092023-08-12 17:33:07316 days ago1691861587IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0002707110
Approve662910462023-07-25 17:07:27334 days ago1690304847IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0011646143
Approve635725442023-06-04 15:03:18385 days ago1685890998IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0014559560.2280598
Approve625804832023-05-18 11:32:57402 days ago1684409577IN
0xB2Da66c4...1d3Ba9343
0 FTM0.00433136160
Approve609190382023-04-27 15:32:50423 days ago1682609570IN
0xB2Da66c4...1d3Ba9343
0 FTM0.00928981343
Approve594978562023-04-09 17:54:29441 days ago1681062869IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0027291283
Approve594360242023-04-08 22:36:45442 days ago1680993405IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0022541287.9761785
Approve577503402023-03-17 4:56:38464 days ago1679028998IN
0xB2Da66c4...1d3Ba9343
0 FTM0.001501532
Approve565954302023-02-27 8:38:18482 days ago1677487098IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0006722826.22546262
Approve565948112023-02-27 8:22:23482 days ago1677486143IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0006548225.55711223
Approve565947752023-02-27 8:21:30482 days ago1677486090IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0006559425.60098874
Approve565946712023-02-27 8:18:41482 days ago1677485921IN
0xB2Da66c4...1d3Ba9343
0 FTM0.000660325.77090801
Approve565153362023-02-25 23:36:20484 days ago1677368180IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0020105678.43032028
Approve564786172023-02-25 8:34:33484 days ago1677314073IN
0xB2Da66c4...1d3Ba9343
0 FTM0.002984661.39010042
Approve564785172023-02-25 8:31:52484 days ago1677313912IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0011657925.08714921
Approve552399642023-02-07 4:19:37502 days ago1675743577IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0010371740.47977196
Transfer522058302022-12-12 8:28:55559 days ago1670833735IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0028438129.16549999
Approve511319682022-11-19 14:26:32582 days ago1668867992IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0031593367.31432217
Approve498497722022-10-23 18:13:12609 days ago1666548792IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0009750236
Approve498492142022-10-23 17:57:15609 days ago1666547835IN
0xB2Da66c4...1d3Ba9343
0 FTM0.0018402136
Approve487709872022-10-09 8:48:08623 days ago1665305288IN
0xB2Da66c4...1d3Ba9343
0 FTM0.000265395.59909206
Approve470840312022-09-17 0:28:42646 days ago1663374522IN
0xB2Da66c4...1d3Ba9343
0 FTM0.000089913.50915846
View all transactions

Latest 1 internal transaction

Parent Transaction Hash Block From To Value
107100082021-06-26 20:00:241093 days ago1624737624  Contract Creation0 FTM
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HODL

Compiler Version
v0.5.13+commit.5b0b510c

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU GPLv2 license
/**
 *Submitted for verification at ftmscan.com on 2021-06-26
*/

pragma solidity 0.5.13;

contract HODL {

	uint256 constant public TOKEN_PRECISION = 1e6;
	uint256 constant private PRECISION = 1e12; 
	
	uint256 constant private initial_supply = 24 * TOKEN_PRECISION;
	
	string constant public name = "HODL on Fantom";
	string constant public symbol = "HODL";
	uint8 constant public decimals = 6;

	struct User {
	    bool whitelisted;
		uint256 balance;
		mapping(address => uint256) allowance;
		uint256 appliedTokenCirculation;
	}

	struct Info {
		uint256 totalSupply;
		mapping(address => User) users;
		address admin;
        
        uint256 supplydivision;
        uint256 supplymultiply;
        
        bool stableCoinSystem;
        
        uint256 coinWorkingTime;
        uint256 coinCreationTime;
	}
	
	struct PreSaleInfo {
		address payable admin;
        bool isPreSaleActive;
        uint256 preSaleDivide;
	}

	Info private info;
	PreSaleInfo private preSaleInfo;
	
	event Transfer(address indexed from, address indexed to, uint256 tokens);
	event Approval(address indexed owner, address indexed spender, uint256 tokens);
	event Whitelist(address indexed user, bool status);
	
	constructor() public {
	    info.stableCoinSystem = true;

	    info.coinWorkingTime = now;
	    info.coinCreationTime = now;
	     
		info.admin = msg.sender;
		info.totalSupply = initial_supply;
		
		info.supplydivision = 1;
		info.supplymultiply = 1;
		
		info.users[msg.sender].balance = initial_supply / 2;
		info.users[msg.sender].appliedTokenCirculation = initial_supply;
		info.users[msg.sender].whitelisted = true;
		
		info.users[address(this)].balance = initial_supply / 2;
		info.users[address(this)].appliedTokenCirculation = initial_supply;
		info.users[address(this)].whitelisted = true;
		
	    preSaleInfo.isPreSaleActive = true;
	    preSaleInfo.admin = msg.sender;
	    preSaleInfo.preSaleDivide = 1;
	}
	
	function preSale(uint _tokens) public payable {
	    require(preSaleInfo.isPreSaleActive);
	    require(msg.value > (5 ether * _tokens) / preSaleInfo.preSaleDivide);
	   
	    _transfer(address(this), msg.sender, _tokens * TOKEN_PRECISION);	
	    
    	preSaleInfo.admin.transfer(msg.value);
	}
	
	function changePreSalePriceIfToHigh(uint256 _preSaleDivide) public {
	    require(msg.sender == info.admin);
	    preSaleInfo.preSaleDivide = _preSaleDivide;
	}

	function preSaleFinished() public {
	    require(msg.sender == info.admin);
	    preSaleInfo.isPreSaleActive = false;
	    uint256 contractBalance = info.users[address(this)].balance;
	     _transfer(address(this), info.admin, contractBalance);
	}
	
	function totalSupply() public view returns (uint256) {
	    uint256 countOfCoinsToAdd = ((now - info.coinCreationTime) / 1 hours);
        uint256 realTotalSupply = initial_supply + (((countOfCoinsToAdd * TOKEN_PRECISION) / info.supplydivision) * info.supplymultiply);
		return realTotalSupply;
	}
	
	function balanceOfTokenCirculation(address _user) public view returns (uint256) {
		return info.users[_user].appliedTokenCirculation;
	}

	function balanceOf(address _user) public view returns (uint256) {
		return info.users[_user].balance;
	}

	function allowance(address _user, address _spender) public view returns (uint256) {
		return info.users[_user].allowance[_spender];
	}

	function allInfoFor(address _user) public view returns (uint256 totalTokenSupply, uint256 userTokenCirculation, uint256 userBalance, uint256 realUserBalance) {
		return (totalSupply(), balanceOfTokenCirculation(_user), balanceOf(_user), tokensToClaim(_user));
	}
	
	function tokensToClaim(address _user)  public view returns (uint256 totalTokenSupply)
	{
	    uint256 countOfCoinsToAdd = ((now - info.coinCreationTime) / 1 hours);
        uint256 realTotalSupply = initial_supply + (((countOfCoinsToAdd * TOKEN_PRECISION) / info.supplydivision) * info.supplymultiply);
        
	    uint256 AppliedTokenCirculation = info.users[_user].appliedTokenCirculation; 
        uint256 addressBalance = info.users[_user].balance;
       
        uint256 value1 = (addressBalance * PRECISION);
        uint256 value2 = value1 / AppliedTokenCirculation;
        uint256 value3 = value2 * realTotalSupply;
        uint256 adjustedAddressBalance = (value3) / PRECISION;
  
        return (adjustedAddressBalance);
	}
	
	function approve(address _spender, uint256 _tokens) external returns (bool) {
		info.users[msg.sender].allowance[_spender] = _tokens;
		emit Approval(msg.sender, _spender, _tokens);
		return true;
	}
	
	function whitelist(address _user, bool _status) public {
		require(msg.sender == info.admin);
		info.users[_user].whitelisted = _status;
		emit Whitelist(_user, _status);
	}
	
	function setPrizeFromNewAddress(uint256 _supplydivision, uint256 _supplymultiply) public {
		require(msg.sender == info.admin);
		info.supplydivision = _supplydivision;
		info.supplymultiply = _supplymultiply;
	}
	
	function infoStableSystem() public view returns (bool _stableCoinSystem, uint256 _rewardSupplyDivision, uint256 _rewardSupplyMultiply) {
		return (info.stableCoinSystem, info.supplydivision, info.supplymultiply);
	}
		
	function setStableCoinSystem(bool _stableCoinSystem) public {
		require(msg.sender == info.admin);
		info.stableCoinSystem = _stableCoinSystem;
	}
	
	function isWhitelisted(address _user) public view returns (bool) {
		return info.users[_user].whitelisted;
	}

	function transfer(address _to, uint256 _tokens) external returns (bool) {
		_transfer(msg.sender, _to, _tokens);
		return true;
	}

	function transferFrom(address _from, address _to, uint256 _tokens) external returns (bool) {
		require(info.users[_from].allowance[msg.sender] >= _tokens);
		info.users[_from].allowance[msg.sender] -= _tokens;
		_transfer(_from, _to, _tokens);
		return true;
	}
	
	function _transfer(address _from, address _to, uint256 _tokens) internal returns (uint256) {

	 	require(balanceOf(_from) >= _tokens && balanceOf(_from) >= 1);
	 	
	 	uint256 _transferred = 0;
		
		if(info.stableCoinSystem){
		 
		 	bool isNewUser = info.users[_to].balance == 0;
		
    		// If new user come
    		if(isNewUser)
    		{
    		    info.users[_to].appliedTokenCirculation = info.totalSupply;
    		}
    		
    		// If time left
    		if(info.coinWorkingTime + 1 hours < now)
    		{
    		    uint256 countOfCoinsToAdd = ((now - info.coinCreationTime) / 1 hours);
    		    info.coinWorkingTime = now;
    		  
                info.totalSupply = initial_supply + (((countOfCoinsToAdd * TOKEN_PRECISION) / info.supplydivision) * info.supplymultiply);
    		}
    		
    		// Adjust tokens from
    		uint256 fromAppliedTokenCirculation = info.users[_from].appliedTokenCirculation; 
    		
            uint256 addressBalanceFrom = info.users[_from].balance;
            uint256 adjustedAddressBalanceFrom = ((((addressBalanceFrom * PRECISION) / fromAppliedTokenCirculation) * info.totalSupply)) / PRECISION;
            
            info.users[_from].balance = adjustedAddressBalanceFrom;
            info.users[_from].appliedTokenCirculation = info.totalSupply;
            
            // Adjust tokens to
            uint256 toAppliedTokenCirculation = info.users[_to].appliedTokenCirculation;
            
            uint256 addressBalanceTo = info.users[_to].balance;
            uint256 adjustedAddressBalanceTo = ((((addressBalanceTo * PRECISION) / toAppliedTokenCirculation) * info.totalSupply)) / PRECISION;
                     
    		info.users[_to].balance = adjustedAddressBalanceTo;
    		info.users[_to].appliedTokenCirculation = info.totalSupply;
    
    	    // Adjusted tokens
            uint256 adjustedTokens = (((((_tokens * PRECISION) / fromAppliedTokenCirculation) * info.totalSupply)) / PRECISION);
    	    
    		info.users[_from].balance -= adjustedTokens;
    		_transferred = adjustedTokens;
    		info.users[_to].balance += _transferred;
    		
		}
		else
		{
	    	info.users[_from].balance -= _tokens;
    		_transferred = _tokens;
    		info.users[_to].balance += _transferred;
		}		
	
		
		emit Transfer(_from, _to, _transferred);
	
		return _transferred;
	}
}

Contract Security Audit

Contract ABI

[{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","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":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"bool","name":"status","type":"bool"}],"name":"Whitelist","type":"event"},{"constant":true,"inputs":[],"name":"TOKEN_PRECISION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"allInfoFor","outputs":[{"internalType":"uint256","name":"totalTokenSupply","type":"uint256"},{"internalType":"uint256","name":"userTokenCirculation","type":"uint256"},{"internalType":"uint256","name":"userBalance","type":"uint256"},{"internalType":"uint256","name":"realUserBalance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"balanceOfTokenCirculation","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_preSaleDivide","type":"uint256"}],"name":"changePreSalePriceIfToHigh","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"infoStableSystem","outputs":[{"internalType":"bool","name":"_stableCoinSystem","type":"bool"},{"internalType":"uint256","name":"_rewardSupplyDivision","type":"uint256"},{"internalType":"uint256","name":"_rewardSupplyMultiply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"isWhitelisted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"preSale","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"preSaleFinished","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_supplydivision","type":"uint256"},{"internalType":"uint256","name":"_supplymultiply","type":"uint256"}],"name":"setPrizeFromNewAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"bool","name":"_stableCoinSystem","type":"bool"}],"name":"setStableCoinSystem","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_user","type":"address"}],"name":"tokensToClaim","outputs":[{"internalType":"uint256","name":"totalTokenSupply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokens","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_user","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"whitelist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b506001600060050160006101000a81548160ff021916908315150217905550426000600601819055504260006007018190555033600060020160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620f42406018026000800181905550600160006003018190555060016000600401819055506002620f4240601802816100bc57fe5b04600060010160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010181905550620f4240601802600060010160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301819055506001600060010160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006101000a81548160ff0219169083151502179055506002620f4240601802816101c457fe5b04600060010160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010181905550620f4240601802600060010160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301819055506001600060010160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006101000a81548160ff0219169083151502179055506001600860000160146101000a81548160ff02191690831515021790555033600860000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016008600101819055506118cc806103386000396000f3fe60806040526004361061012a5760003560e01c806357f6b812116100ab578063b0cddfe61161006f578063b0cddfe6146106b6578063b8bb217a146106f3578063c661689414610730578063c9571af81461075b578063dd62ed3e146107a0578063f59c3708146108255761012a565b806357f6b8121461046f57806370a08231146104e957806389929d0f1461054e57806395d89b41146105b3578063a9059cbb146106435761012a565b806321097f28116100f257806321097f28146102f057806323b872dd1461032b578063313ce567146103be5780633af32abf146103ef5780635569f5d0146104585761012a565b806306fdde031461012f578063095ea7b3146101bf578063131f41041461023257806318160ddd146102605780631e8683341461028b575b600080fd5b34801561013b57600080fd5b50610144610882565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610184578082015181840152602081019050610169565b50505050905090810190601f1680156101b15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101cb57600080fd5b50610218600480360360408110156101e257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506108bb565b604051808215151515815260200191505060405180910390f35b61025e6004803603602081101561024857600080fd5b81019080803590602001909291905050506109b3565b005b34801561026c57600080fd5b50610275610a73565b6040518082815260200191505060405180910390f35b34801561029757600080fd5b506102da600480360360208110156102ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ab9565b6040518082815260200191505060405180910390f35b3480156102fc57600080fd5b506103296004803603602081101561031357600080fd5b8101908080359060200190929190505050610bcd565b005b34801561033757600080fd5b506103a46004803603606081101561034e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c37565b604051808215151515815260200191505060405180910390f35b3480156103ca57600080fd5b506103d3610d6f565b604051808260ff1660ff16815260200191505060405180910390f35b3480156103fb57600080fd5b5061043e6004803603602081101561041257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d74565b604051808215151515815260200191505060405180910390f35b34801561046457600080fd5b5061046d610dcf565b005b34801561047b57600080fd5b506104be6004803603602081101561049257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ec7565b6040518085815260200184815260200183815260200182815260200194505050505060405180910390f35b3480156104f557600080fd5b506105386004803603602081101561050c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610eff565b6040518082815260200191505060405180910390f35b34801561055a57600080fd5b5061059d6004803603602081101561057157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f4d565b6040518082815260200191505060405180910390f35b3480156105bf57600080fd5b506105c8610f9b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106085780820151818401526020810190506105ed565b50505050905090810190601f1680156106355780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561064f57600080fd5b5061069c6004803603604081101561066657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610fd4565b604051808215151515815260200191505060405180910390f35b3480156106c257600080fd5b506106f1600480360360208110156106d957600080fd5b81019080803515159060200190929190505050610fec565b005b3480156106ff57600080fd5b50610708611069565b6040518084151515158152602001838152602001828152602001935050505060405180910390f35b34801561073c57600080fd5b50610745611097565b6040518082815260200191505060405180910390f35b34801561076757600080fd5b5061079e6004803603604081101561077e57600080fd5b81019080803590602001909291908035906020019092919050505061109e565b005b3480156107ac57600080fd5b5061080f600480360360408110156107c357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611113565b6040518082815260200191505060405180910390f35b34801561083157600080fd5b506108806004803603604081101561084857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505061119f565b005b6040518060400160405280600e81526020017f484f444c206f6e2046616e746f6d00000000000000000000000000000000000081525081565b600081600060010160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600860000160149054906101000a900460ff166109cf57600080fd5b60086001015481674563918244f4000002816109e757fe5b0434116109f357600080fd5b610a033033620f424084026112af565b50600860000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015610a6f573d6000803e3d6000fd5b5050565b600080610e10600060070154420381610a8857fe5b04905060008060040154600060030154620f4240840281610aa557fe5b0402620f4240601802019050809250505090565b600080610e10600060070154420381610ace57fe5b04905060008060040154600060030154620f4240840281610aeb57fe5b0402620f424060180201905060008060010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154905060008060010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050600064e8d4a51000820290506000838281610ba057fe5b04905060008582029050600064e8d4a510008281610bba57fe5b0490508098505050505050505050919050565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c2a57600080fd5b8060086001018190555050565b600081600060010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610cc857600080fd5b81600060010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550610d638484846112af565b50600190509392505050565b600681565b60008060010160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff169050919050565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e2c57600080fd5b6000600860000160146101000a81548160ff02191690831515021790555060008060010160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050610ec330600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836112af565b5050565b600080600080610ed5610a73565b610ede86610f4d565b610ee787610eff565b610ef088610ab9565b93509350935093509193509193565b60008060010160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b60008060010160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549050919050565b6040518060400160405280600481526020017f484f444c0000000000000000000000000000000000000000000000000000000081525081565b6000610fe13384846112af565b506001905092915050565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461104957600080fd5b80600060050160006101000a81548160ff02191690831515021790555050565b60008060008060050160009054906101000a900460ff16600060030154600060040154925092509250909192565b620f424081565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110fb57600080fd5b81600060030181905550806000600401819055505050565b60008060010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146111fc57600080fd5b80600060010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f5a25e09a5dba33161281055e015f1279b6b10204d8f90dd56a8ce2b82322d43d82604051808215151515815260200191505060405180910390a25050565b6000816112bb85610eff565b101580156112d2575060016112cf85610eff565b10155b6112db57600080fd5b6000809050600060050160009054906101000a900460ff161561177d57600080600060010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541490508015611399576000800154600060010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301819055505b42610e106000600601540110156113f8576000610e106000600701544203816113be57fe5b04905042600060060181905550600060040154600060030154620f42408302816113e457fe5b0402620f4240601802016000800181905550505b60008060010160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154905060008060010160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050600064e8d4a5100060008001548464e8d4a510008502816114a757fe5b0402816114b057fe5b04905080600060010160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055506000800154600060010160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003018190555060008060010160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154905060008060010160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050600064e8d4a5100060008001548464e8d4a510008502816115fa57fe5b04028161160357fe5b04905080600060010160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055506000800154600060010160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600064e8d4a5100060008001548864e8d4a510008e02816116bb57fe5b0402816116c457fe5b04905080600060010160008f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000828254039250508190555080985088600060010160008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101600082825401925050819055505050505050505050611827565b82600060010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000828254039250508190555082905080600060010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101600082825401925050819055505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a380915050939250505056fea265627a7a72315820ae84bc3c77e1384d461eff635b140dc889d3f23bb6dea63f81dccf2c8bbf3c9764736f6c634300050d0032

Deployed Bytecode

0x60806040526004361061012a5760003560e01c806357f6b812116100ab578063b0cddfe61161006f578063b0cddfe6146106b6578063b8bb217a146106f3578063c661689414610730578063c9571af81461075b578063dd62ed3e146107a0578063f59c3708146108255761012a565b806357f6b8121461046f57806370a08231146104e957806389929d0f1461054e57806395d89b41146105b3578063a9059cbb146106435761012a565b806321097f28116100f257806321097f28146102f057806323b872dd1461032b578063313ce567146103be5780633af32abf146103ef5780635569f5d0146104585761012a565b806306fdde031461012f578063095ea7b3146101bf578063131f41041461023257806318160ddd146102605780631e8683341461028b575b600080fd5b34801561013b57600080fd5b50610144610882565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610184578082015181840152602081019050610169565b50505050905090810190601f1680156101b15780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101cb57600080fd5b50610218600480360360408110156101e257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506108bb565b604051808215151515815260200191505060405180910390f35b61025e6004803603602081101561024857600080fd5b81019080803590602001909291905050506109b3565b005b34801561026c57600080fd5b50610275610a73565b6040518082815260200191505060405180910390f35b34801561029757600080fd5b506102da600480360360208110156102ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ab9565b6040518082815260200191505060405180910390f35b3480156102fc57600080fd5b506103296004803603602081101561031357600080fd5b8101908080359060200190929190505050610bcd565b005b34801561033757600080fd5b506103a46004803603606081101561034e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c37565b604051808215151515815260200191505060405180910390f35b3480156103ca57600080fd5b506103d3610d6f565b604051808260ff1660ff16815260200191505060405180910390f35b3480156103fb57600080fd5b5061043e6004803603602081101561041257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610d74565b604051808215151515815260200191505060405180910390f35b34801561046457600080fd5b5061046d610dcf565b005b34801561047b57600080fd5b506104be6004803603602081101561049257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ec7565b6040518085815260200184815260200183815260200182815260200194505050505060405180910390f35b3480156104f557600080fd5b506105386004803603602081101561050c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610eff565b6040518082815260200191505060405180910390f35b34801561055a57600080fd5b5061059d6004803603602081101561057157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f4d565b6040518082815260200191505060405180910390f35b3480156105bf57600080fd5b506105c8610f9b565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156106085780820151818401526020810190506105ed565b50505050905090810190601f1680156106355780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561064f57600080fd5b5061069c6004803603604081101561066657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610fd4565b604051808215151515815260200191505060405180910390f35b3480156106c257600080fd5b506106f1600480360360208110156106d957600080fd5b81019080803515159060200190929190505050610fec565b005b3480156106ff57600080fd5b50610708611069565b6040518084151515158152602001838152602001828152602001935050505060405180910390f35b34801561073c57600080fd5b50610745611097565b6040518082815260200191505060405180910390f35b34801561076757600080fd5b5061079e6004803603604081101561077e57600080fd5b81019080803590602001909291908035906020019092919050505061109e565b005b3480156107ac57600080fd5b5061080f600480360360408110156107c357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611113565b6040518082815260200191505060405180910390f35b34801561083157600080fd5b506108806004803603604081101561084857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919050505061119f565b005b6040518060400160405280600e81526020017f484f444c206f6e2046616e746f6d00000000000000000000000000000000000081525081565b600081600060010160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b600860000160149054906101000a900460ff166109cf57600080fd5b60086001015481674563918244f4000002816109e757fe5b0434116109f357600080fd5b610a033033620f424084026112af565b50600860000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc349081150290604051600060405180830381858888f19350505050158015610a6f573d6000803e3d6000fd5b5050565b600080610e10600060070154420381610a8857fe5b04905060008060040154600060030154620f4240840281610aa557fe5b0402620f4240601802019050809250505090565b600080610e10600060070154420381610ace57fe5b04905060008060040154600060030154620f4240840281610aeb57fe5b0402620f424060180201905060008060010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154905060008060010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050600064e8d4a51000820290506000838281610ba057fe5b04905060008582029050600064e8d4a510008281610bba57fe5b0490508098505050505050505050919050565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c2a57600080fd5b8060086001018190555050565b600081600060010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610cc857600080fd5b81600060010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282540392505081905550610d638484846112af565b50600190509392505050565b600681565b60008060010160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff169050919050565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e2c57600080fd5b6000600860000160146101000a81548160ff02191690831515021790555060008060010160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050610ec330600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836112af565b5050565b600080600080610ed5610a73565b610ede86610f4d565b610ee787610eff565b610ef088610ab9565b93509350935093509193509193565b60008060010160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b60008060010160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549050919050565b6040518060400160405280600481526020017f484f444c0000000000000000000000000000000000000000000000000000000081525081565b6000610fe13384846112af565b506001905092915050565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461104957600080fd5b80600060050160006101000a81548160ff02191690831515021790555050565b60008060008060050160009054906101000a900460ff16600060030154600060040154925092509250909192565b620f424081565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110fb57600080fd5b81600060030181905550806000600401819055505050565b60008060010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600060020160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146111fc57600080fd5b80600060010160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f5a25e09a5dba33161281055e015f1279b6b10204d8f90dd56a8ce2b82322d43d82604051808215151515815260200191505060405180910390a25050565b6000816112bb85610eff565b101580156112d2575060016112cf85610eff565b10155b6112db57600080fd5b6000809050600060050160009054906101000a900460ff161561177d57600080600060010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541490508015611399576000800154600060010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301819055505b42610e106000600601540110156113f8576000610e106000600701544203816113be57fe5b04905042600060060181905550600060040154600060030154620f42408302816113e457fe5b0402620f4240601802016000800181905550505b60008060010160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154905060008060010160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050600064e8d4a5100060008001548464e8d4a510008502816114a757fe5b0402816114b057fe5b04905080600060010160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055506000800154600060010160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003018190555060008060010160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154905060008060010160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050600064e8d4a5100060008001548464e8d4a510008502816115fa57fe5b04028161160357fe5b04905080600060010160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055506000800154600060010160008d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030181905550600064e8d4a5100060008001548864e8d4a510008e02816116bb57fe5b0402816116c457fe5b04905080600060010160008f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000828254039250508190555080985088600060010160008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101600082825401925050819055505050505050505050611827565b82600060010160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000828254039250508190555082905080600060010160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101600082825401925050819055505b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a380915050939250505056fea265627a7a72315820ae84bc3c77e1384d461eff635b140dc889d3f23bb6dea63f81dccf2c8bbf3c9764736f6c634300050d0032

Deployed Bytecode Sourcemap

27:8258:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;214:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;214:46:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;214:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4392:203;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4392:203:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4392:203:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1930:301;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1930:301:0;;;;;;;;;;;;;;;;;:::i;:::-;;2663;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2663:301:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3635:751;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3635:751:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3635:751:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2237:163;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2237:163:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2237:163:0;;;;;;;;;;;;;;;;;:::i;:::-;;5639:266;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5639:266:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5639:266:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;306:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;306:34:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5385:111;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5385:111:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5385:111:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2405:252;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2405:252:0;;;:::i;:::-;;3365:264;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3365:264:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3365:264:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3113:106;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3113:106:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3113:106:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2970:138;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2970:138:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2970:138:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;264:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;264:38:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;264:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5501:133;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5501:133:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5501:133:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5230:149;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5230:149:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5230:149:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5006:217;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5006:217:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;47:45;;8:9:-1;5:2;;;30:1;27;20:12;5:2;47:45:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4784:216;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4784:216:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4784:216:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3224:136;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3224:136:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3224:136:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4601:177;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4601:177:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4601:177:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;214:46;;;;;;;;;;;;;;;;;;;:::o;4392:203::-;4462:4;4518:7;4473:4;:10;;:22;4484:10;4473:22;;;;;;;;;;;;;;;:32;;:42;4506:8;4473:42;;;;;;;;;;;;;;;:52;;;;4556:8;4535:39;;4544:10;4535:39;;;4566:7;4535:39;;;;;;;;;;;;;;;;;;4586:4;4579:11;;4392:203;;;;:::o;1930:301::-;1992:11;:27;;;;;;;;;;;;1984:36;;;;;;2070:11;:25;;;2059:7;2049;:17;2048:47;;;;;;2036:9;:59;2028:68;;;;;;2110:63;2128:4;2135:10;89:3;2147:7;:25;2110:9;:63::i;:::-;;2189:11;:17;;;;;;;;;;;;:26;;:37;2216:9;2189:37;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2189:37:0;1930:301;:::o;2663:::-;2707:7;2724:25;2785:7;2760:4;:21;;;2754:3;:27;2753:39;;;;;;2724:69;;2804:23;2912:4;:19;;;2889:4;:19;;;89:3;2850:17;:35;2849:59;;;;;;2848:83;89:3;187:2;:20;2830:102;2804:128;;2944:15;2937:22;;;;2663:301;:::o;3635:751::-;3695:24;3731:25;3792:7;3767:4;:21;;;3761:3;:27;3760:39;;;;;;3731:69;;3811:23;3919:4;:19;;;3896:4;:19;;;89:3;3857:17;:35;3856:59;;;;;;3855:83;89:3;187:2;:20;3837:102;3811:128;;3957:31;3991:4;:10;;:17;4002:5;3991:17;;;;;;;;;;;;;;;:41;;;3957:75;;4044:22;4069:4;:10;;:17;4080:5;4069:17;;;;;;;;;;;;;;;:25;;;4044:50;;4114:14;133:4;4132:14;:26;4114:45;;4170:14;4196:23;4187:6;:32;;;;;;4170:49;;4230:14;4256:15;4247:6;:24;4230:41;;4282:30;133:4;4316:6;4315:20;;;;;;4282:53;;4358:22;4350:31;;;;;;;;;;3635:751;;;:::o;2237:163::-;2334:4;:10;;;;;;;;;;;;2320:24;;:10;:24;;;2312:33;;;;;;2381:14;2353:11;:25;;:42;;;;2237:163;:::o;5639:266::-;5724:4;5786:7;5743:4;:10;;:17;5754:5;5743:17;;;;;;;;;;;;;;;:27;;:39;5771:10;5743:39;;;;;;;;;;;;;;;;:50;;5735:59;;;;;;5842:7;5799:4;:10;;:17;5810:5;5799:17;;;;;;;;;;;;;;;:27;;:39;5827:10;5799:39;;;;;;;;;;;;;;;;:50;;;;;;;;;;;5854:30;5864:5;5871:3;5876:7;5854:9;:30::i;:::-;;5896:4;5889:11;;5639:266;;;;;:::o;306:34::-;339:1;306:34;:::o;5385:111::-;5444:4;5462;:10;;:17;5473:5;5462:17;;;;;;;;;;;;;;;:29;;;;;;;;;;;;5455:36;;5385:111;;;:::o;2405:252::-;2469:4;:10;;;;;;;;;;;;2455:24;;:10;:24;;;2447:33;;;;;;2518:5;2488:11;:27;;;:35;;;;;;;;;;;;;;;;;;2531:23;2557:4;:10;;:25;2576:4;2557:25;;;;;;;;;;;;;;;:33;;;2531:59;;2599:53;2617:4;2624;:10;;;;;;;;;;;;2636:15;2599:9;:53::i;:::-;;2405:252;:::o;3365:264::-;3421:24;3447:28;3477:19;3498:23;3536:13;:11;:13::i;:::-;3551:32;3577:5;3551:25;:32::i;:::-;3585:16;3595:5;3585:9;:16::i;:::-;3603:20;3617:5;3603:13;:20::i;:::-;3528:96;;;;;;;;3365:264;;;;;:::o;3113:106::-;3168:7;3189:4;:10;;:17;3200:5;3189:17;;;;;;;;;;;;;;;:25;;;3182:32;;3113:106;;;:::o;2970:138::-;3041:7;3062:4;:10;;:17;3073:5;3062:17;;;;;;;;;;;;;;;:41;;;3055:48;;2970:138;;;:::o;264:38::-;;;;;;;;;;;;;;;;;;;:::o;5501:133::-;5567:4;5578:35;5588:10;5600:3;5605:7;5578:9;:35::i;:::-;;5625:4;5618:11;;5501:133;;;;:::o;5230:149::-;5317:4;:10;;;;;;;;;;;;5303:24;;:10;:24;;;5295:33;;;;;;5357:17;5333:4;:21;;;:41;;;;;;;;;;;;;;;;;;5230:149;:::o;5006:217::-;5055:22;5079:29;5110;5154:4;:21;;;;;;;;;;;;5177:4;:19;;;5198:4;:19;;;5146:72;;;;;;5006:217;;;:::o;47:45::-;89:3;47:45;:::o;4784:216::-;4900:4;:10;;;;;;;;;;;;4886:24;;:10;:24;;;4878:33;;;;;;4938:15;4916:4;:19;;:37;;;;4980:15;4958:4;:19;;:37;;;;4784:216;;:::o;3224:136::-;3297:7;3318:4;:10;;:17;3329:5;3318:17;;;;;;;;;;;;;;;:27;;:37;3346:8;3318:37;;;;;;;;;;;;;;;;3311:44;;3224:136;;;;:::o;4601:177::-;4683:4;:10;;;;;;;;;;;;4669:24;;:10;:24;;;4661:33;;;;;;4731:7;4699:4;:10;;:17;4710:5;4699:17;;;;;;;;;;;;;;;:29;;;:39;;;;;;;;;;;;;;;;;;4758:5;4748:25;;;4765:7;4748:25;;;;;;;;;;;;;;;;;;;;;;4601:177;;:::o;5911:2371::-;5993:7;6038;6018:16;6028:5;6018:9;:16::i;:::-;:27;;:52;;;;;6069:1;6049:16;6059:5;6049:9;:16::i;:::-;:21;;6018:52;6010:61;;;;;;6082:20;6105:1;6082:24;;6118:4;:21;;;;;;;;;;;;6115:2083;;;6152:14;6196:1;6169:4;:10;;:15;6180:3;6169:15;;;;;;;;;;;;;;;:23;;;:28;6152:45;;6240:9;6237:102;;;6313:4;:16;;;6271:4;:10;;:15;6282:3;6271:15;;;;;;;;;;;;;;;:39;;:58;;;;6237:102;6414:3;6404:7;6381:4;:20;;;:30;:36;6378:329;;;6439:25;6500:7;6475:4;:21;;;6469:3;:27;6468:39;;;;;;6439:69;;6544:3;6521:4;:20;;:26;;;;6677:4;:19;;;6654:4;:19;;;89:3;6615:17;:35;6614:59;;;;;;6613:83;89:3;187:2;:20;6595:102;6576:4;:16;;:121;;;;6378:329;;6752:35;6790:4;:10;;:17;6801:5;6790:17;;;;;;;;;;;;;;;:41;;;6752:79;;6855:26;6884:4;:10;;:17;6895:5;6884:17;;;;;;;;;;;;;;;:25;;;6855:54;;6924:34;133:4;7030;:16;;;6999:27;133:4;6965:18;:30;6964:62;;;;;;6963:83;6961:99;;;;;;6924:136;;7117:26;7089:4;:10;;:17;7100:5;7089:17;;;;;;;;;;;;;;;:25;;:54;;;;7202:4;:16;;;7158:4;:10;;:17;7169:5;7158:17;;;;;;;;;;;;;;;:41;;:60;;;;7280:33;7316:4;:10;;:15;7327:3;7316:15;;;;;;;;;;;;;;;:39;;;7280:75;;7384:24;7411:4;:10;;:15;7422:3;7411:15;;;;;;;;;;;;;;;:23;;;7384:50;;7449:32;133:4;7549;:16;;;7520:25;133:4;7488:16;:28;7487:58;;;;;;7486:79;7484:95;;;;;;7449:130;;7637:24;7611:4;:10;;:15;7622:3;7611:15;;;;;;;;;;;;;;;:23;;:50;;;;7712:4;:16;;;7670:4;:10;;:15;7681:3;7670:15;;;;;;;;;;;;;;;:39;;:58;;;;7778:22;133:4;7862;:16;;;7831:27;133:4;7808:7;:19;7807:51;;;;;;7806:72;7804:88;;;;;;7778:115;;7942:14;7913:4;:10;;:17;7924:5;7913:17;;;;;;;;;;;;;;;:25;;;:43;;;;;;;;;;;7980:14;7965:29;;8030:12;8003:4;:10;;:15;8014:3;8003:15;;;;;;;;;;;;;;;:23;;;:39;;;;;;;;;;;6115:2083;;;;;;;;;;;8106:7;8077:4;:10;;:17;8088:5;8077:17;;;;;;;;;;;;;;;:25;;;:36;;;;;;;;;;;8137:7;8122:22;;8180:12;8153:4;:10;;:15;8164:3;8153:15;;;;;;;;;;;;;;;:23;;;:39;;;;;;;;;;;6115:2083;8232:3;8216:34;;8225:5;8216:34;;;8237:12;8216:34;;;;;;;;;;;;;;;;;;8265:12;8258:19;;;5911:2371;;;;;:::o

Swarm Source

bzzr://ae84bc3c77e1384d461eff635b140dc889d3f23bb6dea63f81dccf2c8bbf3c97

Block Transaction Gas Used Reward
view all blocks produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.