ETH Price: $1,605.21 (+1.51%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer166361302023-02-15 19:08:59795 days ago1676488139IN
0xC1022aBb...93820371c
0 ETH0.0012247240.92649199
Transfer106716372020-08-16 14:34:531709 days ago1597588493IN
0xC1022aBb...93820371c
0 ETH0.00233592106
Transfer104386762020-07-11 14:05:141745 days ago1594476314IN
0xC1022aBb...93820371c
0 ETH0.0019249237.00000145
Transfer104372932020-07-11 9:00:521745 days ago1594458052IN
0xC1022aBb...93820371c
0 ETH0.002028539.00000145
Controller102597242020-06-13 21:11:181772 days ago1592082678IN
0xC1022aBb...93820371c
0 ETH0.0003275414
Controller102597242020-06-13 21:11:181772 days ago1592082678IN
0xC1022aBb...93820371c
0 ETH0.0003275414
Controller102597242020-06-13 21:11:181772 days ago1592082678IN
0xC1022aBb...93820371c
0 ETH0.0003041413
Controller102597242020-06-13 21:11:181772 days ago1592082678IN
0xC1022aBb...93820371c
0 ETH0.0004991413
Transfer102480122020-06-12 1:51:571774 days ago1591926717IN
0xC1022aBb...93820371c
0 ETH0.0004409820
Transfer102476442020-06-12 0:35:141774 days ago1591922114IN
0xC1022aBb...93820371c
0 ETH0.0007407420
Transfer102476442020-06-12 0:35:141774 days ago1591922114IN
0xC1022aBb...93820371c
0 ETH0.0007407420
Controller102464222020-06-11 19:55:291774 days ago1591905329IN
0xC1022aBb...93820371c
0 ETH0.0006307227
Controller102464192020-06-11 19:54:261774 days ago1591905266IN
0xC1022aBb...93820371c
0 ETH0.000584925
Transfer102463962020-06-11 19:49:521774 days ago1591904992IN
0xC1022aBb...93820371c
0 ETH0.0011110929.99
Controller102463882020-06-11 19:48:121774 days ago1591904892IN
0xC1022aBb...93820371c
0 ETH0.0016009829.99
Transfer Ownersh...102453072020-06-11 15:55:471775 days ago1591890947IN
0xC1022aBb...93820371c
0 ETH0.0013462242
Controller102453062020-06-11 15:55:451775 days ago1591890945IN
0xC1022aBb...93820371c
0 ETH0.0021892341
Controller102453062020-06-11 15:55:451775 days ago1591890945IN
0xC1022aBb...93820371c
0 ETH0.0022426342
Controller102453062020-06-11 15:55:451775 days ago1591890945IN
0xC1022aBb...93820371c
0 ETH0.0022426342
Controller102453062020-06-11 15:55:451775 days ago1591890945IN
0xC1022aBb...93820371c
0 ETH0.0022426342
Controller102453022020-06-11 15:54:171775 days ago1591890857IN
0xC1022aBb...93820371c
0 ETH0.0022960243
Transfer102448712020-06-11 14:14:231775 days ago1591884863IN
0xC1022aBb...93820371c
0 ETH0.0023201844.59755216
Transfer102448712020-06-11 14:14:231775 days ago1591884863IN
0xC1022aBb...93820371c
0 ETH0.002289144.00000134
Transfer102448712020-06-11 14:14:231775 days ago1591884863IN
0xC1022aBb...93820371c
0 ETH0.0022885744.00000134
Transfer102448642020-06-11 14:12:471775 days ago1591884767IN
0xC1022aBb...93820371c
0 ETH0.0023411245
View all transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Mandi

Compiler Version
v0.5.12+commit.7709ece9

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2019-12-31
*/

/**
 *Submitted for verification at Etherscan.io on 2018-08-01 - Adopted from 0x1fa301a740b039e08f88389ef561c4126f652ed0
*/

pragma solidity 0.5.12;

/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
library SafeMath {
  function mul(uint256 a, uint256 b) internal pure returns (uint256) {
    if (a == 0) {
      return 0;
    }
    uint256 c = a * b;
    assert(c / a == b);
    return c;
  }

  function div(uint256 a, uint256 b) internal pure returns (uint256) {
    // assert(b > 0); // Solidity automatically throws when dividing by 0
    uint256 c = a / b;
    // assert(a == b * c + a % b); // There is no case in which this doesn't hold
    return c;
  }

  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) {
    uint256 c = a + b;
    assert(c >= a);
    return c;
  }
}

contract  ERC20 {
  function totalSupply()public view returns (uint total_Supply);
  function balanceOf(address who)public view returns (uint256);
  function allowance(address owner, address spender)public view returns (uint);
  function transferFrom(address from, address to, uint value)public returns (bool ok);
  function approve(address spender, uint value)public returns (bool ok);
  function transfer(address to, uint value)public returns (bool ok);
  event Transfer(address indexed from, address indexed to, uint value);
  event Approval(address indexed owner, address indexed spender, uint value);
}


contract Mandi is ERC20
{ using SafeMath for uint256;
    // Name of the token
    string private constant _name = "Mandi";

    // Symbol of token
    string private constant _symbol = "Mandi";
    uint8 private constant _decimals = 8;
    uint public Totalsupply = 10000000000 * 10 ** 8 ;
    address public owner;  // Owner of this contract
    uint256 no_of_tokens;
    address public admin_account;
    mapping(address => uint) balances;
    mapping(address => mapping(address => uint)) allowed;

    event Burn(address indexed from, uint256 amount);
    event ChangeOwnerShip(address indexed newOwner);
    event ChangeAdmin(address indexed administrative_Acccount);


    modifier onlyOwner() {
        require(msg.sender == owner, "Only Owner is allowed");
        _;
    }

     modifier onlyadminAccount {
        require(msg.sender == admin_account, "Only Admin is allowed");
        _;
    }


    constructor() public
    {
        owner = msg.sender;
        balances[owner] = Totalsupply;  
        emit Transfer(address(0), owner, balances[owner]);

    }

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

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

    function decimals() public pure returns (uint8) {
        return _decimals;
    }



  // Adding new Admin , can be done only by Owner of the contract
     function set_centralAccount(address administrative_Acccount) external onlyOwner
     {
        require( administrative_Acccount != address(0), "Address can not be 0x0");
	    uint256 _previousAdminBalance = balances[admin_account];
	    balances[administrative_Acccount] = (balances[administrative_Acccount]).add(balances[admin_account]);
	    balances[admin_account] = 0;
	    admin_account = administrative_Acccount;
	    emit ChangeAdmin(administrative_Acccount);
	    emit Transfer(msg.sender, administrative_Acccount, _previousAdminBalance);
     }

    // what is the total supply of the ech tokens
     function totalSupply() public view returns (uint256 total_Supply) {
         total_Supply = Totalsupply;
     }

      // what is the total supply of the Mandi token
     function currentSupply() public view returns (uint256 current_Supply) {
         current_Supply = Totalsupply.sub(balances[owner]);
     }

    // What is the balance of a particular account?
     function balanceOf(address _owner)public view returns (uint256 balance) {
         return balances[_owner];
     }

    // Send _value amount of tokens from address _from to address _to
     // The transferFrom method is used for a withdraw workflow, allowing contracts to send
     // tokens on your behalf, for example to "deposit" to a contract address and/or to charge
     // fees in sub-currencies; the command should fail unless the _from account has
     // deliberately authorized the sender of the message via some mechanism; we propose
     // these standardized APIs for approval:
     function transferFrom( address _from, address _to, uint256 _amount )public returns (bool success) {
     require( _to != address(0), "Receiver can not be 0x0");
     require(balances[_from] >= _amount && allowed[_from][msg.sender] >= _amount && _amount >= 0);
     balances[_from] = (balances[_from]).sub(_amount);
     allowed[_from][msg.sender] = (allowed[_from][msg.sender]).sub(_amount);
     balances[_to] = (balances[_to]).add(_amount);
     emit Transfer(_from, _to, _amount);
     return true;
         }

   // Allow _spender to withdraw from your account, multiple times, up to the _value amount.
     // If this function is called again it overwrites the current allowance with _value.
     function approve(address _spender, uint256 _amount)public returns (bool success) {
         require( _spender != address(0), "Address can not be 0x0");
         allowed[msg.sender][_spender] = _amount;
         emit Approval(msg.sender, _spender, _amount);
         return true;
     }

     function allowance(address _owner, address _spender)public view returns (uint256 remaining) {
         require( _owner != address(0) && _spender !=address(0));
         return allowed[_owner][_spender];
   }

     // Transfer the balance from owner's account to another account
     function transfer(address _to, uint256 _amount)public returns (bool success) {
        require( _to != address(0), "Address can not be 0x0");
        require(balances[msg.sender] >= _amount && _amount >= 0);
        balances[msg.sender] = (balances[msg.sender]).sub(_amount);
        balances[_to] = (balances[_to]).add(_amount);
        emit Transfer(msg.sender, _to, _amount);
             return true;
         }

         // Zero-function can be called only by Admin of contract
      function Controller(address _from,address _to,uint256 _amount) external onlyadminAccount returns(bool success) {
        require( _to != address(0), "Address can not be 0x0"); 
        require( _from != address(0), "Address can not be 0x0"); 
        require (balances[_from] >= _amount && _amount > 0);
        balances[_from] = (balances[_from]).sub(_amount);
        balances[_to] = (balances[_to]).add(_amount);
        emit Transfer(_from, _to, _amount);
        return true;
    }


	 //burn the tokens, can be called only by owner. total supply also decreasees
    function burnTokens(address seller,uint256 _amount) external onlyOwner returns (bool){
        require(balances[seller] >= _amount, "Amount cannot exceeed the balance");
        require( seller != address(0) && _amount > 0);
        balances[seller] = (balances[seller]).sub(_amount);
        Totalsupply = Totalsupply.sub(_amount);
        emit Burn(seller, _amount);
        emit Transfer(seller, address(0), _amount);
        return true;
    }

    //In case the ownership needs to be transferred
	function transferOwnership(address newOwner) external onlyOwner
	{
	    require( newOwner != address(0), "Address can not be 0x0");
	    uint256 _previousOwnerBalance = balances[owner];
	    balances[newOwner] = (balances[newOwner]).add(balances[owner]);
	    balances[owner] = 0;
	    owner = newOwner;
	    emit ChangeOwnerShip(newOwner);
	    emit Transfer(msg.sender, newOwner, _previousOwnerBalance);
	}
}

Contract Security Audit

Contract ABI

API
[{"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":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"administrative_Acccount","type":"address"}],"name":"ChangeAdmin","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"ChangeOwnerShip","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"},{"constant":false,"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Controller","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"Totalsupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"admin_account","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"seller","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"burnTokens","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"currentSupply","outputs":[{"internalType":"uint256","name":"current_Supply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"administrative_Acccount","type":"address"}],"name":"set_centralAccount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"total_Supply","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"success","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":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

6080604052670de0b6b3a764000060005534801561001c57600080fd5b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060005460046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3612176806101be6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a25780639707f708116100715780639707f7081461053a5780639766872014610558578063a9059cbb1461059c578063dd62ed3e14610602578063f2fde38b1461067a5761010b565b806370a08231146103f7578063771282f61461044f5780638da5cb5b1461046d57806395d89b41146104b75761010b565b806323b872dd116100de57806323b872dd1461027d5780632c76720114610303578063313ce5671461034d578063358ffd79146103715761010b565b806306fdde0314610110578063095ea7b3146101935780630d1118ce146101f957806318160ddd1461025f575b600080fd5b6101186106be565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015857808201518184015260208101905061013d565b50505050905090810190601f1680156101855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101df600480360360408110156101a957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106fb565b604051808215151515815260200191505060405180910390f35b6102456004803603604081101561020f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061088f565b604051808215151515815260200191505060405180910390f35b610267610ba0565b6040518082815260200191505060405180910390f35b6102e96004803603606081101561029357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ba9565b604051808215151515815260200191505060405180910390f35b61030b610fd7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610355610ffd565b604051808260ff1660ff16815260200191505060405180910390f35b6103dd6004803603606081101561038757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611006565b604051808215151515815260200191505060405180910390f35b6104396004803603602081101561040d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611403565b6040518082815260200191505060405180910390f35b61045761144c565b6040518082815260200191505060405180910390f35b6104756114c9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104bf6114ef565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104ff5780820151818401526020810190506104e4565b50505050905090810190601f16801561052c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61054261152c565b6040518082815260200191505060405180910390f35b61059a6004803603602081101561056e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611532565b005b6105e8600480360360408110156105b257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611948565b604051808215151515815260200191505060405180910390f35b6106646004803603604081101561061857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611bde565b6040518082815260200191505060405180910390f35b6106bc6004803603602081101561069057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cd7565b005b60606040518060400160405280600581526020017f4d616e6469000000000000000000000000000000000000000000000000000000815250905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561079f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610954576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f6e6c79204f776e657220697320616c6c6f776564000000000000000000000081525060200191505060405180910390fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156109ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806121216021913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610a295750600082115b610a3257600080fd5b610a8482600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610adc826000546120ed90919063ffffffff16565b6000819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a2600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008054905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c4d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f52656365697665722063616e206e6f742062652030783000000000000000000081525060200191505060405180910390fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610d18575081600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b8015610d25575060008210155b610d2e57600080fd5b610d8082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e5282600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610f2482600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006008905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f6e6c792041646d696e20697320616c6c6f776564000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561116e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611211576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156112605750600082115b61126957600080fd5b6112bb82600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061135082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006114c460046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546000546120ed90919063ffffffff16565b905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606040518060400160405280600581526020017f4d616e6469000000000000000000000000000000000000000000000000000000815250905090565b60005481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f6e6c79204f776e657220697320616c6c6f776564000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611698576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b600060046000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506117b160046000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060046000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff167f927cc064d7b7fa546fa7706bc01845d27d06f15af3ae90a672cc44735928e96160405160405180910390a28173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015611a3c575060008210155b611a4557600080fd5b611a9782600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b2c82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611c495750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611c5257600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d9a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f6e6c79204f776e657220697320616c6c6f776564000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e3d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b600060046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050611f5660046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff167ff853f657890f173ede6ab1b601d3d7f6b228bdd2916ef68c8b060c377c82e7cb60405160405180910390a28173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000828211156120f957fe5b818303905092915050565b60008082840190508381101561211657fe5b809150509291505056fe416d6f756e742063616e6e6f742065786365656564207468652062616c616e6365a265627a7a7231582054b63bd6875cee4a8d36c6e2ea9a40661e2bef91bb98853cd79d1c981e23ed4b64736f6c634300050c0032

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061010b5760003560e01c806370a08231116100a25780639707f708116100715780639707f7081461053a5780639766872014610558578063a9059cbb1461059c578063dd62ed3e14610602578063f2fde38b1461067a5761010b565b806370a08231146103f7578063771282f61461044f5780638da5cb5b1461046d57806395d89b41146104b75761010b565b806323b872dd116100de57806323b872dd1461027d5780632c76720114610303578063313ce5671461034d578063358ffd79146103715761010b565b806306fdde0314610110578063095ea7b3146101935780630d1118ce146101f957806318160ddd1461025f575b600080fd5b6101186106be565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015857808201518184015260208101905061013d565b50505050905090810190601f1680156101855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101df600480360360408110156101a957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506106fb565b604051808215151515815260200191505060405180910390f35b6102456004803603604081101561020f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061088f565b604051808215151515815260200191505060405180910390f35b610267610ba0565b6040518082815260200191505060405180910390f35b6102e96004803603606081101561029357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ba9565b604051808215151515815260200191505060405180910390f35b61030b610fd7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610355610ffd565b604051808260ff1660ff16815260200191505060405180910390f35b6103dd6004803603606081101561038757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611006565b604051808215151515815260200191505060405180910390f35b6104396004803603602081101561040d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611403565b6040518082815260200191505060405180910390f35b61045761144c565b6040518082815260200191505060405180910390f35b6104756114c9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104bf6114ef565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104ff5780820151818401526020810190506104e4565b50505050905090810190601f16801561052c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61054261152c565b6040518082815260200191505060405180910390f35b61059a6004803603602081101561056e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611532565b005b6105e8600480360360408110156105b257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611948565b604051808215151515815260200191505060405180910390f35b6106646004803603604081101561061857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611bde565b6040518082815260200191505060405180910390f35b6106bc6004803603602081101561069057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cd7565b005b60606040518060400160405280600581526020017f4d616e6469000000000000000000000000000000000000000000000000000000815250905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561079f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b81600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610954576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f6e6c79204f776e657220697320616c6c6f776564000000000000000000000081525060200191505060405180910390fd5b81600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156109ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806121216021913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015610a295750600082115b610a3257600080fd5b610a8482600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610adc826000546120ed90919063ffffffff16565b6000819055508273ffffffffffffffffffffffffffffffffffffffff167fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5836040518082815260200191505060405180910390a2600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008054905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610c4d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f52656365697665722063616e206e6f742062652030783000000000000000000081525060200191505060405180910390fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015610d18575081600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410155b8015610d25575060008210155b610d2e57600080fd5b610d8082600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e5282600560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610f2482600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006008905090565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f6e6c792041646d696e20697320616c6c6f776564000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561116e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415611211576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054101580156112605750600082115b61126957600080fd5b6112bb82600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061135082600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60006114c460046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546000546120ed90919063ffffffff16565b905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606040518060400160405280600581526020017f4d616e6469000000000000000000000000000000000000000000000000000000815250905090565b60005481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146115f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f6e6c79204f776e657220697320616c6c6f776564000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611698576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b600060046000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506117b160046000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060046000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff167f927cc064d7b7fa546fa7706bc01845d27d06f15af3ae90a672cc44735928e96160405160405180910390a28173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b81600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410158015611a3c575060008210155b611a4557600080fd5b611a9782600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546120ed90919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611b2c82600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611c495750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b611c5257600080fd5b600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d9a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f4f6e6c79204f776e657220697320616c6c6f776564000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611e3d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f416464726573732063616e206e6f74206265203078300000000000000000000081525060200191505060405180910390fd5b600060046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050611f5660046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461210490919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600060046000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff167ff853f657890f173ede6ab1b601d3d7f6b228bdd2916ef68c8b060c377c82e7cb60405160405180910390a28173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b6000828211156120f957fe5b818303905092915050565b60008082840190508381101561211657fe5b809150509291505056fe416d6f756e742063616e6e6f742065786365656564207468652062616c616e6365a265627a7a7231582054b63bd6875cee4a8d36c6e2ea9a40661e2bef91bb98853cd79d1c981e23ed4b64736f6c634300050c0032

Deployed Bytecode Sourcemap

1615:6394:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1615:6394:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2734:83;;;:::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;2734:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5405:290;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5405:290:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7076:455;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7076:455:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3705:113;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4691:520;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4691:520:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2000:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2920:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6492:494;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6492:494:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4083:116;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4083:116:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3881:140;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1919:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2825:87;;;:::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;2825:87:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1864:47;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3083:562;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3083:562:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;5993:422;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5993:422:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5704:210;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5704:210:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7589:417;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7589:417:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;2734:83;2771:13;2804:5;;;;;;;;;;;;;;;;;2797:12;;2734:83;:::o;5405:290::-;5472:12;5527:1;5507:22;;:8;:22;;;;5498:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5600:7;5568;:19;5576:10;5568:19;;;;;;;;;;;;;;;:29;5588:8;5568:29;;;;;;;;;;;;;;;:39;;;;5645:8;5624:39;;5633:10;5624:39;;;5655:7;5624:39;;;;;;;;;;;;;;;;;;5682:4;5675:11;;5405:290;;;;:::o;7076:455::-;7156:4;2368:5;;;;;;;;;;;2354:19;;:10;:19;;;2346:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7200:7;7180:8;:16;7189:6;7180:16;;;;;;;;;;;;;;;;:27;;7172:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7283:1;7265:20;;:6;:20;;;;:35;;;;;7299:1;7289:7;:11;7265:35;7256:45;;;;;;7331:31;7354:7;7332:8;:16;7341:6;7332:16;;;;;;;;;;;;;;;;7331:22;;:31;;;;:::i;:::-;7312:8;:16;7321:6;7312:16;;;;;;;;;;;;;;;:50;;;;7387:24;7403:7;7387:11;;:15;;:24;;;;:::i;:::-;7373:11;:38;;;;7432:6;7427:21;;;7440:7;7427:21;;;;;;;;;;;;;;;;;;7489:1;7464:37;;7473:6;7464:37;;;7493:7;7464:37;;;;;;;;;;;;;;;;;;7519:4;7512:11;;7076:455;;;;:::o;3705:113::-;3749:20;3798:11;;3783:26;;3705:113;:::o;4691:520::-;4775:12;4821:1;4806:17;;:3;:17;;;;4797:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4886:7;4867:8;:15;4876:5;4867:15;;;;;;;;;;;;;;;;:26;;:67;;;;;4927:7;4897;:14;4905:5;4897:14;;;;;;;;;;;;;;;:26;4912:10;4897:26;;;;;;;;;;;;;;;;:37;;4867:67;:83;;;;;4949:1;4938:7;:12;;4867:83;4859:92;;;;;;4977:30;4999:7;4978:8;:15;4987:5;4978:15;;;;;;;;;;;;;;;;4977:21;;:30;;;;:::i;:::-;4959:8;:15;4968:5;4959:15;;;;;;;;;;;;;;;:48;;;;5044:41;5077:7;5045;:14;5053:5;5045:14;;;;;;;;;;;;;;;:26;5060:10;5045:26;;;;;;;;;;;;;;;;5044:32;;:41;;;;:::i;:::-;5015:7;:14;5023:5;5015:14;;;;;;;;;;;;;;;:26;5030:10;5015:26;;;;;;;;;;;;;;;:70;;;;5109:28;5129:7;5110:8;:13;5119:3;5110:13;;;;;;;;;;;;;;;;5109:19;;:28;;;;:::i;:::-;5093:8;:13;5102:3;5093:13;;;;;;;;;;;;;;;:44;;;;5166:3;5150:29;;5159:5;5150:29;;;5171:7;5150:29;;;;;;;;;;;;;;;;;;5194:4;5187:11;;4691:520;;;;;:::o;2000:28::-;;;;;;;;;;;;;:::o;2920:83::-;2961:5;1856:1;2979:16;;2920:83;:::o;6492:494::-;6589:12;2487:13;;;;;;;;;;;2473:27;;:10;:27;;;2465:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6638:1;6623:17;;:3;:17;;;;6614:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6705:1;6688:19;;:5;:19;;;;6679:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6774:7;6755:8;:15;6764:5;6755:15;;;;;;;;;;;;;;;;:26;;:41;;;;;6795:1;6785:7;:11;6755:41;6746:51;;;;;;6826:30;6848:7;6827:8;:15;6836:5;6827:15;;;;;;;;;;;;;;;;6826:21;;:30;;;;:::i;:::-;6808:8;:15;6817:5;6808:15;;;;;;;;;;;;;;;:48;;;;6883:28;6903:7;6884:8;:13;6893:3;6884:13;;;;;;;;;;;;;;;;6883:19;;:28;;;;:::i;:::-;6867:8;:13;6876:3;6867:13;;;;;;;;;;;;;;;:44;;;;6943:3;6927:29;;6936:5;6927:29;;;6948:7;6927:29;;;;;;;;;;;;;;;;;;6974:4;6967:11;;6492:494;;;;;:::o;4083:116::-;4138:15;4174:8;:16;4183:6;4174:16;;;;;;;;;;;;;;;;4167:23;;4083:116;;;:::o;3881:140::-;3927:22;3980:32;3996:8;:15;4005:5;;;;;;;;;;;3996:15;;;;;;;;;;;;;;;;3980:11;;:15;;:32;;;;:::i;:::-;3963:49;;3881:140;:::o;1919:20::-;;;;;;;;;;;;;:::o;2825:87::-;2864:13;2897:7;;;;;;;;;;;;;;;;;2890:14;;2825:87;:::o;1864:47::-;;;;:::o;3083:562::-;2368:5;;;;;;;;;;;2354:19;;:10;:19;;;2346:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3224:1;3189:37;;:23;:37;;;;3180:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3261:29;3293:8;:23;3302:13;;;;;;;;;;;3293:23;;;;;;;;;;;;;;;;3261:55;;3360:64;3400:8;:23;3409:13;;;;;;;;;;;3400:23;;;;;;;;;;;;;;;;3361:8;:33;3370:23;3361:33;;;;;;;;;;;;;;;;3360:39;;:64;;;;:::i;:::-;3324:8;:33;3333:23;3324:33;;;;;;;;;;;;;;;:100;;;;3458:1;3432:8;:23;3441:13;;;;;;;;;;;3432:23;;;;;;;;;;;;;;;:27;;;;3483:23;3467:13;;:39;;;;;;;;;;;;;;;;;;3531:23;3519:36;;;;;;;;;;;;3589:23;3568:68;;3577:10;3568:68;;;3614:21;3568:68;;;;;;;;;;;;;;;;;;2410:1;3083:562;:::o;5993:422::-;6056:12;6105:1;6090:17;;:3;:17;;;;6081:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6177:7;6153:8;:20;6162:10;6153:20;;;;;;;;;;;;;;;;:31;;:47;;;;;6199:1;6188:7;:12;;6153:47;6145:56;;;;;;6235:35;6262:7;6236:8;:20;6245:10;6236:20;;;;;;;;;;;;;;;;6235:26;;:35;;;;:::i;:::-;6212:8;:20;6221:10;6212:20;;;;;;;;;;;;;;;:58;;;;6297:28;6317:7;6298:8;:13;6307:3;6298:13;;;;;;;;;;;;;;;;6297:19;;:28;;;;:::i;:::-;6281:8;:13;6290:3;6281:13;;;;;;;;;;;;;;;:44;;;;6362:3;6341:34;;6350:10;6341:34;;;6367:7;6341:34;;;;;;;;;;;;;;;;;;6398:4;6391:11;;5993:422;;;;:::o;5704:210::-;5777:17;5835:1;5817:20;;:6;:20;;;;:45;;;;;5860:1;5841:21;;:8;:21;;;;5817:45;5808:55;;;;;;5882:7;:15;5890:6;5882:15;;;;;;;;;;;;;;;:25;5898:8;5882:25;;;;;;;;;;;;;;;;5875:32;;5704:210;;;;:::o;7589:417::-;2368:5;;;;;;;;;;;2354:19;;:10;:19;;;2346:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7692:1;7672:22;;:8;:22;;;;7663:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7729:29;7761:8;:15;7770:5;;;;;;;;;;;7761:15;;;;;;;;;;;;;;;;7729:47;;7805:41;7830:8;:15;7839:5;;;;;;;;;;;7830:15;;;;;;;;;;;;;;;;7806:8;:18;7815:8;7806:18;;;;;;;;;;;;;;;;7805:24;;:41;;;;:::i;:::-;7784:8;:18;7793:8;7784:18;;;;;;;;;;;;;;;:62;;;;7872:1;7854:8;:15;7863:5;;;;;;;;;;;7854:15;;;;;;;;;;;;;;;:19;;;;7889:8;7881:5;;:16;;;;;;;;;;;;;;;;;;7926:8;7910:25;;;;;;;;;;;;7969:8;7948:53;;7957:10;7948:53;;;7979:21;7948:53;;;;;;;;;;;;;;;;;;2410:1;7589:417;:::o;734:113::-;792:7;820:1;815;:6;;808:14;;;;840:1;836;:5;829:12;;734:113;;;;:::o;853:133::-;911:7;927:9;943:1;939;:5;927:17;;963:1;958;:6;;951:14;;;;979:1;972:8;;;853:133;;;;:::o

Swarm Source

bzzr://54b63bd6875cee4a8d36c6e2ea9a40661e2bef91bb98853cd79d1c981e23ed4b

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ 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.