Contract 0xe499ef4616993730ced0f31fa2703b92b50bb536 5

Txn Hash Method
Block
From
To
Value [Txn Fee]
0x916f0fa6f3a3e3a04164cdad47378542a3fdac2ef658f1c14e5cef025de3048cTransfer92399722021-10-19 3:24:321 hr 29 mins ago0x694941e132f2efad30bdc1222551e8e530567c6a IN  Huobi: Heco-Peg HPT Token0 HT0.0003224710
0x0b8ac8584aa1bd843d835a944a29761e1185c6679fe29119d25791c1dec000e6Transfer92398972021-10-19 3:20:471 hr 33 mins ago0xaa3e34c024271c476a979fafc181aadb9d8ecffd IN  Huobi: Heco-Peg HPT Token0 HT0.0005415910
0xa725c14580273c6fb8a42a3dd41abaa5303da4f00e5572f2254f41fa6c9828ccTransfer92388282021-10-19 2:27:202 hrs 26 mins ago0xcee6de4290a4002de8712d16f8cfba03cb9afcf4 IN  Huobi: Heco-Peg HPT Token0 HT0.0003708310
0x81c5fc4c2727586dcadc28a55c97545d62f28ebe41a8128272ff91e303d01f16Transfer92387552021-10-19 2:23:412 hrs 30 mins ago0xcee6de4290a4002de8712d16f8cfba03cb9afcf4 IN  Huobi: Heco-Peg HPT Token0 HT0.0003708310
0xe4295fd9be2d7e2579ea7d71ce7fd654c2fad96958bd42c99ce9a9d7233bddf7Transfer92385582021-10-19 2:13:502 hrs 39 mins ago0xcee6de4290a4002de8712d16f8cfba03cb9afcf4 IN  Huobi: Heco-Peg HPT Token0 HT0.0005418310
0xa70276c8360b9f309fc5fdae6e6c07f26d617336468274072c8931906f0b60dfApprove92361852021-10-19 0:15:114 hrs 38 mins ago0xc86cdb3b23baa09655827b2d44b3e096beef53ba IN  Huobi: Heco-Peg HPT Token0 HT0.00011646252.5
0x43c037769c92c6b44bb4ef9af457e2f03e4b5b99ceebef39af630f1483c061e1Transfer92357862021-10-18 23:55:144 hrs 58 mins ago0xcee6de4290a4002de8712d16f8cfba03cb9afcf4 IN  Huobi: Heco-Peg HPT Token0 HT0.0003708310
0xfdce13481f2d01987232ecc74650c5dc74378350620d46c92f532dd174520fccTransfer92353032021-10-18 23:31:055 hrs 22 mins ago0x15e40cdac954e14aac25dd72d3bc6122a944e698 IN  Huobi: Heco-Peg HPT Token0 HT0.0003227110
0x4f2dde7c9d5cc85be5fbb2eac193758a9f9e1c053a8cd39d37150ca5f8f85705Transfer92352402021-10-18 23:27:565 hrs 25 mins ago0x893959a862369cb518c92f3e57ce19e3b034fa1a IN  Huobi: Heco-Peg HPT Token0 HT0.00011111175 2.25
0x603257404175cdb54c6a66fb0c1fcde1e1d81e1c64341ade1d3a912b4eccee54Transfer92329362021-10-18 21:32:447 hrs 21 mins ago0xc9e6537ae74745b9c420666261347ede6252fd52 IN  Huobi: Heco-Peg HPT Token0 HT0.00012345752.5
0x90f9df3a0323b52139af57fb868c249c218e5033a618fe0fd9c96dfdae0c68a6Transfer92328902021-10-18 21:30:267 hrs 23 mins ago0xcee6de4290a4002de8712d16f8cfba03cb9afcf4 IN  Huobi: Heco-Peg HPT Token0 HT0.0005418310
0xc0d97fb2ab05de8b2e19792844f1c42ad07505c7ac8dc82437070df7cd4e1a82Transfer92313412021-10-18 20:12:598 hrs 40 mins ago0x15e40cdac954e14aac25dd72d3bc6122a944e698 IN  Huobi: Heco-Peg HPT Token0 HT0.0003227110
0x21fe70857c6fb017fd06fca55948f8815221ec4af72a51b78202d0698ad3d437Transfer92312792021-10-18 20:09:538 hrs 43 mins ago0x893959a862369cb518c92f3e57ce19e3b034fa1a IN  Huobi: Heco-Peg HPT Token0 HT0.00011111175 2.25
0x9c6fe2e190a7507442e882386673f6bd0c2ef62e1be3b8bf3e9f7d7753c6ba53Approve92278052021-10-18 17:16:1111 hrs 37 mins ago0x80366d0f37a9110c00da41bcfc18688bc2e23df6 IN  Huobi: Heco-Peg HPT Token0 HT0.000054731252.25
0xe1a466f9783d18fe9b9f3afa962058eeebe9fcef523d858356c65162aad17eb3Approve92278042021-10-18 17:16:0811 hrs 37 mins ago0x80366d0f37a9110c00da41bcfc18688bc2e23df6 IN  Huobi: Heco-Peg HPT Token0 HT0.000054731252.25
0xaa98c1291dd41a4b18d1341deec434b0e34fd9f70c343fec79bdd2c4022b7995Approve92278032021-10-18 17:16:0511 hrs 37 mins ago0x80366d0f37a9110c00da41bcfc18688bc2e23df6 IN  Huobi: Heco-Peg HPT Token0 HT0.000054677252.25
0x041942c38d1b78746bb2b4cbc1ae2439f9847744cb56b15f58943a52ca9231f7Approve92278012021-10-18 17:15:5911 hrs 37 mins ago0x80366d0f37a9110c00da41bcfc18688bc2e23df6 IN  Huobi: Heco-Peg HPT Token0 HT0.000054731252.25
0xff46f67569deee498d83c911da58d0cbe393b3749e24f2c51254f40287b8f76fTransfer92266422021-10-18 16:18:0112 hrs 35 mins ago0xd10584e5c3c7b267dd879f3f646423b6ddeb8ec3 IN  Huobi: Heco-Peg HPT Token0 HT0.00008073752.5
0x7c0b99d48c8dace86cc1bc1094726a978447d4200786ade3624fde8f1c934576Approve92263312021-10-18 16:02:2812 hrs 51 mins ago0x854e280e8bc4304fe1f3a527a815bba02a61a7d6 IN  Huobi: Heco-Peg HPT Token0 HT0.000104816252.25
0xb916de81fb52928678d2777eec3f52d53755d83fe1b8b8c340c0b66b6466ecb5Approve92263072021-10-18 16:01:1612 hrs 52 mins ago0x6196f20ce96b9831e7252a6a6e9601f54bcce894 IN  Huobi: Heco-Peg HPT Token0 HT0.00010487025 2.25
0x2068b3cf5f694125d04ebc28507205fd2b6104b90cd4ec85be17361a0e6c2777Transfer92262812021-10-18 15:59:5812 hrs 53 mins ago0xcee6de4290a4002de8712d16f8cfba03cb9afcf4 IN  Huobi: Heco-Peg HPT Token0 HT0.0005418310
0x4c7e7040eb18fe445101bf29db88270c306a82f2d390bb78c03ef3fec3634b90Transfer92259502021-10-18 15:43:2513 hrs 10 mins ago0x694941e132f2efad30bdc1222551e8e530567c6a IN  Huobi: Heco-Peg HPT Token0 HT0.0003224710
0x6d3ec45885f8176ed1d634fde954c4339f0c28b2545e4617c98849048777e7e3Transfer92259212021-10-18 15:41:5813 hrs 11 mins ago0xaa3e34c024271c476a979fafc181aadb9d8ecffd IN  Huobi: Heco-Peg HPT Token0 HT0.0005415910
0xb68872a24664bfa0d533e82708c3f14e74b888c607ea9316dda9b08ee0d11fe0Transfer92258952021-10-18 15:40:4013 hrs 13 mins ago0x694941e132f2efad30bdc1222551e8e530567c6a IN  Huobi: Heco-Peg HPT Token0 HT0.0003224710
0xa554998a4e24e08e6324148ae73af502f4844b37bae49753a6fc1fd7d48e821aTransfer92258372021-10-18 15:37:4613 hrs 16 mins ago0xaa3e34c024271c476a979fafc181aadb9d8ecffd IN  Huobi: Heco-Peg HPT Token0 HT0.0005415910
[ Download CSV Export 

OVERVIEW

Huobi Pool Token (HPT) is an ecological sub-token based on Huobi Token (HT). A total of approximately 10 billion HPTs are issued by Huobi Pool, and the targets include HT holders, community users of Huobi Pool and others.

Latest 2 internal transactions
Parent Txn Hash Block From To Value
0x5d26e1c716cd18360e845d2cce8e19c70c7eb215ee1ba3fc6dd7b20b986a01b073183012021-08-13 9:57:5466 days 18 hrs ago 0x82487df5b4cf19db597a092c8103759466be9e5a Huobi: Heco-Peg HPT Token0.024181925 HT
0xe6c236f29226f6be9038d39fd9af160946dbedc1cafc5312867481ff5a8380fd8420262020-12-31 12:52:43291 days 16 hrs ago Crust Network: Deployer  Contract Creation0 HT
[ Download CSV Export 
Loading

Contract Source Code Verified (Similar Match)
Note: This contract matches the deployed ByteCode of the Source Code for Contract 0xef3cebd77e0c52cb6f60875d9306397b5caca375

Contract Name:
ERC20Template

Compiler Version
v0.6.6+commit.6c089d02

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at hecoinfo.com on 2021-02-03
*/

pragma solidity =0.6.6;

library SafeMath {

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }


    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }


    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }


    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }


    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }


    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }


    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }


    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}


interface IERC20 {

    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address recipient, uint256 amount) external returns (bool);

    function allowance(address owner, address spender) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(address indexed owner, address indexed spender, uint256 value);
}
abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}


abstract contract Pausable is Context {

    event Paused(address account);


    event Unpaused(address account);

    bool private _paused;

    constructor () internal {
        _paused = false;
    }


    function paused() public view returns (bool) {
        return _paused;
    }


    modifier whenNotPaused() {
        require(!_paused, "Pausable: paused");
        _;
    }


    modifier whenPaused() {
        require(_paused, "Pausable: not paused");
        _;
    }


    function _pause() internal virtual whenNotPaused {
        _paused = true;
        emit Paused(_msgSender());
    }


    function _unpause() internal virtual whenPaused {
        _paused = false;
        emit Unpaused(_msgSender());
    }
}
contract ERC20 is Context, IERC20 {
    using SafeMath for uint256;

    mapping (address => uint256) private _balances;

    mapping (address => mapping (address => uint256)) private _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;
    uint8 private _decimals;

    constructor (string memory name_, string memory symbol_) public {
        _name = name_;
        _symbol = symbol_;
        _decimals = 18;
    }

    function name() public view returns (string memory) {
        return _name;
    }


    function symbol() public view returns (string memory) {
        return _symbol;
    }


    function decimals() public view returns (uint8) {
        return _decimals;
    }


    function totalSupply() public view override returns (uint256) {
        return _totalSupply;
    }


    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }


    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }


    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }


    function approve(address spender, uint256 amount) public virtual override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }


    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }


    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance");
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }


    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(address(0), account, amount);

        _totalSupply = _totalSupply.add(amount);
        _balances[account] = _balances[account].add(amount);
        emit Transfer(address(0), account, amount);
    }


    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance");
        _totalSupply = _totalSupply.sub(amount);
        emit Transfer(account, address(0), amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _setupDecimals(uint8 decimals_) internal {
        _decimals = decimals_;
    }

    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { }
}
abstract contract ERC20Pausable is ERC20, Pausable {
    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual override {
        super._beforeTokenTransfer(from, to, amount);

        require(!paused(), "ERC20Pausable: token transfer while paused");
    }
}
contract ERC20Template is ERC20Pausable {
    address factory;
    address _operator;
    address _pauser;
    constructor(address operator,address pauser,string memory name, string memory symbol,uint8 decimal) public ERC20(name,symbol) {
        _operator = operator;
        _pauser=pauser;
        _setupDecimals(decimal);
        factory=msg.sender;
    }


    modifier onlyFactory(){
        require(msg.sender==factory,"only Factory");
        _;
    }
    modifier onlyOperator(){
        require(msg.sender == _operator,"not allowed");
        _;
    }
    modifier onlyPauser(){
        require(msg.sender == _pauser,"not allowed");
        _;
    }

    function pause() public  onlyPauser{
        _pause();
    }

    function unpause() public  onlyPauser{
        _unpause();
    }

    function changeUser(address new_operator, address new_pauser) public onlyFactory{
        _pauser=new_pauser;
        _operator=new_operator;
    }

    function mint(address account, uint256 amount) public whenNotPaused onlyOperator {
        _mint(account, amount);
    }
    function burn(address account , uint256 amount) public whenNotPaused onlyOperator {
        _burn(account,amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"operator","type":"address"},{"internalType":"address","name":"pauser","type":"address"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"symbol","type":"string"},{"internalType":"uint8","name":"decimal","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"new_operator","type":"address"},{"internalType":"address","name":"new_pauser","type":"address"}],"name":"changeUser","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"mint","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b50604051620022ed380380620022ed833981810160405260a08110156200003757600080fd5b810190808051906020019092919080519060200190929190805160405193929190846401000000008211156200006c57600080fd5b838201915060208201858111156200008357600080fd5b8251866001820283011164010000000082111715620000a157600080fd5b8083526020830192505050908051906020019080838360005b83811015620000d7578082015181840152602081019050620000ba565b50505050905090810190601f168015620001055780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200012957600080fd5b838201915060208201858111156200014057600080fd5b82518660018202830111640100000000821117156200015e57600080fd5b8083526020830192505050908051906020019080838360005b838110156200019457808201518184015260208101905062000177565b50505050905090810190601f168015620001c25780820380516001836020036101000a031916815260200191505b506040526020018051906020019092919050505082828160039080519060200190620001f092919062000340565b5080600490805190602001906200020992919062000340565b506012600560006101000a81548160ff021916908360ff16021790555050506000600560016101000a81548160ff02191690831515021790555084600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002d6816200032260201b60201c565b33600560026101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050620003ef565b80600560006101000a81548160ff021916908360ff16021790555050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200038357805160ff1916838001178555620003b4565b82800160010185558215620003b4579182015b82811115620003b357825182559160200191906001019062000396565b5b509050620003c39190620003c7565b5090565b620003ec91905b80821115620003e8576000816000905550600101620003ce565b5090565b90565b611eee80620003ff6000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c80635c975abb116100a257806395d89b411161007157806395d89b41146104675780639dc29fac146104ea578063a457c2d714610538578063a9059cbb1461059e578063dd62ed3e146106045761010b565b80635c975abb1461037f57806370a08231146103a15780638456cb59146103f95780638e50817a146104035761010b565b8063313ce567116100de578063313ce5671461029d57806339509351146102c15780633f4ba83a1461032757806340c10f19146103315761010b565b806306fdde0314610110578063095ea7b31461019357806318160ddd146101f957806323b872dd14610217575b600080fd5b61011861067c565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561015857808201518184015260208101905061013d565b50505050905090810190601f1680156101855780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101df600480360360408110156101a957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061071e565b604051808215151515815260200191505060405180910390f35b61020161073c565b6040518082815260200191505060405180910390f35b6102836004803603606081101561022d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610746565b604051808215151515815260200191505060405180910390f35b6102a561081f565b604051808260ff1660ff16815260200191505060405180910390f35b61030d600480360360408110156102d757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610836565b604051808215151515815260200191505060405180910390f35b61032f6108e9565b005b61037d6004803603604081101561034757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506109b6565b005b610387610b0a565b604051808215151515815260200191505060405180910390f35b6103e3600480360360208110156103b757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610b21565b6040518082815260200191505060405180910390f35b610401610b69565b005b6104656004803603604081101561041957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c36565b005b61046f610d7f565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104af578082015181840152602081019050610494565b50505050905090810190601f1680156104dc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6105366004803603604081101561050057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610e21565b005b6105846004803603604081101561054e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f75565b604051808215151515815260200191505060405180910390f35b6105ea600480360360408110156105b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611042565b604051808215151515815260200191505060405180910390f35b6106666004803603604081101561061a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611060565b6040518082815260200191505060405180910390f35b606060038054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107145780601f106106e957610100808354040283529160200191610714565b820191906000526020600020905b8154815290600101906020018083116106f757829003601f168201915b5050505050905090565b600061073261072b6110e7565b84846110ef565b6001905092915050565b6000600254905090565b60006107538484846112e6565b6108148461075f6110e7565b61080f85604051806060016040528060288152602001611dd860289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006107c56110e7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115a79092919063ffffffff16565b6110ef565b600190509392505050565b6000600560009054906101000a900460ff16905090565b60006108df6108436110e7565b846108da85600160006108546110e7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461166790919063ffffffff16565b6110ef565b6001905092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146109ac576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f6e6f7420616c6c6f77656400000000000000000000000000000000000000000081525060200191505060405180910390fd5b6109b46116ef565b565b600560019054906101000a900460ff1615610a39576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610afc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f6e6f7420616c6c6f77656400000000000000000000000000000000000000000081525060200191505060405180910390fd5b610b0682826117f8565b5050565b6000600560019054906101000a900460ff16905090565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610c2c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f6e6f7420616c6c6f77656400000000000000000000000000000000000000000081525060200191505060405180910390fd5b610c346119bf565b565b600560029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610cf9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f6f6e6c7920466163746f7279000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e175780601f10610dec57610100808354040283529160200191610e17565b820191906000526020600020905b815481529060010190602001808311610dfa57829003601f168201915b5050505050905090565b600560019054906101000a900460ff1615610ea4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f67576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f6e6f7420616c6c6f77656400000000000000000000000000000000000000000081525060200191505060405180910390fd5b610f718282611ac9565b5050565b6000611038610f826110e7565b8461103385604051806060016040528060258152602001611e6a6025913960016000610fac6110e7565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115a79092919063ffffffff16565b6110ef565b6001905092915050565b600061105661104f6110e7565b84846112e6565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611175576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180611e466024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111fb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180611d906022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561136c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611e216025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113f2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180611d4b6023913960400191505060405180910390fd5b6113fd838383611c8d565b61146881604051806060016040528060268152602001611db2602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115a79092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114fb816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461166790919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290611654576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156116195780820151818401526020810190506115fe565b50505050905090810190601f1680156116465780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b6000808284019050838110156116e5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600560019054906101000a900460ff16611771576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f5061757361626c653a206e6f742070617573656400000000000000000000000081525060200191505060405180910390fd5b6000600560016101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa6117b56110e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561189b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b6118a760008383611c8d565b6118bc8160025461166790919063ffffffff16565b600281905550611913816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461166790919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600560019054906101000a900460ff1615611a42576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f5061757361626c653a207061757365640000000000000000000000000000000081525060200191505060405180910390fd5b6001600560016101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611a866110e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611b4f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611e006021913960400191505060405180910390fd5b611b5b82600083611c8d565b611bc681604051806060016040528060228152602001611d6e602291396000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115a79092919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c1d81600254611cfb90919063ffffffff16565b600281905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b611c98838383611d45565b611ca0610b0a565b15611cf6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a815260200180611e8f602a913960400191505060405180910390fd5b505050565b6000611d3d83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115a7565b905092915050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f45524332305061757361626c653a20746f6b656e207472616e73666572207768696c6520706175736564a2646970667358221220117a1900a8bc0ef244efec20313543a62aa8ecca30909912a16748b2df1f703a64736f6c634300060600330000000000000000000000002f7ef2ab933e5057c3afc6be6e4867f320e4e6a30000000000000000000000002f7ef2ab933e5057c3afc6be6e4867f320e4e6a300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e0000000000000000000000000000000000000000000000000000000000000001200000000000000000000000000000000000000000000000000000000000000134865636f2d506567204842434820546f6b656e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044842434800000000000000000000000000000000000000000000000000000000

Deployed ByteCode Sourcemap

8254:1245:0:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;8254:1245:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;4160:83:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4160:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5028:169;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5028:169:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4443:100;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5207:321;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5207:321:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4350:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5538:218;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5538:218:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9014:66;;;:::i;:::-;;9246:122;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9246:122:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;3122:78;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4553:119;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4553:119:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8944:62;;;:::i;:::-;;9088:150;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9088:150:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4253:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4253:87:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9374:122;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;9374:122:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5764:269;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;5764:269:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4682:175;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4682:175:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4867:151;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;4867:151:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4160:83;4197:13;4230:5;4223:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4160:83;:::o;5028:169::-;5111:4;5128:39;5137:12;:10;:12::i;:::-;5151:7;5160:6;5128:8;:39::i;:::-;5185:4;5178:11;;5028:169;;;;:::o;4443:100::-;4496:7;4523:12;;4516:19;;4443:100;:::o;5207:321::-;5313:4;5330:36;5340:6;5348:9;5359:6;5330:9;:36::i;:::-;5377:121;5386:6;5394:12;:10;:12::i;:::-;5408:89;5446:6;5408:89;;;;;;;;;;;;;;;;;:11;:19;5420:6;5408:19;;;;;;;;;;;;;;;:33;5428:12;:10;:12::i;:::-;5408:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;5377:8;:121::i;:::-;5516:4;5509:11;;5207:321;;;;;:::o;4350:83::-;4391:5;4416:9;;;;;;;;;;;4409:16;;4350:83;:::o;5538:218::-;5626:4;5643:83;5652:12;:10;:12::i;:::-;5666:7;5675:50;5714:10;5675:11;:25;5687:12;:10;:12::i;:::-;5675:25;;;;;;;;;;;;;;;:34;5701:7;5675:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;5643:8;:83::i;:::-;5744:4;5737:11;;5538:218;;;;:::o;9014:66::-;8894:7;;;;;;;;;;;8880:21;;:10;:21;;;8872:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9062:10:::1;:8;:10::i;:::-;9014:66::o:0;9246:122::-;3255:7;;;;;;;;;;;3254:8;3246:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8790:9:::1;;;;;;;;;;;8776:23;;:10;:23;;;8768:46;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;9338:22:::2;9344:7;9353:6;9338:5;:22::i;:::-;9246:122:::0;;:::o;3122:78::-;3161:4;3185:7;;;;;;;;;;;3178:14;;3122:78;:::o;4553:119::-;4619:7;4646:9;:18;4656:7;4646:18;;;;;;;;;;;;;;;;4639:25;;4553:119;;;:::o;8944:62::-;8894:7;;;;;;;;;;;8880:21;;:10;:21;;;8872:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8990:8:::1;:6;:8::i;:::-;8944:62::o:0;9088:150::-;8685:7;;;;;;;;;;;8673:19;;:10;:19;;;8665:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9187:10:::1;9179:7;;:18;;;;;;;;;;;;;;;;;;9218:12;9208:9;;:22;;;;;;;;;;;;;;;;;;9088:150:::0;;:::o;4253:87::-;4292:13;4325:7;4318:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4253:87;:::o;9374:122::-;3255:7;;;;;;;;;;;3254:8;3246:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8790:9:::1;;;;;;;;;;;8776:23;;:10;:23;;;8768:46;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;9467:21:::2;9473:7;9481:6;9467:5;:21::i;:::-;9374:122:::0;;:::o;5764:269::-;5857:4;5874:129;5883:12;:10;:12::i;:::-;5897:7;5906:96;5945:15;5906:96;;;;;;;;;;;;;;;;;:11;:25;5918:12;:10;:12::i;:::-;5906:25;;;;;;;;;;;;;;;:34;5932:7;5906:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;5874:8;:129::i;:::-;6021:4;6014:11;;5764:269;;;;:::o;4682:175::-;4768:4;4785:42;4795:12;:10;:12::i;:::-;4809:9;4820:6;4785:9;:42::i;:::-;4845:4;4838:11;;4682:175;;;;:::o;4867:151::-;4956:7;4983:11;:18;4995:5;4983:18;;;;;;;;;;;;;;;:27;5002:7;4983:27;;;;;;;;;;;;;;;;4976:34;;4867:151;;;;:::o;2542:106::-;2595:15;2630:10;2623:17;;2542:106;:::o;7404:346::-;7523:1;7506:19;;:5;:19;;;;7498:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7604:1;7585:21;;:7;:21;;;;7577:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7688:6;7658:11;:18;7670:5;7658:18;;;;;;;;;;;;;;;:27;7677:7;7658:27;;;;;;;;;;;;;;;:36;;;;7726:7;7710:32;;7719:5;7710:32;;;7735:6;7710:32;;;;;;;;;;;;;;;;;;7404:346;;;:::o;6041:539::-;6165:1;6147:20;;:6;:20;;;;6139:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6249:1;6228:23;;:9;:23;;;;6220:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6304:47;6325:6;6333:9;6344:6;6304:20;:47::i;:::-;6384:71;6406:6;6384:71;;;;;;;;;;;;;;;;;:9;:17;6394:6;6384:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;6364:9;:17;6374:6;6364:17;;;;;;;;;;;;;;;:91;;;;6489:32;6514:6;6489:9;:20;6499:9;6489:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;6466:9;:20;6476:9;6466:20;;;;;;;;;;;;;;;:55;;;;6554:9;6537:35;;6546:6;6537:35;;;6565:6;6537:35;;;;;;;;;;;;;;;;;;6041:539;;;:::o;390:192::-;476:7;509:1;504;:6;;512:12;496:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;496:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;536:9;552:1;548;:5;536:17;;573:1;566:8;;;390:192;;;;;:::o;53:181::-;111:7;131:9;147:1;143;:5;131:17;;172:1;167;:6;;159:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;225:1;218:8;;;53:181;;;;:::o;3544:120::-;3354:7;;;;;;;;;;;3346:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3613:5:::1;3603:7;;:15;;;;;;;;;;;;;;;;;;3634:22;3643:12;:10;:12::i;:::-;3634:22;;;;;;;;;;;;;;;;;;;;;;3544:120::o:0;6590:378::-;6693:1;6674:21;;:7;:21;;;;6666:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6744:49;6773:1;6777:7;6786:6;6744:20;:49::i;:::-;6821:24;6838:6;6821:12;;:16;;:24;;;;:::i;:::-;6806:12;:39;;;;6877:30;6900:6;6877:9;:18;6887:7;6877:18;;;;;;;;;;;;;;;;:22;;:30;;;;:::i;:::-;6856:9;:18;6866:7;6856:18;;;;;;;;;;;;;;;:51;;;;6944:7;6923:37;;6940:1;6923:37;;;6953:6;6923:37;;;;;;;;;;;;;;;;;;6590:378;;:::o;3416:118::-;3255:7;;;;;;;;;;;3254:8;3246:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3486:4:::1;3476:7;;:14;;;;;;;;;;;;;;;;;;3506:20;3513:12;:10;:12::i;:::-;3506:20;;;;;;;;;;;;;;;;;;;;;;3416:118::o:0;6978:418::-;7081:1;7062:21;;:7;:21;;;;7054:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7134:49;7155:7;7172:1;7176:6;7134:20;:49::i;:::-;7217:68;7240:6;7217:68;;;;;;;;;;;;;;;;;:9;:18;7227:7;7217:18;;;;;;;;;;;;;;;;:22;;:68;;;;;:::i;:::-;7196:9;:18;7206:7;7196:18;;;;;;;;;;;;;;;:89;;;;7311:24;7328:6;7311:12;;:16;;:24;;;;:::i;:::-;7296:12;:39;;;;7377:1;7351:37;;7360:7;7351:37;;;7381:6;7351:37;;;;;;;;;;;;;;;;;;6978:418;;:::o;8011:238::-;8120:44;8147:4;8153:2;8157:6;8120:26;:44::i;:::-;8186:8;:6;:8::i;:::-;8185:9;8177:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8011:238;;;:::o;244:136::-;302:7;329:43;333:1;336;329:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;322:50;;244:136;;;;:::o;7856:92::-;;;;:::o

Swarm Source

ipfs://117a1900a8bc0ef244efec20313543a62aa8ecca30909912a16748b2df1f703a
Block Transaction Gas Used Reward
Age Block Fee Address Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading