ETH Price: $2,314.30 (+9.62%)

Contract

0x6AF2BD0D04a67CeBf81c896b75c856234E08a4fb
 

Overview

ETH Balance

0.000807245414322213 ETH

Eth Value

$1.87 (@ $2,314.30/ETH)

Token Holdings

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Buy69984992019-01-02 16:19:492630 days ago1546445989IN
0x6AF2BD0D...34E08a4fb
0.0999 ETH0.0020961927
Buy67889652018-11-28 15:40:452665 days ago1543419645IN
0x6AF2BD0D...34E08a4fb
0.02 ETH0.0015017524
Set Virtual Rese...67823742018-11-27 13:23:272666 days ago1543325007IN
0x6AF2BD0D...34E08a4fb
0 ETH0.000168386
Buy67446542018-11-21 8:46:052672 days ago1542789965IN
0x6AF2BD0D...34E08a4fb
0.04 ETH0.0013113421
Buy67000032018-11-14 0:50:432679 days ago1542156643IN
0x6AF2BD0D...34E08a4fb
0.12 ETH0.000572036.3
Buy66985922018-11-13 19:31:562679 days ago1542137516IN
0x6AF2BD0D...34E08a4fb
0.11 ETH0.0013629415
Buy66907602018-11-12 12:46:412681 days ago1542026801IN
0x6AF2BD0D...34E08a4fb
0.02 ETH0.0013140321
Set Virtual Rese...66905972018-11-12 12:09:582681 days ago1542024598IN
0x6AF2BD0D...34E08a4fb
0 ETH0.000140325
Buy66863042018-11-11 19:14:142681 days ago1541963654IN
0x6AF2BD0D...34E08a4fb
5 ETH0.000363834.8
Set Virtual Rese...66841582018-11-11 10:53:102682 days ago1541933590IN
0x6AF2BD0D...34E08a4fb
0 ETH0.000140325
Buy66315492018-11-02 19:53:142690 days ago1541188394IN
0x6AF2BD0D...34E08a4fb
0.01 ETH0.0009385915
Set Virtual Rese...65260052018-10-16 13:28:012708 days ago1539696481IN
0x6AF2BD0D...34E08a4fb
0 ETH0.0002248
Buy64897942018-10-10 16:10:012714 days ago1539187801IN
0x6AF2BD0D...34E08a4fb
0.03 ETH0.0013140321
Buy64391092018-10-02 10:56:192722 days ago1538477779IN
0x6AF2BD0D...34E08a4fb
0.03 ETH0.000688311
Buy64352262018-10-01 19:29:082722 days ago1538422148IN
0x6AF2BD0D...34E08a4fb
0.016 ETH0.0010842314
Set Virtual Rese...64322702018-10-01 7:56:222723 days ago1538380582IN
0x6AF2BD0D...34E08a4fb
0 ETH0.000252579
Buy64222292018-09-29 16:20:482725 days ago1538238048IN
0x6AF2BD0D...34E08a4fb
0.03 ETH0.0006570110.5
Set Virtual Rese...64205512018-09-29 9:48:592725 days ago1538214539IN
0x6AF2BD0D...34E08a4fb
0 ETH0.00033612
Buy64184422018-09-29 1:38:112725 days ago1538185091IN
0x6AF2BD0D...34E08a4fb
0.04577499 ETH0.0010170413.1
Buy64167712018-09-28 19:11:202725 days ago1538161880IN
0x6AF2BD0D...34E08a4fb
0.02223 ETH0.0008222710.6
Buy64165122018-09-28 17:59:272725 days ago1538157567IN
0x6AF2BD0D...34E08a4fb
0.0886 ETH0.0010092813
Buy64157982018-09-28 15:07:162726 days ago1538147236IN
0x6AF2BD0D...34E08a4fb
0.048 ETH0.0023233530
Set Virtual Rese...64150252018-09-28 11:59:422726 days ago1538135982IN
0x6AF2BD0D...34E08a4fb
0 ETH0.0002806410
Buy64123352018-09-28 1:25:402726 days ago1538097940IN
0x6AF2BD0D...34E08a4fb
0.045 ETH0.0020944727
Buy64102112018-09-27 17:11:542727 days ago1538068314IN
0x6AF2BD0D...34E08a4fb
0.25 ETH0.0027277230
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Method Block
From
To
-69985092019-01-02 16:23:312630 days ago1546446211
0x6AF2BD0D...34E08a4fb
0.01036009 ETH
-69985072019-01-02 16:22:282630 days ago1546446148
0x6AF2BD0D...34E08a4fb
0.08880107 ETH
-69698092018-12-28 19:52:252634 days ago1546026745
0x6AF2BD0D...34E08a4fb
0.00251602 ETH
Transfer67889732018-11-28 15:43:372665 days ago1543419817
0x6AF2BD0D...34E08a4fb
0.01776016 ETH
Transfer67446782018-11-21 8:51:292672 days ago1542790289
0x6AF2BD0D...34E08a4fb
0.00391581 ETH
Transfer67446612018-11-21 8:47:572672 days ago1542790077
0x6AF2BD0D...34E08a4fb
0.03671086 ETH
Transfer67000132018-11-14 0:52:412679 days ago1542156761
0x6AF2BD0D...34E08a4fb
0.00611846 ETH
Transfer67000092018-11-14 0:51:562679 days ago1542156716
0x6AF2BD0D...34E08a4fb
0.03059239 ETH
Transfer67000032018-11-14 0:50:432679 days ago1542156643
0x6AF2BD0D...34E08a4fb
0.084 ETH
Transfer66987602018-11-13 20:10:452679 days ago1542139845
0x6AF2BD0D...34E08a4fb
0.00734211 ETH
Transfer66986262018-11-13 19:38:202679 days ago1542137900
0x6AF2BD0D...34E08a4fb
0.02447374 ETH
Transfer66985922018-11-13 19:31:562679 days ago1542137516
0x6AF2BD0D...34E08a4fb
0.077 ETH
Transfer66919412018-11-12 17:17:532681 days ago1542043073
0x6AF2BD0D...34E08a4fb
0.00575128 ETH
Transfer66910332018-11-12 13:53:492681 days ago1542030829
0x6AF2BD0D...34E08a4fb
0.01480651 ETH
Transfer66863252018-11-11 19:18:512681 days ago1541963931
0x6AF2BD0D...34E08a4fb
0.04476097 ETH
Transfer66863132018-11-11 19:16:592681 days ago1541963819
0x6AF2BD0D...34E08a4fb
0.30941297 ETH
Transfer66863092018-11-11 19:16:082681 days ago1541963768
0x6AF2BD0D...34E08a4fb
1.14490881 ETH
Transfer66863042018-11-11 19:14:142681 days ago1541963654
0x6AF2BD0D...34E08a4fb
3.5 ETH
Transfer66316682018-11-02 20:20:252690 days ago1541190025
0x6AF2BD0D...34E08a4fb
0.00996761 ETH
Transfer64919822018-10-11 0:36:152713 days ago1539218175
0x6AF2BD0D...34E08a4fb
0.02991215 ETH
Transfer64848462018-10-09 21:00:152714 days ago1539118815
0x6AF2BD0D...34E08a4fb
0.00492472 ETH
Transfer64446232018-10-03 8:22:402721 days ago1538554960
0x6AF2BD0D...34E08a4fb
0.12087731 ETH
Transfer64332942018-10-01 11:58:422723 days ago1538395122
0x6AF2BD0D...34E08a4fb
0.02417761 ETH
Transfer64199292018-09-29 7:27:402725 days ago1538206060
0x6AF2BD0D...34E08a4fb
0.13370816 ETH
Transfer64175182018-09-28 22:02:422725 days ago1538172162
0x6AF2BD0D...34E08a4fb
0.17849884 ETH
View All Internal Transactions
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 0xb0c95e37...959A37Af5
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-09-26
*/

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"}]

0x60806040526002805460ff191690556003805460c060020a63ffffffff02191679138800000000000000000000000000000000000000000000000017905560006004819055600581905560065567016345785d8a0000600755600a60085534801561006957600080fd5b50604051606080611c4b83398101604090815281516020808401519383015160008054600160a060020a0319163317808255600160a060020a03168152600192839052938420805460ff191690921790915590929163ffffffff83161180156100f65750600354620f42407401000000000000000000000000000000000000000090910463ffffffff1611155b151561010157600080fd5b600380546002805461010060a860020a031916610100600160a060020a039788160217905560a060020a63ffffffff0219167401000000000000000000000000000000000000000063ffffffff949094169390930292909217600160a060020a0319169216919091179055611ad08061017b6000396000f30060806040526004361061019d5763ffffffff60e060020a60003504166302d05d3f81146101a257806306c2f050146101d3578063185d1af6146101ed5780631cef7c3714610205578063238dafe01461022c5780632f2770db14610255578063315a095d1461026a57806335bb3e16146102825780633bed33ce146102a357806341ef6bb7146102bb578063429b62e5146102d057806355a373d6146102f15780635cc5ca501461030657806363f8a2111461031b57806369fe0e2d1461034257806377d56a041461035a5780637c41a39b14610388578063844c3edc1461039d5780638e068b11146103b55780638f4ffcb1146103ca5780639003adfe1461040257806398ea5fca14610417578063a1aab33f1461041f578063a3907d711461044d578063a6f9dae114610462578063b9c8464d14610483578063bd8caabf1461049b578063c59d5633146104b3578063d79875eb146104cb578063d96a094a146104e6578063dd49756e146104f1578063ddca3f4314610509578063eff841d11461051e578063f8eb5fc514610536578063fa62a1ff1461054e575b600080fd5b3480156101ae57600080fd5b506101b761056f565b60408051600160a060020a039092168252519081900360200190f35b3480156101df57600080fd5b506101eb60043561057e565b005b3480156101f957600080fd5b506101eb6004356105a7565b34801561021157600080fd5b5061021a6105ec565b60408051918252519081900360200190f35b34801561023857600080fd5b506102416105f2565b604080519115158252519081900360200190f35b34801561026157600080fd5b506101eb6105fb565b34801561027657600080fd5b506101eb60043561063a565b34801561028e57600080fd5b506101eb600160a060020a03600435166106dc565b3480156102af57600080fd5b506101eb6004356106ff565b3480156102c757600080fd5b5061021a610747565b3480156102dc57600080fd5b50610241600160a060020a036004351661074d565b3480156102fd57600080fd5b506101b7610762565b34801561031257600080fd5b506101b7610776565b34801561032757600080fd5b506101eb600435602435600160a060020a0360443516610785565b34801561034e57600080fd5b506101eb600435610ac5565b34801561036657600080fd5b5061036f610b55565b6040805192835260208301919091528051918290030190f35b34801561039457600080fd5b5061021a610be8565b3480156103a957600080fd5b506101eb600435610bee565b3480156103c157600080fd5b5061021a610c0a565b3480156103d657600080fd5b506101eb60048035600160a060020a039081169160248035926044351691606435918201910135610c10565b34801561040e57600080fd5b5061021a610c1c565b6101eb610c22565b34801561042b57600080fd5b50610434610c3b565b6040805163ffffffff9092168252519081900360200190f35b34801561045957600080fd5b506101eb610c4e565b34801561046e57600080fd5b506101eb600160a060020a0360043516610c90565b34801561048f57600080fd5b506101eb600435610cd6565b3480156104a757600080fd5b506101eb600435610d18565b3480156104bf57600080fd5b5061021a600435610d50565b3480156104d757600080fd5b506101eb60043560243561102e565b6101eb60043561135e565b3480156104fd57600080fd5b506101eb600435611719565b34801561051557600080fd5b506104346117d6565b34801561052a57600080fd5b506101eb6004356117e9565b34801561054257600080fd5b5061021a600435611871565b34801561055a57600080fd5b506101eb600160a060020a0360043516611a45565b600054600160a060020a031681565b600054600160a060020a0316331461059557600080fd5b600081116105a257600080fd5b600855565b3360009081526001602052604090205460ff16806105cf5750600054600160a060020a031633145b15156105da57600080fd5b600081116105e757600080fd5b600455565b60085481565b60025460ff1681565b3360009081526001602052604090205460ff16806106235750600054600160a060020a031633145b151561062e57600080fd5b6002805460ff19169055565b600054600160a060020a0316331461065157600080fd5b600254604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051610100909204600160a060020a03169163a9059cbb9160448082019260009290919082900301818387803b1580156106c157600080fd5b505af11580156106d5573d6000803e3d6000fd5b5050505050565b600054600160a060020a031633146106f357600080fd5b6106fc81611a7d565b50565b600054600160a060020a0316331461071657600080fd5b604051339082156108fc029083906000818181858888f19350505050158015610743573d6000803e3d6000fd5b5050565b60045481565b60016020526000908152604090205460ff1681565b6002546101009004600160a060020a031681565b600354600160a060020a031681565b6003546002546040805160e060020a6370a082310281523060048201529051600093600160a060020a03908116936349f9b0f793610100909104909116916370a082319160248082019260209290919082900301818987803b1580156107ea57600080fd5b505af11580156107fe573d6000803e3d6000fd5b505050506040513d602081101561081457600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561086757600080fd5b505af115801561087b573d6000803e3d6000fd5b505050506040513d602081101561089157600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101889052905160848083019260209291908290030181600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b505050506040513d602081101561092757600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002549190049091039060ff16151561095b57600080fd5b8281101561096857600080fd5b303181111561097657600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152306024830152604482018890529151610100909304909116916323b872dd916064808201926020929091908290030181600087803b1580156109f157600080fd5b505af1158015610a05573d6000803e3d6000fd5b505050506040513d6020811015610a1b57600080fd5b50511515610a2857600080fd5b600354620f42409060c060020a900463ffffffff1682026005805492909104909101905560408051858152602081018390528151600160a060020a038516927fed7a144fad14804d5c249145e3e0e2b63a9eb455b76aee5bc92d711e9bba3e4a928290030190a2604051600160a060020a0383169082156108fc029083906000818181858888f193505050501580156106d5573d6000803e3d6000fd5b3360009081526001602052604090205460ff1680610aed5750600054600160a060020a031633145b1515610af857600080fd5b60008110158015610b0c5750620f42408111155b1515610b1757600080fd5b6003805463ffffffff90921660c060020a027fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6002546040805160e060020a6370a0823102815230600482015290516000928392610100909104600160a060020a0316916370a082319160248082019260209290919082900301818787803b158015610bad57600080fd5b505af1158015610bc1573d6000803e3d6000fd5b505050506040513d6020811015610bd757600080fd5b505160065490925030310190509091565b60075481565b600054600160a060020a03163314610c0557600080fd5b600755565b60065481565b6106d584600087610785565b60055481565b600054600160a060020a03163314610c3957600080fd5b565b60035460a060020a900463ffffffff1681565b3360009081526001602052604090205460ff1680610c765750600054600160a060020a031633145b1515610c8157600080fd5b6002805460ff19166001179055565b600054600160a060020a03163314610ca757600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b3360009081526001602052604090205460ff1680610cfe5750600054600160a060020a031633145b1515610d0957600080fd5b60055481111561071657600080fd5b3360009081526001602052604090205460ff1680610d405750600054600160a060020a031633145b1515610d4b57600080fd5b600655565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936329a00e7c93610100909204909216916370a0823191602480830192602092919082900301818987803b158015610db657600080fd5b505af1158015610dca573d6000803e3d6000fd5b505050506040513d6020811015610de057600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b158015610e3357600080fd5b505af1158015610e47573d6000803e3d6000fd5b505050506040513d6020811015610e5d57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b158015610ec957600080fd5b505af1158015610edd573d6000803e3d6000fd5b505050506040513d6020811015610ef357600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002546040805160e060020a6370a08231028152306004820152905193909204909303926101009004600160a060020a0316916370a08231916024808201926020929091908290030181600087803b158015610f6a57600080fd5b505af1158015610f7e573d6000803e3d6000fd5b505050506040513d6020811015610f9457600080fd5b5051811115611024576002546040805160e060020a6370a082310281523060048201529051610100909204600160a060020a0316916370a08231916024808201926020929091908290030181600087803b158015610ff157600080fd5b505af1158015611005573d6000803e3d6000fd5b505050506040513d602081101561101b57600080fd5b50519150611028565b8091505b50919050565b6003546002546040805160e060020a6370a082310281523060048201529051600093600160a060020a03908116936349f9b0f793610100909104909116916370a082319160248082019260209290919082900301818987803b15801561109357600080fd5b505af11580156110a7573d6000803e3d6000fd5b505050506040513d60208110156110bd57600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561111057600080fd5b505af1158015611124573d6000803e3d6000fd5b505050506040513d602081101561113a57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b1580156111a657600080fd5b505af11580156111ba573d6000803e3d6000fd5b505050506040513d60208110156111d057600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002549190049091039060ff16151561120457600080fd5b8181101561121157600080fd5b303181111561121f57600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018690529051610100909204600160a060020a0316916323b872dd916064808201926020929091908290030181600087803b15801561129657600080fd5b505af11580156112aa573d6000803e3d6000fd5b505050506040513d60208110156112c057600080fd5b505115156112cd57600080fd5b600354620f42409060c060020a900463ffffffff168202600580549290910490910190556040805184815260208101839052815133927fed7a144fad14804d5c249145e3e0e2b63a9eb455b76aee5bc92d711e9bba3e4a928290030190a2604051339082156108fc029083906000818181858888f19350505050158015611358573d6000803e3d6000fd5b50505050565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936329a00e7c93610100909204909216916370a0823191602480830192602092919082900301818987803b1580156113c457600080fd5b505af11580156113d8573d6000803e3d6000fd5b505050506040513d60208110156113ee57600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561144157600080fd5b505af1158015611455573d6000803e3d6000fd5b505050506040513d602081101561146b57600080fd5b50516006546003546040805163ffffffff88811660e060020a02825295909403959095036004840152343031909201829003602484015260a060020a900490921660448201526064810191909152905160848083019260209291908290030181600087803b1580156114dc57600080fd5b505af11580156114f0573d6000803e3d6000fd5b505050506040513d602081101561150657600080fd5b5051600354909250620f42409060c060020a900463ffffffff1683026002549190049092039160ff16151561153a57600080fd5b8282101561154757600080fd5b6002546040805160e060020a6370a08231028152306004820152905184926101009004600160a060020a0316916370a082319160248083019260209291908290030181600087803b15801561159b57600080fd5b505af11580156115af573d6000803e3d6000fd5b505050506040513d60208110156115c557600080fd5b505110156115d257600080fd5b60075434111561162e57600854606490340260008054604051939092049350600160a060020a039091169183156108fc0291849190818181858888f19350505050158015611624573d6000803e3d6000fd5b5060068054820190555b600354620f42409060c060020a900463ffffffff163402600580549290910490910190556040805134815260208101849052815133927f1cbc5ab135991bd2b6a4b034a04aa2aa086dac1371cb9b16b8b5e2ed6b036bed928290030190a2600254604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018590529051610100909204600160a060020a03169163a9059cbb9160448082019260009290919082900301818387803b1580156116fc57600080fd5b505af1158015611710573d6000803e3d6000fd5b50505050505050565b600054600160a060020a0316331461173057600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018490529051610100909204600160a060020a0316916323b872dd916064808201926020929091908290030181600087803b1580156117a757600080fd5b505af11580156117bb573d6000803e3d6000fd5b505050506040513d60208110156117d157600080fd5b505050565b60035460c060020a900463ffffffff1681565b3360009081526001602052604090205460ff16806118115750600054600160a060020a031633145b151561181c57600080fd5b60008111801561182f5750620f42408111155b151561183a57600080fd5b6003805463ffffffff90921660a060020a0277ffffffff000000000000000000000000000000000000000019909216919091179055565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936349f9b0f793610100909204909216916370a0823191602480830192602092919082900301818987803b1580156118d757600080fd5b505af11580156118eb573d6000803e3d6000fd5b505050506040513d602081101561190157600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561195457600080fd5b505af1158015611968573d6000803e3d6000fd5b505050506040513d602081101561197e57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b1580156119ea57600080fd5b505af11580156119fe573d6000803e3d6000fd5b505050506040513d6020811015611a1457600080fd5b5051600354909150620f42409060c060020a900463ffffffff16820204900330318111156110245730319150611028565b600054600160a060020a03163314611a5c57600080fd5b600160a060020a03166000908152600160205260409020805460ff19169055565b600160a060020a03166000908152600160208190526040909120805460ff191690911790555600a165627a7a72305820095797d758548afc74f18d3b5192e69df97953f32ad61e384567e56f321a79c20029000000000000000000000000f4409fb58f5a3164b1b809ea4056f7de957886fd00000000000000000000000000000000000000000000000000000000000003e80000000000000000000000003ae6abeb18dfa61f85faff25aef28c8cd6ddbe6b

Deployed Bytecode

0x60806040526004361061019d5763ffffffff60e060020a60003504166302d05d3f81146101a257806306c2f050146101d3578063185d1af6146101ed5780631cef7c3714610205578063238dafe01461022c5780632f2770db14610255578063315a095d1461026a57806335bb3e16146102825780633bed33ce146102a357806341ef6bb7146102bb578063429b62e5146102d057806355a373d6146102f15780635cc5ca501461030657806363f8a2111461031b57806369fe0e2d1461034257806377d56a041461035a5780637c41a39b14610388578063844c3edc1461039d5780638e068b11146103b55780638f4ffcb1146103ca5780639003adfe1461040257806398ea5fca14610417578063a1aab33f1461041f578063a3907d711461044d578063a6f9dae114610462578063b9c8464d14610483578063bd8caabf1461049b578063c59d5633146104b3578063d79875eb146104cb578063d96a094a146104e6578063dd49756e146104f1578063ddca3f4314610509578063eff841d11461051e578063f8eb5fc514610536578063fa62a1ff1461054e575b600080fd5b3480156101ae57600080fd5b506101b761056f565b60408051600160a060020a039092168252519081900360200190f35b3480156101df57600080fd5b506101eb60043561057e565b005b3480156101f957600080fd5b506101eb6004356105a7565b34801561021157600080fd5b5061021a6105ec565b60408051918252519081900360200190f35b34801561023857600080fd5b506102416105f2565b604080519115158252519081900360200190f35b34801561026157600080fd5b506101eb6105fb565b34801561027657600080fd5b506101eb60043561063a565b34801561028e57600080fd5b506101eb600160a060020a03600435166106dc565b3480156102af57600080fd5b506101eb6004356106ff565b3480156102c757600080fd5b5061021a610747565b3480156102dc57600080fd5b50610241600160a060020a036004351661074d565b3480156102fd57600080fd5b506101b7610762565b34801561031257600080fd5b506101b7610776565b34801561032757600080fd5b506101eb600435602435600160a060020a0360443516610785565b34801561034e57600080fd5b506101eb600435610ac5565b34801561036657600080fd5b5061036f610b55565b6040805192835260208301919091528051918290030190f35b34801561039457600080fd5b5061021a610be8565b3480156103a957600080fd5b506101eb600435610bee565b3480156103c157600080fd5b5061021a610c0a565b3480156103d657600080fd5b506101eb60048035600160a060020a039081169160248035926044351691606435918201910135610c10565b34801561040e57600080fd5b5061021a610c1c565b6101eb610c22565b34801561042b57600080fd5b50610434610c3b565b6040805163ffffffff9092168252519081900360200190f35b34801561045957600080fd5b506101eb610c4e565b34801561046e57600080fd5b506101eb600160a060020a0360043516610c90565b34801561048f57600080fd5b506101eb600435610cd6565b3480156104a757600080fd5b506101eb600435610d18565b3480156104bf57600080fd5b5061021a600435610d50565b3480156104d757600080fd5b506101eb60043560243561102e565b6101eb60043561135e565b3480156104fd57600080fd5b506101eb600435611719565b34801561051557600080fd5b506104346117d6565b34801561052a57600080fd5b506101eb6004356117e9565b34801561054257600080fd5b5061021a600435611871565b34801561055a57600080fd5b506101eb600160a060020a0360043516611a45565b600054600160a060020a031681565b600054600160a060020a0316331461059557600080fd5b600081116105a257600080fd5b600855565b3360009081526001602052604090205460ff16806105cf5750600054600160a060020a031633145b15156105da57600080fd5b600081116105e757600080fd5b600455565b60085481565b60025460ff1681565b3360009081526001602052604090205460ff16806106235750600054600160a060020a031633145b151561062e57600080fd5b6002805460ff19169055565b600054600160a060020a0316331461065157600080fd5b600254604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018490529051610100909204600160a060020a03169163a9059cbb9160448082019260009290919082900301818387803b1580156106c157600080fd5b505af11580156106d5573d6000803e3d6000fd5b5050505050565b600054600160a060020a031633146106f357600080fd5b6106fc81611a7d565b50565b600054600160a060020a0316331461071657600080fd5b604051339082156108fc029083906000818181858888f19350505050158015610743573d6000803e3d6000fd5b5050565b60045481565b60016020526000908152604090205460ff1681565b6002546101009004600160a060020a031681565b600354600160a060020a031681565b6003546002546040805160e060020a6370a082310281523060048201529051600093600160a060020a03908116936349f9b0f793610100909104909116916370a082319160248082019260209290919082900301818987803b1580156107ea57600080fd5b505af11580156107fe573d6000803e3d6000fd5b505050506040513d602081101561081457600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561086757600080fd5b505af115801561087b573d6000803e3d6000fd5b505050506040513d602081101561089157600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101889052905160848083019260209291908290030181600087803b1580156108fd57600080fd5b505af1158015610911573d6000803e3d6000fd5b505050506040513d602081101561092757600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002549190049091039060ff16151561095b57600080fd5b8281101561096857600080fd5b303181111561097657600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152306024830152604482018890529151610100909304909116916323b872dd916064808201926020929091908290030181600087803b1580156109f157600080fd5b505af1158015610a05573d6000803e3d6000fd5b505050506040513d6020811015610a1b57600080fd5b50511515610a2857600080fd5b600354620f42409060c060020a900463ffffffff1682026005805492909104909101905560408051858152602081018390528151600160a060020a038516927fed7a144fad14804d5c249145e3e0e2b63a9eb455b76aee5bc92d711e9bba3e4a928290030190a2604051600160a060020a0383169082156108fc029083906000818181858888f193505050501580156106d5573d6000803e3d6000fd5b3360009081526001602052604090205460ff1680610aed5750600054600160a060020a031633145b1515610af857600080fd5b60008110158015610b0c5750620f42408111155b1515610b1757600080fd5b6003805463ffffffff90921660c060020a027fffffffff00000000ffffffffffffffffffffffffffffffffffffffffffffffff909216919091179055565b6002546040805160e060020a6370a0823102815230600482015290516000928392610100909104600160a060020a0316916370a082319160248082019260209290919082900301818787803b158015610bad57600080fd5b505af1158015610bc1573d6000803e3d6000fd5b505050506040513d6020811015610bd757600080fd5b505160065490925030310190509091565b60075481565b600054600160a060020a03163314610c0557600080fd5b600755565b60065481565b6106d584600087610785565b60055481565b600054600160a060020a03163314610c3957600080fd5b565b60035460a060020a900463ffffffff1681565b3360009081526001602052604090205460ff1680610c765750600054600160a060020a031633145b1515610c8157600080fd5b6002805460ff19166001179055565b600054600160a060020a03163314610ca757600080fd5b6000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b3360009081526001602052604090205460ff1680610cfe5750600054600160a060020a031633145b1515610d0957600080fd5b60055481111561071657600080fd5b3360009081526001602052604090205460ff1680610d405750600054600160a060020a031633145b1515610d4b57600080fd5b600655565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936329a00e7c93610100909204909216916370a0823191602480830192602092919082900301818987803b158015610db657600080fd5b505af1158015610dca573d6000803e3d6000fd5b505050506040513d6020811015610de057600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b158015610e3357600080fd5b505af1158015610e47573d6000803e3d6000fd5b505050506040513d6020811015610e5d57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b158015610ec957600080fd5b505af1158015610edd573d6000803e3d6000fd5b505050506040513d6020811015610ef357600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002546040805160e060020a6370a08231028152306004820152905193909204909303926101009004600160a060020a0316916370a08231916024808201926020929091908290030181600087803b158015610f6a57600080fd5b505af1158015610f7e573d6000803e3d6000fd5b505050506040513d6020811015610f9457600080fd5b5051811115611024576002546040805160e060020a6370a082310281523060048201529051610100909204600160a060020a0316916370a08231916024808201926020929091908290030181600087803b158015610ff157600080fd5b505af1158015611005573d6000803e3d6000fd5b505050506040513d602081101561101b57600080fd5b50519150611028565b8091505b50919050565b6003546002546040805160e060020a6370a082310281523060048201529051600093600160a060020a03908116936349f9b0f793610100909104909116916370a082319160248082019260209290919082900301818987803b15801561109357600080fd5b505af11580156110a7573d6000803e3d6000fd5b505050506040513d60208110156110bd57600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561111057600080fd5b505af1158015611124573d6000803e3d6000fd5b505050506040513d602081101561113a57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b1580156111a657600080fd5b505af11580156111ba573d6000803e3d6000fd5b505050506040513d60208110156111d057600080fd5b5051600354909150620f42409060c060020a900463ffffffff1682026002549190049091039060ff16151561120457600080fd5b8181101561121157600080fd5b303181111561121f57600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018690529051610100909204600160a060020a0316916323b872dd916064808201926020929091908290030181600087803b15801561129657600080fd5b505af11580156112aa573d6000803e3d6000fd5b505050506040513d60208110156112c057600080fd5b505115156112cd57600080fd5b600354620f42409060c060020a900463ffffffff168202600580549290910490910190556040805184815260208101839052815133927fed7a144fad14804d5c249145e3e0e2b63a9eb455b76aee5bc92d711e9bba3e4a928290030190a2604051339082156108fc029083906000818181858888f19350505050158015611358573d6000803e3d6000fd5b50505050565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936329a00e7c93610100909204909216916370a0823191602480830192602092919082900301818987803b1580156113c457600080fd5b505af11580156113d8573d6000803e3d6000fd5b505050506040513d60208110156113ee57600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561144157600080fd5b505af1158015611455573d6000803e3d6000fd5b505050506040513d602081101561146b57600080fd5b50516006546003546040805163ffffffff88811660e060020a02825295909403959095036004840152343031909201829003602484015260a060020a900490921660448201526064810191909152905160848083019260209291908290030181600087803b1580156114dc57600080fd5b505af11580156114f0573d6000803e3d6000fd5b505050506040513d602081101561150657600080fd5b5051600354909250620f42409060c060020a900463ffffffff1683026002549190049092039160ff16151561153a57600080fd5b8282101561154757600080fd5b6002546040805160e060020a6370a08231028152306004820152905184926101009004600160a060020a0316916370a082319160248083019260209291908290030181600087803b15801561159b57600080fd5b505af11580156115af573d6000803e3d6000fd5b505050506040513d60208110156115c557600080fd5b505110156115d257600080fd5b60075434111561162e57600854606490340260008054604051939092049350600160a060020a039091169183156108fc0291849190818181858888f19350505050158015611624573d6000803e3d6000fd5b5060068054820190555b600354620f42409060c060020a900463ffffffff163402600580549290910490910190556040805134815260208101849052815133927f1cbc5ab135991bd2b6a4b034a04aa2aa086dac1371cb9b16b8b5e2ed6b036bed928290030190a2600254604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018590529051610100909204600160a060020a03169163a9059cbb9160448082019260009290919082900301818387803b1580156116fc57600080fd5b505af1158015611710573d6000803e3d6000fd5b50505050505050565b600054600160a060020a0316331461173057600080fd5b600254604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018490529051610100909204600160a060020a0316916323b872dd916064808201926020929091908290030181600087803b1580156117a757600080fd5b505af11580156117bb573d6000803e3d6000fd5b505050506040513d60208110156117d157600080fd5b505050565b60035460c060020a900463ffffffff1681565b3360009081526001602052604090205460ff16806118115750600054600160a060020a031633145b151561181c57600080fd5b60008111801561182f5750620f42408111155b151561183a57600080fd5b6003805463ffffffff90921660a060020a0277ffffffff000000000000000000000000000000000000000019909216919091179055565b6003546002546040805160e060020a6370a0823102815230600482015290516000938493600160a060020a03918216936349f9b0f793610100909204909216916370a0823191602480830192602092919082900301818987803b1580156118d757600080fd5b505af11580156118eb573d6000803e3d6000fd5b505050506040513d602081101561190157600080fd5b5051600480546002546040805160e060020a6318160ddd02815290519293610100909204600160a060020a0316926318160ddd928281019260209291908290030181600087803b15801561195457600080fd5b505af1158015611968573d6000803e3d6000fd5b505050506040513d602081101561197e57600080fd5b50516006546003546040805163ffffffff88811660e060020a028252959094039590950360048401523031909101602483015260a060020a9004909116604482015260648101879052905160848083019260209291908290030181600087803b1580156119ea57600080fd5b505af11580156119fe573d6000803e3d6000fd5b505050506040513d6020811015611a1457600080fd5b5051600354909150620f42409060c060020a900463ffffffff16820204900330318111156110245730319150611028565b600054600160a060020a03163314611a5c57600080fd5b600160a060020a03166000908152600160205260409020805460ff19169055565b600160a060020a03166000908152600160208190526040909120805460ff191690911790555600a165627a7a72305820095797d758548afc74f18d3b5192e69df97953f32ad61e384567e56f321a79c20029

Swarm Source

bzzr://095797d758548afc74f18d3b5192e69df97953f32ad61e384567e56f321a79c2

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.