ETH Price: $2,063.80 (-4.55%)

Contract

0x6452437B319C8Ab267E7cdfc016C8A4A4bF7890e
 

Overview

ETH Balance

0.000003867312558907 ETH

Eth Value

Less Than $0.01 (@ $2,063.80/ETH)

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Virtual Rese...68755472018-12-12 22:52:442660 days ago1544655164IN
0x6452437B...A4bF7890e
0 ETH0.0005612820
Set Virtual Rese...68000812018-11-30 11:22:082673 days ago1543576928IN
0x6452437B...A4bF7890e
0 ETH0.00064423
Buy67945072018-11-29 13:21:532674 days ago1543497713IN
0x6452437B...A4bF7890e
2.5 ETH0.001182813
Buy67924462018-11-29 5:07:112674 days ago1543468031IN
0x6452437B...A4bF7890e
0.235 ETH0.0022758930
Buy67901302018-11-28 20:12:022674 days ago1543435922IN
0x6452437B...A4bF7890e
0.25 ETH0.0016355318
Buy67890302018-11-28 15:56:192674 days ago1543420579IN
0x6452437B...A4bF7890e
0.25 ETH0.0021807124
Buy67889752018-11-28 15:43:502674 days ago1543419830IN
0x6452437B...A4bF7890e
0.02 ETH0.0015017524
Buy67886722018-11-28 14:28:112675 days ago1543415291IN
0x6452437B...A4bF7890e
0.3 ETH0.0018207124
Buy67862042018-11-28 4:36:582675 days ago1543379818IN
0x6452437B...A4bF7890e
0.16 ETH0.000454796
Buy67861332018-11-28 4:19:532675 days ago1543378793IN
0x6452437B...A4bF7890e
0.18 ETH0.000454315
Buy67826632018-11-27 14:35:092676 days ago1543329309IN
0x6452437B...A4bF7890e
0.01 ETH0.0011635915
Buy67810142018-11-27 7:47:142676 days ago1543304834IN
0x6452437B...A4bF7890e
10 ETH0.0021835624
Buy67781742018-11-26 20:26:082676 days ago1543263968IN
0x6452437B...A4bF7890e
0.05 ETH0.0009308712
Buy67780332018-11-26 19:51:442676 days ago1543261904IN
0x6452437B...A4bF7890e
0.37 ETH0.0010903512
Buy67765352018-11-26 14:07:032677 days ago1543241223IN
0x6452437B...A4bF7890e
1 ETH0.000626936.9
Buy67764682018-11-26 13:47:392677 days ago1543240059IN
0x6452437B...A4bF7890e
0.232 ETH0.0016343818
Buy67763392018-11-26 13:15:172677 days ago1543238117IN
0x6452437B...A4bF7890e
0.24 ETH0.000317393
Set Virtual Rese...67763272018-11-26 13:12:232677 days ago1543237943IN
0x6452437B...A4bF7890e
0 ETH0.000196447
Set Virtual Rese...67341392018-11-19 15:01:152684 days ago1542639675IN
0x6452437B...A4bF7890e
0 ETH0.0004310
Enable67341392018-11-19 15:01:152684 days ago1542639675IN
0x6452437B...A4bF7890e
0 ETH0.0002750910
Set Send To Safe...67341372018-11-19 15:00:542684 days ago1542639654IN
0x6452437B...A4bF7890e
0 ETH0.0002700810

Latest 17 internal transactions

Advanced mode:
Parent Transaction Hash Method Block
From
To
-93442662020-01-24 11:39:132253 days ago1579865953
0x6452437B...A4bF7890e
0.00051693 ETH
-69977912019-01-02 13:23:302640 days ago1546435410
0x6452437B...A4bF7890e
0.00544153 ETH
Transfer67948762018-11-29 14:47:562674 days ago1543502876
0x6452437B...A4bF7890e
0.07323861 ETH
Transfer67945312018-11-29 13:28:102674 days ago1543498090
0x6452437B...A4bF7890e
0.98085554 ETH
Transfer67945072018-11-29 13:21:532674 days ago1543497713
0x6452437B...A4bF7890e
2 ETH
Transfer67924462018-11-29 5:07:112674 days ago1543468031
0x6452437B...A4bF7890e
0.188 ETH
Transfer67901302018-11-28 20:12:022674 days ago1543435922
0x6452437B...A4bF7890e
0.2 ETH
Transfer67890302018-11-28 15:56:192674 days ago1543420579
0x6452437B...A4bF7890e
0.2 ETH
Transfer67886722018-11-28 14:28:112675 days ago1543415291
0x6452437B...A4bF7890e
0.24 ETH
Transfer67862042018-11-28 4:36:582675 days ago1543379818
0x6452437B...A4bF7890e
0.128 ETH
Transfer67861332018-11-28 4:19:532675 days ago1543378793
0x6452437B...A4bF7890e
0.144 ETH
Transfer67810572018-11-27 7:58:062676 days ago1543305486
0x6452437B...A4bF7890e
2.16334351 ETH
Transfer67810142018-11-27 7:47:142676 days ago1543304834
0x6452437B...A4bF7890e
8 ETH
Transfer67780332018-11-26 19:51:442676 days ago1543261904
0x6452437B...A4bF7890e
0.296 ETH
Transfer67765352018-11-26 14:07:032677 days ago1543241223
0x6452437B...A4bF7890e
0.8 ETH
Transfer67764682018-11-26 13:47:392677 days ago1543240059
0x6452437B...A4bF7890e
0.1856 ETH
Transfer67763392018-11-26 13:15:172677 days ago1543238117
0x6452437B...A4bF7890e
0.192 ETH
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x5c96Fe47...0eDB59E6d
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
ExchangerV4

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2018-10-03
*/

pragma solidity ^0.4.24;
interface IExchangeFormula {
    function calculatePurchaseReturn(uint256 _supply, uint256 _connectorBalance, uint32 _connectorWeight, uint256 _depositAmount) external view returns (uint256);
    function calculateSaleReturn(uint256 _supply, uint256 _connectorBalance, uint32 _connectorWeight, uint256 _sellAmount) external view returns (uint256);
}

interface ITradeableAsset {
    function totalSupply() external view returns (uint256);
    function approve(address spender, uint tokens) external returns (bool success);
    function transferFrom(address from, address to, uint tokens) external returns (bool success);
    function decimals() external view returns (uint256);
    function transfer(address _to, uint256 _value) external;
    function balanceOf(address _address) external view returns (uint256);
}

interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external; }

contract Administered {
    address public creator;

    mapping (address => bool) public admins;

    constructor() public {
        creator = msg.sender;
        admins[creator] = true;
    }

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

    modifier onlyAdmin {
        require(admins[msg.sender] || creator == msg.sender);
        _;
    }

    function grantAdmin(address newAdmin) onlyOwner  public {
        _grantAdmin(newAdmin);
    }

    function _grantAdmin(address newAdmin) internal
    {
        admins[newAdmin] = true;
    }

    function changeOwner(address newOwner) onlyOwner public {
        creator = newOwner;
    }

    function revokeAdminStatus(address user) onlyOwner public {
        admins[user] = false;
    }
}

contract ExchangerV4 is Administered, tokenRecipient {
    bool public enabled = false;

    ITradeableAsset public tokenContract;
    IExchangeFormula public formulaContract;
    uint32 public weight;
    uint32 public fee=5000; //0.5%
    uint256 public uncirculatedSupplyCount=0;
    uint256 public collectedFees=0;
    uint256 public virtualReserveBalance=0;

    uint public thresholdSendToSafeWallet = 100000000000000000; 
    uint public sendToSafeWalletPercentage = 10; 

    constructor(address _token,
                uint32 _weight,
                address _formulaContract) {
        require (_weight > 0 && weight <= 1000000);

        weight = _weight;
        tokenContract = ITradeableAsset(_token);
        formulaContract = IExchangeFormula(_formulaContract);
    }

    event Buy(address indexed purchaser, uint256 amountInWei, uint256 amountInToken);
    event Sell(address indexed seller, uint256 amountInToken, uint256 amountInWei);

    function depositTokens(uint amount) onlyOwner public {
        tokenContract.transferFrom(msg.sender, this, amount);
    }

    function depositEther() onlyOwner public payable {
    //return getQuotePrice();
    }

    function withdrawTokens(uint amount) onlyOwner public {
        tokenContract.transfer(msg.sender, amount);
    }

    function withdrawEther(uint amountInWei) onlyOwner public {
        msg.sender.transfer(amountInWei); //Transfers in wei
    }

    function extractFees(uint amountInWei) onlyAdmin public {
        require (amountInWei <= collectedFees);
        msg.sender.transfer(amountInWei);
    }

    function enable() onlyAdmin public {
        enabled = true;
    }

    function disable() onlyAdmin public {
        enabled = false;
    }

    function setReserveWeight(uint ppm) onlyAdmin public {
        require (ppm>0 && ppm<=1000000);
        weight = uint32(ppm);
    }

    function setFee(uint ppm) onlyAdmin public {
        require (ppm >= 0 && ppm <= 1000000);
        fee = uint32(ppm);
    }

    function setUncirculatedSupplyCount(uint newValue) onlyAdmin public {
        require (newValue > 0);
        uncirculatedSupplyCount = uint256(newValue);
    }

    function setVirtualReserveBalance(uint256 amountInWei) onlyAdmin public {
        virtualReserveBalance = amountInWei;
    }

    function getReserveBalances() public view returns (uint256, uint256) {
        return (tokenContract.balanceOf(this), address(this).balance+virtualReserveBalance);
    }

    function getPurchasePrice(uint256 amountInWei) public view returns(uint) {
        uint256 purchaseReturn = formulaContract.calculatePurchaseReturn(
            (tokenContract.totalSupply() - uncirculatedSupplyCount) - tokenContract.balanceOf(this),
            address(this).balance + virtualReserveBalance,
            weight,
            amountInWei
        );

        purchaseReturn = (purchaseReturn - ((purchaseReturn * fee) / 1000000));

        if (purchaseReturn > tokenContract.balanceOf(this)){
            return tokenContract.balanceOf(this);
        }
        return purchaseReturn;
    }

    function getSalePrice(uint256 tokensToSell) public view returns(uint) {
        uint256 saleReturn = formulaContract.calculateSaleReturn(
            (tokenContract.totalSupply() - uncirculatedSupplyCount) - tokenContract.balanceOf(this),
            address(this).balance + virtualReserveBalance,
            weight,
            tokensToSell
        );
        saleReturn = (saleReturn - ((saleReturn * fee) / 1000000));
        if (saleReturn > address(this).balance) {
            return address(this).balance;
        }
        return saleReturn;
    }

    function buy(uint minPurchaseReturn) public payable {
        uint amount = formulaContract.calculatePurchaseReturn(
            (tokenContract.totalSupply() - uncirculatedSupplyCount) - tokenContract.balanceOf(this),
            (address(this).balance + virtualReserveBalance) - msg.value,
            weight,
            msg.value);
        amount = (amount - ((amount * fee) / 1000000));

        require (enabled);
        require (amount >= minPurchaseReturn);
        require (tokenContract.balanceOf(this) >= amount);

        if(msg.value > thresholdSendToSafeWallet){
            uint transferToSafeWallet = msg.value * sendToSafeWalletPercentage / 100;
            creator.transfer(transferToSafeWallet);
            virtualReserveBalance += transferToSafeWallet;
        }

        collectedFees += (msg.value * fee) / 1000000;

        emit Buy(msg.sender, msg.value, amount);
        tokenContract.transfer(msg.sender, amount);
    }

    function sell(uint quantity, uint minSaleReturn) public {
        uint amountInWei = formulaContract.calculateSaleReturn(
            (tokenContract.totalSupply()- uncirculatedSupplyCount) - tokenContract.balanceOf(this),
             address(this).balance + virtualReserveBalance,
             weight,
             quantity
        );
        amountInWei = (amountInWei - ((amountInWei * fee) / 1000000));

        require (enabled);
        require (amountInWei >= minSaleReturn);
        require (amountInWei <= address(this).balance);
        require (tokenContract.transferFrom(msg.sender, this, quantity));

        collectedFees += (amountInWei * fee) / 1000000;

        emit Sell(msg.sender, quantity, amountInWei);
        msg.sender.transfer(amountInWei);
    }

    function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) external {
        sellOneStep(_value, 0, _from);
    }

    function sellOneStep(uint quantity, uint minSaleReturn, address seller) public {
        uint amountInWei = formulaContract.calculateSaleReturn(
            (tokenContract.totalSupply() - uncirculatedSupplyCount) - tokenContract.balanceOf(this),
             address(this).balance + virtualReserveBalance,
             weight,
             quantity
        );
        amountInWei = (amountInWei - ((amountInWei * fee) / 1000000));

        require (enabled);
        require (amountInWei >= minSaleReturn);
        require (amountInWei <= address(this).balance);
        require (tokenContract.transferFrom(seller, this, quantity));

        collectedFees += (amountInWei * fee) / 1000000;

        emit Sell(seller, quantity, amountInWei);
        seller.transfer(amountInWei);
    }

    function setSendToSafeWalletPercentage(uint newValue) onlyOwner public {
        require (newValue > 0);
        sendToSafeWalletPercentage = uint(newValue);
    }

    function setThresholdSendToSafeWallet(uint256 amountInWei) onlyOwner public {
        thresholdSendToSafeWallet = amountInWei;
    }

}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[],"name":"creator","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newValue","type":"uint256"}],"name":"setSendToSafeWalletPercentage","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newValue","type":"uint256"}],"name":"setUncirculatedSupplyCount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"sendToSafeWalletPercentage","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"enabled","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"disable","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"withdrawTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newAdmin","type":"address"}],"name":"grantAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amountInWei","type":"uint256"}],"name":"withdrawEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"uncirculatedSupplyCount","outputs":[{"name":"","type":"uint256"}],"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":true,"inputs":[],"name":"tokenContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"formulaContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"quantity","type":"uint256"},{"name":"minSaleReturn","type":"uint256"},{"name":"seller","type":"address"}],"name":"sellOneStep","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"ppm","type":"uint256"}],"name":"setFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getReserveBalances","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"thresholdSendToSafeWallet","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"amountInWei","type":"uint256"}],"name":"setThresholdSendToSafeWallet","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"virtualReserveBalance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_value","type":"uint256"},{"name":"_token","type":"address"},{"name":"_extraData","type":"bytes"}],"name":"receiveApproval","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"collectedFees","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"depositEther","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"weight","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"enable","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"changeOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amountInWei","type":"uint256"}],"name":"extractFees","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"amountInWei","type":"uint256"}],"name":"setVirtualReserveBalance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"amountInWei","type":"uint256"}],"name":"getPurchasePrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"quantity","type":"uint256"},{"name":"minSaleReturn","type":"uint256"}],"name":"sell","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"minPurchaseReturn","type":"uint256"}],"name":"buy","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"amount","type":"uint256"}],"name":"depositTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"fee","outputs":[{"name":"","type":"uint32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"ppm","type":"uint256"}],"name":"setReserveWeight","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"tokensToSell","type":"uint256"}],"name":"getSalePrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"user","type":"address"}],"name":"revokeAdminStatus","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_token","type":"address"},{"name":"_weight","type":"uint32"},{"name":"_formulaContract","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"purchaser","type":"address"},{"indexed":false,"name":"amountInWei","type":"uint256"},{"indexed":false,"name":"amountInToken","type":"uint256"}],"name":"Buy","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"seller","type":"address"},{"indexed":false,"name":"amountInToken","type":"uint256"},{"indexed":false,"name":"amountInWei","type":"uint256"}],"name":"Sell","type":"event"}]

0x60806040526002805460ff191690556003805460c060020a63ffffffff02191679138800000000000000000000000000000000000000000000000017905560006004819055600581905560065567016345785d8a0000600755600a60085534801561006957600080fd5b50604051606080611c4b83398101604090815281516020808401519383015160008054600160a060020a0319163317808255600160a060020a03168152600192839052938420805460ff191690921790915590929163ffffffff83161180156100f65750600354620f42407401000000000000000000000000000000000000000090910463ffffffff1611155b151561010157600080fd5b600380546002805461010060a860020a031916610100600160a060020a039788160217905560a060020a63ffffffff0219167401000000000000000000000000000000000000000063ffffffff949094169390930292909217600160a060020a0319169216919091179055611ad08061017b6000396000f30060806040526004361061019d5763ffffffff60e060020a60003504166302d05d3f81146101a257806306c2f050146101d3578063185d1af6146101ed5780631cef7c3714610205578063238dafe01461022c5780632f2770db14610255578063315a095d1461026a57806335bb3e16146102825780633bed33ce146102a357806341ef6bb7146102bb578063429b62e5146102d057806355a373d6146102f15780635cc5ca501461030657806363f8a2111461031b57806369fe0e2d1461034257806377d56a041461035a5780637c41a39b14610388578063844c3edc1461039d5780638e068b11146103b55780638f4ffcb1146103ca5780639003adfe1461040257806398ea5fca14610417578063a1aab33f1461041f578063a3907d711461044d578063a6f9dae114610462578063b9c8464d14610483578063bd8caabf1461049b578063c59d5633146104b3578063d79875eb146104cb578063d96a094a146104e6578063dd49756e146104f1578063ddca3f4314610509578063eff841d11461051e578063f8eb5fc514610536578063fa62a1ff1461054e575b600080fd5b3480156101ae57600080fd5b506101b761056f565b60408051600160a060020a039092168252519081900360200190f35b3480156101df57600080fd5b506101eb60043561057e565b005b3480156101f957600080fd5b506101eb6004356105a7565b34801561021157600080fd5b5061021a6105ec565b60408051918252519081900360200190f35b34801561023857600080fd5b506102416105f2565b604080519115158252519081900360200190f35b34801561026157600080fd5b506101eb6105fb565b34801561027657600080fd5b506101eb60043561063a565b34801561028e57600080fd5b506101eb600160a060020a03600435166106dc565b3480156102af57600080fd5b506101eb6004356106ff565b3480156102c757600080fd5b5061021a610747565b3480156102dc57600080fd5b50610241600160a060020a036004351661074d565b3480156102fd57600080fd5b506101b7610762565b34801561031257600080fd5b506101b7610776565b34801561032757600080fd5b506101eb600435602435600160a060020a0360443516610785565b34801561034e57600080fd5b506101eb600435610ac5565b34801561036657600080fd5b5061036f610b55565b6040805192835260208301919091528051918290030190f35b34801561039457600080fd5b5061021a610be8565b3480156103a957600080fd5b506101eb600435610bee565b3480156103c157600080fd5b5061021a610c0a565b3480156103d657600080fd5b506101eb60048035600160a060020a039081169160248035926044351691606435918201910135610c10565b34801561040e57600080fd5b5061021a610c1c565b6101eb610c22565b34801561042b57600080fd5b50610434610c3b565b6040805163ffffffff9092168252519081900360200190f35b34801561045957600080fd5b506101eb610c4e565b34801561046e57600080fd5b506101eb600160a060020a0360043516610c90565b34801561048f57600080fd5b506101eb600435610cd6565b3480156104a757600080fd5b506101eb600435610d18565b3480156104bf57600080fd5b5061021a600435610d50565b3480156104d757600080fd5b506101eb60043560243561102e565b6101eb60043561135e565b3480156104fd57600080fd5b506101eb600435611719565b34801561051557600080fd5b506104346117d6565b34801561052a57600080fd5b506101eb6004356117e9565b34801561054257600080fd5b5061021a600435611871565b34801561055a57600080fd5b506101eb600160a060020a0360043516611a45565b600054600160a060020a031681565b600054600160a060020a0316331461059557600080fd5b600081116105a257600080fd5b600855565b3360009081526001602052604090205460ff16806105cf5750600054600160a060020a031633145b15156105da57600080fd5b600081116105e757600080fd5b600455565b60085481565b60025460ff1681565b3360009081526001602052604090205460ff16806106235750600054600160a060020a031633145b151561062e57600080fd5b6002805460ff19169055565b600054600160a060020a0316331461065157600080fd5b600254604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051610100909204600160a060020a03169163a9059cbb9160448082019260009290919082900301818387803b1580156106c157600080fd5b505af11580156106d5573d6000803e3d6000fd5b5050505050565b600054600160a060020a031633146106f357600080fd5b6106fc81611a7d565b50565b600054600160a060020a0316331461071657600080fd5b604051339082156108fc029083906000818181858888f19350505050158015610743573d6000803e3d6000fd5b5050565b60045481565b60016020526000908152604090205460ff1681565b6002546101009004600160a060020a031681565b600354600160a060020a031681565b6003546002546040805160e060020a6370a082310281523060048201529051600093600160a060020a03908116936349f9b0f793610100909104909116916370a082319160248082019260209290919082900301818987803b1580156107ea57600080fd5b505af11580156107fe573d6000803e3d6000fd5b505050506040513d602081101561081457600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561086757600080fd5b505af115801561087b573d6000803e3d6000fd5b505050506040513d602081101561089157600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101889052905160848083019260209291908290030181600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b505050506040513d602081101561092757600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002549190049091039060ff16151561095b57600080fd5b8281101561096857600080fd5b303181111561097657600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152306024830152604482018890529151610100909304909116916323b872dd916064808201926020929091908290030181600087803b1580156109f157600080fd5b505af1158015610a05573d6000803e3d6000fd5b505050506040513d6020811015610a1b57600080fd5b50511515610a2857600080fd5b600354620f42409060c060020a900463ffffffff1682026005805492909104909101905560408051858152602081018390528151600160a060020a038516927fed7a144fad14804d5c249145e3e0e2b63a9eb455b76aee5bc92d711e9bba3e4a928290030190a2604051600160a060020a0383169082156108fc029083906000818181858888f193505050501580156106d5573d6000803e3d6000fd5b3360009081526001602052604090205460ff1680610aed5750600054600160a060020a031633145b1515610af857600080fd5b60008110158015610b0c5750620f42408111155b1515610b1757600080fd5b6003805463ffffffff90921660c060020a027fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6002546040805160e060020a6370a0823102815230600482015290516000928392610100909104600160a060020a0316916370a082319160248082019260209290919082900301818787803b158015610bad57600080fd5b505af1158015610bc1573d6000803e3d6000fd5b505050506040513d6020811015610bd757600080fd5b505160065490925030310190509091565b60075481565b600054600160a060020a03163314610c0557600080fd5b600755565b60065481565b6106d584600087610785565b60055481565b600054600160a060020a03163314610c3957600080fd5b565b60035460a060020a900463ffffffff1681565b3360009081526001602052604090205460ff1680610c765750600054600160a060020a031633145b1515610c8157600080fd5b6002805460ff19166001179055565b600054600160a060020a03163314610ca757600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b3360009081526001602052604090205460ff1680610cfe5750600054600160a060020a031633145b1515610d0957600080fd5b60055481111561071657600080fd5b3360009081526001602052604090205460ff1680610d405750600054600160a060020a031633145b1515610d4b57600080fd5b600655565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936329a00e7c93610100909204909216916370a0823191602480830192602092919082900301818987803b158015610db657600080fd5b505af1158015610dca573d6000803e3d6000fd5b505050506040513d6020811015610de057600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b158015610e3357600080fd5b505af1158015610e47573d6000803e3d6000fd5b505050506040513d6020811015610e5d57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b158015610ec957600080fd5b505af1158015610edd573d6000803e3d6000fd5b505050506040513d6020811015610ef357600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002546040805160e060020a6370a08231028152306004820152905193909204909303926101009004600160a060020a0316916370a08231916024808201926020929091908290030181600087803b158015610f6a57600080fd5b505af1158015610f7e573d6000803e3d6000fd5b505050506040513d6020811015610f9457600080fd5b5051811115611024576002546040805160e060020a6370a082310281523060048201529051610100909204600160a060020a0316916370a08231916024808201926020929091908290030181600087803b158015610ff157600080fd5b505af1158015611005573d6000803e3d6000fd5b505050506040513d602081101561101b57600080fd5b50519150611028565b8091505b50919050565b6003546002546040805160e060020a6370a082310281523060048201529051600093600160a060020a03908116936349f9b0f793610100909104909116916370a082319160248082019260209290919082900301818987803b15801561109357600080fd5b505af11580156110a7573d6000803e3d6000fd5b505050506040513d60208110156110bd57600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561111057600080fd5b505af1158015611124573d6000803e3d6000fd5b505050506040513d602081101561113a57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b1580156111a657600080fd5b505af11580156111ba573d6000803e3d6000fd5b505050506040513d60208110156111d057600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002549190049091039060ff16151561120457600080fd5b8181101561121157600080fd5b303181111561121f57600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018690529051610100909204600160a060020a0316916323b872dd916064808201926020929091908290030181600087803b15801561129657600080fd5b505af11580156112aa573d6000803e3d6000fd5b505050506040513d60208110156112c057600080fd5b505115156112cd57600080fd5b600354620f42409060c060020a900463ffffffff168202600580549290910490910190556040805184815260208101839052815133927fed7a144fad14804d5c249145e3e0e2b63a9eb455b76aee5bc92d711e9bba3e4a928290030190a2604051339082156108fc029083906000818181858888f19350505050158015611358573d6000803e3d6000fd5b50505050565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936329a00e7c93610100909204909216916370a0823191602480830192602092919082900301818987803b1580156113c457600080fd5b505af11580156113d8573d6000803e3d6000fd5b505050506040513d60208110156113ee57600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561144157600080fd5b505af1158015611455573d6000803e3d6000fd5b505050506040513d602081101561146b57600080fd5b50516006546003546040805163ffffffff88811660e060020a02825295909403959095036004840152343031909201829003602484015260a060020a900490921660448201526064810191909152905160848083019260209291908290030181600087803b1580156114dc57600080fd5b505af11580156114f0573d6000803e3d6000fd5b505050506040513d602081101561150657600080fd5b5051600354909250620f42409060c060020a900463ffffffff1683026002549190049092039160ff16151561153a57600080fd5b8282101561154757600080fd5b6002546040805160e060020a6370a08231028152306004820152905184926101009004600160a060020a0316916370a082319160248083019260209291908290030181600087803b15801561159b57600080fd5b505af11580156115af573d6000803e3d6000fd5b505050506040513d60208110156115c557600080fd5b505110156115d257600080fd5b60075434111561162e57600854606490340260008054604051939092049350600160a060020a039091169183156108fc0291849190818181858888f19350505050158015611624573d6000803e3d6000fd5b5060068054820190555b600354620f42409060c060020a900463ffffffff163402600580549290910490910190556040805134815260208101849052815133927f1cbc5ab135991bd2b6a4b034a04aa2aa086dac1371cb9b16b8b5e2ed6b036bed928290030190a2600254604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018590529051610100909204600160a060020a03169163a9059cbb9160448082019260009290919082900301818387803b1580156116fc57600080fd5b505af1158015611710573d6000803e3d6000fd5b50505050505050565b600054600160a060020a0316331461173057600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018490529051610100909204600160a060020a0316916323b872dd916064808201926020929091908290030181600087803b1580156117a757600080fd5b505af11580156117bb573d6000803e3d6000fd5b505050506040513d60208110156117d157600080fd5b505050565b60035460c060020a900463ffffffff1681565b3360009081526001602052604090205460ff16806118115750600054600160a060020a031633145b151561181c57600080fd5b60008111801561182f5750620f42408111155b151561183a57600080fd5b6003805463ffffffff90921660a060020a0277ffffffff000000000000000000000000000000000000000019909216919091179055565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936349f9b0f793610100909204909216916370a0823191602480830192602092919082900301818987803b1580156118d757600080fd5b505af11580156118eb573d6000803e3d6000fd5b505050506040513d602081101561190157600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561195457600080fd5b505af1158015611968573d6000803e3d6000fd5b505050506040513d602081101561197e57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b1580156119ea57600080fd5b505af11580156119fe573d6000803e3d6000fd5b505050506040513d6020811015611a1457600080fd5b5051600354909150620f42409060c060020a900463ffffffff16820204900330318111156110245730319150611028565b600054600160a060020a03163314611a5c57600080fd5b600160a060020a03166000908152600160205260409020805460ff19169055565b600160a060020a03166000908152600160208190526040909120805460ff191690911790555600a165627a7a72305820d7ec25144341b318704b129f6f9f423bb24f366e092a18131d4da6ad30a85e5800290000000000000000000000001a84e05cff5bea2c3db3167096f6f91c9df20e8700000000000000000000000000000000000000000000000000000000000003e80000000000000000000000003ae6abeb18dfa61f85faff25aef28c8cd6ddbe6b

Deployed Bytecode

0x60806040526004361061019d5763ffffffff60e060020a60003504166302d05d3f81146101a257806306c2f050146101d3578063185d1af6146101ed5780631cef7c3714610205578063238dafe01461022c5780632f2770db14610255578063315a095d1461026a57806335bb3e16146102825780633bed33ce146102a357806341ef6bb7146102bb578063429b62e5146102d057806355a373d6146102f15780635cc5ca501461030657806363f8a2111461031b57806369fe0e2d1461034257806377d56a041461035a5780637c41a39b14610388578063844c3edc1461039d5780638e068b11146103b55780638f4ffcb1146103ca5780639003adfe1461040257806398ea5fca14610417578063a1aab33f1461041f578063a3907d711461044d578063a6f9dae114610462578063b9c8464d14610483578063bd8caabf1461049b578063c59d5633146104b3578063d79875eb146104cb578063d96a094a146104e6578063dd49756e146104f1578063ddca3f4314610509578063eff841d11461051e578063f8eb5fc514610536578063fa62a1ff1461054e575b600080fd5b3480156101ae57600080fd5b506101b761056f565b60408051600160a060020a039092168252519081900360200190f35b3480156101df57600080fd5b506101eb60043561057e565b005b3480156101f957600080fd5b506101eb6004356105a7565b34801561021157600080fd5b5061021a6105ec565b60408051918252519081900360200190f35b34801561023857600080fd5b506102416105f2565b604080519115158252519081900360200190f35b34801561026157600080fd5b506101eb6105fb565b34801561027657600080fd5b506101eb60043561063a565b34801561028e57600080fd5b506101eb600160a060020a03600435166106dc565b3480156102af57600080fd5b506101eb6004356106ff565b3480156102c757600080fd5b5061021a610747565b3480156102dc57600080fd5b50610241600160a060020a036004351661074d565b3480156102fd57600080fd5b506101b7610762565b34801561031257600080fd5b506101b7610776565b34801561032757600080fd5b506101eb600435602435600160a060020a0360443516610785565b34801561034e57600080fd5b506101eb600435610ac5565b34801561036657600080fd5b5061036f610b55565b6040805192835260208301919091528051918290030190f35b34801561039457600080fd5b5061021a610be8565b3480156103a957600080fd5b506101eb600435610bee565b3480156103c157600080fd5b5061021a610c0a565b3480156103d657600080fd5b506101eb60048035600160a060020a039081169160248035926044351691606435918201910135610c10565b34801561040e57600080fd5b5061021a610c1c565b6101eb610c22565b34801561042b57600080fd5b50610434610c3b565b6040805163ffffffff9092168252519081900360200190f35b34801561045957600080fd5b506101eb610c4e565b34801561046e57600080fd5b506101eb600160a060020a0360043516610c90565b34801561048f57600080fd5b506101eb600435610cd6565b3480156104a757600080fd5b506101eb600435610d18565b3480156104bf57600080fd5b5061021a600435610d50565b3480156104d757600080fd5b506101eb60043560243561102e565b6101eb60043561135e565b3480156104fd57600080fd5b506101eb600435611719565b34801561051557600080fd5b506104346117d6565b34801561052a57600080fd5b506101eb6004356117e9565b34801561054257600080fd5b5061021a600435611871565b34801561055a57600080fd5b506101eb600160a060020a0360043516611a45565b600054600160a060020a031681565b600054600160a060020a0316331461059557600080fd5b600081116105a257600080fd5b600855565b3360009081526001602052604090205460ff16806105cf5750600054600160a060020a031633145b15156105da57600080fd5b600081116105e757600080fd5b600455565b60085481565b60025460ff1681565b3360009081526001602052604090205460ff16806106235750600054600160a060020a031633145b151561062e57600080fd5b6002805460ff19169055565b600054600160a060020a0316331461065157600080fd5b600254604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051610100909204600160a060020a03169163a9059cbb9160448082019260009290919082900301818387803b1580156106c157600080fd5b505af11580156106d5573d6000803e3d6000fd5b5050505050565b600054600160a060020a031633146106f357600080fd5b6106fc81611a7d565b50565b600054600160a060020a0316331461071657600080fd5b604051339082156108fc029083906000818181858888f19350505050158015610743573d6000803e3d6000fd5b5050565b60045481565b60016020526000908152604090205460ff1681565b6002546101009004600160a060020a031681565b600354600160a060020a031681565b6003546002546040805160e060020a6370a082310281523060048201529051600093600160a060020a03908116936349f9b0f793610100909104909116916370a082319160248082019260209290919082900301818987803b1580156107ea57600080fd5b505af11580156107fe573d6000803e3d6000fd5b505050506040513d602081101561081457600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561086757600080fd5b505af115801561087b573d6000803e3d6000fd5b505050506040513d602081101561089157600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101889052905160848083019260209291908290030181600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b505050506040513d602081101561092757600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002549190049091039060ff16151561095b57600080fd5b8281101561096857600080fd5b303181111561097657600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152306024830152604482018890529151610100909304909116916323b872dd916064808201926020929091908290030181600087803b1580156109f157600080fd5b505af1158015610a05573d6000803e3d6000fd5b505050506040513d6020811015610a1b57600080fd5b50511515610a2857600080fd5b600354620f42409060c060020a900463ffffffff1682026005805492909104909101905560408051858152602081018390528151600160a060020a038516927fed7a144fad14804d5c249145e3e0e2b63a9eb455b76aee5bc92d711e9bba3e4a928290030190a2604051600160a060020a0383169082156108fc029083906000818181858888f193505050501580156106d5573d6000803e3d6000fd5b3360009081526001602052604090205460ff1680610aed5750600054600160a060020a031633145b1515610af857600080fd5b60008110158015610b0c5750620f42408111155b1515610b1757600080fd5b6003805463ffffffff90921660c060020a027fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6002546040805160e060020a6370a0823102815230600482015290516000928392610100909104600160a060020a0316916370a082319160248082019260209290919082900301818787803b158015610bad57600080fd5b505af1158015610bc1573d6000803e3d6000fd5b505050506040513d6020811015610bd757600080fd5b505160065490925030310190509091565b60075481565b600054600160a060020a03163314610c0557600080fd5b600755565b60065481565b6106d584600087610785565b60055481565b600054600160a060020a03163314610c3957600080fd5b565b60035460a060020a900463ffffffff1681565b3360009081526001602052604090205460ff1680610c765750600054600160a060020a031633145b1515610c8157600080fd5b6002805460ff19166001179055565b600054600160a060020a03163314610ca757600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b3360009081526001602052604090205460ff1680610cfe5750600054600160a060020a031633145b1515610d0957600080fd5b60055481111561071657600080fd5b3360009081526001602052604090205460ff1680610d405750600054600160a060020a031633145b1515610d4b57600080fd5b600655565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936329a00e7c93610100909204909216916370a0823191602480830192602092919082900301818987803b158015610db657600080fd5b505af1158015610dca573d6000803e3d6000fd5b505050506040513d6020811015610de057600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b158015610e3357600080fd5b505af1158015610e47573d6000803e3d6000fd5b505050506040513d6020811015610e5d57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b158015610ec957600080fd5b505af1158015610edd573d6000803e3d6000fd5b505050506040513d6020811015610ef357600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002546040805160e060020a6370a08231028152306004820152905193909204909303926101009004600160a060020a0316916370a08231916024808201926020929091908290030181600087803b158015610f6a57600080fd5b505af1158015610f7e573d6000803e3d6000fd5b505050506040513d6020811015610f9457600080fd5b5051811115611024576002546040805160e060020a6370a082310281523060048201529051610100909204600160a060020a0316916370a08231916024808201926020929091908290030181600087803b158015610ff157600080fd5b505af1158015611005573d6000803e3d6000fd5b505050506040513d602081101561101b57600080fd5b50519150611028565b8091505b50919050565b6003546002546040805160e060020a6370a082310281523060048201529051600093600160a060020a03908116936349f9b0f793610100909104909116916370a082319160248082019260209290919082900301818987803b15801561109357600080fd5b505af11580156110a7573d6000803e3d6000fd5b505050506040513d60208110156110bd57600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561111057600080fd5b505af1158015611124573d6000803e3d6000fd5b505050506040513d602081101561113a57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b1580156111a657600080fd5b505af11580156111ba573d6000803e3d6000fd5b505050506040513d60208110156111d057600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002549190049091039060ff16151561120457600080fd5b8181101561121157600080fd5b303181111561121f57600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018690529051610100909204600160a060020a0316916323b872dd916064808201926020929091908290030181600087803b15801561129657600080fd5b505af11580156112aa573d6000803e3d6000fd5b505050506040513d60208110156112c057600080fd5b505115156112cd57600080fd5b600354620f42409060c060020a900463ffffffff168202600580549290910490910190556040805184815260208101839052815133927fed7a144fad14804d5c249145e3e0e2b63a9eb455b76aee5bc92d711e9bba3e4a928290030190a2604051339082156108fc029083906000818181858888f19350505050158015611358573d6000803e3d6000fd5b50505050565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936329a00e7c93610100909204909216916370a0823191602480830192602092919082900301818987803b1580156113c457600080fd5b505af11580156113d8573d6000803e3d6000fd5b505050506040513d60208110156113ee57600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561144157600080fd5b505af1158015611455573d6000803e3d6000fd5b505050506040513d602081101561146b57600080fd5b50516006546003546040805163ffffffff88811660e060020a02825295909403959095036004840152343031909201829003602484015260a060020a900490921660448201526064810191909152905160848083019260209291908290030181600087803b1580156114dc57600080fd5b505af11580156114f0573d6000803e3d6000fd5b505050506040513d602081101561150657600080fd5b5051600354909250620f42409060c060020a900463ffffffff1683026002549190049092039160ff16151561153a57600080fd5b8282101561154757600080fd5b6002546040805160e060020a6370a08231028152306004820152905184926101009004600160a060020a0316916370a082319160248083019260209291908290030181600087803b15801561159b57600080fd5b505af11580156115af573d6000803e3d6000fd5b505050506040513d60208110156115c557600080fd5b505110156115d257600080fd5b60075434111561162e57600854606490340260008054604051939092049350600160a060020a039091169183156108fc0291849190818181858888f19350505050158015611624573d6000803e3d6000fd5b5060068054820190555b600354620f42409060c060020a900463ffffffff163402600580549290910490910190556040805134815260208101849052815133927f1cbc5ab135991bd2b6a4b034a04aa2aa086dac1371cb9b16b8b5e2ed6b036bed928290030190a2600254604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018590529051610100909204600160a060020a03169163a9059cbb9160448082019260009290919082900301818387803b1580156116fc57600080fd5b505af1158015611710573d6000803e3d6000fd5b50505050505050565b600054600160a060020a0316331461173057600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018490529051610100909204600160a060020a0316916323b872dd916064808201926020929091908290030181600087803b1580156117a757600080fd5b505af11580156117bb573d6000803e3d6000fd5b505050506040513d60208110156117d157600080fd5b505050565b60035460c060020a900463ffffffff1681565b3360009081526001602052604090205460ff16806118115750600054600160a060020a031633145b151561181c57600080fd5b60008111801561182f5750620f42408111155b151561183a57600080fd5b6003805463ffffffff90921660a060020a0277ffffffff000000000000000000000000000000000000000019909216919091179055565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936349f9b0f793610100909204909216916370a0823191602480830192602092919082900301818987803b1580156118d757600080fd5b505af11580156118eb573d6000803e3d6000fd5b505050506040513d602081101561190157600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561195457600080fd5b505af1158015611968573d6000803e3d6000fd5b505050506040513d602081101561197e57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b1580156119ea57600080fd5b505af11580156119fe573d6000803e3d6000fd5b505050506040513d6020811015611a1457600080fd5b5051600354909150620f42409060c060020a900463ffffffff16820204900330318111156110245730319150611028565b600054600160a060020a03163314611a5c57600080fd5b600160a060020a03166000908152600160205260409020805460ff19169055565b600160a060020a03166000908152600160208190526040909120805460ff191690911790555600a165627a7a72305820d7ec25144341b318704b129f6f9f423bb24f366e092a18131d4da6ad30a85e580029

Swarm Source

bzzr://d7ec25144341b318704b129f6f9f423bb24f366e092a18131d4da6ad30a85e58

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading
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.