ETH Price: $3,112.67 (+1.00%)
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer150175022022-06-24 8:56:261268 days ago1656060986IN
0x6BF728A2...2f8326E9C
0 ETH0.0012943235.62383855
Transfer133960352021-10-11 7:43:201524 days ago1633938200IN
0x6BF728A2...2f8326E9C
0 ETH0.00391669107.79983623
Transfer133956912021-10-11 6:18:091524 days ago1633933089IN
0x6BF728A2...2f8326E9C
0 ETH0.003502696.40289931
Transfer133852022021-10-09 14:58:541526 days ago1633791534IN
0x6BF728A2...2f8326E9C
0 ETH0.003422383.24946882
Transfer133851672021-10-09 14:50:381526 days ago1633791038IN
0x6BF728A2...2f8326E9C
0 ETH0.0035673386.77749891
Transfer133125292021-09-28 5:48:501537 days ago1632808130IN
0x6BF728A2...2f8326E9C
0 ETH0.0057814399.30149782
Transfer128803212021-07-23 3:48:551604 days ago1627012135IN
0x6BF728A2...2f8326E9C
0 ETH0.0005487921
Transfer128685992021-07-21 8:00:561606 days ago1626854456IN
0x6BF728A2...2f8326E9C
0 ETH0.0006988517
Transfer127711422021-07-06 2:08:561621 days ago1625537336IN
0x6BF728A2...2f8326E9C
0 ETH0.0004319710
Transfer124947992021-05-24 4:07:491664 days ago1621829269IN
0x6BF728A2...2f8326E9C
0 ETH0.0015991737
Transfer118606852021-02-15 9:59:261762 days ago1613383166IN
0x6BF728A2...2f8326E9C
0 ETH0.00327545127
Transfer118606852021-02-15 9:59:261762 days ago1613383166IN
0x6BF728A2...2f8326E9C
0 ETH0.002168891
Transfer118598252021-02-15 6:53:251762 days ago1613372005IN
0x6BF728A2...2f8326E9C
0 ETH0.00430779111.00000145
Transfer118487842021-02-13 14:20:381764 days ago1613226038IN
0x6BF728A2...2f8326E9C
0 ETH0.00591767110.00000145
Transfer117872372021-02-04 3:05:351773 days ago1612407935IN
0x6BF728A2...2f8326E9C
0 ETH0.00671395173.00000156
Transfer117735182021-02-02 0:18:011775 days ago1612225081IN
0x6BF728A2...2f8326E9C
0 ETH0.00450216189.00000145
Transfer117096922021-01-23 4:39:211785 days ago1611376761IN
0x6BF728A2...2f8326E9C
0 ETH0.0011190247.00000145
Transfer117089632021-01-23 1:57:191785 days ago1611367039IN
0x6BF728A2...2f8326E9C
0 ETH0.0014516161.00000145
Transfer117089382021-01-23 1:52:001785 days ago1611366720IN
0x6BF728A2...2f8326E9C
0 ETH0.0015943967.00000145
Transfer117089292021-01-23 1:50:011785 days ago1611366601IN
0x6BF728A2...2f8326E9C
0 ETH0.0014992163.00000156
Transfer117088852021-01-23 1:40:091785 days ago1611366009IN
0x6BF728A2...2f8326E9C
0 ETH0.0014516161.00000145
Transfer117029672021-01-22 3:44:001786 days ago1611287040IN
0x6BF728A2...2f8326E9C
0 ETH0.001570666.00000145
Transfer115268252020-12-26 3:27:551813 days ago1608953275IN
0x6BF728A2...2f8326E9C
0 ETH0.00334814140.625
Transfer115266042020-12-26 2:41:321813 days ago1608950492IN
0x6BF728A2...2f8326E9C
0 ETH0.0018833135.00000145
Transfer115075342020-12-23 4:12:121816 days ago1608696732IN
0x6BF728A2...2f8326E9C
0 ETH0.0018622548
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
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

Contract Source Code Verified (Exact Match)

Contract Name:
NewParadigmClassic

Compiler Version
v0.5.8+commit.23d335f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2020-09-28
*/

// ----------------------------------------------------------------------------
// New Paradigm Classic contract
// Name        : New Paradigm Classic
// Symbol      : NPC
// Decimals    : 18
// InitialSupply : 10000000000
// ----------------------------------------------------------------------------

pragma solidity 0.5.8;

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);
}

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) {
        require(b <= a, "SafeMath: subtraction overflow");
        uint256 c = a - b;

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {

        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) {
        require(b > 0, "SafeMath: division by zero");
        uint256 c = a / b;

        return c;
    }

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

contract ERC20 is IERC20 {
    using SafeMath for uint256;

    mapping (address => uint256) internal _balances;

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

    uint256 private _totalSupply;

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

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

    function transfer(address recipient, uint256 amount) public returns (bool) {
        _transfer(msg.sender, recipient, amount);
        return true;
    }

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

    function approve(address spender, uint256 value) public returns (bool) {
        _approve(msg.sender, spender, value);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, msg.sender, _allowances[sender][msg.sender].sub(amount));
        return true;
    }

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

    function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
        _approve(msg.sender, spender, _allowances[msg.sender][spender].sub(subtractedValue));
        return true;
    }

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

        _balances[sender] = _balances[sender].sub(amount);
        _balances[recipient] = _balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
    }

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

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

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

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

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

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

    function _burnFrom(address account, uint256 amount) internal {
        _burn(account, amount);
        _approve(account, msg.sender, _allowances[account][msg.sender].sub(amount));
    }
}

contract NewParadigmClassic is ERC20 {
    string public constant name = "New Paradigm Classic"; 
    string public constant symbol = "NPC"; 
    uint8 public constant decimals = 18; 
    uint256 public constant initialSupply = 10000000000 * (10 ** uint256(decimals));
    
    constructor() public {
        super._mint(msg.sender, initialSupply);
        owner = msg.sender;
    }

    address public owner;

    event OwnershipRenounced(address indexed previousOwner);
    event OwnershipTransferred(
    address indexed previousOwner,
    address indexed newOwner
    );

    modifier onlyOwner() {
        require(msg.sender == owner, "Not owner");
        _;
    }

    function transferOwnership(address _newOwner) public onlyOwner {
        _transferOwnership(_newOwner);
    }

    function _transferOwnership(address _newOwner) internal {
        require(_newOwner != address(0), "Already Owner");
        emit OwnershipTransferred(owner, _newOwner);
        owner = _newOwner;
    }

    event Pause();
    event Unpause();

    bool public paused = false;

    modifier whenNotPaused() {
        require(!paused, "Paused by owner");
        _;
    }

    modifier whenPaused() {
        require(paused, "Not paused now");
        _;
    }

    function pause() public onlyOwner whenNotPaused {
        paused = true;
        emit Pause();
    }

    function unpause() public onlyOwner whenPaused {
        paused = false;
        emit Unpause();
    }

    event Frozen(address target);
    event Unfrozen(address target);

    mapping(address => bool) internal freezes;

    modifier whenNotFrozen() {
        require(!freezes[msg.sender], "Sender account is locked.");
        _;
    }

    function freeze(address _target) public onlyOwner {
        freezes[_target] = true;
        emit Frozen(_target);
    }

    function unfreeze(address _target) public onlyOwner {
        freezes[_target] = false;
        emit Unfrozen(_target);
    }

    function isFrozen(address _target) public view returns (bool) {
        return freezes[_target];
    }

    function transfer(
        address _to,
        uint256 _value
    )
      public
      whenNotFrozen
      whenNotPaused
      returns (bool)
    {
        releaseLock(msg.sender);
        return super.transfer(_to, _value);
    }

    function transferFrom(
        address _from,
        address _to,
        uint256 _value
    )
      public
      whenNotPaused
      returns (bool)
    {
        require(!freezes[_from], "From account is locked.");
        releaseLock(_from);
        return super.transferFrom(_from, _to, _value);
    }

    event Burn(address indexed burner, uint256 value);

    function burn(address _who, uint256 _value) public onlyOwner {
        require(_value <= super.balanceOf(_who), "Balance is too small.");

        _burn(_who, _value);
        emit Burn(_who, _value);
    }

    struct LockInfo {
        uint256 releaseTime;
        uint256 balance;
    }
    mapping(address => LockInfo[]) internal lockInfo;

    event Lock(address indexed holder, uint256 value, uint256 releaseTime);
    event Unlock(address indexed holder, uint256 value);

    function balanceOf(address _holder) public view returns (uint256 balance) {
        uint256 lockedBalance = 0;
        for(uint256 i = 0; i < lockInfo[_holder].length ; i++ ) {
            lockedBalance = lockedBalance.add(lockInfo[_holder][i].balance);
        }
        return super.balanceOf(_holder).add(lockedBalance);
    }

    function releaseLock(address _holder) internal {

        for(uint256 i = 0; i < lockInfo[_holder].length ; i++ ) {
            if (lockInfo[_holder][i].releaseTime <= now) {
                _balances[_holder] = _balances[_holder].add(lockInfo[_holder][i].balance);
                emit Unlock(_holder, lockInfo[_holder][i].balance);
                lockInfo[_holder][i].balance = 0;

                if (i != lockInfo[_holder].length - 1) {
                    lockInfo[_holder][i] = lockInfo[_holder][lockInfo[_holder].length - 1];
                    i--;
                }
                lockInfo[_holder].length--;

            }
        }
    }
    function lockCount(address _holder) public view returns (uint256) {
        return lockInfo[_holder].length;
    }
    function lockState(address _holder, uint256 _idx) public view returns (uint256, uint256) {
        return (lockInfo[_holder][_idx].releaseTime, lockInfo[_holder][_idx].balance);
    }

    function lock(address _holder, uint256 _amount, uint256 _releaseTime) public onlyOwner {
        require(super.balanceOf(_holder) >= _amount, "Balance is too small.");
        _balances[_holder] = _balances[_holder].sub(_amount);
        lockInfo[_holder].push(
            LockInfo(_releaseTime, _amount)
        );
        emit Lock(_holder, _amount, _releaseTime);
    }

    function unlock(address _holder, uint256 i) public onlyOwner {
        require(i < lockInfo[_holder].length, "No lock information.");

        _balances[_holder] = _balances[_holder].add(lockInfo[_holder][i].balance);
        emit Unlock(_holder, lockInfo[_holder][i].balance);
        lockInfo[_holder][i].balance = 0;

        if (i != lockInfo[_holder].length - 1) {
            lockInfo[_holder][i] = lockInfo[_holder][lockInfo[_holder].length - 1];
        }
        lockInfo[_holder].length--;
    }

    function transferWithLock(address _to, uint256 _value, uint256 _releaseTime) public onlyOwner returns (bool) {
        require(_to != address(0), "wrong address");
        require(_value <= super.balanceOf(owner), "Not enough balance");

        _balances[owner] = _balances[owner].sub(_value);
        lockInfo[_to].push(
            LockInfo(_releaseTime, _value)
        );
        emit Transfer(owner, _to, _value);
        emit Lock(_to, _value, _releaseTime);

        return true;
    }

}

Contract Security Audit

Contract ABI

API
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"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":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","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":true,"inputs":[],"name":"initialSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_target","type":"address"}],"name":"unfreeze","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"},{"name":"_idx","type":"uint256"}],"name":"lockState","outputs":[{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"}],"name":"balanceOf","outputs":[{"name":"balance","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_holder","type":"address"},{"name":"i","type":"uint256"}],"name":"unlock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_target","type":"address"}],"name":"freeze","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":"_who","type":"address"},{"name":"_value","type":"uint256"}],"name":"burn","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_releaseTime","type":"uint256"}],"name":"transferWithLock","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_holder","type":"address"}],"name":"lockCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_holder","type":"address"},{"name":"_amount","type":"uint256"},{"name":"_releaseTime","type":"uint256"}],"name":"lock","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_target","type":"address"}],"name":"isFrozen","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"}],"name":"OwnershipRenounced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"target","type":"address"}],"name":"Frozen","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"target","type":"address"}],"name":"Unfrozen","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"holder","type":"address"},{"indexed":false,"name":"value","type":"uint256"},{"indexed":false,"name":"releaseTime","type":"uint256"}],"name":"Lock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"holder","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Unlock","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]

608060405260038054600160a01b60ff02191690553480156200002157600080fd5b5062000046336b204fce5e3e250261100000006200005e602090811b62001c0a17901c565b600380546001600160a01b03191633179055620001f5565b6001600160a01b038216620000d457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b620000f0816002546200017960201b620018231790919060201c565b6002556001600160a01b03821660009081526020818152604090912054620001239183906200182362000179821b17901c565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b600082820183811015620001ee57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b611de680620002056000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c80638456cb59116100de578063a9059cbb11610097578063df03458611610071578063df034586146104ff578063e2ab691d14610525578063e583983614610557578063f2fde38b1461057d5761018e565b8063a9059cbb14610473578063dd62ed3e1461049f578063de6baccb146104cd5761018e565b80638456cb59146103c15780638d1fdf2f146103c95780638da5cb5b146103ef57806395d89b41146104135780639dc29fac1461041b578063a457c2d7146104475761018e565b8063395093511161014b57806346cf1bb51161012557806346cf1bb5146103225780635c975abb1461036757806370a082311461036f5780637eee288d146103955761018e565b806339509351146102c65780633f4ba83a146102f257806345c8b1a6146102fc5761018e565b806306fdde0314610193578063095ea7b31461021057806318160ddd1461025057806323b872dd1461026a578063313ce567146102a0578063378dc3dc146102be575b600080fd5b61019b6105a3565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d55781810151838201526020016101bd565b50505050905090810190601f1680156102025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6004803603604081101561022657600080fd5b506001600160a01b0381351690602001356105dc565b604080519115158252519081900360200190f35b6102586105f2565b60408051918252519081900360200190f35b61023c6004803603606081101561028057600080fd5b506001600160a01b038135811691602081013590911690604001356105f9565b6102a86106e0565b6040805160ff9092168252519081900360200190f35b6102586106e5565b61023c600480360360408110156102dc57600080fd5b506001600160a01b0381351690602001356106f5565b6102fa610736565b005b6102fa6004803603602081101561031257600080fd5b50356001600160a01b0316610823565b61034e6004803603604081101561033857600080fd5b506001600160a01b0381351690602001356108cc565b6040805192835260208301919091528051918290030190f35b61023c610945565b6102586004803603602081101561038557600080fd5b50356001600160a01b0316610955565b6102fa600480360360408110156103ab57600080fd5b506001600160a01b0381351690602001356109ef565b6102fa610c9d565b6102fa600480360360208110156103df57600080fd5b50356001600160a01b0316610d86565b6103f7610e32565b604080516001600160a01b039092168252519081900360200190f35b61019b610e41565b6102fa6004803603604081101561043157600080fd5b506001600160a01b038135169060200135610e63565b61023c6004803603604081101561045d57600080fd5b506001600160a01b038135169060200135610f61565b61023c6004803603604081101561048957600080fd5b506001600160a01b038135169060200135610f9d565b610258600480360360408110156104b557600080fd5b506001600160a01b038135811691602001351661106f565b61023c600480360360608110156104e357600080fd5b506001600160a01b03813516906020810135906040013561109a565b6102586004803603602081101561051557600080fd5b50356001600160a01b03166112b7565b6102fa6004803603606081101561053b57600080fd5b506001600160a01b0381351690602081013590604001356112d2565b61023c6004803603602081101561056d57600080fd5b50356001600160a01b0316611441565b6102fa6004803603602081101561059357600080fd5b50356001600160a01b031661145f565b6040518060400160405280601481526020017f4e657720506172616469676d20436c617373696300000000000000000000000081525081565b60006105e93384846114bc565b50600192915050565b6002545b90565b600354600090600160a01b900460ff16156106535760408051600160e51b62461bcd02815260206004820152600f6024820152600160891b6e2830bab9b2b210313c9037bbb732b902604482015290519081900360640190fd5b6001600160a01b03841660009081526004602052604090205460ff16156106c45760408051600160e51b62461bcd02815260206004820152601760248201527f46726f6d206163636f756e74206973206c6f636b65642e000000000000000000604482015290519081900360640190fd5b6106cd846115ae565b6106d88484846117d1565b949350505050565b601281565b6b204fce5e3e2502611000000081565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916105e9918590610731908663ffffffff61182316565b6114bc565b6003546001600160a01b031633146107875760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b600354600160a01b900460ff166107e85760408051600160e51b62461bcd02815260206004820152600e60248201527f4e6f7420706175736564206e6f77000000000000000000000000000000000000604482015290519081900360640190fd5b60038054600160a01b60ff02191690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b6003546001600160a01b031633146108745760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6001600160a01b038116600081815260046020908152604091829020805460ff19169055815192835290517f4feb53e305297ab8fb8f3420c95ea04737addc254a7270d8fc4605d2b9c61dba9281900390910190a150565b6001600160a01b03821660009081526005602052604081208054829190849081106108f357fe5b600091825260208083206002909202909101546001600160a01b03871683526005909152604090912080548590811061092857fe5b906000526020600020906002020160010154915091509250929050565b600354600160a01b900460ff1681565b600080805b6001600160a01b0384166000908152600560205260409020548110156109ce576001600160a01b038416600090815260056020526040902080546109c49190839081106109a357fe5b9060005260206000209060020201600101548361182390919063ffffffff16565b915060010161095a565b506109e8816109dc85611880565b9063ffffffff61182316565b9392505050565b6003546001600160a01b03163314610a405760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6001600160a01b0382166000908152600560205260409020548110610aaf5760408051600160e51b62461bcd02815260206004820152601460248201527f4e6f206c6f636b20696e666f726d6174696f6e2e000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03821660009081526005602052604090208054610b11919083908110610ad857fe5b60009182526020808320600160029093020191909101546001600160a01b0386168352908290526040909120549063ffffffff61182316565b6001600160a01b03831660008181526020818152604080832094909455600590529190912080547f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1919084908110610b6557fe5b9060005260206000209060020201600101546040518082815260200191505060405180910390a26001600160a01b0382166000908152600560205260408120805483908110610bb057fe5b60009182526020808320600160029093020191909101929092556001600160a01b038416815260059091526040902054600019018114610c6f576001600160a01b038216600090815260056020526040902080546000198101908110610c1257fe5b906000526020600020906002020160056000846001600160a01b03166001600160a01b031681526020019081526020016000208281548110610c5057fe5b6000918252602090912082546002909202019081556001918201549101555b6001600160a01b0382166000908152600560205260409020805490610c98906000198301611bc2565b505050565b6003546001600160a01b03163314610cee5760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b600354600160a01b900460ff1615610d455760408051600160e51b62461bcd02815260206004820152600f6024820152600160891b6e2830bab9b2b210313c9037bbb732b902604482015290519081900360640190fd5b60038054600160a01b60ff021916600160a01b1790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b6003546001600160a01b03163314610dd75760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6001600160a01b038116600081815260046020908152604091829020805460ff19166001179055815192835290517f8a5c4736a33c7b7f29a2c34ea9ff9608afc5718d56f6fd6dcbd2d3711a1a49139281900390910190a150565b6003546001600160a01b031681565b604051806040016040528060038152602001600160e81b624e50430281525081565b6003546001600160a01b03163314610eb45760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b610ebd82611880565b811115610f145760408051600160e51b62461bcd02815260206004820152601560248201527f42616c616e636520697320746f6f20736d616c6c2e0000000000000000000000604482015290519081900360640190fd5b610f1e828261189b565b6040805182815290516001600160a01b038416917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a25050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916105e9918590610731908663ffffffff61196516565b3360009081526004602052604081205460ff16156110055760408051600160e51b62461bcd02815260206004820152601960248201527f53656e646572206163636f756e74206973206c6f636b65642e00000000000000604482015290519081900360640190fd5b600354600160a01b900460ff161561105c5760408051600160e51b62461bcd02815260206004820152600f6024820152600160891b6e2830bab9b2b210313c9037bbb732b902604482015290519081900360640190fd5b611065336115ae565b6109e883836119c5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6003546000906001600160a01b031633146110ee5760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6001600160a01b03841661114c5760408051600160e51b62461bcd02815260206004820152600d60248201527f77726f6e67206164647265737300000000000000000000000000000000000000604482015290519081900360640190fd5b600354611161906001600160a01b0316611880565b8311156111b85760408051600160e51b62461bcd02815260206004820152601260248201527f4e6f7420656e6f7567682062616c616e63650000000000000000000000000000604482015290519081900360640190fd5b6003546001600160a01b03166000908152602081905260409020546111e3908463ffffffff61196516565b600380546001600160a01b039081166000908152602081815260408083209590955588831680835260058252858320865180880188528981528084018b81528254600181810185559387529585902091516002909602909101948555519301929092559254845188815294519194921692600080516020611d31833981519152928290030190a3604080518481526020810184905281516001600160a01b038716927f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b928290030190a25060019392505050565b6001600160a01b031660009081526005602052604090205490565b6003546001600160a01b031633146113235760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b8161132d84611880565b10156113835760408051600160e51b62461bcd02815260206004820152601560248201527f42616c616e636520697320746f6f20736d616c6c2e0000000000000000000000604482015290519081900360640190fd5b6001600160a01b0383166000908152602081905260409020546113ac908363ffffffff61196516565b6001600160a01b0384166000818152602081815260408083209490945560058152838220845180860186528681528083018881528254600181810185559386529484902091516002909502909101938455519201919091558251858152908101849052825191927f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b92918290030190a2505050565b6001600160a01b031660009081526004602052604090205460ff1690565b6003546001600160a01b031633146114b05760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6114b9816119d2565b50565b6001600160a01b03831661150457604051600160e51b62461bcd028152600401808060200182810382526024815260200180611d976024913960400191505060405180910390fd5b6001600160a01b03821661154c57604051600160e51b62461bcd028152600401808060200182810382526022815260200180611d0f6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b60005b6001600160a01b0382166000908152600560205260409020548110156117cd576001600160a01b03821660009081526005602052604090208054429190839081106115f857fe5b906000526020600020906002020160000154116117c5576001600160a01b03821660009081526005602052604090208054611638919083908110610ad857fe5b6001600160a01b03831660008181526020818152604080832094909455600590529190912080547f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f191908490811061168c57fe5b9060005260206000209060020201600101546040518082815260200191505060405180910390a26001600160a01b03821660009081526005602052604081208054839081106116d757fe5b60009182526020808320600160029093020191909101929092556001600160a01b03841681526005909152604090205460001901811461179a576001600160a01b03821660009081526005602052604090208054600019810190811061173957fe5b906000526020600020906002020160056000846001600160a01b03166001600160a01b03168152602001908152602001600020828154811061177757fe5b600091825260209091208254600290920201908155600191820154910155600019015b6001600160a01b03821660009081526005602052604090208054906117c3906000198301611bc2565b505b6001016115b1565b5050565b60006117de848484611a8c565b6001600160a01b038416600090815260016020908152604080832033808552925290912054611819918691610731908663ffffffff61196516565b5060019392505050565b6000828201838110156109e85760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b031660009081526020819052604090205490565b6001600160a01b0382166118e357604051600160e51b62461bcd028152600401808060200182810382526021815260200180611d516021913960400191505060405180910390fd5b6002546118f6908263ffffffff61196516565b6002556001600160a01b038216600090815260208190526040902054611922908263ffffffff61196516565b6001600160a01b03831660008181526020818152604080832094909455835185815293519193600080516020611d31833981519152929081900390910190a35050565b6000828211156119bf5760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006105e9338484611a8c565b6001600160a01b038116611a305760408051600160e51b62461bcd02815260206004820152600d60248201527f416c7265616479204f776e657200000000000000000000000000000000000000604482015290519081900360640190fd5b6003546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316611ad457604051600160e51b62461bcd028152600401808060200182810382526025815260200180611d726025913960400191505060405180910390fd5b6001600160a01b038216611b1c57604051600160e51b62461bcd028152600401808060200182810382526023815260200180611cec6023913960400191505060405180910390fd5b6001600160a01b038316600090815260208190526040902054611b45908263ffffffff61196516565b6001600160a01b038085166000908152602081905260408082209390935590841681522054611b7a908263ffffffff61182316565b6001600160a01b03808416600081815260208181526040918290209490945580518581529051919392871692600080516020611d3183398151915292918290030190a3505050565b815481835581811115610c9857600083815260209020610c98916105f69160029182028101918502015b80821115611c065760008082556001820155600201611bec565b5090565b6001600160a01b038216611c685760408051600160e51b62461bcd02815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254611c7b908263ffffffff61182316565b6002556001600160a01b038216600090815260208190526040902054611ca7908263ffffffff61182316565b6001600160a01b038316600081815260208181526040808320949094558351858152935192939192600080516020611d318339815191529281900390910190a3505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a72305820fb53a7e7169c46937bdc7d70c4c452b49ff00aeacc209f9a593567cc0089e3d00029

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061018e5760003560e01c80638456cb59116100de578063a9059cbb11610097578063df03458611610071578063df034586146104ff578063e2ab691d14610525578063e583983614610557578063f2fde38b1461057d5761018e565b8063a9059cbb14610473578063dd62ed3e1461049f578063de6baccb146104cd5761018e565b80638456cb59146103c15780638d1fdf2f146103c95780638da5cb5b146103ef57806395d89b41146104135780639dc29fac1461041b578063a457c2d7146104475761018e565b8063395093511161014b57806346cf1bb51161012557806346cf1bb5146103225780635c975abb1461036757806370a082311461036f5780637eee288d146103955761018e565b806339509351146102c65780633f4ba83a146102f257806345c8b1a6146102fc5761018e565b806306fdde0314610193578063095ea7b31461021057806318160ddd1461025057806323b872dd1461026a578063313ce567146102a0578063378dc3dc146102be575b600080fd5b61019b6105a3565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d55781810151838201526020016101bd565b50505050905090810190601f1680156102025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6004803603604081101561022657600080fd5b506001600160a01b0381351690602001356105dc565b604080519115158252519081900360200190f35b6102586105f2565b60408051918252519081900360200190f35b61023c6004803603606081101561028057600080fd5b506001600160a01b038135811691602081013590911690604001356105f9565b6102a86106e0565b6040805160ff9092168252519081900360200190f35b6102586106e5565b61023c600480360360408110156102dc57600080fd5b506001600160a01b0381351690602001356106f5565b6102fa610736565b005b6102fa6004803603602081101561031257600080fd5b50356001600160a01b0316610823565b61034e6004803603604081101561033857600080fd5b506001600160a01b0381351690602001356108cc565b6040805192835260208301919091528051918290030190f35b61023c610945565b6102586004803603602081101561038557600080fd5b50356001600160a01b0316610955565b6102fa600480360360408110156103ab57600080fd5b506001600160a01b0381351690602001356109ef565b6102fa610c9d565b6102fa600480360360208110156103df57600080fd5b50356001600160a01b0316610d86565b6103f7610e32565b604080516001600160a01b039092168252519081900360200190f35b61019b610e41565b6102fa6004803603604081101561043157600080fd5b506001600160a01b038135169060200135610e63565b61023c6004803603604081101561045d57600080fd5b506001600160a01b038135169060200135610f61565b61023c6004803603604081101561048957600080fd5b506001600160a01b038135169060200135610f9d565b610258600480360360408110156104b557600080fd5b506001600160a01b038135811691602001351661106f565b61023c600480360360608110156104e357600080fd5b506001600160a01b03813516906020810135906040013561109a565b6102586004803603602081101561051557600080fd5b50356001600160a01b03166112b7565b6102fa6004803603606081101561053b57600080fd5b506001600160a01b0381351690602081013590604001356112d2565b61023c6004803603602081101561056d57600080fd5b50356001600160a01b0316611441565b6102fa6004803603602081101561059357600080fd5b50356001600160a01b031661145f565b6040518060400160405280601481526020017f4e657720506172616469676d20436c617373696300000000000000000000000081525081565b60006105e93384846114bc565b50600192915050565b6002545b90565b600354600090600160a01b900460ff16156106535760408051600160e51b62461bcd02815260206004820152600f6024820152600160891b6e2830bab9b2b210313c9037bbb732b902604482015290519081900360640190fd5b6001600160a01b03841660009081526004602052604090205460ff16156106c45760408051600160e51b62461bcd02815260206004820152601760248201527f46726f6d206163636f756e74206973206c6f636b65642e000000000000000000604482015290519081900360640190fd5b6106cd846115ae565b6106d88484846117d1565b949350505050565b601281565b6b204fce5e3e2502611000000081565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916105e9918590610731908663ffffffff61182316565b6114bc565b6003546001600160a01b031633146107875760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b600354600160a01b900460ff166107e85760408051600160e51b62461bcd02815260206004820152600e60248201527f4e6f7420706175736564206e6f77000000000000000000000000000000000000604482015290519081900360640190fd5b60038054600160a01b60ff02191690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b6003546001600160a01b031633146108745760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6001600160a01b038116600081815260046020908152604091829020805460ff19169055815192835290517f4feb53e305297ab8fb8f3420c95ea04737addc254a7270d8fc4605d2b9c61dba9281900390910190a150565b6001600160a01b03821660009081526005602052604081208054829190849081106108f357fe5b600091825260208083206002909202909101546001600160a01b03871683526005909152604090912080548590811061092857fe5b906000526020600020906002020160010154915091509250929050565b600354600160a01b900460ff1681565b600080805b6001600160a01b0384166000908152600560205260409020548110156109ce576001600160a01b038416600090815260056020526040902080546109c49190839081106109a357fe5b9060005260206000209060020201600101548361182390919063ffffffff16565b915060010161095a565b506109e8816109dc85611880565b9063ffffffff61182316565b9392505050565b6003546001600160a01b03163314610a405760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6001600160a01b0382166000908152600560205260409020548110610aaf5760408051600160e51b62461bcd02815260206004820152601460248201527f4e6f206c6f636b20696e666f726d6174696f6e2e000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03821660009081526005602052604090208054610b11919083908110610ad857fe5b60009182526020808320600160029093020191909101546001600160a01b0386168352908290526040909120549063ffffffff61182316565b6001600160a01b03831660008181526020818152604080832094909455600590529190912080547f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f1919084908110610b6557fe5b9060005260206000209060020201600101546040518082815260200191505060405180910390a26001600160a01b0382166000908152600560205260408120805483908110610bb057fe5b60009182526020808320600160029093020191909101929092556001600160a01b038416815260059091526040902054600019018114610c6f576001600160a01b038216600090815260056020526040902080546000198101908110610c1257fe5b906000526020600020906002020160056000846001600160a01b03166001600160a01b031681526020019081526020016000208281548110610c5057fe5b6000918252602090912082546002909202019081556001918201549101555b6001600160a01b0382166000908152600560205260409020805490610c98906000198301611bc2565b505050565b6003546001600160a01b03163314610cee5760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b600354600160a01b900460ff1615610d455760408051600160e51b62461bcd02815260206004820152600f6024820152600160891b6e2830bab9b2b210313c9037bbb732b902604482015290519081900360640190fd5b60038054600160a01b60ff021916600160a01b1790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b6003546001600160a01b03163314610dd75760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6001600160a01b038116600081815260046020908152604091829020805460ff19166001179055815192835290517f8a5c4736a33c7b7f29a2c34ea9ff9608afc5718d56f6fd6dcbd2d3711a1a49139281900390910190a150565b6003546001600160a01b031681565b604051806040016040528060038152602001600160e81b624e50430281525081565b6003546001600160a01b03163314610eb45760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b610ebd82611880565b811115610f145760408051600160e51b62461bcd02815260206004820152601560248201527f42616c616e636520697320746f6f20736d616c6c2e0000000000000000000000604482015290519081900360640190fd5b610f1e828261189b565b6040805182815290516001600160a01b038416917fcc16f5dbb4873280815c1ee09dbd06736cffcc184412cf7a71a0fdb75d397ca5919081900360200190a25050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916105e9918590610731908663ffffffff61196516565b3360009081526004602052604081205460ff16156110055760408051600160e51b62461bcd02815260206004820152601960248201527f53656e646572206163636f756e74206973206c6f636b65642e00000000000000604482015290519081900360640190fd5b600354600160a01b900460ff161561105c5760408051600160e51b62461bcd02815260206004820152600f6024820152600160891b6e2830bab9b2b210313c9037bbb732b902604482015290519081900360640190fd5b611065336115ae565b6109e883836119c5565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6003546000906001600160a01b031633146110ee5760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6001600160a01b03841661114c5760408051600160e51b62461bcd02815260206004820152600d60248201527f77726f6e67206164647265737300000000000000000000000000000000000000604482015290519081900360640190fd5b600354611161906001600160a01b0316611880565b8311156111b85760408051600160e51b62461bcd02815260206004820152601260248201527f4e6f7420656e6f7567682062616c616e63650000000000000000000000000000604482015290519081900360640190fd5b6003546001600160a01b03166000908152602081905260409020546111e3908463ffffffff61196516565b600380546001600160a01b039081166000908152602081815260408083209590955588831680835260058252858320865180880188528981528084018b81528254600181810185559387529585902091516002909602909101948555519301929092559254845188815294519194921692600080516020611d31833981519152928290030190a3604080518481526020810184905281516001600160a01b038716927f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b928290030190a25060019392505050565b6001600160a01b031660009081526005602052604090205490565b6003546001600160a01b031633146113235760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b8161132d84611880565b10156113835760408051600160e51b62461bcd02815260206004820152601560248201527f42616c616e636520697320746f6f20736d616c6c2e0000000000000000000000604482015290519081900360640190fd5b6001600160a01b0383166000908152602081905260409020546113ac908363ffffffff61196516565b6001600160a01b0384166000818152602081815260408083209490945560058152838220845180860186528681528083018881528254600181810185559386529484902091516002909502909101938455519201919091558251858152908101849052825191927f49eaf4942f1237055eb4cfa5f31c9dfe50d5b4ade01e021f7de8be2fbbde557b92918290030190a2505050565b6001600160a01b031660009081526004602052604090205460ff1690565b6003546001600160a01b031633146114b05760408051600160e51b62461bcd0281526020600482015260096024820152600160b91b682737ba1037bbb732b902604482015290519081900360640190fd5b6114b9816119d2565b50565b6001600160a01b03831661150457604051600160e51b62461bcd028152600401808060200182810382526024815260200180611d976024913960400191505060405180910390fd5b6001600160a01b03821661154c57604051600160e51b62461bcd028152600401808060200182810382526022815260200180611d0f6022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b60005b6001600160a01b0382166000908152600560205260409020548110156117cd576001600160a01b03821660009081526005602052604090208054429190839081106115f857fe5b906000526020600020906002020160000154116117c5576001600160a01b03821660009081526005602052604090208054611638919083908110610ad857fe5b6001600160a01b03831660008181526020818152604080832094909455600590529190912080547f6381d9813cabeb57471b5a7e05078e64845ccdb563146a6911d536f24ce960f191908490811061168c57fe5b9060005260206000209060020201600101546040518082815260200191505060405180910390a26001600160a01b03821660009081526005602052604081208054839081106116d757fe5b60009182526020808320600160029093020191909101929092556001600160a01b03841681526005909152604090205460001901811461179a576001600160a01b03821660009081526005602052604090208054600019810190811061173957fe5b906000526020600020906002020160056000846001600160a01b03166001600160a01b03168152602001908152602001600020828154811061177757fe5b600091825260209091208254600290920201908155600191820154910155600019015b6001600160a01b03821660009081526005602052604090208054906117c3906000198301611bc2565b505b6001016115b1565b5050565b60006117de848484611a8c565b6001600160a01b038416600090815260016020908152604080832033808552925290912054611819918691610731908663ffffffff61196516565b5060019392505050565b6000828201838110156109e85760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b031660009081526020819052604090205490565b6001600160a01b0382166118e357604051600160e51b62461bcd028152600401808060200182810382526021815260200180611d516021913960400191505060405180910390fd5b6002546118f6908263ffffffff61196516565b6002556001600160a01b038216600090815260208190526040902054611922908263ffffffff61196516565b6001600160a01b03831660008181526020818152604080832094909455835185815293519193600080516020611d31833981519152929081900390910190a35050565b6000828211156119bf5760408051600160e51b62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b60006105e9338484611a8c565b6001600160a01b038116611a305760408051600160e51b62461bcd02815260206004820152600d60248201527f416c7265616479204f776e657200000000000000000000000000000000000000604482015290519081900360640190fd5b6003546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600380546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316611ad457604051600160e51b62461bcd028152600401808060200182810382526025815260200180611d726025913960400191505060405180910390fd5b6001600160a01b038216611b1c57604051600160e51b62461bcd028152600401808060200182810382526023815260200180611cec6023913960400191505060405180910390fd5b6001600160a01b038316600090815260208190526040902054611b45908263ffffffff61196516565b6001600160a01b038085166000908152602081905260408082209390935590841681522054611b7a908263ffffffff61182316565b6001600160a01b03808416600081815260208181526040918290209490945580518581529051919392871692600080516020611d3183398151915292918290030190a3505050565b815481835581811115610c9857600083815260209020610c98916105f69160029182028101918502015b80821115611c065760008082556001820155600201611bec565b5090565b6001600160a01b038216611c685760408051600160e51b62461bcd02815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b600254611c7b908263ffffffff61182316565b6002556001600160a01b038216600090815260208190526040902054611ca7908263ffffffff61182316565b6001600160a01b038316600081815260208181526040808320949094558351858152935192939192600080516020611d318339815191529281900390910190a3505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef45524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a165627a7a72305820fb53a7e7169c46937bdc7d70c4c452b49ff00aeacc209f9a593567cc0089e3d00029

Deployed Bytecode Sourcemap

5268:6039:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5268:6039:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5312:52;;;:::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;5312:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2805:148;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2805:148:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;2282:91;;;:::i;:::-;;;;;;;;;;;;;;;;7672:317;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7672:317:0;;;;;;;;;;;;;;;;;:::i;5417:35::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5460:79;;;:::i;3225:206::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;3225:206:0;;;;;;;;:::i;6684:105::-;;;:::i;:::-;;7174:128;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7174:128:0;-1:-1:-1;;;;;7174:128:0;;:::i;9692:185::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9692:185:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6345:26;;;:::i;8554:335::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8554:335:0;-1:-1:-1;;;;;8554:335:0;;:::i;10273:516::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;10273:516:0;;;;;;;;:::i;6573:103::-;;;:::i;7043:123::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7043:123:0;-1:-1:-1;;;;;7043:123:0;;:::i;5667:20::-;;;:::i;:::-;;;;-1:-1:-1;;;;;5667:20:0;;;;;;;;;;;;;;5372:37;;;:::i;8055:211::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8055:211:0;;;;;;;;:::i;3439:216::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;3439:216:0;;;;;;;;:::i;7422:242::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;7422:242:0;;;;;;;;:::i;2663:134::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;2663:134:0;;;;;;;;;;:::i;10797:505::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;10797:505:0;;;;;;;;;;;;;:::i;9570:116::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9570:116:0;-1:-1:-1;;;;;9570:116:0;;:::i;9885:380::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9885:380:0;;;;;;;;;;;;;:::i;7310:104::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7310:104:0;-1:-1:-1;;;;;7310:104:0;;:::i;5968:111::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;5968:111:0;-1:-1:-1;;;;;5968:111:0;;:::i;5312:52::-;;;;;;;;;;;;;;;;;;;:::o;2805:148::-;2870:4;2887:36;2896:10;2908:7;2917:5;2887:8;:36::i;:::-;-1:-1:-1;2941:4:0;2805:148;;;;:::o;2282:91::-;2353:12;;2282:91;;:::o;7672:317::-;6425:6;;7823:4;;-1:-1:-1;;;6425:6:0;;;;6424:7;6416:35;;;;;-1:-1:-1;;;;;6416:35:0;;;;;;;;;;;;-1:-1:-1;;;;;6416:35:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;7854:14:0;;;;;;:7;:14;;;;;;;;7853:15;7845:51;;;;;-1:-1:-1;;;;;7845:51:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7907:18;7919:5;7907:11;:18::i;:::-;7943:38;7962:5;7969:3;7974:6;7943:18;:38::i;:::-;7936:45;7672:317;-1:-1:-1;;;;7672:317:0:o;5417:35::-;5450:2;5417:35;:::o;5460:79::-;5500:39;5460:79;:::o;3225:206::-;3331:10;3305:4;3352:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;3352:32:0;;;;;;;;;;3305:4;;3322:79;;3343:7;;3352:48;;3389:10;3352:48;:36;:48;:::i;:::-;3322:8;:79::i;6684:105::-;5921:5;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;6520:6;;-1:-1:-1;;;6520:6:0;;;;6512:33;;;;;-1:-1:-1;;;;;6512:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6742:6;:14;;-1:-1:-1;;;;;;6742:14:0;;;6772:9;;;;6751:5;;6772:9;6684:105::o;7174:128::-;5921:5;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;7237:16:0;;7256:5;7237:16;;;:7;:16;;;;;;;;;:24;;-1:-1:-1;;7237:24:0;;;7277:17;;;;;;;;;;;;;;;;;7174:128;:::o;9692:185::-;-1:-1:-1;;;;;9800:17:0;;9763:7;9800:17;;;:8;:17;;;;;:23;;9763:7;;9800:17;9818:4;;9800:23;;;;;;;;;;;;;;;;;;;;;:35;-1:-1:-1;;;;;9837:17:0;;;;:8;:17;;;;;;;:23;;9855:4;;9837:23;;;;;;;;;;;;;;;;:31;;;9792:77;;;;9692:185;;;;;:::o;6345:26::-;;;-1:-1:-1;;;6345:26:0;;;;;:::o;8554:335::-;8611:15;;;8675:146;-1:-1:-1;;;;;8698:17:0;;;;;;:8;:17;;;;;:24;8694:28;;8675:146;;;-1:-1:-1;;;;;8780:17:0;;;;;;:8;:17;;;;;:20;;8762:47;;8780:17;8798:1;;8780:20;;;;;;;;;;;;;;;;:28;;;8762:13;:17;;:47;;;;:::i;:::-;8746:63;-1:-1:-1;8725:3:0;;8675:146;;;;8838:43;8867:13;8838:24;8854:7;8838:15;:24::i;:::-;:28;:43;:28;:43;:::i;:::-;8831:50;8554:335;-1:-1:-1;;;8554:335:0:o;10273:516::-;5921:5;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;10357:17:0;;;;;;:8;:17;;;;;:24;10353:28;;10345:61;;;;;-1:-1:-1;;;;;10345:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10463:17:0;;;;;;:8;:17;;;;;:20;;10440:52;;10463:17;10481:1;;10463:20;;;;;;;;;;;;;;:28;:20;;;;;:28;;;;;-1:-1:-1;;;;;10440:18:0;;;;;;;;;;;;;;:52;:22;:52;:::i;:::-;-1:-1:-1;;;;;10419:18:0;;:9;:18;;;;;;;;;;;:73;;;;10524:8;:17;;;;;;:20;;10508:45;;10524:17;10542:1;;10524:20;;;;;;;;;;;;;;;;:28;;;10508:45;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10564:17:0;;10595:1;10564:17;;;:8;:17;;;;;:20;;10582:1;;10564:20;;;;;;;;;;;;;;:28;:20;;;;;:28;;;;:32;;;;-1:-1:-1;;;;;10618:17:0;;;;:8;:17;;;;;;:24;-1:-1:-1;;10618:28:0;10613:33;;10609:136;;-1:-1:-1;;;;;10686:17:0;;;;;;:8;:17;;;;;10704:24;;-1:-1:-1;;10704:28:0;;;10686:47;;;;;;;;;;;;;;;;10663:8;:17;10672:7;-1:-1:-1;;;;;10663:17:0;-1:-1:-1;;;;;10663:17:0;;;;;;;;;;;;10681:1;10663:20;;;;;;;;;;;;;;;;:70;;:20;;;;;:70;;;;;;;;;;;10609:136;-1:-1:-1;;;;;10755:17:0;;;;;;:8;:17;;;;;:26;;;;;-1:-1:-1;;10755:26:0;;;:::i;:::-;;10273:516;;:::o;6573:103::-;5921:5;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;6425:6;;-1:-1:-1;;;6425:6:0;;;;6424:7;6416:35;;;;;-1:-1:-1;;;;;6416:35:0;;;;;;;;;;;;-1:-1:-1;;;;;6416:35:0;;;;;;;;;;;;;;;6632:6;:13;;-1:-1:-1;;;;;;6632:13:0;-1:-1:-1;;;6632:13:0;;;6661:7;;;;6632:13;;6661:7;6573:103::o;7043:123::-;5921:5;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;7104:16:0;;;;;;:7;:16;;;;;;;;;:23;;-1:-1:-1;;7104:23:0;7123:4;7104:23;;;7143:15;;;;;;;;;;;;;;;;;7043:123;:::o;5667:20::-;;;-1:-1:-1;;;;;5667:20:0;;:::o;5372:37::-;;;;;;;;;;;;;;-1:-1:-1;;;;;5372:37:0;;;;:::o;8055:211::-;5921:5;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;8145:21;8161:4;8145:15;:21::i;:::-;8135:6;:31;;8127:65;;;;;-1:-1:-1;;;;;8127:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8205:19;8211:4;8217:6;8205:5;:19::i;:::-;8240:18;;;;;;;;-1:-1:-1;;;;;8240:18:0;;;;;;;;;;;;;8055:211;;:::o;3439:216::-;3550:10;3524:4;3571:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;3571:32:0;;;;;;;;;;3524:4;;3541:84;;3562:7;;3571:53;;3608:15;3571:53;:36;:53;:::i;7422:242::-;6974:10;7566:4;6966:19;;;:7;:19;;;;;;;;6965:20;6957:58;;;;;-1:-1:-1;;;;;6957:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6425:6;;-1:-1:-1;;;6425:6:0;;;;6424:7;6416:35;;;;;-1:-1:-1;;;;;6416:35:0;;;;;;;;;;;;-1:-1:-1;;;;;6416:35:0;;;;;;;;;;;;;;;7588:23;7600:10;7588:11;:23::i;:::-;7629:27;7644:3;7649:6;7629:14;:27::i;2663:134::-;-1:-1:-1;;;;;2762:18:0;;;2735:7;2762:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2663:134::o;10797:505::-;5921:5;;10900:4;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;10925:17:0;;10917:43;;;;;-1:-1:-1;;;;;10917:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;11005:5;;10989:22;;-1:-1:-1;;;;;11005:5:0;10989:15;:22::i;:::-;10979:6;:32;;10971:63;;;;;-1:-1:-1;;;;;10971:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;11076:5;;-1:-1:-1;;;;;11076:5:0;11066:9;:16;;;;;;;;;;;:28;;11087:6;11066:28;:20;:28;:::i;:::-;11057:5;;;-1:-1:-1;;;;;11057:5:0;;;11047:9;:16;;;;;;;;;;;:47;;;;11105:13;;;;;;:8;:13;;;;;11138:30;;;;;;;;;;;;;;;;27:10:-1;;11057:5:0;23:18:-1;;;45:23;;11105:74:0;;;;;;;;;;;;;;;;;;;;;;;;;;11204:5;;11195:28;;;;;;;11105:13;;11204:5;;;-1:-1:-1;;;;;;;;;;;11195:28:0;;;;;;;11239:31;;;;;;;;;;;;;;-1:-1:-1;;;;;11239:31:0;;;;;;;;;;;-1:-1:-1;11290:4:0;10797:505;;;;;:::o;9570:116::-;-1:-1:-1;;;;;9654:17:0;9627:7;9654:17;;;:8;:17;;;;;:24;;9570:116::o;9885:380::-;5921:5;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;10019:7;9991:24;10007:7;9991:15;:24::i;:::-;:35;;9983:69;;;;;-1:-1:-1;;;;;9983:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10084:18:0;;:9;:18;;;;;;;;;;;:31;;10107:7;10084:31;:22;:31;:::i;:::-;-1:-1:-1;;;;;10063:18:0;;:9;:18;;;;;;;;;;;:52;;;;10126:8;:17;;;;;10163:31;;;;;;;;;;;;;;;;27:10:-1;;39:1;23:18;;;45:23;;10126:79:0;;;;;;;;;;;;;;;;;;;;;;;;;;10221:36;;;;;;;;;;;;;10063:18;;10221:36;;;;;;;;;9885:380;;;:::o;7310:104::-;-1:-1:-1;;;;;7390:16:0;7366:4;7390:16;;;:7;:16;;;;;;;;;7310:104::o;5968:111::-;5921:5;;-1:-1:-1;;;;;5921:5:0;5907:10;:19;5899:41;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;-1:-1:-1;;;;;5899:41:0;;;;;;;;;;;;;;;6042:29;6061:9;6042:18;:29::i;:::-;5968:111;:::o;4730:335::-;-1:-1:-1;;;;;4823:19:0;;4815:68;;;;-1:-1:-1;;;;;4815:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4902:21:0;;4894:68;;;;-1:-1:-1;;;;;4894:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4975:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:35;;;5026:31;;;;;;;;;;;;;;;;;4730:335;;;:::o;8897:667::-;8961:9;8957:600;-1:-1:-1;;;;;8980:17:0;;;;;;:8;:17;;;;;:24;8976:28;;8957:600;;;-1:-1:-1;;;;;9032:17:0;;;;;;:8;:17;;;;;:20;;9068:3;;9032:17;9050:1;;9032:20;;;;;;;;;;;;;;;;:32;;;:39;9028:518;;-1:-1:-1;;;;;9136:17:0;;;;;;:8;:17;;;;;:20;;9113:52;;9136:17;9154:1;;9136:20;;;;;9113:52;-1:-1:-1;;;;;9092:18:0;;:9;:18;;;;;;;;;;;:73;;;;9205:8;:17;;;;;;:20;;9189:45;;9205:17;9223:1;;9205:20;;;;;;;;;;;;;;;;:28;;;9189:45;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9253:17:0;;9284:1;9253:17;;;:8;:17;;;;;:20;;9271:1;;9253:20;;;;;;;;;;;;;;:28;:20;;;;;:28;;;;:32;;;;-1:-1:-1;;;;;9315:17:0;;;;:8;:17;;;;;;:24;-1:-1:-1;;9315:28:0;9310:33;;9306:178;;-1:-1:-1;;;;;9391:17:0;;;;;;:8;:17;;;;;9409:24;;-1:-1:-1;;9409:28:0;;;9391:47;;;;;;;;;;;;;;;;9368:8;:17;9377:7;-1:-1:-1;;;;;9368:17:0;-1:-1:-1;;;;;9368:17:0;;;;;;;;;;;;9386:1;9368:20;;;;;;;;;;;;;;;;:70;;:20;;;;;:70;;;;;;;;;;;-1:-1:-1;;9461:3:0;9306:178;-1:-1:-1;;;;;9502:17:0;;;;;;:8;:17;;;;;:26;;;;;-1:-1:-1;;9502:26:0;;;:::i;:::-;;9028:518;9007:3;;8957:600;;;;8897:667;:::o;2961:256::-;3050:4;3067:36;3077:6;3085:9;3096:6;3067:9;:36::i;:::-;-1:-1:-1;;;;;3143:19:0;;;;;;:11;:19;;;;;;;;3131:10;3143:31;;;;;;;;;3114:73;;3123:6;;3143:43;;3179:6;3143:43;:35;:43;:::i;3114:73::-;-1:-1:-1;3205:4:0;2961:256;;;;;:::o;1057:181::-;1115:7;1147:5;;;1171:6;;;;1163:46;;;;;-1:-1:-1;;;;;1163:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2381:110;-1:-1:-1;;;;;2465:18:0;2438:7;2465:18;;;;;;;;;;;;2381:110::o;4416:306::-;-1:-1:-1;;;;;4491:21:0;;4483:67;;;;-1:-1:-1;;;;;4483:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4578:12;;:23;;4595:5;4578:23;:16;:23;:::i;:::-;4563:12;:38;-1:-1:-1;;;;;4633:18:0;;:9;:18;;;;;;;;;;;:29;;4656:5;4633:29;:22;:29;:::i;:::-;-1:-1:-1;;;;;4612:18:0;;:9;:18;;;;;;;;;;;:50;;;;4678:36;;;;;;;4612:9;;-1:-1:-1;;;;;;;;;;;4678:36:0;;;;;;;;;;4416:306;;:::o;1246:184::-;1304:7;1337:1;1332;:6;;1324:49;;;;;-1:-1:-1;;;;;1324:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1396:5:0;;;1246:184::o;2499:156::-;2568:4;2585:40;2595:10;2607:9;2618:6;2585:9;:40::i;6087:206::-;-1:-1:-1;;;;;6162:23:0;;6154:49;;;;;-1:-1:-1;;;;;6154:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6240:5;;6219:38;;-1:-1:-1;;;;;6219:38:0;;;;6240:5;;6219:38;;6240:5;;6219:38;6268:5;:17;;-1:-1:-1;;;;;;6268:17:0;-1:-1:-1;;;;;6268:17:0;;;;;;;;;;6087:206::o;3663:429::-;-1:-1:-1;;;;;3761:20:0;;3753:70;;;;-1:-1:-1;;;;;3753:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3842:23:0;;3834:71;;;;-1:-1:-1;;;;;3834:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3938:17:0;;:9;:17;;;;;;;;;;;:29;;3960:6;3938:29;:21;:29;:::i;:::-;-1:-1:-1;;;;;3918:17:0;;;:9;:17;;;;;;;;;;;:49;;;;4001:20;;;;;;;:32;;4026:6;4001:32;:24;:32;:::i;:::-;-1:-1:-1;;;;;3978:20:0;;;:9;:20;;;;;;;;;;;;:55;;;;4049:35;;;;;;;3978:20;;4049:35;;;;-1:-1:-1;;;;;;;;;;;4049:35:0;;;;;;;;3663:429;;;:::o;5268:6039::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4100:308;-1:-1:-1;;;;;4176:21:0;;4168:65;;;;;-1:-1:-1;;;;;4168:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;4261:12;;:24;;4278:6;4261:24;:16;:24;:::i;:::-;4246:12;:39;-1:-1:-1;;;;;4317:18:0;;:9;:18;;;;;;;;;;;:30;;4340:6;4317:30;:22;:30;:::i;:::-;-1:-1:-1;;;;;4296:18:0;;:9;:18;;;;;;;;;;;:51;;;;4363:37;;;;;;;4296:18;;:9;;-1:-1:-1;;;;;;;;;;;4363:37:0;;;;;;;;;4100:308;;:::o

Swarm Source

bzzr://fb53a7e7169c46937bdc7d70c4c452b49ff00aeacc209f9a593567cc0089e3d0

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