ETH Price: $2,530.01 (+3.64%)

Contract

0x89b413994D546Cf81b6B36dF294753E15fcd8F35
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve108198602020-09-08 8:09:351450 days ago1599552575IN
0x89b41399...15fcd8F35
0 ETH0.0032758374
Approve107472482020-08-28 5:21:491461 days ago1598592109IN
0x89b41399...15fcd8F35
0 ETH0.0024347455
Approve107391062020-08-26 23:25:581463 days ago1598484358IN
0x89b41399...15fcd8F35
0 ETH0.0025675458
Approve107114602020-08-22 17:41:361467 days ago1598118096IN
0x89b41399...15fcd8F35
0 ETH0.00447106101
Approve107006642020-08-21 1:34:461468 days ago1597973686IN
0x89b41399...15fcd8F35
0 ETH0.0042485796
Approve106996452020-08-20 21:56:561469 days ago1597960616IN
0x89b41399...15fcd8F35
0 ETH0.0041611994
Approve106995802020-08-20 21:44:181469 days ago1597959858IN
0x89b41399...15fcd8F35
0 ETH0.0041611994
Approve106874042020-08-19 0:48:171471 days ago1597798097IN
0x89b41399...15fcd8F35
0 ETH0.0043603998.5
Approve106864062020-08-18 21:07:371471 days ago1597784857IN
0x89b41399...15fcd8F35
0 ETH0.0043382698
Approve106357382020-08-11 1:47:071478 days ago1597110427IN
0x89b41399...15fcd8F35
0 ETH0.00447992101.20000023
Approve106351252020-08-10 23:22:251479 days ago1597101745IN
0x89b41399...15fcd8F35
0 ETH0.0036299782
Approve106342542020-08-10 20:09:291479 days ago1597090169IN
0x89b41399...15fcd8F35
0 ETH0.0032753773.98956555
Approve106342482020-08-10 20:08:471479 days ago1597090127IN
0x89b41399...15fcd8F35
0 ETH0.00513508116
Approve106342202020-08-10 20:03:011479 days ago1597089781IN
0x89b41399...15fcd8F35
0 ETH0.00513508116
Approve106342142020-08-10 20:00:411479 days ago1597089641IN
0x89b41399...15fcd8F35
0 ETH0.00531216120
Approve106341872020-08-10 19:56:181479 days ago1597089378IN
0x89b41399...15fcd8F35
0 ETH0.0031430271
Transfer106313172020-08-10 9:14:191479 days ago1597050859IN
0x89b41399...15fcd8F35
0 ETH0.00382093101
Unlock106312882020-08-10 9:08:341479 days ago1597050514IN
0x89b41399...15fcd8F35
0 ETH0.00148612106
Set Authority106312192020-08-10 8:54:311479 days ago1597049671IN
0x89b41399...15fcd8F35
0 ETH0.00486979109
0x60806040106311082020-08-10 8:29:221479 days ago1597048162IN
 Contract Creation
0 ETH0.10379588103

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

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

Contract Name:
Token

Compiler Version
v0.5.8+commit.23d335f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, GNU GPLv3 license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2019-10-30
*/

pragma solidity ^0.5.8;
/*
  This file is part of The Colony Network.

  The Colony Network is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.

  The Colony Network is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with The Colony Network. If not, see <http://www.gnu.org/licenses/>.
*/



// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.



contract DSAuthority {
    function canCall(
        address src, address dst, bytes4 sig
    ) public view returns (bool);
}

contract DSAuthEvents {
    event LogSetAuthority (address indexed authority);
    event LogSetOwner     (address indexed owner);
}

contract DSAuth is DSAuthEvents {
    DSAuthority  public  authority;
    address      public  owner;

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

    function setOwner(address owner_)
        public
        auth
    {
        owner = owner_;
        emit LogSetOwner(owner);
    }

    function setAuthority(DSAuthority authority_)
        public
        auth
    {
        authority = authority_;
        emit LogSetAuthority(address(authority));
    }

    modifier auth {
        require(isAuthorized(msg.sender, msg.sig), "ds-auth-unauthorized");
        _;
    }

    function isAuthorized(address src, bytes4 sig) internal view returns (bool) {
        if (src == address(this)) {
            return true;
        } else if (src == owner) {
            return true;
        } else if (authority == DSAuthority(0)) {
            return false;
        } else {
            return authority.canCall(src, address(this), sig);
        }
    }
}
/// base.sol -- basic ERC20 implementation

// Copyright (C) 2015, 2016, 2017  DappHub, LLC

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.



/// erc20.sol -- API for the ERC20 token standard

// See <https://github.com/ethereum/EIPs/issues/20>.

// This file likely does not meet the threshold of originality
// required for copyright to apply.  As a result, this is free and
// unencumbered software belonging to the public domain.



contract ERC20Events {
    event Approval(address indexed src, address indexed guy, uint wad);
    event Transfer(address indexed src, address indexed dst, uint wad);
}

contract ERC20 is ERC20Events {
    function totalSupply() public view returns (uint);
    function balanceOf(address guy) public view returns (uint);
    function allowance(address src, address guy) public view returns (uint);

    function approve(address guy, uint wad) public returns (bool);
    function transfer(address dst, uint wad) public returns (bool);
    function transferFrom(
        address src, address dst, uint wad
    ) public returns (bool);
}
/// math.sol -- mixin for inline numerical wizardry

// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.



contract DSMath {
    function add(uint x, uint y) internal pure returns (uint z) {
        require((z = x + y) >= x, "ds-math-add-overflow");
    }
    function sub(uint x, uint y) internal pure returns (uint z) {
        require((z = x - y) <= x, "ds-math-sub-underflow");
    }
    function mul(uint x, uint y) internal pure returns (uint z) {
        require(y == 0 || (z = x * y) / y == x, "ds-math-mul-overflow");
    }

    function min(uint x, uint y) internal pure returns (uint z) {
        return x <= y ? x : y;
    }
    function max(uint x, uint y) internal pure returns (uint z) {
        return x >= y ? x : y;
    }
    function imin(int x, int y) internal pure returns (int z) {
        return x <= y ? x : y;
    }
    function imax(int x, int y) internal pure returns (int z) {
        return x >= y ? x : y;
    }

    uint constant WAD = 10 ** 18;
    uint constant RAY = 10 ** 27;

    function wmul(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, y), WAD / 2) / WAD;
    }
    function rmul(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, y), RAY / 2) / RAY;
    }
    function wdiv(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, WAD), y / 2) / y;
    }
    function rdiv(uint x, uint y) internal pure returns (uint z) {
        z = add(mul(x, RAY), y / 2) / y;
    }

    // This famous algorithm is called "exponentiation by squaring"
    // and calculates x^n with x as fixed-point and n as regular unsigned.
    //
    // It's O(log n), instead of O(n) for naive repeated multiplication.
    //
    // These facts are why it works:
    //
    //  If n is even, then x^n = (x^2)^(n/2).
    //  If n is odd,  then x^n = x * x^(n-1),
    //   and applying the equation for even x gives
    //    x^n = x * (x^2)^((n-1) / 2).
    //
    //  Also, EVM division is flooring and
    //    floor[(n-1) / 2] = floor[n / 2].
    //
    function rpow(uint x, uint n) internal pure returns (uint z) {
        z = n % 2 != 0 ? x : RAY;

        for (n /= 2; n != 0; n /= 2) {
            x = rmul(x, x);

            if (n % 2 != 0) {
                z = rmul(z, x);
            }
        }
    }
}

contract DSTokenBase is ERC20, DSMath {
    uint256                                            _supply;
    mapping (address => uint256)                       _balances;
    mapping (address => mapping (address => uint256))  _approvals;

    constructor(uint supply) public {
        _balances[msg.sender] = supply;
        _supply = supply;
    }

    function totalSupply() public view returns (uint) {
        return _supply;
    }
    function balanceOf(address src) public view returns (uint) {
        return _balances[src];
    }
    function allowance(address src, address guy) public view returns (uint) {
        return _approvals[src][guy];
    }

    function transfer(address dst, uint wad) public returns (bool) {
        return transferFrom(msg.sender, dst, wad);
    }

    function transferFrom(address src, address dst, uint wad)
        public
        returns (bool)
    {
        if (src != msg.sender) {
            require(_approvals[src][msg.sender] >= wad, "ds-token-insufficient-approval");
            _approvals[src][msg.sender] = sub(_approvals[src][msg.sender], wad);
        }

        require(_balances[src] >= wad, "ds-token-insufficient-balance");
        _balances[src] = sub(_balances[src], wad);
        _balances[dst] = add(_balances[dst], wad);

        emit Transfer(src, dst, wad);

        return true;
    }

    function approve(address guy, uint wad) public returns (bool) {
        _approvals[msg.sender][guy] = wad;

        emit Approval(msg.sender, guy, wad);

        return true;
    }
}
/*
  This file is part of The Colony Network.

  The Colony Network is free software: you can redistribute it and/or modify
  it under the terms of the GNU General Public License as published by
  the Free Software Foundation, either version 3 of the License, or
  (at your option) any later version.

  The Colony Network is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  GNU General Public License for more details.

  You should have received a copy of the GNU General Public License
  along with The Colony Network. If not, see <http://www.gnu.org/licenses/>.
*/






contract ERC20Extended is ERC20 {
  event Mint(address indexed guy, uint wad);
  event Burn(address indexed guy, uint wad);

  function mint(uint wad) public;
  function mint(address guy, uint wad) public;
  function burn(uint wad) public;
  function burn(address guy, uint wad) public;
}


contract Token is DSTokenBase(0), DSAuth, ERC20Extended {
  uint8 public decimals;
  string public symbol;
  string public name;

  bool public locked;

  modifier unlocked {
    if (locked) {
      require(isAuthorized(msg.sender, msg.sig), "colony-token-unauthorised");
    }
    _;
  }

  constructor(string memory _name, string memory _symbol, uint8 _decimals) public {
    name = _name;
    symbol = _symbol;
    decimals = _decimals;
    locked = true;
  }

  function transferFrom(address src, address dst, uint wad) public 
  unlocked
  returns (bool)
  {
    return super.transferFrom(src, dst, wad);
  }

  function mint(uint wad) public auth {
    mint(msg.sender, wad);
  }

  function burn(uint wad) public {
    burn(msg.sender, wad);
  }

  function mint(address guy, uint wad) public auth {
    _balances[guy] = add(_balances[guy], wad);
    _supply = add(_supply, wad);
    emit Mint(guy, wad);
    emit Transfer(address(0x0), guy, wad);
  }

  function burn(address guy, uint wad) public {
    if (guy != msg.sender) {
      require(_approvals[guy][msg.sender] >= wad, "ds-token-insufficient-approval");
      _approvals[guy][msg.sender] = sub(_approvals[guy][msg.sender], wad);
    }

    require(_balances[guy] >= wad, "ds-token-insufficient-balance");
    _balances[guy] = sub(_balances[guy], wad);
    _supply = sub(_supply, wad);
    emit Burn(guy, wad);
  }

  function unlock() public
  auth
  {
    locked = false;
  }
}

Contract Security Audit

Contract ABI

[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"guy","type":"address"},{"name":"wad","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"owner_","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"src","type":"address"},{"name":"dst","type":"address"},{"name":"wad","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"guy","type":"address"},{"name":"wad","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"wad","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"authority_","type":"address"}],"name":"setAuthority","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"guy","type":"address"},{"name":"wad","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"wad","type":"uint256"}],"name":"mint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"dst","type":"address"},{"name":"wad","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"authority","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"locked","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"src","type":"address"},{"name":"guy","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_name","type":"string"},{"name":"_symbol","type":"string"},{"name":"_decimals","type":"uint8"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"guy","type":"address"},{"indexed":false,"name":"wad","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"guy","type":"address"},{"indexed":false,"name":"wad","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"authority","type":"address"}],"name":"LogSetAuthority","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"}],"name":"LogSetOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"src","type":"address"},{"indexed":true,"name":"guy","type":"address"},{"indexed":false,"name":"wad","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"src","type":"address"},{"indexed":true,"name":"dst","type":"address"},{"indexed":false,"name":"wad","type":"uint256"}],"name":"Transfer","type":"event"}]

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101215760003560e01c80637a9e5e4b116100ad578063a69df4b511610071578063a69df4b514610383578063a9059cbb1461038b578063bf7e214f146103b7578063cf309012146103bf578063dd62ed3e146103c757610121565b80637a9e5e4b146102e85780638da5cb5b1461030e57806395d89b41146103325780639dc29fac1461033a578063a0712d681461036657610121565b806323b872dd116100f457806323b872dd14610225578063313ce5671461025b57806340c10f191461027957806342966c68146102a557806370a08231146102c257610121565b806306fdde0314610126578063095ea7b3146101a357806313af4035146101e357806318160ddd1461020b575b600080fd5b61012e6103f5565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610168578181015183820152602001610150565b50505050905090810190601f1680156101955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101cf600480360360408110156101b957600080fd5b506001600160a01b038135169060200135610483565b604080519115158252519081900360200190f35b610209600480360360208110156101f957600080fd5b50356001600160a01b03166104ea565b005b610213610592565b60408051918252519081900360200190f35b6101cf6004803603606081101561023b57600080fd5b506001600160a01b03813581169160208101359091169060400135610598565b610263610623565b6040805160ff9092168252519081900360200190f35b6102096004803603604081101561028f57600080fd5b506001600160a01b038135169060200135610633565b610209600480360360208110156102bb57600080fd5b503561075c565b610213600480360360208110156102d857600080fd5b50356001600160a01b0316610769565b610209600480360360208110156102fe57600080fd5b50356001600160a01b0316610784565b61031661082c565b604080516001600160a01b039092168252519081900360200190f35b61012e61083b565b6102096004803603604081101561035057600080fd5b506001600160a01b038135169060200135610896565b6102096004803603602081101561037c57600080fd5b5035610a74565b610209610ad6565b6101cf600480360360408110156103a157600080fd5b506001600160a01b038135169060200135610b3a565b610316610b4e565b6101cf610b5d565b610213600480360360408110156103dd57600080fd5b506001600160a01b0381358116916020013516610b66565b6006805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561047b5780601f106104505761010080835404028352916020019161047b565b820191906000526020600020905b81548152906001019060200180831161045e57829003601f168201915b505050505081565b3360008181526002602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b610500336000356001600160e01b031916610b91565b6105425760408051600160e51b62461bcd0281526020600482015260146024820152600080516020610f35833981519152604482015290519081900360640190fd5b600480546001600160a01b0319166001600160a01b0383811691909117918290556040519116907fce241d7ca1f669fee44b6fc00b8eba2df3bb514eed0f6f668f8f89096e81ed9490600090a250565b60005490565b60075460009060ff1615610610576105bc336000356001600160e01b031916610b91565b6106105760408051600160e51b62461bcd02815260206004820152601960248201527f636f6c6f6e792d746f6b656e2d756e617574686f726973656400000000000000604482015290519081900360640190fd5b61061b848484610c7b565b949350505050565b600454600160a01b900460ff1681565b610649336000356001600160e01b031916610b91565b61068b5760408051600160e51b62461bcd0281526020600482015260146024820152600080516020610f35833981519152604482015290519081900360640190fd5b6001600160a01b0382166000908152600160205260409020546106ae9082610e7e565b6001600160a01b038316600090815260016020526040812091909155546106d59082610e7e565b6000556040805182815290516001600160a01b038416917f0f6798a560793a54c3bcfe86a93cde1e73087d944c0ea20544137d4121396885919081900360200190a26040805182815290516001600160a01b038416916000917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b6107663382610896565b50565b6001600160a01b031660009081526001602052604090205490565b61079a336000356001600160e01b031916610b91565b6107dc5760408051600160e51b62461bcd0281526020600482015260146024820152600080516020610f35833981519152604482015290519081900360640190fd5b600380546001600160a01b0319166001600160a01b0383811691909117918290556040519116907f1abebea81bfa2637f28358c371278fb15ede7ea8dd28d2e03b112ff6d936ada490600090a250565b6004546001600160a01b031681565b6005805460408051602060026001851615610100026000190190941693909304601f8101849004840282018401909252818152929183018282801561047b5780601f106104505761010080835404028352916020019161047b565b6001600160a01b0382163314610974576001600160a01b03821660009081526002602090815260408083203384529091529020548111156109215760408051600160e51b62461bcd02815260206004820152601e60248201527f64732d746f6b656e2d696e73756666696369656e742d617070726f76616c0000604482015290519081900360640190fd5b6001600160a01b038216600090815260026020908152604080832033845290915290205461094f9082610ed9565b6001600160a01b03831660009081526002602090815260408083203384529091529020555b6001600160a01b0382166000908152600160205260409020548111156109e45760408051600160e51b62461bcd02815260206004820152601d60248201527f64732d746f6b656e2d696e73756666696369656e742d62616c616e6365000000604482015290519081900360640190fd5b6001600160a01b038216600090815260016020526040902054610a079082610ed9565b6001600160a01b03831660009081526001602052604081209190915554610a2e9082610ed9565b6000556040805182815290516001600160a01b038416917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a25050565b610a8a336000356001600160e01b031916610b91565b610acc5760408051600160e51b62461bcd0281526020600482015260146024820152600080516020610f35833981519152604482015290519081900360640190fd5b6107663382610633565b610aec336000356001600160e01b031916610b91565b610b2e5760408051600160e51b62461bcd0281526020600482015260146024820152600080516020610f35833981519152604482015290519081900360640190fd5b6007805460ff19169055565b6000610b47338484610598565b9392505050565b6003546001600160a01b031681565b60075460ff1681565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b60006001600160a01b038316301415610bac575060016104e4565b6004546001600160a01b0384811691161415610bca575060016104e4565b6003546001600160a01b0316610be2575060006104e4565b60035460408051600160e01b63b70096130281526001600160a01b0386811660048301523060248301526001600160e01b0319861660448301529151919092169163b7009613916064808301926020929190829003018186803b158015610c4857600080fd5b505afa158015610c5c573d6000803e3d6000fd5b505050506040513d6020811015610c7257600080fd5b505190506104e4565b60006001600160a01b0384163314610d5b576001600160a01b0384166000908152600260209081526040808320338452909152902054821115610d085760408051600160e51b62461bcd02815260206004820152601e60248201527f64732d746f6b656e2d696e73756666696369656e742d617070726f76616c0000604482015290519081900360640190fd5b6001600160a01b0384166000908152600260209081526040808320338452909152902054610d369083610ed9565b6001600160a01b03851660009081526002602090815260408083203384529091529020555b6001600160a01b038416600090815260016020526040902054821115610dcb5760408051600160e51b62461bcd02815260206004820152601d60248201527f64732d746f6b656e2d696e73756666696369656e742d62616c616e6365000000604482015290519081900360640190fd5b6001600160a01b038416600090815260016020526040902054610dee9083610ed9565b6001600160a01b038086166000908152600160205260408082209390935590851681522054610e1d9083610e7e565b6001600160a01b0380851660008181526001602090815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35060019392505050565b808201828110156104e45760408051600160e51b62461bcd02815260206004820152601460248201527f64732d6d6174682d6164642d6f766572666c6f77000000000000000000000000604482015290519081900360640190fd5b808203828111156104e45760408051600160e51b62461bcd02815260206004820152601560248201527f64732d6d6174682d7375622d756e646572666c6f770000000000000000000000604482015290519081900360640190fdfe64732d617574682d756e617574686f72697a6564000000000000000000000000a165627a7a72305820ed8de9a90263e33e6d6e4fb5554694081cb7508892aee98c6e637d87f2bec09a0029

Deployed Bytecode Sourcemap

10023:1506:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10023:1506:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10135:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10135:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8803:186;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8803:186:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;1893:136;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;1893:136:0;-1:-1:-1;;;;;1893:136:0;;:::i;:::-;;7769:83;;;:::i;:::-;;;;;;;;;;;;;;;;10510:152;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;10510:152:0;;;;;;;;;;;;;;;;;:::i;10084:21::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10815:207;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;10815:207:0;;;;;;;;:::i;10744:65::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10744:65:0;;:::i;7858:99::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7858:99:0;-1:-1:-1;;;;;7858:99:0;;:::i;2037:173::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2037:173:0;-1:-1:-1;;;;;2037:173:0;;:::i;1753:26::-;;;:::i;:::-;;;;-1:-1:-1;;;;;1753:26:0;;;;;;;;;;;;;;10110:20;;;:::i;11028:429::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;11028:429:0;;;;;;;;:::i;10668:70::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10668:70:0;;:::i;11463:63::-;;;:::i;8089:123::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8089:123:0;;;;;;;;:::i;1716:30::-;;;:::i;10160:18::-;;;:::i;7963:118::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7963:118:0;;;;;;;;;;:::i;10135:18::-;;;;;;;;;;;;;;;-1:-1:-1;;10135:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8803:186::-;8887:10;8859:4;8876:22;;;:10;:22;;;;;;;;-1:-1:-1;;;;;8876:27:0;;;;;;;;;;;:33;;;8927:30;;;;;;;8859:4;;8876:27;;8887:10;;8927:30;;;;;;;;-1:-1:-1;8977:4:0;8803:186;;;;;:::o;1893:136::-;2251:33;2264:10;2276:7;;-1:-1:-1;;;;;;2276:7:0;2251:12;:33::i;:::-;2243:66;;;;;-1:-1:-1;;;;;2243:66:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2243:66:0;;;;;;;;;;;;;;;1973:5;:14;;-1:-1:-1;;;;;;1973:14:0;-1:-1:-1;;;;;1973:14:0;;;;;;;;;;;2003:18;;2015:5;;;2003:18;;-1:-1:-1;;2003:18:0;1893:136;:::o;7769:83::-;7813:4;7837:7;7769:83;:::o;10510:152::-;10214:6;;10600:4;;10214:6;;10210:100;;;10239:33;10252:10;10264:7;;-1:-1:-1;;;;;;10264:7:0;10239:12;:33::i;:::-;10231:71;;;;;-1:-1:-1;;;;;10231:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10623:33;10642:3;10647;10652;10623:18;:33::i;:::-;10616:40;10510:152;-1:-1:-1;;;;10510:152:0:o;10084:21::-;;;-1:-1:-1;;;10084:21:0;;;;;:::o;10815:207::-;2251:33;2264:10;2276:7;;-1:-1:-1;;;;;;2276:7:0;2251:12;:33::i;:::-;2243:66;;;;;-1:-1:-1;;;;;2243:66:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2243:66:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;10892:14:0;;;;;;:9;:14;;;;;;10888:24;;10908:3;10888;:24::i;:::-;-1:-1:-1;;;;;10871:14:0;;;;;;:9;:14;;;;;:41;;;;10933:7;10929:17;;10942:3;10929;:17::i;:::-;10919:7;:27;10958:14;;;;;;;;-1:-1:-1;;;;;10958:14:0;;;;;;;;;;;;;10984:32;;;;;;;;-1:-1:-1;;;;;10984:32:0;;;11001:3;;10984:32;;;;;;;;;10815:207;;:::o;10744:65::-;10782:21;10787:10;10799:3;10782:4;:21::i;:::-;10744:65;:::o;7858:99::-;-1:-1:-1;;;;;7935:14:0;7911:4;7935:14;;;:9;:14;;;;;;;7858:99::o;2037:173::-;2251:33;2264:10;2276:7;;-1:-1:-1;;;;;;2276:7:0;2251:12;:33::i;:::-;2243:66;;;;;-1:-1:-1;;;;;2243:66:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2243:66:0;;;;;;;;;;;;;;;2129:9;:22;;-1:-1:-1;;;;;;2129:22:0;-1:-1:-1;;;;;2129:22:0;;;;;;;;;;;2167:35;;2191:9;;;2167:35;;-1:-1:-1;;2167:35:0;2037:173;:::o;1753:26::-;;;-1:-1:-1;;;;;1753:26:0;;:::o;10110:20::-;;;;;;;;;;;;;;;-1:-1:-1;;10110:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11028:429;-1:-1:-1;;;;;11083:17:0;;11090:10;11083:17;11079:193;;-1:-1:-1;;;;;11119:15:0;;;;;;:10;:15;;;;;;;;11135:10;11119:27;;;;;;;;:34;-1:-1:-1;11119:34:0;11111:77;;;;;-1:-1:-1;;;;;11111:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11231:15:0;;;;;;:10;:15;;;;;;;;11247:10;11231:27;;;;;;;;11227:37;;11260:3;11227;:37::i;:::-;-1:-1:-1;;;;;11197:15:0;;;;;;:10;:15;;;;;;;;11213:10;11197:27;;;;;;;:67;11079:193;-1:-1:-1;;;;;11288:14:0;;;;;;:9;:14;;;;;;:21;-1:-1:-1;11288:21:0;11280:63;;;;;-1:-1:-1;;;;;11280:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11371:14:0;;;;;;:9;:14;;;;;;11367:24;;11387:3;11367;:24::i;:::-;-1:-1:-1;;;;;11350:14:0;;;;;;:9;:14;;;;;:41;;;;11412:7;11408:17;;11421:3;11408;:17::i;:::-;11398:7;:27;11437:14;;;;;;;;-1:-1:-1;;;;;11437:14:0;;;;;;;;;;;;;11028:429;;:::o;10668:70::-;2251:33;2264:10;2276:7;;-1:-1:-1;;;;;;2276:7:0;2251:12;:33::i;:::-;2243:66;;;;;-1:-1:-1;;;;;2243:66:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2243:66:0;;;;;;;;;;;;;;;10711:21;10716:10;10728:3;10711:4;:21::i;11463:63::-;2251:33;2264:10;2276:7;;-1:-1:-1;;;;;;2276:7:0;2251:12;:33::i;:::-;2243:66;;;;;-1:-1:-1;;;;;2243:66:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;2243:66:0;;;;;;;;;;;;;;;11506:6;:14;;-1:-1:-1;;11506:14:0;;;11463:63::o;8089:123::-;8146:4;8170:34;8183:10;8195:3;8200;8170:12;:34::i;:::-;8163:41;8089:123;-1:-1:-1;;;8089:123:0:o;1716:30::-;;;-1:-1:-1;;;;;1716:30:0;;:::o;10160:18::-;;;;;;:::o;7963:118::-;-1:-1:-1;;;;;8053:15:0;;;8029:4;8053:15;;;:10;:15;;;;;;;;:20;;;;;;;;;;;;;7963:118::o;2337:380::-;2407:4;-1:-1:-1;;;;;2428:20:0;;2443:4;2428:20;2424:286;;;-1:-1:-1;2472:4:0;2465:11;;2424:286;2505:5;;-1:-1:-1;;;;;2498:12:0;;;2505:5;;2498:12;2494:216;;;-1:-1:-1;2534:4:0;2527:11;;2494:216;2560:9;;-1:-1:-1;;;;;2560:9:0;2556:154;;-1:-1:-1;2611:5:0;2604:12;;2556:154;2656:9;;:42;;;-1:-1:-1;;;;;2656:42:0;;-1:-1:-1;;;;;2656:42:0;;;;;;;2687:4;2656:42;;;;-1:-1:-1;;;;;;2656:42:0;;;;;;;;:9;;;;;:17;;:42;;;;;;;;;;;;;;:9;:42;;;5:2:-1;;;;30:1;27;20:12;5:2;2656:42:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2656:42:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2656:42:0;;-1:-1:-1;2649:49:0;;8220:575;8312:4;-1:-1:-1;;;;;8338:17:0;;8345:10;8338:17;8334:209;;-1:-1:-1;;;;;8380:15:0;;;;;;:10;:15;;;;;;;;8396:10;8380:27;;;;;;;;:34;-1:-1:-1;8380:34:0;8372:77;;;;;-1:-1:-1;;;;;8372:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8498:15:0;;;;;;:10;:15;;;;;;;;8514:10;8498:27;;;;;;;;8494:37;;8527:3;8494;:37::i;:::-;-1:-1:-1;;;;;8464:15:0;;;;;;:10;:15;;;;;;;;8480:10;8464:27;;;;;;;:67;8334:209;-1:-1:-1;;;;;8563:14:0;;;;;;:9;:14;;;;;;:21;-1:-1:-1;8563:21:0;8555:63;;;;;-1:-1:-1;;;;;8555:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8650:14:0;;;;;;:9;:14;;;;;;8646:24;;8666:3;8646;:24::i;:::-;-1:-1:-1;;;;;8629:14:0;;;;;;;:9;:14;;;;;;:41;;;;8702:14;;;;;;;8698:24;;8718:3;8698;:24::i;:::-;-1:-1:-1;;;;;8681:14:0;;;;;;;:9;:14;;;;;;;;;:41;;;;8740:23;;;;;;;8681:14;;8740:23;;;;;;;;;;;;;-1:-1:-1;8783:4:0;8220:575;;;;;:::o;5173:128::-;5257:5;;;5252:16;;;;5244:49;;;;;-1:-1:-1;;;;;5244:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;5307:129;5391:5;;;5386:16;;;;5378:50;;;;;-1:-1:-1;;;;;5378:50:0;;;;;;;;;;;;;;;;;;;;;;;;;;

Swarm Source

bzzr://ed8de9a90263e33e6d6e4fb5554694081cb7508892aee98c6e637d87f2bec09a

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.