ETH Price: $3,320.36 (+0.36%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Withdraw Reserve...84192562019-08-25 12:04:171963 days ago1566734657IN
0x917AA8CC...eA4627D12
0 ETH0.000449429.6
Deposit Token84192422019-08-25 12:01:541963 days ago1566734514IN
0x917AA8CC...eA4627D12
0 ETH0.0006717710
Deposit Token84192182019-08-25 11:56:021963 days ago1566734162IN
0x917AA8CC...eA4627D12
0 ETH0.000483399
Withdraw Tokens84190912019-08-25 11:26:331963 days ago1566732393IN
0x917AA8CC...eA4627D12
0 ETH0.0009927620
Convert To Smart...84190892019-08-25 11:25:581963 days ago1566732358IN
0x917AA8CC...eA4627D12
0 ETH0.0018188420
Deposit Token84190812019-08-25 11:23:521963 days ago1566732232IN
0x917AA8CC...eA4627D12
0 ETH0.0013435420
Deposit Token84190742019-08-25 11:22:491963 days ago1566732169IN
0x917AA8CC...eA4627D12
0 ETH0.0013742220

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SmartsToken

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

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

pragma solidity ^0.4.24;

library SafeMath {
    function add(uint a, uint b) internal pure returns (uint c) {
        c = a + b;
        require(c >= a);
    }
    function sub(uint a, uint b) internal pure returns (uint c) {
        require(b <= a);
        c = a - b;
    }
    function mul(uint a, uint b) internal pure returns (uint c) {
        c = a * b;
        require(a == 0 || c / a == b);
    }
    function div(uint a, uint b) internal pure returns (uint c) {
        require(b > 0);
        c = a / b;
    }
    function exp(uint a, uint b) internal pure returns (uint c) {
        require(b >= 0 && a >= 0);
        c = a ** b;
    }
}

contract ERC20Interface {
    function totalSupply() public constant returns (uint);
    function balanceOf(address tokenOwner) public constant returns (uint balance);
    function allowance(address tokenOwner, address spender) public constant returns (uint remaining);
    function transfer(address to, uint tokens) public returns (bool success);
    function approve(address spender, uint tokens) public returns (bool success);
    function transferFrom(address from, address to, uint tokens) public returns (bool success);

    event Transfer(address indexed from, address indexed to, uint tokens);
    event Approval(address indexed tokenOwner, address indexed spender, uint tokens);
}

contract Owned {
    address public owner;
    address public newOwner;

    event OwnershipTransferred(address indexed _from, address indexed _to);

    constructor() public {
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function transferOwnership(address _newOwner) public onlyOwner {
        newOwner = _newOwner;
    }
    function acceptOwnership() public {
        require(msg.sender == newOwner);
        emit OwnershipTransferred(owner, newOwner);
        owner = newOwner;
        newOwner = address(0);
    }
}

contract TokenCore is ERC20Interface {
    using SafeMath for uint;

    string public symbol;
    string public  name;
    uint8 public decimals;
    uint public _totalSupply;

    mapping(address => uint) balances;
    mapping(address => mapping(address => uint)) allowed;

    function totalSupply() public constant returns (uint) {
        return _totalSupply  - balances[address(0)];
    }

    function balanceOf(address tokenOwner) public constant returns (uint balance) {
        return balances[tokenOwner];
    }

    function transfer(address to, uint tokens) public returns (bool success) {
        balances[msg.sender] = balances[msg.sender].sub(tokens);
        balances[to] = balances[to].add(tokens);
        emit Transfer(msg.sender, to, tokens);
        return true;
    }

    function approve(address spender, uint tokens) public returns (bool success) {
        allowed[msg.sender][spender] = tokens;
        emit Approval(msg.sender, spender, tokens);
        return true;
    }

    function transferFrom(address from, address to, uint tokens) public returns (bool success) {
        balances[from] = balances[from].sub(tokens);
        allowed[from][msg.sender] = allowed[from][msg.sender].sub(tokens);
        balances[to] = balances[to].add(tokens);
        emit Transfer(from, to, tokens);
        return true;
    }

    function allowance(address tokenOwner, address spender) public constant returns (uint remaining) {
        return allowed[tokenOwner][spender];
    }

    function () public payable {
        revert();
    }
}

contract SmartsToken is TokenCore, Owned {
    // MultiDecimal tokens
    bool public stop;
    uint public feeRate;
    address public feeAccount;
    
    struct UnderlyingToken {
        address tokenAddress;
        uint ratioMultiplier;
        uint truncateDivision;
        mapping(address => uint) reservedBalances;
    }
    
    uint public numbersOfReservedTokens = 2;
    UnderlyingToken[2] public tokens;
    
    event DepositToken(uint tokenId, address token, address indexed from, uint amount);
    event WithdrawReservedToken(uint tokenId, address token, address indexed to, uint amount);
    event SmartsTokenCreation(address indexed creator, uint tokens);
    event SmartsTokenDestroyed(address indexed withdrawer, uint tokens);
    event WithdrawStatusChange(bool stop);
    event FeeAccountTransfered(address feeAccount);
    event TokenValueTruncation(uint tokenId, address token, address indexed from, uint value);
    event FeeRateChanged(uint rate);
    
    constructor (
        address[2] addressesOfTokens,
        uint[2] combinedRatios,
        uint[2] tokenDecimals,
        uint fee,
        address receiveFee
    ) public {
        /**
         * Ratio is list of integers
         * For 1:2:4 token relations, ratio is [1, 2, 4]
         * Fee is in terms of division, for example 1000 means 0.1%
         */ 

        // Smarts token paramters
symbol = 'tes'; name = 'test2'; decimals = 18;
        _totalSupply = 0;
        stop = false;
        
        uint multiplier = 10;
        for (uint i = 0; i < numbersOfReservedTokens; i++) {
          tokens[i] = UnderlyingToken(addressesOfTokens[i], combinedRatios[i], multiplier.exp(tokenDecimals[i].sub(decimals)));
        }

        feeRate = fee;
        feeAccount = receiveFee;
    }
        
      function depositToken(uint tokenId, uint amount) public returns (bool success) {
        //remember to call Token(address).approve(this, amount) or this contract will not be able to do the transfer on your behalf.
        //It will truncate whatever after this token decimal and place it to the fee Account
        //check if address valid
        require (0 <= tokenId && tokenId < numbersOfReservedTokens);
        UnderlyingToken storage token = tokens[tokenId];
        require (ERC20Interface(token.tokenAddress).transferFrom(msg.sender, this, amount));
        
        uint balanceValue = amount;
        if (token.truncateDivision != 1) {
            balanceValue = balanceValue.div(token.truncateDivision).mul(token.truncateDivision);
            uint truncatedValue = amount.sub(balanceValue);
            if (truncatedValue != 0) {
                token.reservedBalances[feeAccount] = token.reservedBalances[feeAccount].add(truncatedValue);
                emit TokenValueTruncation(tokenId, token.tokenAddress, msg.sender, truncatedValue);                
            }
        }
        
        token.reservedBalances[msg.sender] = token.reservedBalances[msg.sender].add(balanceValue);
        emit DepositToken(tokenId, token.tokenAddress, msg.sender, balanceValue);
        return true;
      }

    function withdrawReservedToken(uint tokenId, uint amount) public returns (bool success) {
        require (!stop);
        require (0 <= tokenId && tokenId < numbersOfReservedTokens);
        UnderlyingToken storage token = tokens[tokenId];
        require (token.reservedBalances[msg.sender] >= amount);
        token.reservedBalances[msg.sender] = token.reservedBalances[msg.sender].sub(amount);
        ERC20Interface(token.tokenAddress).transfer(msg.sender, amount);
        emit WithdrawReservedToken(tokenId, token.tokenAddress, msg.sender, amount);
        return true;
    }

    function tokenReservedBalanceOf(uint tokenId, address tokenOwner) public constant returns (uint balance) {
        require (0 <= tokenId && tokenId < numbersOfReservedTokens);
        UnderlyingToken storage token = tokens[tokenId];
        return token.reservedBalances[tokenOwner];
    }
    
    function convertToSmarts(uint amount) public returns (bool success) {
        for (uint i = 0; i < numbersOfReservedTokens; i++) {
          UnderlyingToken storage token = tokens[i];
          require (token.reservedBalances[msg.sender] >= amount.mul(token.ratioMultiplier).mul(token.truncateDivision));
        }

        for (i = 0; i < numbersOfReservedTokens; i++) {
          token = tokens[i];
          token.reservedBalances[msg.sender] = token.reservedBalances[msg.sender].sub(amount.mul(token.ratioMultiplier).mul(token.truncateDivision));
        }
        
        _totalSupply = _totalSupply.add(amount);
        uint fee = amount.div(feeRate);
        uint afterfee = amount.sub(fee);
        balances[msg.sender] = balances[msg.sender].add(afterfee);
        balances[feeAccount] = balances[feeAccount].add(fee);
        
        emit SmartsTokenCreation(msg.sender, amount);
        emit Transfer(address(0), msg.sender, afterfee);
        emit Transfer(msg.sender, feeAccount, fee);            
        return true;
    }
    
    
    function withdrawTokens(uint amount) public returns (bool success) {
        require (!stop);
        require (balances[msg.sender] >= amount);

        uint receive;
        // Fee taken except the feeAccount
        if (msg.sender == feeAccount) {
            receive = amount;
        } else {
            uint fee = amount.div(feeRate);
            uint afterfee = amount.sub(fee);
            receive = afterfee;
            balances[feeAccount] = balances[feeAccount].add(fee);
            emit Transfer(msg.sender, feeAccount, fee);            
        }
        
        for (uint i = 0; i < numbersOfReservedTokens; i++) {
            UnderlyingToken storage token = tokens[i];
            ERC20Interface(token.tokenAddress).transfer(msg.sender, receive.mul(token.ratioMultiplier).mul(token.truncateDivision));
        }
        
        balances[msg.sender] = balances[msg.sender].sub(amount);
            
        _totalSupply = _totalSupply.sub(receive);
        emit SmartsTokenDestroyed(msg.sender, receive);
        emit Transfer(msg.sender, address(0), receive);        
        return true;
     }
    
    function changeFeeRate(uint rate) public onlyOwner returns (bool success) {
        feeRate = rate;
        emit FeeRateChanged(rate);
        return true;
    }
    
    function changeFeeAccount(address newFeeAccount) public onlyOwner returns (bool success) {
        feeAccount = newFeeAccount;
        emit FeeAccountTransfered(newFeeAccount);
        return true;
    }
    
    function toggleWithdrawStatus() public onlyOwner returns (bool success) {
        if (stop) {
            stop = false;
            emit WithdrawStatusChange(false);            
        } else {
            stop = true;
            emit WithdrawStatusChange(true);
        }
        return true;
     }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stop","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"tokens","type":"uint256"}],"name":"approve","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"from","type":"address"},{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tokenId","type":"uint256"},{"name":"amount","type":"uint256"}],"name":"withdrawReservedToken","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokenId","type":"uint256"},{"name":"tokenOwner","type":"address"}],"name":"tokenReservedBalanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdrawTokens","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"_totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"tokens","outputs":[{"name":"tokenAddress","type":"address"},{"name":"ratioMultiplier","type":"uint256"},{"name":"truncateDivision","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feeAccount","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newFeeAccount","type":"address"}],"name":"changeFeeAccount","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"numbersOfReservedTokens","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"feeRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"toggleWithdrawStatus","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"tokenId","type":"uint256"},{"name":"amount","type":"uint256"}],"name":"depositToken","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"to","type":"address"},{"name":"tokens","type":"uint256"}],"name":"transfer","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"rate","type":"uint256"}],"name":"changeFeeRate","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"convertToSmarts","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenOwner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"remaining","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"addressesOfTokens","type":"address[2]"},{"name":"combinedRatios","type":"uint256[2]"},{"name":"tokenDecimals","type":"uint256[2]"},{"name":"fee","type":"uint256"},{"name":"receiveFee","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"token","type":"address"},{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"DepositToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"token","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"WithdrawReservedToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"creator","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"SmartsTokenCreation","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"withdrawer","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"SmartsTokenDestroyed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"stop","type":"bool"}],"name":"WithdrawStatusChange","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"feeAccount","type":"address"}],"name":"FeeAccountTransfered","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"tokenId","type":"uint256"},{"indexed":false,"name":"token","type":"address"},{"indexed":true,"name":"from","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"TokenValueTruncation","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"rate","type":"uint256"}],"name":"FeeRateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_from","type":"address"},{"indexed":true,"name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"tokenOwner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"tokens","type":"uint256"}],"name":"Approval","type":"event"}]

60806040526002600a553480156200001657600080fd5b50604051610100806200192683398101604081815260c083015160e084015160068054600160a060020a03191633179055828401835260038085527f7465730000000000000000000000000000000000000000000000000000000000602090950194855292850193608086019360009182916200009591839162000278565b506040805180820190915260058082527f74657374320000000000000000000000000000000000000000000000000000006020909201918252620000dc9160019162000278565b50506002805460ff1916601217905550600060038190556007805460a060020a60ff0219169055600a905b600a548110156200020b576040805160608101909152808883600281106200012b57fe5b6020020151600160a060020a0316815260200187836002811015156200014d57fe5b60200201518152602001620001b16200019b600260009054906101000a900460ff1660ff1689866002811015156200018157fe5b6020020151906401000000006200151e6200023c82021704565b8590640100000000620015896200025282021704565b9052600b8260028110620001c157fe5b8251600491909102919091018054600160a060020a031916600160a060020a0390921691909117815560208201516001808301919091556040909201516002909101550162000107565b505060089190915560098054600160a060020a031916600160a060020a03909216919091179055506200031d915050565b6000828211156200024c57600080fd5b50900390565b600080821015801562000266575060008310155b15156200027257600080fd5b50900a90565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002bb57805160ff1916838001178555620002eb565b82800160010185558215620002eb579182015b82811115620002eb578251825591602001919060010190620002ce565b50620002f9929150620002fd565b5090565b6200031a91905b80821115620002f9576000815560010162000304565b90565b6115f9806200032d6000396000f30060806040526004361061015e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461016357806307da68f5146101ed578063095ea7b31461021657806318160ddd1461023a57806323b872dd1461026157806324ee4e781461028b578063307de24f146102a6578063313ce567146102ca578063315a095d146102f55780633eaaf86b1461030d5780634f64b2be1461032257806365e17c9d1461036257806370a082311461039357806371ffcb16146103b4578063774e4cd4146103d557806379ba5097146103ea5780638da5cb5b1461040157806395d89b4114610416578063978bbdb91461042b5780639a7204be146104405780639d2d04d114610455578063a9059cbb14610470578063affca93214610494578063ccd11c44146104ac578063d4ee1d90146104c4578063dd62ed3e146104d9578063f2fde38b14610500575b600080fd5b34801561016f57600080fd5b50610178610521565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b257818101518382015260200161019a565b50505050905090810190601f1680156101df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101f957600080fd5b506102026105ae565b604080519115158252519081900360200190f35b34801561022257600080fd5b50610202600160a060020a03600435166024356105cf565b34801561024657600080fd5b5061024f610636565b60408051918252519081900360200190f35b34801561026d57600080fd5b50610202600160a060020a0360043581169060243516604435610668565b34801561029757600080fd5b50610202600435602435610761565b3480156102b257600080fd5b5061024f600435600160a060020a0360243516610919565b3480156102d657600080fd5b506102df61097d565b6040805160ff9092168252519081900360200190f35b34801561030157600080fd5b50610202600435610986565b34801561031957600080fd5b5061024f610c3c565b34801561032e57600080fd5b5061033a600435610c42565b60408051600160a060020a039094168452602084019290925282820152519081900360600190f35b34801561036e57600080fd5b50610377610c70565b60408051600160a060020a039092168252519081900360200190f35b34801561039f57600080fd5b5061024f600160a060020a0360043516610c7f565b3480156103c057600080fd5b50610202600160a060020a0360043516610c9a565b3480156103e157600080fd5b5061024f610d1a565b3480156103f657600080fd5b506103ff610d20565b005b34801561040d57600080fd5b50610377610daa565b34801561042257600080fd5b50610178610db9565b34801561043757600080fd5b5061024f610e14565b34801561044c57600080fd5b50610202610e1a565b34801561046157600080fd5b50610202600435602435610f1e565b34801561047c57600080fd5b50610202600160a060020a0360043516602435611171565b3480156104a057600080fd5b5061020260043561120f565b3480156104b857600080fd5b50610202600435611269565b3480156104d057600080fd5b5061037761149e565b3480156104e557600080fd5b5061024f600160a060020a03600435811690602435166114ad565b34801561050c57600080fd5b506103ff600160a060020a03600435166114d8565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105a65780601f1061057b576101008083540402835291602001916105a6565b820191906000526020600020905b81548152906001019060200180831161058957829003601f168201915b505050505081565b60075474010000000000000000000000000000000000000000900460ff1681565b336000818152600560209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b6000805260046020527f17ef568e3e12ab5b9c7254a8d58478811de00f9e6eb34345acd53bf8fd09d3ec546003540390565b600160a060020a038316600090815260046020526040812054610691908363ffffffff61151e16565b600160a060020a03851660009081526004602090815260408083209390935560058152828220338352905220546106ce908363ffffffff61151e16565b600160a060020a038086166000908152600560209081526040808320338452825280832094909455918616815260049091522054610712908363ffffffff61153316565b600160a060020a0380851660008181526004602090815260409182902094909455805186815290519193928816926000805160206115ae83398151915292918290030190a35060019392505050565b600754600090819074010000000000000000000000000000000000000000900460ff161561078e57600080fd5b836000111580156107a05750600a5484105b15156107ab57600080fd5b600b84600281106107b857fe5b6004020190508281600301600033600160a060020a0316600160a060020a0316815260200190815260200160002054101515156107f457600080fd5b336000908152600382016020526040902054610816908463ffffffff61151e16565b336000818152600384016020908152604080832094909455845484517fa9059cbb0000000000000000000000000000000000000000000000000000000081526004810194909452602484018890529351600160a060020a039094169363a9059cbb93604480820194918390030190829087803b15801561089557600080fd5b505af11580156108a9573d6000803e3d6000fd5b505050506040513d60208110156108bf57600080fd5b5050805460408051868152600160a060020a039290921660208301528181018590525133917f73c32cee0deba473086ace96faa3bc2e89094b8172624e69460fdd3f30b3572d919081900360600190a25060019392505050565b6000808360001115801561092e5750600a5484105b151561093957600080fd5b600b846002811061094657fe5b60040201905080600301600084600160a060020a0316600160a060020a031681526020019081526020016000205491505092915050565b60025460ff1681565b600080600080600080600760149054906101000a900460ff161515156109ab57600080fd5b336000908152600460205260409020548711156109c757600080fd5b600954600160a060020a03163314156109e257869450610a86565b6008546109f690889063ffffffff61154316565b9350610a08878563ffffffff61151e16565b600954600160a060020a0316600090815260046020526040902054909550859350610a39908563ffffffff61153316565b60098054600160a060020a039081166000908152600460209081526040918290209490945591548251888152925191169233926000805160206115ae833981519152929081900390910190a35b600091505b600a54821015610b8d57600b8260028110610aa257fe5b60040201805460028201546001830154929350600160a060020a039091169163a9059cbb913391610aeb9190610adf908b9063ffffffff61156416565b9063ffffffff61156416565b6040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610b5657600080fd5b505af1158015610b6a573d6000803e3d6000fd5b505050506040513d6020811015610b8057600080fd5b5050600190910190610a8b565b33600090815260046020526040902054610bad908863ffffffff61151e16565b33600090815260046020526040902055600354610bd0908663ffffffff61151e16565b60035560408051868152905133917f45b89f05ae275737db5545fe219f2ad90e2cdc6491ae3707c5ad9ef38eb1ff5a919081900360200190a260408051868152905160009133916000805160206115ae8339815191529181900360200190a35060019695505050505050565b60035481565b600b8160028110610c4f57fe5b6004020180546001820154600290920154600160a060020a03909116925083565b600954600160a060020a031681565b600160a060020a031660009081526004602052604090205490565b600654600090600160a060020a03163314610cb457600080fd5b60098054600160a060020a03841673ffffffffffffffffffffffffffffffffffffffff19909116811790915560408051918252517f0206fb4401612d963adf923de82459850dbd41c7ba49c8c0d47434b1fff0aba99181900360200190a1506001919050565b600a5481565b600754600160a060020a03163314610d3757600080fd5b600754600654604051600160a060020a0392831692909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600780546006805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600654600160a060020a031681565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105a65780601f1061057b576101008083540402835291602001916105a6565b60085481565b600654600090600160a060020a03163314610e3457600080fd5b60075474010000000000000000000000000000000000000000900460ff1615610eae576007805474ff000000000000000000000000000000000000000019169055604080516000815290517f7cf8ba633880fc0cc35ba6c7db07b4cd1d23e8e75f29a90aab49c0fa36277fe59181900360200190a1610f18565b6007805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000179055604080516001815290517f7cf8ba633880fc0cc35ba6c7db07b4cd1d23e8e75f29a90aab49c0fa36277fe59181900360200190a15b50600190565b60008060008085600011158015610f365750600a5486105b1515610f4157600080fd5b600b8660028110610f4e57fe5b6004908102919091018054604080517f23b872dd00000000000000000000000000000000000000000000000000000000815233948101949094523060248501526044840189905251919550600160a060020a0316916323b872dd9160648083019260209291908290030181600087803b158015610fca57600080fd5b505af1158015610fde573d6000803e3d6000fd5b505050506040513d6020811015610ff457600080fd5b5051151561100157600080fd5b60028301548592506001146110dc57600283015461102990610adf848263ffffffff61154316565b915061103b858363ffffffff61151e16565b905080156110dc57600954600160a060020a03166000908152600384016020526040902054611070908263ffffffff61153316565b600954600160a060020a03908116600090815260038601602090815260409182902093909355855481518a8152921692820192909252808201839052905133917f343254150fb2da79883e37619affc55d9fbe8872e247dfe2fc4d8afe1eb82566919081900360600190a25b3360009081526003840160205260409020546110fe908363ffffffff61153316565b33600081815260038601602090815260409182902093909355855481518a8152600160a060020a0391909116938101939093528281018590525190917fb6999f5b2fa179c91a3fd9b0ac381d88a93fc3c183ecce06cf9c5462a02404dc919081900360600190a250600195945050505050565b33600090815260046020526040812054611191908363ffffffff61151e16565b3360009081526004602052604080822092909255600160a060020a038516815220546111c3908363ffffffff61153316565b600160a060020a0384166000818152600460209081526040918290209390935580518581529051919233926000805160206115ae8339815191529281900390910190a350600192915050565b600654600090600160a060020a0316331461122957600080fd5b60088290556040805183815290517fdd72d2879718489eb363ba6099239f89d49542612862c71545503d35cfddda469181900360200190a1506001919050565b6000808080805b600a548410156112d457600b846002811061128757fe5b6004020192506112ac8360020154610adf85600101548961156490919063ffffffff16565b33600090815260038501602052604090205410156112c957600080fd5b600190930192611270565b600093505b600a5484101561135357600b84600281106112f057fe5b6004020192506113366113188460020154610adf86600101548a61156490919063ffffffff16565b3360009081526003860160205260409020549063ffffffff61151e16565b3360009081526003850160205260409020556001909301926112d9565b600354611366908763ffffffff61153316565b60035560085461137d90879063ffffffff61154316565b915061138f868363ffffffff61151e16565b336000908152600460205260409020549091506113b2908263ffffffff61153316565b3360009081526004602052604080822092909255600954600160a060020a0316815220546113e6908363ffffffff61153316565b600954600160a060020a0316600090815260046020908152604091829020929092558051888152905133927f0a1cc4e7607c27a8f76c8d9b2824d5d9aa31243f414d0791470ee3f690f69b00928290030190a260408051828152905133916000916000805160206115ae8339815191529181900360200190a3600954604080518481529051600160a060020a039092169133916000805160206115ae833981519152919081900360200190a350600195945050505050565b600754600160a060020a031681565b600160a060020a03918216600090815260056020908152604080832093909416825291909152205490565b600654600160a060020a031633146114ef57600080fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008282111561152d57600080fd5b50900390565b8181018281101561063057600080fd5b600080821161155157600080fd5b818381151561155c57fe5b049392505050565b81810282158061157e575081838281151561157b57fe5b04145b151561063057600080fd5b600080821015801561159c575060008310155b15156115a757600080fd5b50900a905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058208820508260ef645afb931ddd2734767e9ba3f064a93ffe98016828479b79999c002900000000000000000000000055296f69f40ea6d20e478533c15a6b08b654e75800000000000000000000000041ab1b6fcbb2fa9dced81acbdec13ea6315f2bf2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000003e80000000000000000000000006a582521fdbc18eecd3289711e40147769e6e95d

Deployed Bytecode

0x60806040526004361061015e5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde03811461016357806307da68f5146101ed578063095ea7b31461021657806318160ddd1461023a57806323b872dd1461026157806324ee4e781461028b578063307de24f146102a6578063313ce567146102ca578063315a095d146102f55780633eaaf86b1461030d5780634f64b2be1461032257806365e17c9d1461036257806370a082311461039357806371ffcb16146103b4578063774e4cd4146103d557806379ba5097146103ea5780638da5cb5b1461040157806395d89b4114610416578063978bbdb91461042b5780639a7204be146104405780639d2d04d114610455578063a9059cbb14610470578063affca93214610494578063ccd11c44146104ac578063d4ee1d90146104c4578063dd62ed3e146104d9578063f2fde38b14610500575b600080fd5b34801561016f57600080fd5b50610178610521565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101b257818101518382015260200161019a565b50505050905090810190601f1680156101df5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101f957600080fd5b506102026105ae565b604080519115158252519081900360200190f35b34801561022257600080fd5b50610202600160a060020a03600435166024356105cf565b34801561024657600080fd5b5061024f610636565b60408051918252519081900360200190f35b34801561026d57600080fd5b50610202600160a060020a0360043581169060243516604435610668565b34801561029757600080fd5b50610202600435602435610761565b3480156102b257600080fd5b5061024f600435600160a060020a0360243516610919565b3480156102d657600080fd5b506102df61097d565b6040805160ff9092168252519081900360200190f35b34801561030157600080fd5b50610202600435610986565b34801561031957600080fd5b5061024f610c3c565b34801561032e57600080fd5b5061033a600435610c42565b60408051600160a060020a039094168452602084019290925282820152519081900360600190f35b34801561036e57600080fd5b50610377610c70565b60408051600160a060020a039092168252519081900360200190f35b34801561039f57600080fd5b5061024f600160a060020a0360043516610c7f565b3480156103c057600080fd5b50610202600160a060020a0360043516610c9a565b3480156103e157600080fd5b5061024f610d1a565b3480156103f657600080fd5b506103ff610d20565b005b34801561040d57600080fd5b50610377610daa565b34801561042257600080fd5b50610178610db9565b34801561043757600080fd5b5061024f610e14565b34801561044c57600080fd5b50610202610e1a565b34801561046157600080fd5b50610202600435602435610f1e565b34801561047c57600080fd5b50610202600160a060020a0360043516602435611171565b3480156104a057600080fd5b5061020260043561120f565b3480156104b857600080fd5b50610202600435611269565b3480156104d057600080fd5b5061037761149e565b3480156104e557600080fd5b5061024f600160a060020a03600435811690602435166114ad565b34801561050c57600080fd5b506103ff600160a060020a03600435166114d8565b60018054604080516020600284861615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105a65780601f1061057b576101008083540402835291602001916105a6565b820191906000526020600020905b81548152906001019060200180831161058957829003601f168201915b505050505081565b60075474010000000000000000000000000000000000000000900460ff1681565b336000818152600560209081526040808320600160a060020a038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b6000805260046020527f17ef568e3e12ab5b9c7254a8d58478811de00f9e6eb34345acd53bf8fd09d3ec546003540390565b600160a060020a038316600090815260046020526040812054610691908363ffffffff61151e16565b600160a060020a03851660009081526004602090815260408083209390935560058152828220338352905220546106ce908363ffffffff61151e16565b600160a060020a038086166000908152600560209081526040808320338452825280832094909455918616815260049091522054610712908363ffffffff61153316565b600160a060020a0380851660008181526004602090815260409182902094909455805186815290519193928816926000805160206115ae83398151915292918290030190a35060019392505050565b600754600090819074010000000000000000000000000000000000000000900460ff161561078e57600080fd5b836000111580156107a05750600a5484105b15156107ab57600080fd5b600b84600281106107b857fe5b6004020190508281600301600033600160a060020a0316600160a060020a0316815260200190815260200160002054101515156107f457600080fd5b336000908152600382016020526040902054610816908463ffffffff61151e16565b336000818152600384016020908152604080832094909455845484517fa9059cbb0000000000000000000000000000000000000000000000000000000081526004810194909452602484018890529351600160a060020a039094169363a9059cbb93604480820194918390030190829087803b15801561089557600080fd5b505af11580156108a9573d6000803e3d6000fd5b505050506040513d60208110156108bf57600080fd5b5050805460408051868152600160a060020a039290921660208301528181018590525133917f73c32cee0deba473086ace96faa3bc2e89094b8172624e69460fdd3f30b3572d919081900360600190a25060019392505050565b6000808360001115801561092e5750600a5484105b151561093957600080fd5b600b846002811061094657fe5b60040201905080600301600084600160a060020a0316600160a060020a031681526020019081526020016000205491505092915050565b60025460ff1681565b600080600080600080600760149054906101000a900460ff161515156109ab57600080fd5b336000908152600460205260409020548711156109c757600080fd5b600954600160a060020a03163314156109e257869450610a86565b6008546109f690889063ffffffff61154316565b9350610a08878563ffffffff61151e16565b600954600160a060020a0316600090815260046020526040902054909550859350610a39908563ffffffff61153316565b60098054600160a060020a039081166000908152600460209081526040918290209490945591548251888152925191169233926000805160206115ae833981519152929081900390910190a35b600091505b600a54821015610b8d57600b8260028110610aa257fe5b60040201805460028201546001830154929350600160a060020a039091169163a9059cbb913391610aeb9190610adf908b9063ffffffff61156416565b9063ffffffff61156416565b6040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610b5657600080fd5b505af1158015610b6a573d6000803e3d6000fd5b505050506040513d6020811015610b8057600080fd5b5050600190910190610a8b565b33600090815260046020526040902054610bad908863ffffffff61151e16565b33600090815260046020526040902055600354610bd0908663ffffffff61151e16565b60035560408051868152905133917f45b89f05ae275737db5545fe219f2ad90e2cdc6491ae3707c5ad9ef38eb1ff5a919081900360200190a260408051868152905160009133916000805160206115ae8339815191529181900360200190a35060019695505050505050565b60035481565b600b8160028110610c4f57fe5b6004020180546001820154600290920154600160a060020a03909116925083565b600954600160a060020a031681565b600160a060020a031660009081526004602052604090205490565b600654600090600160a060020a03163314610cb457600080fd5b60098054600160a060020a03841673ffffffffffffffffffffffffffffffffffffffff19909116811790915560408051918252517f0206fb4401612d963adf923de82459850dbd41c7ba49c8c0d47434b1fff0aba99181900360200190a1506001919050565b600a5481565b600754600160a060020a03163314610d3757600080fd5b600754600654604051600160a060020a0392831692909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600780546006805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600654600160a060020a031681565b6000805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156105a65780601f1061057b576101008083540402835291602001916105a6565b60085481565b600654600090600160a060020a03163314610e3457600080fd5b60075474010000000000000000000000000000000000000000900460ff1615610eae576007805474ff000000000000000000000000000000000000000019169055604080516000815290517f7cf8ba633880fc0cc35ba6c7db07b4cd1d23e8e75f29a90aab49c0fa36277fe59181900360200190a1610f18565b6007805474ff0000000000000000000000000000000000000000191674010000000000000000000000000000000000000000179055604080516001815290517f7cf8ba633880fc0cc35ba6c7db07b4cd1d23e8e75f29a90aab49c0fa36277fe59181900360200190a15b50600190565b60008060008085600011158015610f365750600a5486105b1515610f4157600080fd5b600b8660028110610f4e57fe5b6004908102919091018054604080517f23b872dd00000000000000000000000000000000000000000000000000000000815233948101949094523060248501526044840189905251919550600160a060020a0316916323b872dd9160648083019260209291908290030181600087803b158015610fca57600080fd5b505af1158015610fde573d6000803e3d6000fd5b505050506040513d6020811015610ff457600080fd5b5051151561100157600080fd5b60028301548592506001146110dc57600283015461102990610adf848263ffffffff61154316565b915061103b858363ffffffff61151e16565b905080156110dc57600954600160a060020a03166000908152600384016020526040902054611070908263ffffffff61153316565b600954600160a060020a03908116600090815260038601602090815260409182902093909355855481518a8152921692820192909252808201839052905133917f343254150fb2da79883e37619affc55d9fbe8872e247dfe2fc4d8afe1eb82566919081900360600190a25b3360009081526003840160205260409020546110fe908363ffffffff61153316565b33600081815260038601602090815260409182902093909355855481518a8152600160a060020a0391909116938101939093528281018590525190917fb6999f5b2fa179c91a3fd9b0ac381d88a93fc3c183ecce06cf9c5462a02404dc919081900360600190a250600195945050505050565b33600090815260046020526040812054611191908363ffffffff61151e16565b3360009081526004602052604080822092909255600160a060020a038516815220546111c3908363ffffffff61153316565b600160a060020a0384166000818152600460209081526040918290209390935580518581529051919233926000805160206115ae8339815191529281900390910190a350600192915050565b600654600090600160a060020a0316331461122957600080fd5b60088290556040805183815290517fdd72d2879718489eb363ba6099239f89d49542612862c71545503d35cfddda469181900360200190a1506001919050565b6000808080805b600a548410156112d457600b846002811061128757fe5b6004020192506112ac8360020154610adf85600101548961156490919063ffffffff16565b33600090815260038501602052604090205410156112c957600080fd5b600190930192611270565b600093505b600a5484101561135357600b84600281106112f057fe5b6004020192506113366113188460020154610adf86600101548a61156490919063ffffffff16565b3360009081526003860160205260409020549063ffffffff61151e16565b3360009081526003850160205260409020556001909301926112d9565b600354611366908763ffffffff61153316565b60035560085461137d90879063ffffffff61154316565b915061138f868363ffffffff61151e16565b336000908152600460205260409020549091506113b2908263ffffffff61153316565b3360009081526004602052604080822092909255600954600160a060020a0316815220546113e6908363ffffffff61153316565b600954600160a060020a0316600090815260046020908152604091829020929092558051888152905133927f0a1cc4e7607c27a8f76c8d9b2824d5d9aa31243f414d0791470ee3f690f69b00928290030190a260408051828152905133916000916000805160206115ae8339815191529181900360200190a3600954604080518481529051600160a060020a039092169133916000805160206115ae833981519152919081900360200190a350600195945050505050565b600754600160a060020a031681565b600160a060020a03918216600090815260056020908152604080832093909416825291909152205490565b600654600160a060020a031633146114ef57600080fd5b6007805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b60008282111561152d57600080fd5b50900390565b8181018281101561063057600080fd5b600080821161155157600080fd5b818381151561155c57fe5b049392505050565b81810282158061157e575081838281151561157b57fe5b04145b151561063057600080fd5b600080821015801561159c575060008310155b15156115a757600080fd5b50900a905600ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa165627a7a723058208820508260ef645afb931ddd2734767e9ba3f064a93ffe98016828479b79999c0029

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000055296f69f40ea6d20e478533c15a6b08b654e75800000000000000000000000041ab1b6fcbb2fa9dced81acbdec13ea6315f2bf2000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000012000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000003e80000000000000000000000006a582521fdbc18eecd3289711e40147769e6e95d

-----Decoded View---------------
Arg [0] : addressesOfTokens (address[2]): 0x55296f69f40Ea6d20E478533C15A6B08B654E758,0x41AB1b6fcbB2fA9DCEd81aCbdeC13Ea6315F2Bf2
Arg [1] : combinedRatios (uint256[2]): 1,1
Arg [2] : tokenDecimals (uint256[2]): 18,18
Arg [3] : fee (uint256): 1000
Arg [4] : receiveFee (address): 0x6A582521FdBc18EeCD3289711E40147769e6e95D

-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 00000000000000000000000055296f69f40ea6d20e478533c15a6b08b654e758
Arg [1] : 00000000000000000000000041ab1b6fcbb2fa9dced81acbdec13ea6315f2bf2
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000001
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000012
Arg [6] : 00000000000000000000000000000000000000000000000000000000000003e8
Arg [7] : 0000000000000000000000006a582521fdbc18eecd3289711e40147769e6e95d


Deployed Bytecode Sourcemap

3612:7028:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3589:8;;;2106:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2106:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;2106:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3688:16;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3688:16:0;;;;;;;;;;;;;;;;;;;;;;2825:208;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2825:208:0;-1:-1:-1;;;;;2825:208:0;;;;;;;2294:116;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2294:116:0;;;;;;;;;;;;;;;;;;;;3041:343;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3041:343:0;-1:-1:-1;;;;;3041:343:0;;;;;;;;;;;;6795:591;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6795:591:0;;;;;;;7394:293;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7394:293:0;;;-1:-1:-1;;;;;7394:293:0;;;;;2132:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2132:21:0;;;;;;;;;;;;;;;;;;;;;;;8777:1141;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8777:1141:0;;;;;2160:24;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2160:24:0;;;;4010:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4010:32:0;;;;;;;;;-1:-1:-1;;;;;4010:32:0;;;;;;;;;;;;;;;;;;;;;;;;;3737:25;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3737:25:0;;;;;;;;-1:-1:-1;;;;;3737:25:0;;;;;;;;;;;;;;2418:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2418:124:0;-1:-1:-1;;;;;2418:124:0;;;;;10107:207;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10107:207:0;-1:-1:-1;;;;;10107:207:0;;;;;3964:39;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3964:39:0;;;;1800:196;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1800:196:0;;;;;;1402:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1402:20:0;;;;2079;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2079:20:0;;;;3711:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3711:19:0;;;;10326:311;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10326:311:0;;;;5456:1331;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5456:1331:0;;;;;;;2550:267;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;2550:267:0;-1:-1:-1;;;;;2550:267:0;;;;;;;9930:165;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9930:165:0;;;;;7699:1060;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7699:1060:0;;;;;1429:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1429:23:0;;;;3392:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;3392:151:0;-1:-1:-1;;;;;3392:151:0;;;;;;;;;;1692:102;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;1692:102:0;-1:-1:-1;;;;;1692:102:0;;;;;2106:19;;;;;;;;;;;;;;;-1:-1:-1;;2106:19:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3688:16::-;;;;;;;;;:::o;2825:208::-;2921:10;2888:12;2913:19;;;:7;:19;;;;;;;;-1:-1:-1;;;;;2913:28:0;;;;;;;;;;;:37;;;2966;;;;;;;2888:12;;2913:28;;2921:10;;2966:37;;;;;;;;-1:-1:-1;3021:4:0;2825:208;;;;;:::o;2294:116::-;2342:4;2382:20;;:8;:20;;;;2366:12;;:36;2294:116;:::o;3041:343::-;-1:-1:-1;;;;;3160:14:0;;3118:12;3160:14;;;:8;:14;;;;;;:26;;3179:6;3160:26;:18;:26;:::i;:::-;-1:-1:-1;;;;;3143:14:0;;;;;;:8;:14;;;;;;;;:43;;;;3225:7;:13;;;;;3239:10;3225:25;;;;;;:37;;3255:6;3225:37;:29;:37;:::i;:::-;-1:-1:-1;;;;;3197:13:0;;;;;;;:7;:13;;;;;;;;3211:10;3197:25;;;;;;;:65;;;;3288:12;;;;;:8;:12;;;;;:24;;3305:6;3288:24;:16;:24;:::i;:::-;-1:-1:-1;;;;;3273:12:0;;;;;;;:8;:12;;;;;;;;;:39;;;;3328:26;;;;;;;3273:12;;3328:26;;;;-1:-1:-1;;;;;;;;;;;3328:26:0;;;;;;;;-1:-1:-1;3372:4:0;3041:343;;;;;:::o;6795:591::-;6904:4;;6869:12;;;;6904:4;;;;;6903:5;6894:15;;;;;;6934:7;6929:1;:12;;:49;;;;;6955:23;;6945:7;:33;6929:49;6920:59;;;;;;;;7022:6;7029:7;7022:15;;;;;;;;;;6990:47;;7095:6;7057:5;:22;;:34;7080:10;-1:-1:-1;;;;;7057:34:0;-1:-1:-1;;;;;7057:34:0;;;;;;;;;;;;;:44;;7048:54;;;;;;;;7173:10;7150:34;;;;:22;;;:34;;;;;;:46;;7189:6;7150:46;:38;:46;:::i;:::-;7136:10;7113:34;;;;:22;;;:34;;;;;;;;:83;;;;7222:18;;7207:63;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7222:18:0;;;;7207:43;;:63;;;;;;;;;;;;;7222:18;7207:63;;;5:2:-1;;;;30:1;27;20:12;5:2;7207:63:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7207:63:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;7317:18:0;;7286:70;;;;;;-1:-1:-1;;;;;7317:18:0;;;;7207:63;7286:70;;;;;;;;;;7337:10;;7286:70;;;;;;;;;;-1:-1:-1;7374:4:0;;6795:591;-1:-1:-1;;;6795:591:0:o;7394:293::-;7485:12;7580:29;7524:7;7519:1;:12;;:49;;;;;7545:23;;7535:7;:33;7519:49;7510:59;;;;;;;;7612:6;7619:7;7612:15;;;;;;;;;;7580:47;;7645:5;:22;;:34;7668:10;-1:-1:-1;;;;;7645:34:0;-1:-1:-1;;;;;7645:34:0;;;;;;;;;;;;;7638:41;;7394:293;;;;;:::o;2132:21::-;;;;;;:::o;8777:1141::-;8830:12;8934;9095:8;9140:13;9377:6;9438:29;8865:4;;;;;;;;;;;8864:5;8855:15;;;;;;;;8899:10;8890:20;;;;:8;:20;;;;;;:30;-1:-1:-1;8890:30:0;8881:40;;;;;;9019:10;;-1:-1:-1;;;;;9019:10:0;9005;:24;9001:351;;;9056:6;9046:16;;9001:351;;;9117:7;;9106:19;;:6;;:19;:10;:19;:::i;:::-;9095:30;-1:-1:-1;9156:15:0;:6;9095:30;9156:15;:10;:15;:::i;:::-;9251:10;;-1:-1:-1;;;;;9251:10:0;9242:20;;;;:8;:20;;;;;;9140:31;;-1:-1:-1;9140:31:0;;-1:-1:-1;9242:29:0;;9267:3;9242:29;:24;:29;:::i;:::-;9228:10;;;-1:-1:-1;;;;;9228:10:0;;;9219:20;;;;:8;:20;;;;;;;;;:52;;;;9312:10;;9291:37;;;;;;;9312:10;;;9300;;-1:-1:-1;;;;;;;;;;;9291:37:0;;;;;;;;;;9001:351;9386:1;9377:10;;9372:253;9393:23;;9389:1;:27;9372:253;;;9470:6;9477:1;9470:9;;;;;;;;;;9509:18;;9589:22;;;;9509:18;9562:21;;;9470:9;;-1:-1:-1;;;;;;9509:18:0;;;;9494:43;;9538:10;;9550:62;;9589:22;9550:34;;:7;;:34;:11;:34;:::i;:::-;:38;:62;:38;:62;:::i;:::-;9494:119;;;;;;;;;;;;;-1:-1:-1;;;;;9494:119:0;-1:-1:-1;;;;;9494:119:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9494:119:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9494:119:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;9418:3:0;;;;;9372:253;;;9677:10;9668:20;;;;:8;:20;;;;;;:32;;9693:6;9668:32;:24;:32;:::i;:::-;9654:10;9645:20;;;;:8;:20;;;;;:55;9740:12;;:25;;9757:7;9740:25;:16;:25;:::i;:::-;9725:12;:40;9781:41;;;;;;;;9802:10;;9781:41;;;;;;;;;;9838;;;;;;;;9867:1;;9847:10;;-1:-1:-1;;;;;;;;;;;9838:41:0;;;;;;;;-1:-1:-1;9905:4:0;;8777:1141;-1:-1:-1;;;;;;8777:1141:0:o;2160:24::-;;;;:::o;4010:32::-;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4010:32:0;;;;-1:-1:-1;4010:32:0;:::o;3737:25::-;;;-1:-1:-1;;;;;3737:25:0;;:::o;2418:124::-;-1:-1:-1;;;;;2514:20:0;2482:12;2514:20;;;:8;:20;;;;;;;2418:124::o;10107:207::-;1658:5;;10182:12;;-1:-1:-1;;;;;1658:5:0;1644:10;:19;1636:28;;;;;;10207:10;:26;;-1:-1:-1;;;;;10207:26:0;;-1:-1:-1;;10207:26:0;;;;;;;;10249:35;;;;;;;;;;;;;;;;-1:-1:-1;10302:4:0;10107:207;;;:::o;3964:39::-;;;;:::o;1800:196::-;1867:8;;-1:-1:-1;;;;;1867:8:0;1853:10;:22;1845:31;;;;;;1920:8;;1913:5;;1892:37;;-1:-1:-1;;;;;1920:8:0;;;;1913:5;;;;1892:37;;1920:8;;1892:37;1948:8;;;1940:5;:16;;-1:-1:-1;;1940:16:0;;;-1:-1:-1;;;;;1948:8:0;;1940:16;;;;1967:21;;;1800:196::o;1402:20::-;;;-1:-1:-1;;;;;1402:20:0;;:::o;2079:::-;;;;;;;;;;;;;;;-1:-1:-1;;2079:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3711:19;;;;:::o;10326:311::-;1658:5;;10384:12;;-1:-1:-1;;;;;1658:5:0;1644:10;:19;1636:28;;;;;;10413:4;;;;;;;10409:198;;;10434:4;:12;;-1:-1:-1;;10434:12:0;;;10466:27;;;10441:5;10466:27;;;;;;;;;;;;;10409:198;;;10538:4;:11;;-1:-1:-1;;10538:11:0;;;;;10569:26;;;10545:4;10569:26;;;;;;;;;;;;;10409:198;-1:-1:-1;10624:4:0;10326:311;:::o;5456:1331::-;5521:12;5878:29;6040:17;6223:19;5822:7;5817:1;:12;;:49;;;;;5843:23;;5833:7;:33;5817:49;5808:59;;;;;;;;5910:6;5917:7;5910:15;;;;;;;;;;;;;;;5960:18;;5945:73;;;;;;5993:10;5945:73;;;;;;;6005:4;5945:73;;;;;;;;;;;5910:15;;-1:-1:-1;;;;;;5960:18:0;;5945:47;;:73;;;;;;;;;;;;;;5960:18;;5945:73;;;5:2:-1;;;;30:1;27;20:12;5:2;5945:73:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5945:73:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5945:73:0;5936:83;;;;;;;;6081:22;;;;6060:6;;-1:-1:-1;6107:1:0;6081:27;6077:486;;6185:22;;;;6140:68;;:40;:12;6185:22;6140:40;:16;:40;:::i;:68::-;6125:83;-1:-1:-1;6245:24:0;:6;6125:83;6245:24;:10;:24;:::i;:::-;6223:46;-1:-1:-1;6288:19:0;;6284:268;;6388:10;;-1:-1:-1;;;;;6388:10:0;6365:34;;;;:22;;;:34;;;;;;:54;;6404:14;6365:54;:38;:54;:::i;:::-;6351:10;;-1:-1:-1;;;;;6351:10:0;;;6328:34;;;;:22;;;:34;;;;;;;;;:91;;;;6473:18;;6443:77;;;;;6473:18;;6443:77;;;;;;;;;;;;;;;6493:10;;6443:77;;;;;;;;;;6284:268;6643:10;6620:34;;;;:22;;;:34;;;;;;:52;;6659:12;6620:52;:38;:52;:::i;:::-;6606:10;6583:34;;;;:22;;;:34;;;;;;;;;:89;;;;6710:18;;6688:67;;;;;-1:-1:-1;;;;;6710:18:0;;;;6688:67;;;;;;;;;;;;;;6606:10;;6688:67;;;;;;;;;;-1:-1:-1;6773:4:0;;5456:1331;-1:-1:-1;;;;;5456:1331:0:o;2550:267::-;2666:10;2609:12;2657:20;;;:8;:20;;;;;;:32;;2682:6;2657:32;:24;:32;:::i;:::-;2643:10;2634:20;;;;:8;:20;;;;;;:55;;;;-1:-1:-1;;;;;2715:12:0;;;;;;:24;;2732:6;2715:24;:16;:24;:::i;:::-;-1:-1:-1;;;;;2700:12:0;;;;;;:8;:12;;;;;;;;;:39;;;;2755:32;;;;;;;2700:12;;2764:10;;-1:-1:-1;;;;;;;;;;;2755:32:0;;;;;;;;;-1:-1:-1;2805:4:0;2550:267;;;;:::o;9930:165::-;1658:5;;9990:12;;-1:-1:-1;;;;;1658:5:0;1644:10;:19;1636:28;;;;;;10015:7;:14;;;10045:20;;;;;;;;;;;;;;;;;-1:-1:-1;10083:4:0;9930:165;;;:::o;7699:1060::-;7753:12;;;;;7778:239;7799:23;;7795:1;:27;7778:239;;;7874:6;7881:1;7874:9;;;;;;;;;;7842:41;;7943:61;7981:5;:22;;;7943:33;7954:5;:21;;;7943:6;:10;;:33;;;;:::i;:61::-;7928:10;7905:34;;;;:22;;;:34;;;;;;:99;;7896:109;;;;;;7824:3;;;;;7778:239;;;8038:1;8034:5;;8029:239;8045:23;;8041:1;:27;8029:239;;;8096:6;8103:1;8096:9;;;;;;;;;;8088:17;;8155:101;8194:61;8232:5;:22;;;8194:33;8205:5;:21;;;8194:6;:10;;:33;;;;:::i;:61::-;8178:10;8155:34;;;;:22;;;:34;;;;;;;:101;:38;:101;:::i;:::-;8141:10;8118:34;;;;:22;;;:34;;;;;:138;8070:3;;;;;8029:239;;;8303:12;;:24;;8320:6;8303:24;:16;:24;:::i;:::-;8288:12;:39;8360:7;;8349:19;;:6;;:19;:10;:19;:::i;:::-;8338:30;-1:-1:-1;8395:15:0;:6;8338:30;8395:15;:10;:15;:::i;:::-;8453:10;8444:20;;;;:8;:20;;;;;;8379:31;;-1:-1:-1;8444:34:0;;8379:31;8444:34;:24;:34;:::i;:::-;8430:10;8421:20;;;;:8;:20;;;;;;:57;;;;8521:10;;-1:-1:-1;;;;;8521:10:0;8512:20;;;;:29;;8537:3;8512:29;:24;:29;:::i;:::-;8498:10;;-1:-1:-1;;;;;8498:10:0;8489:20;;;;:8;:20;;;;;;;;;:52;;;;8567:39;;;;;;;8587:10;;8567:39;;;;;;;;8622:42;;;;;;;;8643:10;;8639:1;;-1:-1:-1;;;;;;;;;;;8622:42:0;;;;;;;;8701:10;;8680:37;;;;;;;;-1:-1:-1;;;;;8701:10:0;;;;8689;;-1:-1:-1;;;;;;;;;;;8680:37:0;;;;;;;;;-1:-1:-1;8747:4:0;;7699:1060;-1:-1:-1;;;;;7699:1060:0:o;1429:23::-;;;-1:-1:-1;;;;;1429:23:0;;:::o;3392:151::-;-1:-1:-1;;;;;3507:19:0;;;3473:14;3507:19;;;:7;:19;;;;;;;;:28;;;;;;;;;;;;;3392:151::o;1692:102::-;1658:5;;-1:-1:-1;;;;;1658:5:0;1644:10;:19;1636:28;;;;;;1766:8;:20;;-1:-1:-1;;1766:20:0;-1:-1:-1;;;;;1766:20:0;;;;;;;;;;1692:102::o;172:114::-;224:6;251;;;;243:15;;;;;;-1:-1:-1;273:5:0;;;172:114::o;52:::-;127:5;;;151:6;;;;143:15;;;;;426:113;478:6;505:5;;;497:14;;;;;;530:1;526;:5;;;;;;;;;426:113;-1:-1:-1;;;426:113:0:o;292:128::-;367:5;;;391:6;;;:20;;;410:1;405;401;:5;;;;;;;;:10;391:20;383:29;;;;;;;545:125;597:6;629:1;624;:6;;:16;;;;;639:1;634;:6;;624:16;616:25;;;;;;;;-1:-1:-1;656:6:0;;;545:125::o

Swarm Source

bzzr://8820508260ef645afb931ddd2734767e9ba3f064a93ffe98016828479b79999c

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.