ETH Price: $2,345.24 (-5.57%)

Contract

0xFA61794e0581d92c6495B1639266B605F618AfBC
 

Overview

ETH Balance

0.008724856292632323 ETH

Eth Value

$20.46 (@ $2,345.24/ETH)

Token Holdings

Transaction Hash
Method
Block
From
To
Deposit204531962024-08-04 5:48:23206 days ago1722750503IN
DMEX v6
0.00246783 ETH0.000067291
Deposit204156422024-07-29 23:54:35212 days ago1722297275IN
DMEX v6
0.00014851 ETH0.000067291
Deposit203955632024-07-27 4:41:59214 days ago1722055319IN
DMEX v6
0.0061085 ETH0.000067291
Deposit190392812024-01-19 7:01:23404 days ago1705647683IN
DMEX v6
24.8 ETH0.0016824525
Deposit189659962024-01-09 0:57:35415 days ago1704761855IN
DMEX v6
0.005 ETH0.0011440617
Deposit189464322024-01-06 6:34:47417 days ago1704522887IN
DMEX v6
0.52 ETH0.0011440617
Deposit189369852024-01-04 22:40:23419 days ago1704408023IN
DMEX v6
0.86294588 ETH0.0014132521
Deposit189368392024-01-04 22:10:11419 days ago1704406211IN
DMEX v6
0.0176392 ETH0.0016151524
Deposit188834142023-12-28 10:08:23426 days ago1703758103IN
DMEX v6
0.05143327 ETH0.0018843428
Deposit188827362023-12-28 7:50:23426 days ago1703749823IN
DMEX v6
0.02453438 ETH0.0020862331
Deposit188815832023-12-28 3:57:35426 days ago1703735855IN
DMEX v6
0.03892 ETH0.0017497426
Deposit188745862023-12-27 4:20:47427 days ago1703650847IN
DMEX v6
0.05806531 ETH0.0008748713
Deposit188713712023-12-26 17:30:59428 days ago1703611859IN
DMEX v6
0.052238 ETH0.0022881334
Deposit188491332023-12-23 14:33:35431 days ago1703342015IN
DMEX v6
0.00130982 ETH0.0024227236
Deposit187825782023-12-14 6:24:23440 days ago1702535063IN
DMEX v6
0.02739915 ETH0.003364950
Deposit187599702023-12-11 2:25:35443 days ago1702261535IN
DMEX v6
0.01240357 ETH0.00834495124
Deposit187597162023-12-11 1:34:47444 days ago1702258487IN
DMEX v6
0.02253818 ETH0.0020189430
Deposit187503762023-12-09 18:13:23445 days ago1702145603IN
DMEX v6
0.09480967 ETH0.0029611144
Deposit187483342023-12-09 11:21:11445 days ago1702120871IN
DMEX v6
0.0610851 ETH0.0023554335
Deposit187472632023-12-09 7:44:47445 days ago1702107887IN
DMEX v6
0.18684749 ETH0.0021535332
Deposit187438612023-12-08 20:16:59446 days ago1702066619IN
DMEX v6
0.00728131 ETH0.0029611144
Deposit187429452023-12-08 17:10:59446 days ago1702055459IN
DMEX v6
0.01645482 ETH0.0041051761
Deposit187423262023-12-08 15:06:23446 days ago1702047983IN
DMEX v6
0.04875 ETH0.0041051761
Deposit Token187323182023-12-07 5:24:59447 days ago1701926699IN
DMEX v6
0 ETH0.0029798637
Deposit187266992023-12-06 10:30:11448 days ago1701858611IN
DMEX v6
0.37910565 ETH0.0038359857
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
192747562024-02-21 8:09:35371 days ago1708502975
DMEX v6
6.51952008 ETH
192745482024-02-21 7:27:35371 days ago1708500455
DMEX v6
0.1 ETH
190956242024-01-27 4:45:59396 days ago1706330759
DMEX v6
0.35497466 ETH
190762392024-01-24 11:36:47399 days ago1706096207
DMEX v6
0.1882 ETH
190684542024-01-23 9:24:11400 days ago1706001851
DMEX v6
0.9958 ETH
190394932024-01-19 7:44:23404 days ago1705650263
DMEX v6
24.8038 ETH
190374842024-01-19 1:00:11405 days ago1705626011
DMEX v6
0.001389 ETH
190013662024-01-13 23:51:35410 days ago1705189895
DMEX v6
0.04452218 ETH
189528622024-01-07 4:30:35416 days ago1704601835
DMEX v6
0.0424154 ETH
189506312024-01-06 20:53:47417 days ago1704574427
DMEX v6
0.7718338 ETH
189292012024-01-03 20:27:59420 days ago1704313679
DMEX v6
0.00388059 ETH
189192642024-01-02 11:00:23421 days ago1704193223
DMEX v6
2.996 ETH
188704892023-12-26 14:32:47428 days ago1703601167
DMEX v6
0.9944 ETH
187707262023-12-12 14:33:47442 days ago1702391627
DMEX v6
2.9804 ETH
187487132023-12-09 12:36:59445 days ago1702125419
DMEX v6
0.0478851 ETH
187434002023-12-08 18:43:35446 days ago1702061015
DMEX v6
0.00725765 ETH
187434002023-12-08 18:43:35446 days ago1702061015
DMEX v6
0.03923333 ETH
187269032023-12-06 11:10:59448 days ago1701861059
DMEX v6
0.35950565 ETH
184127212023-10-23 11:38:23492 days ago1698061103
DMEX v6
0.9976 ETH
183855632023-10-19 16:27:23496 days ago1697732843
DMEX v6
0.4966 ETH
183773712023-10-18 12:55:23497 days ago1697633723
DMEX v6
0.41845323 ETH
183765532023-10-18 10:09:23497 days ago1697623763
DMEX v6
0.42217891 ETH
183751122023-10-18 5:19:11497 days ago1697606351
DMEX v6
0.48654143 ETH
182770672023-10-04 12:10:35511 days ago1696421435
DMEX v6
0.73105598 ETH
182746632023-10-04 4:06:59511 days ago1696392419
DMEX v6
0.0199133 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DMEX_Base

Compiler Version
v0.4.26+commit.4563c3fc

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-01-02
*/

pragma solidity ^0.4.19;

/* Interface for ERC20 Tokens */
contract Token {
    bytes32 public standard;
    bytes32 public name;
    bytes32 public symbol;
    uint256 public totalSupply;
    uint8 public decimals;
    bool public allowTransactions;
    mapping (address => uint256) public balanceOf;
    mapping (address => mapping (address => uint256)) public allowance;
    function transfer(address _to, uint256 _value) returns (bool success);
    function approveAndCall(address _spender, uint256 _value, bytes _extraData) returns (bool success);
    function approve(address _spender, uint256 _value) returns (bool success);
    function transferFrom(address _from, address _to, uint256 _value) returns (bool success);
}

/* Interface for pTokens contract */
contract pToken {
    function redeem(uint256 _value, string memory _btcAddress) public returns (bool _success);
}

interface IAMB {
    function messageSender() external view returns (address);
    function maxGasPerTx() external view returns (uint256);
    function transactionHash() external view returns (bytes32);
    function messageId() external view returns (bytes32);
    function messageSourceChainId() external view returns (bytes32);
    function messageCallStatus(bytes32 _messageId) external view returns (bool);
    function failedMessageDataHash(bytes32 _messageId) external view returns (bytes32);
    function failedMessageReceiver(bytes32 _messageId) external view returns (address);
    function failedMessageSender(bytes32 _messageId) external view returns (address);
    function requireToPassMessage(address _contract, bytes _data, uint256 _gas) external returns (bytes32);
    function requireToConfirmMessage(address _contract, bytes _data, uint256 _gas) external returns (bytes32);
    function sourceChainId() external view returns (uint256);
    function destinationChainId() external view returns (uint256);
}

interface DMEXXDAI {
    function depositTokenForUser(address token, uint128 amount, address user);
}

// The DMEX base Contract
contract DMEX_Base {
    address public owner; // holds the address of the contract owner
    mapping (address => bool) public admins; // mapping of admin addresses
    address public AMBBridgeContract;
    address public DMEX_XDAI_CONTRACT;

    uint256 public inactivityReleasePeriod; // period in blocks before a user can use the withdraw() function

    bool public destroyed = false; // contract is destoryed
    uint256 public destroyDelay = 1000000; // number of blocks after destroy, the contract is still active (aprox 6 monthds)
    uint256 public destroyBlock;

    uint256 public ambInstructionGas = 2000000;

    mapping (bytes32 => bool) public processedMessages; // records processed bridge messages, so the same message is not executed twice

    
    /**
     *
     *  BALNCE FUNCTIONS
     *
     **/

    // Deposit ETH to contract
    function deposit() payable {
        if (destroyed) revert();
        
        sendDepositInstructionToAMBBridge(msg.sender, address(0), msg.value);
    }

    // Deposit token to contract
    function depositToken(address token, uint128 amount) {
        if (destroyed) revert();
        if (!Token(token).transferFrom(msg.sender, this, amount)) throw; // attempts to transfer the token to this contract, if fails throws an error
        sendDepositInstructionToAMBBridge(msg.sender, token, amount);
    }

    // Deposit token to contract for a user
    function depositTokenForUser(address token, uint128 amount, address user) {    
        if (destroyed) revert();    

        if (!Token(token).transferFrom(msg.sender, this, amount)) throw; // attempts to transfer the token to this contract, if fails throws an error
        sendDepositInstructionToAMBBridge(user, token, amount);
    }


    function pTokenRedeem(address token, uint256 amount, string destinationAddress) onlyAMBBridge returns (bool success) {
        if (!pToken(token).redeem(amount, destinationAddress)) revert();
        bytes32 msgId = IAMB(AMBBridgeContract).messageId();
        processedMessages[msgId] = true;
        emit pTokenRedeemEvent(token, msg.sender, amount, destinationAddress);
    }


    function sendDepositInstructionToAMBBridge(address user, address token, uint256 amount) internal
    {
        bytes4 methodSelector = DMEXXDAI(0).depositTokenForUser.selector;
        bytes memory data = abi.encodeWithSelector(methodSelector, token, amount, user);

        uint256 gas = ambInstructionGas;

        // send AMB bridge instruction
        bytes32 msgId = IAMB(AMBBridgeContract).requireToPassMessage(DMEX_XDAI_CONTRACT, data, gas);

        emit Deposit(token, user, amount, msgId); // fires the deposit event
    }    
 


    // Withdrawal function used by the server to execute withdrawals
    function withdrawForUser(
        address token, // the address of the token to be withdrawn
        uint256 amount, // the amount to be withdrawn
        address user // address of the user
    ) onlyAMBBridge returns (bool success) {
        if (token == address(0)) { // checks if the withdrawal is in ETH or Tokens
            if (!user.send(amount)) throw; // sends ETH
        } else {
            if (!Token(token).transfer(user, amount)) throw; // sends tokens
        }

        bytes32 msgId = IAMB(AMBBridgeContract).messageId();
        processedMessages[msgId] = true;
        emit Withdraw(token, user, amount, msgId); // fires the withdraw event
    }



    /**
     *
     *  HELPER FUNCTIONS
     *
     **/

    // Event fired when the owner of the contract is changed
    event SetOwner(address indexed previousOwner, address indexed newOwner);

    // Allows only the owner of the contract to execute the function
    modifier onlyOwner {
        assert(msg.sender == owner);
        _;
    }

    // Changes the owner of the contract
    function setOwner(address newOwner) onlyOwner {
        SetOwner(owner, newOwner);
        owner = newOwner;
    }

    // Owner getter function
    function getOwner() returns (address out) {
        return owner;
    }

    // Adds or disables an admin account
    function setAdmin(address admin, bool isAdmin) onlyOwner {
        admins[admin] = isAdmin;
    }


    // Allows for admins only to call the function
    modifier onlyAdmin {
        if (msg.sender != owner && !admins[msg.sender]) throw;
        _;
    }


    // Allows for AMB Bridge only to call the function
    modifier onlyAMBBridge {
        if (msg.sender != AMBBridgeContract) throw;

        bytes32 msgId = IAMB(AMBBridgeContract).messageId();
        require(!processedMessages[msgId], "Error: message already processed");
        _;
    }

    function() external {
        throw;
    }

    function assert(bool assertion) {
        if (!assertion) throw;
    }

    // Safe Multiply Function - prevents integer overflow 
    function safeMul(uint a, uint b) returns (uint) {
        uint c = a * b;
        assert(a == 0 || c / a == b);
        return c;
    }

    // Safe Subtraction Function - prevents integer overflow 
    function safeSub(uint a, uint b) returns (uint) {
        assert(b <= a);
        return a - b;
    }

    // Safe Addition Function - prevents integer overflow 
    function safeAdd(uint a, uint b) returns (uint) {
        uint c = a + b;
        assert(c>=a && c>=b);
        return c;
    }



    /**
     *
     *  ADMIN FUNCTIONS
     *
     **/
    // Deposit event fired when a deposit takes place
    event Deposit(address indexed token, address indexed user, uint256 amount, bytes32 msgId);

    // Withdraw event fired when a withdrawal id executed
    event Withdraw(address indexed token, address indexed user, uint256 amount, bytes32 msgId);
    
    // pTokenRedeemEvent event fired when a pToken withdrawal is executed
    event pTokenRedeemEvent(address indexed token, address indexed user, uint256 amount, string destinationAddress);

    // Change inactivity release period event
    event InactivityReleasePeriodChange(uint256 value);

    // Fee account changed event
    event FeeAccountChanged(address indexed newFeeAccount);



    // Constructor function, initializes the contract and sets the core variables
    function DMEX_Base(uint256 inactivityReleasePeriod_, address AMBBridgeContract_, address DMEX_XDAI_CONTRACT_) {
        owner = msg.sender;
        inactivityReleasePeriod = inactivityReleasePeriod_;
        AMBBridgeContract = AMBBridgeContract_;
        DMEX_XDAI_CONTRACT = DMEX_XDAI_CONTRACT_;
    }

    // Sets the inactivity period before a user can withdraw funds manually
    function destroyContract() onlyOwner returns (bool success) {
        if (destroyed) throw;
        destroyBlock = block.number;

        return true;
    }

    // Sets the inactivity period before a user can withdraw funds manually
    function setInactivityReleasePeriod(uint256 expiry) onlyOwner returns (bool success) {
        if (expiry > 1000000) throw;
        inactivityReleasePeriod = expiry;

        emit InactivityReleasePeriodChange(expiry);
        return true;
    }

    // Returns the inactivity release perios
    function getInactivityReleasePeriod() view returns (uint256)
    {
        return inactivityReleasePeriod;
    }


    function releaseFundsAfterDestroy(address token, uint256 amount) onlyOwner returns (bool success) {
        if (!destroyed) throw;
        if (safeAdd(destroyBlock, destroyDelay) > block.number) throw; // destroy delay not yet passed

        if (token == address(0)) { // checks if withdrawal is a token or ETH, ETH has address 0x00000... 
            if (!msg.sender.send(amount)) throw; // send ETH
        } else {
            if (!Token(token).transfer(msg.sender, amount)) throw; // Send token
        }
    }

    function setAmbInstructionGas(uint256 newGas) onlyOwner {
        ambInstructionGas = newGas;
    }
}

Contract Security Audit

Contract ABI

[{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"},{"name":"user","type":"address"}],"name":"withdrawForUser","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"assertion","type":"bool"}],"name":"assert","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint128"},{"name":"user","type":"address"}],"name":"depositTokenForUser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"destroyContract","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"destroyBlock","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"AMBBridgeContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"destroyed","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"admins","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"admin","type":"address"},{"name":"isAdmin","type":"bool"}],"name":"setAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"},{"name":"destinationAddress","type":"string"}],"name":"pTokenRedeem","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ambInstructionGas","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"processedMessages","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"getOwner","outputs":[{"name":"out","type":"address"}],"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":"DMEX_XDAI_CONTRACT","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeSub","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getInactivityReleasePeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint128"}],"name":"depositToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"token","type":"address"},{"name":"amount","type":"uint256"}],"name":"releaseFundsAfterDestroy","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"destroyDelay","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeMul","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"expiry","type":"uint256"}],"name":"setInactivityReleasePeriod","outputs":[{"name":"success","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"a","type":"uint256"},{"name":"b","type":"uint256"}],"name":"safeAdd","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newGas","type":"uint256"}],"name":"setAmbInstructionGas","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"inactivityReleasePeriod","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"inactivityReleasePeriod_","type":"uint256"},{"name":"AMBBridgeContract_","type":"address"},{"name":"DMEX_XDAI_CONTRACT_","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":false,"stateMutability":"nonpayable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"SetOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"token","type":"address"},{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"msgId","type":"bytes32"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"token","type":"address"},{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"msgId","type":"bytes32"}],"name":"Withdraw","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"token","type":"address"},{"indexed":true,"name":"user","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"destinationAddress","type":"string"}],"name":"pTokenRedeemEvent","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"value","type":"uint256"}],"name":"InactivityReleasePeriodChange","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"newFeeAccount","type":"address"}],"name":"FeeAccountChanged","type":"event"}]

60806040526000600560006101000a81548160ff021916908315150217905550620f4240600655621e848060085534801561003957600080fd5b5060405160608061211a833981018060405281019080805190602001909291908051906020019092919080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508260048190555081600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050611fcf8061014b6000396000f30060806040526004361061015e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806285aafa146101705780630674763c146101f557806306c5ac4214610224578063092a5cce146102a357806313af4035146102d257806314fe6af9146103155780631d1b7db414610340578063359cbbc914610397578063429b62e5146103c65780634b0bddd2146104215780635d44ec0a14610470578063675c54101461051b57806388ba16ab14610546578063893d20e81461058f5780638da5cb5b146105e657806393479d2f1461063d578063a293d1e814610694578063a7a278b1146106df578063ad895d7e1461070a578063cb2ec54914610769578063cc9ff632146107ce578063d05c78da146107f9578063d0e30db014610844578063dd93c74a1461084e578063e6cb901314610893578063ed8b53b1146108de578063f31174ee1461090b575b34801561016a57600080fd5b50600080fd5b34801561017c57600080fd5b506101db600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610936565b604051808215151515815260200191505060405180910390f35b34801561020157600080fd5b50610222600480360381019080803515159060200190929190505050610dd1565b005b34801561023057600080fd5b506102a1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356fffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610de0565b005b3480156102af57600080fd5b506102b8610f4b565b604051808215151515815260200191505060405180910390f35b3480156102de57600080fd5b50610313600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fcd565b005b34801561032157600080fd5b5061032a6110e3565b6040518082815260200191505060405180910390f35b34801561034c57600080fd5b506103556110e9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103a357600080fd5b506103ac61110f565b604051808215151515815260200191505060405180910390f35b3480156103d257600080fd5b50610407600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611122565b604051808215151515815260200191505060405180910390f35b34801561042d57600080fd5b5061046e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611142565b005b34801561047c57600080fd5b50610501600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506111f5565b604051808215151515815260200191505060405180910390f35b34801561052757600080fd5b506105306116ab565b6040518082815260200191505060405180910390f35b34801561055257600080fd5b5061057560048036038101908080356000191690602001909291905050506116b1565b604051808215151515815260200191505060405180910390f35b34801561059b57600080fd5b506105a46116d1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156105f257600080fd5b506105fb6116fa565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561064957600080fd5b5061065261171f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106a057600080fd5b506106c96004803603810190808035906020019092919080359060200190929190505050611745565b6040518082815260200191505060405180910390f35b3480156106eb57600080fd5b506106f461175e565b6040518082815260200191505060405180910390f35b34801561071657600080fd5b50610767600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356fffffffffffffffffffffffffffffffff169060200190929190505050611768565b005b34801561077557600080fd5b506107b4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506118d2565b604051808215151515815260200191505060405180910390f35b3480156107da57600080fd5b506107e3611acb565b6040518082815260200191505060405180910390f35b34801561080557600080fd5b5061082e6004803603810190808035906020019092919080359060200190929190505050611ad1565b6040518082815260200191505060405180910390f35b61084c611b04565b005b34801561085a57600080fd5b5061087960048036038101908080359060200190929190505050611b2c565b604051808215151515815260200191505060405180910390f35b34801561089f57600080fd5b506108c86004803603810190808035906020019092919080359060200190929190505050611bdd565b6040518082815260200191505060405180910390f35b3480156108ea57600080fd5b5061090960048036038101908080359060200190929190505050611c07565b005b34801561091757600080fd5b50610920611c69565b6040518082815260200191505060405180910390f35b6000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561099757600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663669f618b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015610a1d57600080fd5b505af1158015610a31573d6000803e3d6000fd5b505050506040513d6020811015610a4757600080fd5b8101908080519060200190929190505050905060096000826000191660001916815260200190815260200160002060009054906101000a900460ff16151515610af8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4572726f723a206d65737361676520616c72656164792070726f63657373656481525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415610b72578373ffffffffffffffffffffffffffffffffffffffff166108fc869081150290604051600060405180830381858888f193505050501515610b6d57600080fd5b610c5c565b8573ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85876040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610c1557600080fd5b505af1158015610c29573d6000803e3d6000fd5b505050506040513d6020811015610c3f57600080fd5b81019080805190602001909291905050501515610c5b57600080fd5b5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663669f618b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015610ce257600080fd5b505af1158015610cf6573d6000803e3d6000fd5b505050506040513d6020811015610d0c57600080fd5b81019080805190602001909291905050509150600160096000846000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055508373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f6000e90278b62c00aaaf621956141fad63f2be8860557c31de1f736cafae291687856040518083815260200182600019166000191681526020019250505060405180910390a350509392505050565b801515610ddd57600080fd5b50565b600560009054906101000a900460ff1615610dfa57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001826fffffffffffffffffffffffffffffffff1681526020019350505050602060405180830381600087803b158015610ee357600080fd5b505af1158015610ef7573d6000803e3d6000fd5b505050506040513d6020811015610f0d57600080fd5b81019080805190602001909291905050501515610f2957600080fd5b610f468184846fffffffffffffffffffffffffffffffff16611c6f565b505050565b6000610fa56000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b600560009054906101000a900460ff1615610fbf57600080fd5b436007819055506001905090565b6110256000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fcbf985117192c8f614a58aaf97226bb80a754772f5f6edf06f87c675f2e6c66360405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60075481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560009054906101000a900460ff1681565b60016020528060005260406000206000915054906101000a900460ff1681565b61119a6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561125657600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663669f618b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156112dc57600080fd5b505af11580156112f0573d6000803e3d6000fd5b505050506040513d602081101561130657600080fd5b8101908080519060200190929190505050905060096000826000191660001916815260200190815260200160002060009054906101000a900460ff161515156113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4572726f723a206d65737361676520616c72656164792070726f63657373656481525060200191505060405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff166324b76fd586866040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561144657808201518184015260208101905061142b565b50505050905090810190601f1680156114735780820380516001836020036101000a031916815260200191505b509350505050602060405180830381600087803b15801561149357600080fd5b505af11580156114a7573d6000803e3d6000fd5b505050506040513d60208110156114bd57600080fd5b810190808051906020019092919050505015156114d957600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663669f618b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561155f57600080fd5b505af1158015611573573d6000803e3d6000fd5b505050506040513d602081101561158957600080fd5b81019080805190602001909291905050509150600160096000846000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f9dfa686b7b2937e4fd677c02d58d6360465783882b284ba8378d52d957031f4887876040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561166757808201518184015260208101905061164c565b50505050905090810190601f1680156116945780820380516001836020036101000a031916815260200191505b50935050505060405180910390a350509392505050565b60085481565b60096020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061175383831115610dd1565b818303905092915050565b6000600454905090565b600560009054906101000a900460ff161561178257600080fd5b8173ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001826fffffffffffffffffffffffffffffffff1681526020019350505050602060405180830381600087803b15801561186b57600080fd5b505af115801561187f573d6000803e3d6000fd5b505050506040513d602081101561189557600080fd5b810190808051906020019092919050505015156118b157600080fd5b6118ce3383836fffffffffffffffffffffffffffffffff16611c6f565b5050565b600061192c6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b600560009054906101000a900460ff16151561194757600080fd5b43611956600754600654611bdd565b111561196157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119db573373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015156119d657600080fd5b611ac5565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611a7e57600080fd5b505af1158015611a92573d6000803e3d6000fd5b505050506040513d6020811015611aa857600080fd5b81019080805190602001909291905050501515611ac457600080fd5b5b92915050565b60065481565b6000808284029050611afa6000851480611af55750838583811515611af257fe5b04145b610dd1565b8091505092915050565b600560009054906101000a900460ff1615611b1e57600080fd5b611b2a33600034611c6f565b565b6000611b866000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b620f4240821115611b9657600080fd5b816004819055507f19ead489622e1c2974a8b824d87f439caa95e609c9ec1beff8e3641b546781d3826040518082815260200191505060405180910390a160019050919050565b6000808284019050611bfd848210158015611bf85750838210155b610dd1565b8091505092915050565b611c5f6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b8060088190555050565b60045481565b60006060600080600073ffffffffffffffffffffffffffffffffffffffff166306c5ac4290507c010000000000000000000000000000000000000000000000000000000002935083868689604051602401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019350505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505092506008549150600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dc8601b3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611e9a578082015181840152602081019050611e7f565b50505050905090810190601f168015611ec75780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b158015611ee857600080fd5b505af1158015611efc573d6000803e3d6000fd5b505050506040513d6020811015611f1257600080fd5b810190808051906020019092919050505090508673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f76bb911c362d5b1feb3058bc7dc9354703e4b6eb9c61cc845f73da880cf62f6187846040518083815260200182600019166000191681526020019250505060405180910390a3505050505050505600a165627a7a723058201c8330f1c49e435b69786c2fbdd93a783d4ec2d64180bd6bac7446e3664a3a04002900000000000000000000000000000000000000000000000000000000000805200000000000000000000000004c36d2919e407f0cc2ee3c993ccf8ac26d9ce64e000000000000000000000000d840f57b84eb281fb045fc271c07d37c3cf4e206

Deployed Bytecode

0x60806040526004361061015e576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806285aafa146101705780630674763c146101f557806306c5ac4214610224578063092a5cce146102a357806313af4035146102d257806314fe6af9146103155780631d1b7db414610340578063359cbbc914610397578063429b62e5146103c65780634b0bddd2146104215780635d44ec0a14610470578063675c54101461051b57806388ba16ab14610546578063893d20e81461058f5780638da5cb5b146105e657806393479d2f1461063d578063a293d1e814610694578063a7a278b1146106df578063ad895d7e1461070a578063cb2ec54914610769578063cc9ff632146107ce578063d05c78da146107f9578063d0e30db014610844578063dd93c74a1461084e578063e6cb901314610893578063ed8b53b1146108de578063f31174ee1461090b575b34801561016a57600080fd5b50600080fd5b34801561017c57600080fd5b506101db600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610936565b604051808215151515815260200191505060405180910390f35b34801561020157600080fd5b50610222600480360381019080803515159060200190929190505050610dd1565b005b34801561023057600080fd5b506102a1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356fffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610de0565b005b3480156102af57600080fd5b506102b8610f4b565b604051808215151515815260200191505060405180910390f35b3480156102de57600080fd5b50610313600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fcd565b005b34801561032157600080fd5b5061032a6110e3565b6040518082815260200191505060405180910390f35b34801561034c57600080fd5b506103556110e9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156103a357600080fd5b506103ac61110f565b604051808215151515815260200191505060405180910390f35b3480156103d257600080fd5b50610407600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611122565b604051808215151515815260200191505060405180910390f35b34801561042d57600080fd5b5061046e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050611142565b005b34801561047c57600080fd5b50610501600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506111f5565b604051808215151515815260200191505060405180910390f35b34801561052757600080fd5b506105306116ab565b6040518082815260200191505060405180910390f35b34801561055257600080fd5b5061057560048036038101908080356000191690602001909291905050506116b1565b604051808215151515815260200191505060405180910390f35b34801561059b57600080fd5b506105a46116d1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156105f257600080fd5b506105fb6116fa565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561064957600080fd5b5061065261171f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106a057600080fd5b506106c96004803603810190808035906020019092919080359060200190929190505050611745565b6040518082815260200191505060405180910390f35b3480156106eb57600080fd5b506106f461175e565b6040518082815260200191505060405180910390f35b34801561071657600080fd5b50610767600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080356fffffffffffffffffffffffffffffffff169060200190929190505050611768565b005b34801561077557600080fd5b506107b4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506118d2565b604051808215151515815260200191505060405180910390f35b3480156107da57600080fd5b506107e3611acb565b6040518082815260200191505060405180910390f35b34801561080557600080fd5b5061082e6004803603810190808035906020019092919080359060200190929190505050611ad1565b6040518082815260200191505060405180910390f35b61084c611b04565b005b34801561085a57600080fd5b5061087960048036038101908080359060200190929190505050611b2c565b604051808215151515815260200191505060405180910390f35b34801561089f57600080fd5b506108c86004803603810190808035906020019092919080359060200190929190505050611bdd565b6040518082815260200191505060405180910390f35b3480156108ea57600080fd5b5061090960048036038101908080359060200190929190505050611c07565b005b34801561091757600080fd5b50610920611c69565b6040518082815260200191505060405180910390f35b6000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561099757600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663669f618b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015610a1d57600080fd5b505af1158015610a31573d6000803e3d6000fd5b505050506040513d6020811015610a4757600080fd5b8101908080519060200190929190505050905060096000826000191660001916815260200190815260200160002060009054906101000a900460ff16151515610af8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4572726f723a206d65737361676520616c72656164792070726f63657373656481525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415610b72578373ffffffffffffffffffffffffffffffffffffffff166108fc869081150290604051600060405180830381858888f193505050501515610b6d57600080fd5b610c5c565b8573ffffffffffffffffffffffffffffffffffffffff1663a9059cbb85876040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610c1557600080fd5b505af1158015610c29573d6000803e3d6000fd5b505050506040513d6020811015610c3f57600080fd5b81019080805190602001909291905050501515610c5b57600080fd5b5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663669f618b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015610ce257600080fd5b505af1158015610cf6573d6000803e3d6000fd5b505050506040513d6020811015610d0c57600080fd5b81019080805190602001909291905050509150600160096000846000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055508373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f6000e90278b62c00aaaf621956141fad63f2be8860557c31de1f736cafae291687856040518083815260200182600019166000191681526020019250505060405180910390a350509392505050565b801515610ddd57600080fd5b50565b600560009054906101000a900460ff1615610dfa57600080fd5b8273ffffffffffffffffffffffffffffffffffffffff166323b872dd3330856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001826fffffffffffffffffffffffffffffffff1681526020019350505050602060405180830381600087803b158015610ee357600080fd5b505af1158015610ef7573d6000803e3d6000fd5b505050506040513d6020811015610f0d57600080fd5b81019080805190602001909291905050501515610f2957600080fd5b610f468184846fffffffffffffffffffffffffffffffff16611c6f565b505050565b6000610fa56000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b600560009054906101000a900460ff1615610fbf57600080fd5b436007819055506001905090565b6110256000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fcbf985117192c8f614a58aaf97226bb80a754772f5f6edf06f87c675f2e6c66360405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60075481565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560009054906101000a900460ff1681565b60016020528060005260406000206000915054906101000a900460ff1681565b61119a6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b80600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000806000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561125657600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663669f618b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b1580156112dc57600080fd5b505af11580156112f0573d6000803e3d6000fd5b505050506040513d602081101561130657600080fd5b8101908080519060200190929190505050905060096000826000191660001916815260200190815260200160002060009054906101000a900460ff161515156113b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4572726f723a206d65737361676520616c72656164792070726f63657373656481525060200191505060405180910390fd5b8573ffffffffffffffffffffffffffffffffffffffff166324b76fd586866040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561144657808201518184015260208101905061142b565b50505050905090810190601f1680156114735780820380516001836020036101000a031916815260200191505b509350505050602060405180830381600087803b15801561149357600080fd5b505af11580156114a7573d6000803e3d6000fd5b505050506040513d60208110156114bd57600080fd5b810190808051906020019092919050505015156114d957600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663669f618b6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b15801561155f57600080fd5b505af1158015611573573d6000803e3d6000fd5b505050506040513d602081101561158957600080fd5b81019080805190602001909291905050509150600160096000846000191660001916815260200190815260200160002060006101000a81548160ff0219169083151502179055503373ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f9dfa686b7b2937e4fd677c02d58d6360465783882b284ba8378d52d957031f4887876040518083815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561166757808201518184015260208101905061164c565b50505050905090810190601f1680156116945780820380516001836020036101000a031916815260200191505b50935050505060405180910390a350509392505050565b60085481565b60096020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061175383831115610dd1565b818303905092915050565b6000600454905090565b600560009054906101000a900460ff161561178257600080fd5b8173ffffffffffffffffffffffffffffffffffffffff166323b872dd3330846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001826fffffffffffffffffffffffffffffffff1681526020019350505050602060405180830381600087803b15801561186b57600080fd5b505af115801561187f573d6000803e3d6000fd5b505050506040513d602081101561189557600080fd5b810190808051906020019092919050505015156118b157600080fd5b6118ce3383836fffffffffffffffffffffffffffffffff16611c6f565b5050565b600061192c6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b600560009054906101000a900460ff16151561194757600080fd5b43611956600754600654611bdd565b111561196157600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156119db573373ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f1935050505015156119d657600080fd5b611ac5565b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611a7e57600080fd5b505af1158015611a92573d6000803e3d6000fd5b505050506040513d6020811015611aa857600080fd5b81019080805190602001909291905050501515611ac457600080fd5b5b92915050565b60065481565b6000808284029050611afa6000851480611af55750838583811515611af257fe5b04145b610dd1565b8091505092915050565b600560009054906101000a900460ff1615611b1e57600080fd5b611b2a33600034611c6f565b565b6000611b866000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b620f4240821115611b9657600080fd5b816004819055507f19ead489622e1c2974a8b824d87f439caa95e609c9ec1beff8e3641b546781d3826040518082815260200191505060405180910390a160019050919050565b6000808284019050611bfd848210158015611bf85750838210155b610dd1565b8091505092915050565b611c5f6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610dd1565b8060088190555050565b60045481565b60006060600080600073ffffffffffffffffffffffffffffffffffffffff166306c5ac4290507c010000000000000000000000000000000000000000000000000000000002935083868689604051602401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019350505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505092506008549150600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dc8601b3600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685856040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001838152602001828103825284818151815260200191508051906020019080838360005b83811015611e9a578082015181840152602081019050611e7f565b50505050905090810190601f168015611ec75780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b158015611ee857600080fd5b505af1158015611efc573d6000803e3d6000fd5b505050506040513d6020811015611f1257600080fd5b810190808051906020019092919050505090508673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f76bb911c362d5b1feb3058bc7dc9354703e4b6eb9c61cc845f73da880cf62f6187846040518083815260200182600019166000191681526020019250505060405180910390a3505050505050505600a165627a7a723058201c8330f1c49e435b69786c2fbdd93a783d4ec2d64180bd6bac7446e3664a3a040029

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

00000000000000000000000000000000000000000000000000000000000805200000000000000000000000004c36d2919e407f0cc2ee3c993ccf8ac26d9ce64e000000000000000000000000d840f57b84eb281fb045fc271c07d37c3cf4e206

-----Decoded View---------------
Arg [0] : inactivityReleasePeriod_ (uint256): 525600
Arg [1] : AMBBridgeContract_ (address): 0x4C36d2919e407f0Cc2Ee3c993ccF8ac26d9CE64e
Arg [2] : DMEX_XDAI_CONTRACT_ (address): 0xd840f57b84Eb281fb045FC271c07d37C3cf4E206

-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000080520
Arg [1] : 0000000000000000000000004c36d2919e407f0cc2ee3c993ccf8ac26d9ce64e
Arg [2] : 000000000000000000000000d840f57b84eb281fb045fc271c07d37c3cf4e206


Deployed Bytecode Sourcemap

2079:8058:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2079:8058:0;6886:5;;;4904:680;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4904:680:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6907:72;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6907:72:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;3529:342;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3529:342:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8825:161;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8825:161:0;;;;;;;;;;;;;;;;;;;;;;;;;;;5998:117;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5998:117:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;2632:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2632:27:0;;;;;;;;;;;;;;;;;;;;;;;2251:32;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2251:32:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2445:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2445:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2175:39;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2175:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6276:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6276:99:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3881:383;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3881:383:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2668:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2668:42:0;;;;;;;;;;;;;;;;;;;;;;;2719:50;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2719:50:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6153:73;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6153:73:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2105:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2105:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2290:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2290:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7257:104;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7257:104:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9376:115;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9376:115:0;;;;;;;;;;;;;;;;;;;;;;;3159:317;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3159:317:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9501:524;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9501:524:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2506:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2506:37:0;;;;;;;;;;;;;;;;;;;;;;;7047:139;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7047:139:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2959:158;;;;;;9071:251;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9071:251:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7429:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7429:131:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10033:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10033:101:0;;;;;;;;;;;;;;;;;;;;;;;;;;2332:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2332:38:0;;;;;;;;;;;;;;;;;;;;;;;4904:680;5128:12;5403:13;6695;6658:17;;;;;;;;;;;6644:31;;:10;:31;;;;6640:42;;;6677:5;;;6640:42;6716:17;;;;;;;;;;;6711:33;;;:35;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6711:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6711:35:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6711:35:0;;;;;;;;;;;;;;;;6695:51;;6766:17;:24;6784:5;6766:24;;;;;;;;;;;;;;;;;;;;;;;;;;;6765:25;6757:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5174:1;5157:19;;:5;:19;;;5153:238;;;5246:4;:9;;:17;5256:6;5246:17;;;;;;;;;;;;;;;;;;;;;;;5245:18;5241:29;;;5265:5;;;5241:29;5153:238;;;5327:5;5321:21;;;5343:4;5349:6;5321:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5321:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5321:35:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5321:35:0;;;;;;;;;;;;;;;;5320:36;5316:47;;;5358:5;;;5316:47;5153:238;5424:17;;;;;;;;;;;5419:33;;;:35;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5419:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5419:35:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5419:35:0;;;;;;;;;;;;;;;;5403:51;;5492:4;5465:17;:24;5483:5;5465:24;;;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;5528:4;5512:36;;5521:5;5512:36;;;5534:6;5542:5;5512:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4904:680;;;;;;;:::o;6907:72::-;6955:9;6954:10;6950:21;;;6966:5;;;6950:21;6907:72;:::o;3529:342::-;3622:9;;;;;;;;;;;3618:23;;;3633:8;;;3618:23;3669:5;3663:25;;;3689:10;3701:4;3707:6;3663:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3663:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3663:51:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3663:51:0;;;;;;;;;;;;;;;;3662:52;3658:63;;;3716:5;;;3658:63;3809:54;3843:4;3849:5;3856:6;3809:54;;:33;:54::i;:::-;3529:342;;;:::o;8825:161::-;8871:12;5901:27;5922:5;;;;;;;;;;;5908:19;;:10;:19;;;5901:6;:27::i;:::-;8900:9;;;;;;;;;;;8896:20;;;8911:5;;;8896:20;8942:12;8927;:27;;;;8974:4;8967:11;;8825:161;:::o;5998:117::-;5901:27;5922:5;;;;;;;;;;;5908:19;;:10;:19;;;5901:6;:27::i;:::-;6071:8;6055:25;;6064:5;;;;;;;;;;;6055:25;;;;;;;;;;;;6099:8;6091:5;;:16;;;;;;;;;;;;;;;;;;5998:117;:::o;2632:27::-;;;;:::o;2251:32::-;;;;;;;;;;;;;:::o;2445:29::-;;;;;;;;;;;;;:::o;2175:39::-;;;;;;;;;;;;;;;;;;;;;;:::o;6276:99::-;5901:27;5922:5;;;;;;;;;;;5908:19;;:10;:19;;;5901:6;:27::i;:::-;6360:7;6344:6;:13;6351:5;6344:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;6276:99;;:::o;3881:383::-;3984:12;4083:13;6695;6658:17;;;;;;;;;;;6644:31;;:10;:31;;;;6640:42;;;6677:5;;;6640:42;6716:17;;;;;;;;;;;6711:33;;;:35;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6711:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6711:35:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6711:35:0;;;;;;;;;;;;;;;;6695:51;;6766:17;:24;6784:5;6766:24;;;;;;;;;;;;;;;;;;;;;;;;;;;6765:25;6757:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4021:5;4014:20;;;4035:6;4043:18;4014:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;4014:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4014:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4014:48:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4014:48:0;;;;;;;;;;;;;;;;4013:49;4009:63;;;4064:8;;;4009:63;4104:17;;;;;;;;;;;4099:33;;;:35;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4099:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4099:35:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4099:35:0;;;;;;;;;;;;;;;;4083:51;;4172:4;4145:17;:24;4163:5;4145:24;;;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;4217:10;4192:64;;4210:5;4192:64;;;4229:6;4237:18;4192:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;4192:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3881:383;;;;;;;:::o;2668:42::-;;;;:::o;2719:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;6153:73::-;6182:11;6213:5;;;;;;;;;;;6206:12;;6153:73;:::o;2105:20::-;;;;;;;;;;;;;:::o;2290:33::-;;;;;;;;;;;;;:::o;7257:104::-;7299:4;7316:14;7328:1;7323;:6;;7316;:14::i;:::-;7352:1;7348;:5;7341:12;;7257:104;;;;:::o;9376:115::-;9428:7;9460:23;;9453:30;;9376:115;:::o;3159:317::-;3227:9;;;;;;;;;;;3223:23;;;3238:8;;;3223:23;3268:5;3262:25;;;3288:10;3300:4;3306:6;3262:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3262:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3262:51:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3262:51:0;;;;;;;;;;;;;;;;3261:52;3257:63;;;3315:5;;;3257:63;3408:60;3442:10;3454:5;3461:6;3408:60;;:33;:60::i;:::-;3159:317;;:::o;9501:524::-;9585:12;5901:27;5922:5;;;;;;;;;;;5908:19;;:10;:19;;;5901:6;:27::i;:::-;9615:9;;;;;;;;;;;9614:10;9610:21;;;9626:5;;;9610:21;9684:12;9646:35;9654:12;;9668;;9646:7;:35::i;:::-;:50;9642:61;;;9698:5;;;9642:61;9769:1;9752:19;;:5;:19;;;9748:270;;;9864:10;:15;;:23;9880:6;9864:23;;;;;;;;;;;;;;;;;;;;;;;9863:24;9859:35;;;9889:5;;;9859:35;9748:270;;;9950:5;9944:21;;;9966:10;9978:6;9944:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9944:41:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9944:41:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9944:41:0;;;;;;;;;;;;;;;;9943:42;9939:53;;;9987:5;;;9939:53;9748:270;9501:524;;;;:::o;2506:37::-;;;;:::o;7047:139::-;7089:4;7106:6;7119:1;7115;:5;7106:14;;7131:28;7143:1;7138;:6;:20;;;;7157:1;7152;7148;:5;;;;;;;;:10;7138:20;7131:6;:28::i;:::-;7177:1;7170:8;;7047:139;;;;;:::o;2959:158::-;3001:9;;;;;;;;;;;2997:23;;;3012:8;;;2997:23;3041:68;3075:10;3095:1;3099:9;3041:33;:68::i;:::-;2959:158::o;9071:251::-;9142:12;5901:27;5922:5;;;;;;;;;;;5908:19;;:10;:19;;;5901:6;:27::i;:::-;9180:7;9171:6;:16;9167:27;;;9189:5;;;9167:27;9231:6;9205:23;:32;;;;9255:37;9285:6;9255:37;;;;;;;;;;;;;;;;;;9310:4;9303:11;;9071:251;;;:::o;7429:131::-;7471:4;7488:6;7501:1;7497;:5;7488:14;;7513:20;7523:1;7520;:4;;:12;;;;;7531:1;7528;:4;;7520:12;7513:6;:20::i;:::-;7551:1;7544:8;;7429:131;;;;;:::o;10033:101::-;5901:27;5922:5;;;;;;;;;;;5908:19;;:10;:19;;;5901:6;:27::i;:::-;10120:6;10100:17;:26;;;;10033:101;:::o;2332:38::-;;;;:::o;4274:543::-;4387:21;4462:17;4554:11;4638:13;4420:1;4411:31;;;:40;;;;4387:64;;4505:14;4521:5;4528:6;4536:4;4482:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;4482:59:0;;;;;;;38:4:-1;29:7;25:18;67:10;61:17;96:58;199:8;192:4;186;182:15;179:29;167:10;160:49;0:215;;;4482:59:0;4462:79;;4568:17;;4554:31;;4659:17;;;;;;;;;;;4654:44;;;4699:18;;;;;;;;;;;4719:4;4725:3;4654:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;4654:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4654:75:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4654:75:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4654:75:0;;;;;;;;;;;;;;;;4638:91;;4762:4;4747:35;;4755:5;4747:35;;;4768:6;4776:5;4747:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4274:543;;;;;;;:::o

Swarm Source

bzzr://1c8330f1c49e435b69786c2fbdd93a783d4ec2d64180bd6bac7446e3664a3a04

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  ]
[ 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.