ETH Price: $3,165.57 (+1.46%)
Gas: 2 Gwei

Token

DEFLA (DEFLA)
 

Overview

Max Total Supply

2,000,000 DEFLA

Holders

102 (0.00%)

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
3,868.5 DEFLA

Value
$0.00
0x40aea19309a630db8c15ca278d9d40d4b32a3d28
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

DEFLA is a type of ERC20 merging Economics & Game Theory token.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
RebaseDemoContract

Compiler Version
v0.6.0+commit.26b70077

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, GNU LGPLv3 license
/**
 *Submitted for verification at Etherscan.io on 2021-03-16
*/

pragma solidity 0.6.0;

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

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

contract Ownable {
    address public _owner;

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

    constructor () public {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), msg.sender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == msg.sender, "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

contract RebaseDemoContract is Ownable {

    using SafeMath for uint256;

    event LogRebase(uint256 indexed epoch, uint256 totalSupply);

    modifier validRecipient(address to) {
        require(to != address(0x0));
        require(to != address(this));
        _;
    }

    modifier transfersEnabled() {
        require(isTransfersPaused == false, 'transfers have been disabled');
        _;
    }

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

    string public constant name = "DEFLA";
    string public constant symbol = "DEFLA";
    uint256 public constant decimals = 9;

    uint256 private constant DECIMALS = 9;
    uint256 private constant MAX_UINT256 = ~uint256(0);
    uint256 private constant INITIAL_FRAGMENTS_SUPPLY = 10**9 * 10**DECIMALS;

    uint256 private constant TOTAL_GONS = MAX_UINT256 - (MAX_UINT256 % INITIAL_FRAGMENTS_SUPPLY);

    uint256 private constant MAX_SUPPLY = ~uint128(0);  // (2^128) - 1

    uint256 private _totalSupply;
    uint256 private _gonsPerFragment;
    mapping(address => uint256) private _gonBalances;

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

    bool isTransfersPaused = false;

    function rebase(uint256 epoch, uint256 supplyDelta)
    external
    onlyOwner
    returns (uint256)
    {
        if (supplyDelta == 0) {
            emit LogRebase(epoch, _totalSupply);
            return _totalSupply;
        }

        _totalSupply = _totalSupply.sub(supplyDelta);


        if (_totalSupply > MAX_SUPPLY) {
            _totalSupply = MAX_SUPPLY;
        }

        _gonsPerFragment = TOTAL_GONS.div(_totalSupply);

        emit LogRebase(epoch, _totalSupply);
        return _totalSupply;
    }

    constructor() public override {
        _owner = msg.sender;

        _totalSupply = INITIAL_FRAGMENTS_SUPPLY;
        _gonBalances[_owner] = TOTAL_GONS;
        _gonsPerFragment = TOTAL_GONS.div(_totalSupply);

        emit Transfer(address(0x0), _owner, _totalSupply);
    }

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

    function balanceOf(address who)
    public
    view
    returns (uint256)
    {
        return _gonBalances[who].div(_gonsPerFragment);
    }

    function transfer(address to, uint256 value)
    public
    validRecipient(to)
    transfersEnabled
    returns (bool)
    {
        _transfer(to, value);
        return true;
    }

    function _transfer(address to, uint256 value) internal {
        uint256 gonValue = value.mul(_gonsPerFragment);
        _gonBalances[msg.sender] = _gonBalances[msg.sender].sub(gonValue);
        _gonBalances[to] = _gonBalances[to].add(gonValue);
        emit Transfer(msg.sender, to, value);
    }

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

    function transferFrom(address from, address to, uint256 value)
    public
    validRecipient(to)
    transfersEnabled
    returns (bool)
    {
        _allowedFragments[from][msg.sender] = _allowedFragments[from][msg.sender].sub(value);

        uint256 gonValue = value.mul(_gonsPerFragment);
        _gonBalances[from] = _gonBalances[from].sub(gonValue);
        _gonBalances[to] = _gonBalances[to].add(gonValue);
        emit Transfer(from, to, value);

        return true;
    }

    function approve(address spender, uint256 value)
    public
    returns (bool)
    {
        _allowedFragments[msg.sender][spender] = value;
        emit Approval(msg.sender, spender, value);
        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue)
    public
    returns (bool)
    {
        _allowedFragments[msg.sender][spender] =
        _allowedFragments[msg.sender][spender].add(addedValue);
        emit Approval(msg.sender, spender, _allowedFragments[msg.sender][spender]);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue)
    public
    returns (bool)
    {
        uint256 oldValue = _allowedFragments[msg.sender][spender];
        if (subtractedValue >= oldValue) {
            _allowedFragments[msg.sender][spender] = 0;
        } else {
            _allowedFragments[msg.sender][spender] = oldValue.sub(subtractedValue);
        }
        emit Approval(msg.sender, spender, _allowedFragments[msg.sender][spender]);
        return true;
    }

    function setTransferPause(bool state) public onlyOwner {
        isTransfersPaused = state;
    }

    function getTransferPause() public view returns(bool){
        return isTransfersPaused;
    }

    function burn(uint256 amount) public transfersEnabled{
        require(balanceOf(msg.sender) >= amount, 'Burn amount exceeds balance');
        _transfer(address(0), amount);
        _totalSupply = _totalSupply.sub(amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"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":true,"internalType":"uint256","name":"epoch","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"totalSupply","type":"uint256"}],"name":"LogRebase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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"},{"inputs":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"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":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"getTransferPause","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"epoch","type":"uint256"},{"internalType":"uint256","name":"supplyDelta","type":"uint256"}],"name":"rebase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"state","type":"bool"}],"name":"setTransferPause","outputs":[],"stateMutability":"nonpayable","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":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040526000600560006101000a81548160ff0219169083151502179055503480156200002c57600080fd5b50336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506009600a0a633b9aca00026001819055506009600a0a633b9aca0002600019816200012f57fe5b0660001903600360008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001ce6001546009600a0a633b9aca000260001981620001b557fe5b06600019036200026360201b62001ae31790919060201c565b6002819055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6001546040518082815260200191505060405180910390a362000380565b6000620002ad83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620002b560201b60201c565b905092915050565b6000808311829062000365576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015620003295780820151818401526020810190506200030c565b50505050905090810190601f168015620003575780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816200037257fe5b049050809150509392505050565b611feb80620003906000396000f3fe608060405234801561001057600080fd5b50600436106101215760003560e01c8063715018a6116100ad578063a457c2d711610071578063a457c2d714610532578063a9059cbb14610598578063b2bdfa7b146105fe578063dd62ed3e14610648578063f2fde38b146106c057610121565b8063715018a6146104095780638da5cb5b1461041357806390827a071461045d5780639358037a1461047f57806395d89b41146104af57610121565b806323b872dd116100f457806323b872dd14610279578063313ce567146102ff578063395093511461031d57806342966c681461038357806370a08231146103b157610121565b8063058ecdb41461012657806306fdde0314610172578063095ea7b3146101f557806318160ddd1461025b575b600080fd5b61015c6004803603604081101561013c57600080fd5b810190808035906020019092919080359060200190929190505050610704565b6040518082815260200191505060405180910390f35b61017a6108e4565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101ba57808201518184015260208101905061019f565b50505050905090810190601f1680156101e75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102416004803603604081101561020b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061091d565b604051808215151515815260200191505060405180910390f35b610263610a0f565b6040518082815260200191505060405180910390f35b6102e56004803603606081101561028f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a19565b604051808215151515815260200191505060405180910390f35b610307610ddc565b6040518082815260200191505060405180910390f35b6103696004803603604081101561033357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610de1565b604051808215151515815260200191505060405180910390f35b6103af6004803603602081101561039957600080fd5b8101908080359060200190929190505050610fdd565b005b6103f3600480360360208110156103c757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061110d565b6040518082815260200191505060405180910390f35b61041161116a565b005b61041b6112eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610465611314565b604051808215151515815260200191505060405180910390f35b6104ad6004803603602081101561049557600080fd5b8101908080351515906020019092919050505061132b565b005b6104b761140a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104f75780820151818401526020810190506104dc565b50505050905090810190601f1680156105245780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61057e6004803603604081101561054857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611443565b604051808215151515815260200191505060405180910390f35b6105e4600480360360408110156105ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506116d3565b604051808215151515815260200191505060405180910390f35b6106066117e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6106aa6004803603604081101561065e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061180c565b6040518082815260200191505060405180910390f35b610702600480360360208110156106d657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611893565b005b60003373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600082141561081557827f72725a3b1e5bd622d6bcd1339bb31279c351abe8f541ac7fd320f24e1b1641f26001546040518082815260200191505060405180910390a260015490506108de565b61082a82600154611a9990919063ffffffff16565b6001819055506000196fffffffffffffffffffffffffffffffff16600154111561086a576000196fffffffffffffffffffffffffffffffff166001819055505b6108986001546009600a0a633b9aca00026000198161088557fe5b0660001903611ae390919063ffffffff16565b600281905550827f72725a3b1e5bd622d6bcd1339bb31279c351abe8f541ac7fd320f24e1b1641f26001546040518082815260200191505060405180910390a260015490505b92915050565b6040518060400160405280600581526020017f4445464c4100000000000000000000000000000000000000000000000000000081525081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600154905090565b600082600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610a5657600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610a8f57600080fd5b60001515600560009054906101000a900460ff16151514610b18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7472616e73666572732068617665206265656e2064697361626c65640000000081525060200191505060405180910390fd5b610ba783600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a9990919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610c3e60025485611b2d90919063ffffffff16565b9050610c9281600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a9990919063ffffffff16565b600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610d2781600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bb390919063ffffffff16565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36001925050509392505050565b600981565b6000610e7282600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bb390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b60001515600560009054906101000a900460ff16151514611066576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7472616e73666572732068617665206265656e2064697361626c65640000000081525060200191505060405180910390fd5b806110703361110d565b10156110e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f4275726e20616d6f756e7420657863656564732062616c616e6365000000000081525060200191505060405180910390fd5b6110ef600082611c3b565b61110481600154611a9990919063ffffffff16565b60018190555050565b6000611163600254600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae390919063ffffffff16565b9050919050565b3373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461122c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600560009054906101000a900460ff16905090565b3373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600560006101000a81548160ff02191690831515021790555050565b6040518060400160405280600581526020017f4445464c4100000000000000000000000000000000000000000000000000000081525081565b600080600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050808310611553576000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115e7565b6115668382611a9990919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b600082600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561171057600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561174957600080fd5b60001515600560009054906101000a900460ff161515146117d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7472616e73666572732068617665206265656e2064697361626c65640000000081525060200191505060405180910390fd5b6117dc8484611c3b565b600191505092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b3373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611955576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156119db576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611f6f6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000611adb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611de8565b905092915050565b6000611b2583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ea8565b905092915050565b600080831415611b405760009050611bad565b6000828402905082848281611b5157fe5b0414611ba8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611f956021913960400191505060405180910390fd5b809150505b92915050565b600080828401905083811015611c31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000611c5260025483611b2d90919063ffffffff16565b9050611ca681600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a9990919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611d3b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bb390919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3505050565b6000838311158290611e95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611e5a578082015181840152602081019050611e3f565b50505050905090810190601f168015611e875780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008083118290611f54576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611f19578082015181840152602081019050611efe565b50505050905090810190601f168015611f465780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581611f6057fe5b04905080915050939250505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122039c8323387595a76fd9d2ee360d34cb19ce86e3a52dc11dcdbfa10c19681ff5f64736f6c63430006000033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101215760003560e01c8063715018a6116100ad578063a457c2d711610071578063a457c2d714610532578063a9059cbb14610598578063b2bdfa7b146105fe578063dd62ed3e14610648578063f2fde38b146106c057610121565b8063715018a6146104095780638da5cb5b1461041357806390827a071461045d5780639358037a1461047f57806395d89b41146104af57610121565b806323b872dd116100f457806323b872dd14610279578063313ce567146102ff578063395093511461031d57806342966c681461038357806370a08231146103b157610121565b8063058ecdb41461012657806306fdde0314610172578063095ea7b3146101f557806318160ddd1461025b575b600080fd5b61015c6004803603604081101561013c57600080fd5b810190808035906020019092919080359060200190929190505050610704565b6040518082815260200191505060405180910390f35b61017a6108e4565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101ba57808201518184015260208101905061019f565b50505050905090810190601f1680156101e75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102416004803603604081101561020b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061091d565b604051808215151515815260200191505060405180910390f35b610263610a0f565b6040518082815260200191505060405180910390f35b6102e56004803603606081101561028f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610a19565b604051808215151515815260200191505060405180910390f35b610307610ddc565b6040518082815260200191505060405180910390f35b6103696004803603604081101561033357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610de1565b604051808215151515815260200191505060405180910390f35b6103af6004803603602081101561039957600080fd5b8101908080359060200190929190505050610fdd565b005b6103f3600480360360208110156103c757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061110d565b6040518082815260200191505060405180910390f35b61041161116a565b005b61041b6112eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610465611314565b604051808215151515815260200191505060405180910390f35b6104ad6004803603602081101561049557600080fd5b8101908080351515906020019092919050505061132b565b005b6104b761140a565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104f75780820151818401526020810190506104dc565b50505050905090810190601f1680156105245780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61057e6004803603604081101561054857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611443565b604051808215151515815260200191505060405180910390f35b6105e4600480360360408110156105ae57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506116d3565b604051808215151515815260200191505060405180910390f35b6106066117e7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6106aa6004803603604081101561065e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061180c565b6040518082815260200191505060405180910390f35b610702600480360360208110156106d657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611893565b005b60003373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146107c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600082141561081557827f72725a3b1e5bd622d6bcd1339bb31279c351abe8f541ac7fd320f24e1b1641f26001546040518082815260200191505060405180910390a260015490506108de565b61082a82600154611a9990919063ffffffff16565b6001819055506000196fffffffffffffffffffffffffffffffff16600154111561086a576000196fffffffffffffffffffffffffffffffff166001819055505b6108986001546009600a0a633b9aca00026000198161088557fe5b0660001903611ae390919063ffffffff16565b600281905550827f72725a3b1e5bd622d6bcd1339bb31279c351abe8f541ac7fd320f24e1b1641f26001546040518082815260200191505060405180910390a260015490505b92915050565b6040518060400160405280600581526020017f4445464c4100000000000000000000000000000000000000000000000000000081525081565b600081600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600154905090565b600082600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610a5657600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610a8f57600080fd5b60001515600560009054906101000a900460ff16151514610b18576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7472616e73666572732068617665206265656e2064697361626c65640000000081525060200191505060405180910390fd5b610ba783600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a9990919063ffffffff16565b600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610c3e60025485611b2d90919063ffffffff16565b9050610c9281600360008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a9990919063ffffffff16565b600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610d2781600360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bb390919063ffffffff16565b600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a36001925050509392505050565b600981565b6000610e7282600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bb390919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b60001515600560009054906101000a900460ff16151514611066576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7472616e73666572732068617665206265656e2064697361626c65640000000081525060200191505060405180910390fd5b806110703361110d565b10156110e4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f4275726e20616d6f756e7420657863656564732062616c616e6365000000000081525060200191505060405180910390fd5b6110ef600082611c3b565b61110481600154611a9990919063ffffffff16565b60018190555050565b6000611163600254600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611ae390919063ffffffff16565b9050919050565b3373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461122c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600560009054906101000a900460ff16905090565b3373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600560006101000a81548160ff02191690831515021790555050565b6040518060400160405280600581526020017f4445464c4100000000000000000000000000000000000000000000000000000081525081565b600080600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050808310611553576000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506115e7565b6115668382611a9990919063ffffffff16565b600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b600082600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561171057600080fd5b3073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561174957600080fd5b60001515600560009054906101000a900460ff161515146117d2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f7472616e73666572732068617665206265656e2064697361626c65640000000081525060200191505060405180910390fd5b6117dc8484611c3b565b600191505092915050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b3373ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611955576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156119db576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611f6f6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000611adb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611de8565b905092915050565b6000611b2583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611ea8565b905092915050565b600080831415611b405760009050611bad565b6000828402905082848281611b5157fe5b0414611ba8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611f956021913960400191505060405180910390fd5b809150505b92915050565b600080828401905083811015611c31576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b6000611c5260025483611b2d90919063ffffffff16565b9050611ca681600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a9990919063ffffffff16565b600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611d3b81600360008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bb390919063ffffffff16565b600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3505050565b6000838311158290611e95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611e5a578082015181840152602081019050611e3f565b50505050905090810190601f168015611e875780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b60008083118290611f54576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611f19578082015181840152602081019050611efe565b50505050905090810190601f168015611f465780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581611f6057fe5b04905080915050939250505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122039c8323387595a76fd9d2ee360d34cb19ce86e3a52dc11dcdbfa10c19681ff5f64736f6c63430006000033

Deployed Bytecode Sourcemap

2384:5161:0:-:0;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2384:5161:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3720:537;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3720:537:0;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2974:37;;;:::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;2974:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6014:225;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6014:225:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4557:111;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5509:497;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5509:497:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3064:36;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6247:331;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6247:331:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7309:233;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7309:233:0;;;;;;;;;;;;;;;;;:::i;:::-;;4676:147;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4676:147:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;1977:148;;;:::i;:::-;;1765:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7205:96;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7098:99;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7098:99:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;3018:39;;;:::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;3018:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6586:504;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6586:504:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4831:189;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4831:189:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1515:21;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;5339:162;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5339:162:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;2133:244;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2133:244:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;3720:537;3815:7;1902:10;1892:20;;:6;;;;;;;;;;;:20;;;1884:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3859:1:::1;3844:11;:16;3840:118;;;3892:5;3882:30;3899:12;;3882:30;;;;;;;;;;;;;;;;;;3934:12;;3927:19;;;;3840:118;3985:29;4002:11;3985:12;;:16;;:29;;;;:::i;:::-;3970:12;:44;;;;3439:1;3430:11;4048:10;;4033:12;;:25;4029:83;;;3439:1;3430:11;4090:10;;4075:12;:25;;;;4029:83;4143:28;4158:12;;3145:1;3270:2;:12;3262:5;:20;3201:1;3192:11;3344:38;;;;;;3201:1;3192:11;3329:54;4143:14;;:28;;;;:::i;:::-;4124:16;:47;;;;4199:5;4189:30;4206:12;;4189:30;;;;;;;;;;;;;;;;;;4237:12;;4230:19;;1960:1;3720:537:::0;;;;:::o;2974:37::-;;;;;;;;;;;;;;;;;;;:::o;6014:225::-;6089:4;6152:5;6111:17;:29;6129:10;6111:29;;;;;;;;;;;;;;;:38;6141:7;6111:38;;;;;;;;;;;;;;;:46;;;;6194:7;6173:36;;6182:10;6173:36;;;6203:5;6173:36;;;;;;;;;;;;;;;;;;6227:4;6220:11;;6014:225;;;;:::o;4557:111::-;4616:7;4648:12;;4641:19;;4557:111;:::o;5509:497::-;5644:4;5604:2;2604:3;2590:18;;:2;:18;;;;2582:27;;;;;;2642:4;2628:19;;:2;:19;;;;2620:28;;;;;;2744:5:::1;2723:26;;:17;;;;;;;;;;;:26;;;2715:67;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;5704:46:::2;5744:5;5704:17;:23;5722:4;5704:23;;;;;;;;;;;;;;;:35;5728:10;5704:35;;;;;;;;;;;;;;;;:39;;:46;;;;:::i;:::-;5666:17;:23;5684:4;5666:23;;;;;;;;;;;;;;;:35;5690:10;5666:35;;;;;;;;;;;;;;;:84;;;;5763:16;5782:27;5792:16;;5782:5;:9;;:27;;;;:::i;:::-;5763:46;;5841:32;5864:8;5841:12;:18;5854:4;5841:18;;;;;;;;;;;;;;;;:22;;:32;;;;:::i;:::-;5820:12;:18;5833:4;5820:18;;;;;;;;;;;;;;;:53;;;;5903:30;5924:8;5903:12;:16;5916:2;5903:16;;;;;;;;;;;;;;;;:20;;:30;;;;:::i;:::-;5884:12;:16;5897:2;5884:16;;;;;;;;;;;;;;;:49;;;;5964:2;5949:25;;5958:4;5949:25;;;5968:5;5949:25;;;;;;;;;;;;;;;;;;5994:4;5987:11;;;5509:497:::0;;;;;;:::o;3064:36::-;3099:1;3064:36;:::o;6247:331::-;6337:4;6409:54;6452:10;6409:17;:29;6427:10;6409:29;;;;;;;;;;;;;;;:38;6439:7;6409:38;;;;;;;;;;;;;;;;:42;;:54;;;;:::i;:::-;6359:17;:29;6377:10;6359:29;;;;;;;;;;;;;;;:38;6389:7;6359:38;;;;;;;;;;;;;;;:104;;;;6500:7;6479:69;;6488:10;6479:69;;;6509:17;:29;6527:10;6509:29;;;;;;;;;;;;;;;:38;6539:7;6509:38;;;;;;;;;;;;;;;;6479:69;;;;;;;;;;;;;;;;;;6566:4;6559:11;;6247:331;;;;:::o;7309:233::-;2744:5;2723:26;;:17;;;;;;;;;;;:26;;;2715:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7406:6:::1;7381:21;7391:10;7381:9;:21::i;:::-;:31;;7373:71;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;7455:29;7473:1;7477:6;7455:9;:29::i;:::-;7510:24;7527:6;7510:12;;:16;;:24;;;;:::i;:::-;7495:12;:39;;;;7309:233:::0;:::o;4676:147::-;4744:7;4776:39;4798:16;;4776:12;:17;4789:3;4776:17;;;;;;;;;;;;;;;;:21;;:39;;;;:::i;:::-;4769:46;;4676:147;;;:::o;1977:148::-;1902:10;1892:20;;:6;;;;;;;;;;;:20;;;1884:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2084:1:::1;2047:40;;2068:6;::::0;::::1;;;;;;;;;2047:40;;;;;;;;;;;;2115:1;2098:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;1977:148::o:0;1765:79::-;1803:7;1830:6;;;;;;;;;;;1823:13;;1765:79;:::o;7205:96::-;7253:4;7276:17;;;;;;;;;;;7269:24;;7205:96;:::o;7098:99::-;1902:10;1892:20;;:6;;;;;;;;;;;:20;;;1884:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7184:5:::1;7164:17;;:25;;;;;;;;;;;;;;;;;;7098:99:::0;:::o;3018:39::-;;;;;;;;;;;;;;;;;;;:::o;6586:504::-;6681:4;6703:16;6722:17;:29;6740:10;6722:29;;;;;;;;;;;;;;;:38;6752:7;6722:38;;;;;;;;;;;;;;;;6703:57;;6794:8;6775:15;:27;6771:205;;6860:1;6819:17;:29;6837:10;6819:29;;;;;;;;;;;;;;;:38;6849:7;6819:38;;;;;;;;;;;;;;;:42;;;;6771:205;;;6935:29;6948:15;6935:8;:12;;:29;;;;:::i;:::-;6894:17;:29;6912:10;6894:29;;;;;;;;;;;;;;;:38;6924:7;6894:38;;;;;;;;;;;;;;;:70;;;;6771:205;7012:7;6991:69;;7000:10;6991:69;;;7021:17;:29;7039:10;7021:29;;;;;;;;;;;;;;;:38;7051:7;7021:38;;;;;;;;;;;;;;;;6991:69;;;;;;;;;;;;;;;;;;7078:4;7071:11;;;6586:504;;;;:::o;4831:189::-;4948:4;4908:2;2604:3;2590:18;;:2;:18;;;;2582:27;;;;;;2642:4;2628:19;;:2;:19;;;;2620:28;;;;;;2744:5:::1;2723:26;;:17;;;;;;;;;;;:26;;;2715:67;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;4970:20:::2;4980:2;4984:5;4970:9;:20::i;:::-;5008:4;5001:11;;4831:189:::0;;;;;:::o;1515:21::-;;;;;;;;;;;;;:::o;5339:162::-;5427:7;5459:17;:25;5477:6;5459:25;;;;;;;;;;;;;;;:34;5485:7;5459:34;;;;;;;;;;;;;;;;5452:41;;5339:162;;;;:::o;2133:244::-;1902:10;1892:20;;:6;;;;;;;;;;;:20;;;1884:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2242:1:::1;2222:22;;:8;:22;;;;2214:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2332:8;2303:38;;2324:6;::::0;::::1;;;;;;;;;2303:38;;;;;;;;;;;;2361:8;2352:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;2133:244:::0;:::o;239:136::-;297:7;324:43;328:1;331;324:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;317:50;;239:136;;;;:::o;841:132::-;899:7;926:39;930:1;933;926:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;919:46;;841:132;;;;:::o;583:250::-;641:7;670:1;665;:6;661:47;;;695:1;688:8;;;;661:47;720:9;736:1;732;:5;720:17;;765:1;760;756;:5;;;;;;:10;748:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;824:1;817:8;;;583:250;;;;;:::o;50:181::-;108:7;128:9;144:1;140;:5;128:17;;169:1;164;:6;;156:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;222:1;215:8;;;50:181;;;;:::o;5028:303::-;5094:16;5113:27;5123:16;;5113:5;:9;;:27;;;;:::i;:::-;5094:46;;5178:38;5207:8;5178:12;:24;5191:10;5178:24;;;;;;;;;;;;;;;;:28;;:38;;;;:::i;:::-;5151:12;:24;5164:10;5151:24;;;;;;;;;;;;;;;:65;;;;5246:30;5267:8;5246:12;:16;5259:2;5246:16;;;;;;;;;;;;;;;;:20;;:30;;;;:::i;:::-;5227:12;:16;5240:2;5227:16;;;;;;;;;;;;;;;:49;;;;5313:2;5292:31;;5301:10;5292:31;;;5317:5;5292:31;;;;;;;;;;;;;;;;;;5028:303;;;:::o;383:192::-;469:7;502:1;497;:6;;505:12;489: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;489:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;529:9;545:1;541;:5;529:17;;566:1;559:8;;;383:192;;;;;:::o;981:191::-;1067:7;1099:1;1095;:5;1102:12;1087:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;1087:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1126:9;1142:1;1138;:5;;;;;;1126:17;;1163:1;1156:8;;;981:191;;;;;:::o

Swarm Source

ipfs://39c8323387595a76fd9d2ee360d34cb19ce86e3a52dc11dcdbfa10c19681ff5f
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.