ETH Price: $2,004.17 (-0.12%)

Contract

0xF716380d87b9f9d25Ba749E1735Ca8b1E0E3b392
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve218833042025-02-19 22:08:5935 days ago1740002939IN
0xF716380d...1E0E3b392
0 ETH0.000030071.20927879
Transfer188487912023-12-23 13:24:23460 days ago1703337863IN
0xF716380d...1E0E3b392
0 ETH0.0013206723.99619419
Approve187667692023-12-12 1:16:23471 days ago1702343783IN
0xF716380d...1E0E3b392
0 ETH0.001113537.04752202
Approve187667682023-12-12 1:16:11471 days ago1702343771IN
0xF716380d...1E0E3b392
0 ETH0.0017089236.23988745
Approve187430222023-12-08 17:26:35474 days ago1702056395IN
0xF716380d...1E0E3b392
0 ETH0.0019297741.15359167
Transfer187425252023-12-08 15:46:47475 days ago1702050407IN
0xF716380d...1E0E3b392
0 ETH0.00188249.5772622
Transfer187425222023-12-08 15:46:11475 days ago1702050371IN
0xF716380d...1E0E3b392
0 ETH0.0019409951.13136552
Transfer187425182023-12-08 15:45:23475 days ago1702050323IN
0xF716380d...1E0E3b392
0 ETH0.0017135351.88138365
Approve187422302023-12-08 14:47:11475 days ago1702046831IN
0xF716380d...1E0E3b392
0 ETH0.0027563758.4522859
Transfer187422202023-12-08 14:45:11475 days ago1702046711IN
0xF716380d...1E0E3b392
0 ETH0.0022605559.54953247
Transfer187422172023-12-08 14:44:35475 days ago1702046675IN
0xF716380d...1E0E3b392
0 ETH0.0023570362.09091062
Transfer187422102023-12-08 14:43:11475 days ago1702046591IN
0xF716380d...1E0E3b392
0 ETH0.0023277461.31949115
Transfer187422082023-12-08 14:42:47475 days ago1702046567IN
0xF716380d...1E0E3b392
0 ETH0.0023388561.61207159
Transfer187422062023-12-08 14:42:23475 days ago1702046543IN
0xF716380d...1E0E3b392
0 ETH0.0023669662.35252838
Approve187422022023-12-08 14:41:35475 days ago1702046495IN
0xF716380d...1E0E3b392
0 ETH0.0032027767.83249858
Approve187421422023-12-08 14:29:35475 days ago1702045775IN
0xF716380d...1E0E3b392
0 ETH0.0028732160.92993074
Approve187421332023-12-08 14:27:47475 days ago1702045667IN
0xF716380d...1E0E3b392
0 ETH0.0028812661.10063115
Approve187421322023-12-08 14:27:35475 days ago1702045655IN
0xF716380d...1E0E3b392
0 ETH0.0028508860.37968783
Approve187420882023-12-08 14:18:47475 days ago1702045127IN
0xF716380d...1E0E3b392
0 ETH0.003053964.67947207
Approve187420782023-12-08 14:16:47475 days ago1702045007IN
0xF716380d...1E0E3b392
0 ETH0.0029823463.16380124
Approve187420762023-12-08 14:16:23475 days ago1702044983IN
0xF716380d...1E0E3b392
0 ETH0.0032713869.37364203
Approve187420492023-12-08 14:10:59475 days ago1702044659IN
0xF716380d...1E0E3b392
0 ETH0.0027975759.32594968
Approve187420272023-12-08 14:06:35475 days ago1702044395IN
0xF716380d...1E0E3b392
0 ETH0.0031224966.21636249
Approve187420262023-12-08 14:06:23475 days ago1702044383IN
0xF716380d...1E0E3b392
0 ETH0.0031763367.35801746
Approve187420252023-12-08 14:06:11475 days ago1702044371IN
0xF716380d...1E0E3b392
0 ETH0.0031156666.07137606
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:
GeminiToken

Compiler Version
v0.8.5+commit.a4f2e591

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-12-07
*/

// SPDX-License-Identifier: MIT

// pragma solidity ^0.8.5;

interface IERC20 {
   
    function totalSupply() external view returns (uint256);

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

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

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

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

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

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

    event Approval(address indexed owner, address indexed spender, uint256 value);
}


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

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }
}

abstract contract Ownable is Context {
    address private _owner;

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

    constructor() {
        _setOwner(_msgSender());
    }

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

    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

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

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

library SafeMath {
 
    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            uint256 c = a + b;
            if (c < a) return (false, 0);
            return (true, c);
        }
    }

    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b > a) return (false, 0);
            return (true, a - b);
        }
    }

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

    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a / b);
        }
    }

    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        unchecked {
            if (b == 0) return (false, 0);
            return (true, a % b);
        }
    }

    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        return a + b;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return a - b;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        return a * b;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return a / b;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return a % b;
    }

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

    function div(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        unchecked {
            require(b > 0, errorMessage);
            return a / b;
        }
    }

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

interface IUniswapV2Factory {

    function getPair(address tokenA, address tokenB) external view returns (address pair);

    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function factory() external pure returns (address);

    function WETH() external pure returns (address);
}


pragma solidity ^0.8.5;


contract GeminiToken is IERC20, Ownable {
    using SafeMath for uint256;


    mapping(address => uint256) private _balances;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping (address => bool) public isExcludedFromFee;
    string private _name;
    string private _symbol;
    uint8 private _decimals;
    uint256 private _totalSupply;
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapPair;
    uint256 public _totalTaxIfBuying = 0;
    uint256 public _totalTaxIfSelling = 0;

    constructor(
        string memory name_,
        string memory symbol_,
        uint256 totalSupply_,
        address owner_,
        address router_
    ) payable {
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(router_);

        uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _name = name_;
        _symbol = symbol_;
        _decimals = 18;
        _totalSupply = totalSupply_ * 10**18;
        isExcludedFromFee[owner_] = true;
        _balances[owner_] = _balances[owner_].add(_totalSupply);
        emit Transfer(address(0), owner_, _totalSupply);
    }


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

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

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

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

    /**
     * @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(_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(_msgSender(), spender, amount);
        return true;
    }

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

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

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

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

        _balances[sender] = _balances[sender].sub(amount,"ERC20: transfer amount exceeds balance");
        
        uint256 finalAmount = (isExcludedFromFee[sender] || isExcludedFromFee[recipient]) ?
                                        amount : takeFee(sender, recipient, amount);

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

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

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

    function excludeMultipleAccountsFromFees(address[] calldata accounts, bool excluded) public onlyOwner {
        for(uint256 i = 0; i < accounts.length; i++) {
            isExcludedFromFee[accounts[i]] = excluded;
        }
    }
    function setBuyDestFee(uint256 newBuyDestroyFee) public onlyOwner {
        _totalTaxIfBuying = newBuyDestroyFee;
    }

    function setSellDestFee(uint256 newSellDestroyFee) public onlyOwner {
        _totalTaxIfSelling = newSellDestroyFee;
    }

    function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) {

        uint256 feeAmount = 0;
        if(uniswapPair == sender) {
            feeAmount = amount.mul(_totalTaxIfBuying).div(100);
            
        }
        else if(uniswapPair == recipient) {
            feeAmount = amount.mul(_totalTaxIfSelling).div(100);
        }

        if(feeAmount > 0) {
            _balances[address(0)] = _balances[address(0)].add(feeAmount);
            emit Transfer(sender, address(0), feeAmount);
        }

        return amount.sub(feeAmount);
    }


}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"uint256","name":"totalSupply_","type":"uint256"},{"internalType":"address","name":"owner_","type":"address"},{"internalType":"address","name":"router_","type":"address"}],"stateMutability":"payable","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":[],"name":"_totalTaxIfBuying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalTaxIfSelling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"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":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyDestroyFee","type":"uint256"}],"name":"setBuyDestFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newSellDestroyFee","type":"uint256"}],"name":"setSellDestFee","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"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60806040526000600a556000600b5560405162002b6038038062002b60833981810160405281019062000033919062000675565b62000053620000476200040360201b60201c565b6200040b60201b60201c565b60008190508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200009f57600080fd5b505afa158015620000b4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000da919062000643565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200013d57600080fd5b505afa15801562000152573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000178919062000643565b6040518363ffffffff1660e01b8152600401620001979291906200075d565b602060405180830381600087803b158015620001b257600080fd5b505af1158015620001c7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ed919062000643565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550856004908051906020019062000245929190620004e7565b5084600590805190602001906200025e929190620004e7565b506012600660006101000a81548160ff021916908360ff160217905550670de0b6b3a76400008462000291919062000863565b6007819055506001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200034a600754600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620004cf60201b62000d471790919060201c565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600754604051620003ef91906200078a565b60405180910390a350505050505062000a8a565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60008183620004df919062000806565b905092915050565b828054620004f59062000938565b90600052602060002090601f01602090048101928262000519576000855562000565565b82601f106200053457805160ff191683800117855562000565565b8280016001018555821562000565579182015b828111156200056457825182559160200191906001019062000547565b5b50905062000574919062000578565b5090565b5b808211156200059357600081600090555060010162000579565b5090565b6000620005ae620005a884620007d0565b620007a7565b905082815260208101848484011115620005cd57620005cc62000a36565b5b620005da84828562000902565b509392505050565b600081519050620005f38162000a56565b92915050565b600082601f83011262000611576200061062000a31565b5b81516200062384826020860162000597565b91505092915050565b6000815190506200063d8162000a70565b92915050565b6000602082840312156200065c576200065b62000a40565b5b60006200066c84828501620005e2565b91505092915050565b600080600080600060a0868803121562000694576200069362000a40565b5b600086015167ffffffffffffffff811115620006b557620006b462000a3b565b5b620006c388828901620005f9565b955050602086015167ffffffffffffffff811115620006e757620006e662000a3b565b5b620006f588828901620005f9565b945050604062000708888289016200062c565b93505060606200071b88828901620005e2565b92505060806200072e88828901620005e2565b9150509295509295909350565b6200074681620008c4565b82525050565b6200075781620008f8565b82525050565b60006040820190506200077460008301856200073b565b6200078360208301846200073b565b9392505050565b6000602082019050620007a160008301846200074c565b92915050565b6000620007b3620007c6565b9050620007c182826200096e565b919050565b6000604051905090565b600067ffffffffffffffff821115620007ee57620007ed62000a02565b5b620007f98262000a45565b9050602081019050919050565b60006200081382620008f8565b91506200082083620008f8565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620008585762000857620009a4565b5b828201905092915050565b60006200087082620008f8565b91506200087d83620008f8565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615620008b957620008b8620009a4565b5b828202905092915050565b6000620008d182620008d8565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b60005b838110156200092257808201518184015260208101905062000905565b8381111562000932576000848401525b50505050565b600060028204905060018216806200095157607f821691505b60208210811415620009685762000967620009d3565b5b50919050565b620009798262000a45565b810181811067ffffffffffffffff821117156200099b576200099a62000a02565b5b80604052505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b62000a6181620008c4565b811462000a6d57600080fd5b50565b62000a7b81620008f8565b811462000a8757600080fd5b50565b6120c68062000a9a6000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c8063865541e7116100b8578063c492f0461161007c578063c492f0461461038f578063c816841b146103ab578063dd62ed3e146103c9578063f0cd1dac146103f9578063f2fde38b14610417578063f744bf221461043357610142565b8063865541e7146102d75780638da5cb5b146102f357806395d89b4114610311578063a457c2d71461032f578063a9059cbb1461035f57610142565b8063313ce5671161010a578063313ce56714610201578063395093511461021f5780635342acb41461024f57806370a082311461027f578063715018a6146102af57806382eefb43146102b957610142565b806306fdde0314610147578063095ea7b3146101655780631694505e1461019557806318160ddd146101b357806323b872dd146101d1575b600080fd5b61014f61044f565b60405161015c91906119ce565b60405180910390f35b61017f600480360381019061017a919061175a565b6104e1565b60405161018c9190611998565b60405180910390f35b61019d6104ff565b6040516101aa91906119b3565b60405180910390f35b6101bb610525565b6040516101c89190611ab0565b60405180910390f35b6101eb60048036038101906101e69190611707565b61052f565b6040516101f89190611998565b60405180910390f35b610209610608565b6040516102169190611acb565b60405180910390f35b6102396004803603810190610234919061175a565b61061f565b6040516102469190611998565b60405180910390f35b6102696004803603810190610264919061169a565b6106d2565b6040516102769190611998565b60405180910390f35b6102996004803603810190610294919061169a565b6106f2565b6040516102a69190611ab0565b60405180910390f35b6102b761073b565b005b6102c16107c3565b6040516102ce9190611ab0565b60405180910390f35b6102f160048036038101906102ec91906117fa565b6107c9565b005b6102fb61084f565b604051610308919061197d565b60405180910390f35b610319610878565b60405161032691906119ce565b60405180910390f35b6103496004803603810190610344919061175a565b61090a565b6040516103569190611998565b60405180910390f35b6103796004803603810190610374919061175a565b6109d7565b6040516103869190611998565b60405180910390f35b6103a960048036038101906103a4919061179a565b6109f5565b005b6103b3610b16565b6040516103c0919061197d565b60405180910390f35b6103e360048036038101906103de91906116c7565b610b3c565b6040516103f09190611ab0565b60405180910390f35b610401610bc3565b60405161040e9190611ab0565b60405180910390f35b610431600480360381019061042c919061169a565b610bc9565b005b61044d600480360381019061044891906117fa565b610cc1565b005b60606004805461045e90611cc3565b80601f016020809104026020016040519081016040528092919081815260200182805461048a90611cc3565b80156104d75780601f106104ac576101008083540402835291602001916104d7565b820191906000526020600020905b8154815290600101906020018083116104ba57829003601f168201915b5050505050905090565b60006104f56104ee610d5d565b8484610d65565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600754905090565b600061053c848484610f30565b6105fd84610548610d5d565b6105f88560405180606001604052806028815260200161204460289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105ae610d5d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461127a9092919063ffffffff16565b610d65565b600190509392505050565b6000600660009054906101000a900460ff16905090565b60006106c861062c610d5d565b846106c3856002600061063d610d5d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4790919063ffffffff16565b610d65565b6001905092915050565b60036020528060005260406000206000915054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610743610d5d565b73ffffffffffffffffffffffffffffffffffffffff1661076161084f565b73ffffffffffffffffffffffffffffffffffffffff16146107b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ae90611a50565b60405180910390fd5b6107c160006112cf565b565b600b5481565b6107d1610d5d565b73ffffffffffffffffffffffffffffffffffffffff166107ef61084f565b73ffffffffffffffffffffffffffffffffffffffff1614610845576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083c90611a50565b60405180910390fd5b80600a8190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606005805461088790611cc3565b80601f01602080910402602001604051908101604052809291908181526020018280546108b390611cc3565b80156109005780601f106108d557610100808354040283529160200191610900565b820191906000526020600020905b8154815290600101906020018083116108e357829003601f168201915b5050505050905090565b60006109cd610917610d5d565b846109c88560405180606001604052806025815260200161206c6025913960026000610941610d5d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461127a9092919063ffffffff16565b610d65565b6001905092915050565b60006109eb6109e4610d5d565b8484610f30565b6001905092915050565b6109fd610d5d565b73ffffffffffffffffffffffffffffffffffffffff16610a1b61084f565b73ffffffffffffffffffffffffffffffffffffffff1614610a71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6890611a50565b60405180910390fd5b60005b83839050811015610b10578160036000868685818110610a9757610a96611dcb565b5b9050602002016020810190610aac919061169a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610b0890611cf5565b915050610a74565b50505050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600a5481565b610bd1610d5d565b73ffffffffffffffffffffffffffffffffffffffff16610bef61084f565b73ffffffffffffffffffffffffffffffffffffffff1614610c45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3c90611a50565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610cb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cac90611a10565b60405180910390fd5b610cbe816112cf565b50565b610cc9610d5d565b73ffffffffffffffffffffffffffffffffffffffff16610ce761084f565b73ffffffffffffffffffffffffffffffffffffffff1614610d3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3490611a50565b60405180910390fd5b80600b8190555050565b60008183610d559190611b02565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610dd5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dcc90611a90565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3c90611a30565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f239190611ab0565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fa0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9790611a70565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611010576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611007906119f0565b60405180910390fd5b61107c8160405180606001604052806026815260200161201e60269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461127a9092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806111625750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61117657611171848484611393565b611178565b815b90506111cc81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4790919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161126c9190611ab0565b60405180910390a350505050565b60008383111582906112c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112b991906119ce565b60405180910390fd5b5082840390509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080600090508473ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561141f57611418606461140a600a54866115c390919063ffffffff16565b6115d990919063ffffffff16565b90506114a1565b8373ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156114a05761149d606461148f600b54866115c390919063ffffffff16565b6115d990919063ffffffff16565b90505b5b60008111156115a6576114fc81600160008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4790919063ffffffff16565b600160008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161159d9190611ab0565b60405180910390a35b6115b981846115ef90919063ffffffff16565b9150509392505050565b600081836115d19190611b89565b905092915050565b600081836115e79190611b58565b905092915050565b600081836115fd9190611be3565b905092915050565b60008135905061161481611fd8565b92915050565b60008083601f8401126116305761162f611dff565b5b8235905067ffffffffffffffff81111561164d5761164c611dfa565b5b60208301915083602082028301111561166957611668611e04565b5b9250929050565b60008135905061167f81611fef565b92915050565b60008135905061169481612006565b92915050565b6000602082840312156116b0576116af611e0e565b5b60006116be84828501611605565b91505092915050565b600080604083850312156116de576116dd611e0e565b5b60006116ec85828601611605565b92505060206116fd85828601611605565b9150509250929050565b6000806000606084860312156117205761171f611e0e565b5b600061172e86828701611605565b935050602061173f86828701611605565b925050604061175086828701611685565b9150509250925092565b6000806040838503121561177157611770611e0e565b5b600061177f85828601611605565b925050602061179085828601611685565b9150509250929050565b6000806000604084860312156117b3576117b2611e0e565b5b600084013567ffffffffffffffff8111156117d1576117d0611e09565b5b6117dd8682870161161a565b935093505060206117f086828701611670565b9150509250925092565b6000602082840312156118105761180f611e0e565b5b600061181e84828501611685565b91505092915050565b61183081611c17565b82525050565b61183f81611c29565b82525050565b61184e81611c6c565b82525050565b600061185f82611ae6565b6118698185611af1565b9350611879818560208601611c90565b61188281611e13565b840191505092915050565b600061189a602383611af1565b91506118a582611e24565b604082019050919050565b60006118bd602683611af1565b91506118c882611e73565b604082019050919050565b60006118e0602283611af1565b91506118eb82611ec2565b604082019050919050565b6000611903602083611af1565b915061190e82611f11565b602082019050919050565b6000611926602583611af1565b915061193182611f3a565b604082019050919050565b6000611949602483611af1565b915061195482611f89565b604082019050919050565b61196881611c55565b82525050565b61197781611c5f565b82525050565b60006020820190506119926000830184611827565b92915050565b60006020820190506119ad6000830184611836565b92915050565b60006020820190506119c86000830184611845565b92915050565b600060208201905081810360008301526119e88184611854565b905092915050565b60006020820190508181036000830152611a098161188d565b9050919050565b60006020820190508181036000830152611a29816118b0565b9050919050565b60006020820190508181036000830152611a49816118d3565b9050919050565b60006020820190508181036000830152611a69816118f6565b9050919050565b60006020820190508181036000830152611a8981611919565b9050919050565b60006020820190508181036000830152611aa98161193c565b9050919050565b6000602082019050611ac5600083018461195f565b92915050565b6000602082019050611ae0600083018461196e565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611b0d82611c55565b9150611b1883611c55565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b4d57611b4c611d3e565b5b828201905092915050565b6000611b6382611c55565b9150611b6e83611c55565b925082611b7e57611b7d611d6d565b5b828204905092915050565b6000611b9482611c55565b9150611b9f83611c55565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611bd857611bd7611d3e565b5b828202905092915050565b6000611bee82611c55565b9150611bf983611c55565b925082821015611c0c57611c0b611d3e565b5b828203905092915050565b6000611c2282611c35565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000611c7782611c7e565b9050919050565b6000611c8982611c35565b9050919050565b60005b83811015611cae578082015181840152602081019050611c93565b83811115611cbd576000848401525b50505050565b60006002820490506001821680611cdb57607f821691505b60208210811415611cef57611cee611d9c565b5b50919050565b6000611d0082611c55565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611d3357611d32611d3e565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b611fe181611c17565b8114611fec57600080fd5b50565b611ff881611c29565b811461200357600080fd5b50565b61200f81611c55565b811461201a57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220258aabb2d25603c8fa26671256c648ac7df59030d09dffb16928c5339036c70164736f6c6343000805003300000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000005f5e100000000000000000000000000b0b90c3020a58c7fb3a43cddcfd560273b7567590000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000000000000000000000000000000000000000000647656d696e690000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000647656d696e690000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101425760003560e01c8063865541e7116100b8578063c492f0461161007c578063c492f0461461038f578063c816841b146103ab578063dd62ed3e146103c9578063f0cd1dac146103f9578063f2fde38b14610417578063f744bf221461043357610142565b8063865541e7146102d75780638da5cb5b146102f357806395d89b4114610311578063a457c2d71461032f578063a9059cbb1461035f57610142565b8063313ce5671161010a578063313ce56714610201578063395093511461021f5780635342acb41461024f57806370a082311461027f578063715018a6146102af57806382eefb43146102b957610142565b806306fdde0314610147578063095ea7b3146101655780631694505e1461019557806318160ddd146101b357806323b872dd146101d1575b600080fd5b61014f61044f565b60405161015c91906119ce565b60405180910390f35b61017f600480360381019061017a919061175a565b6104e1565b60405161018c9190611998565b60405180910390f35b61019d6104ff565b6040516101aa91906119b3565b60405180910390f35b6101bb610525565b6040516101c89190611ab0565b60405180910390f35b6101eb60048036038101906101e69190611707565b61052f565b6040516101f89190611998565b60405180910390f35b610209610608565b6040516102169190611acb565b60405180910390f35b6102396004803603810190610234919061175a565b61061f565b6040516102469190611998565b60405180910390f35b6102696004803603810190610264919061169a565b6106d2565b6040516102769190611998565b60405180910390f35b6102996004803603810190610294919061169a565b6106f2565b6040516102a69190611ab0565b60405180910390f35b6102b761073b565b005b6102c16107c3565b6040516102ce9190611ab0565b60405180910390f35b6102f160048036038101906102ec91906117fa565b6107c9565b005b6102fb61084f565b604051610308919061197d565b60405180910390f35b610319610878565b60405161032691906119ce565b60405180910390f35b6103496004803603810190610344919061175a565b61090a565b6040516103569190611998565b60405180910390f35b6103796004803603810190610374919061175a565b6109d7565b6040516103869190611998565b60405180910390f35b6103a960048036038101906103a4919061179a565b6109f5565b005b6103b3610b16565b6040516103c0919061197d565b60405180910390f35b6103e360048036038101906103de91906116c7565b610b3c565b6040516103f09190611ab0565b60405180910390f35b610401610bc3565b60405161040e9190611ab0565b60405180910390f35b610431600480360381019061042c919061169a565b610bc9565b005b61044d600480360381019061044891906117fa565b610cc1565b005b60606004805461045e90611cc3565b80601f016020809104026020016040519081016040528092919081815260200182805461048a90611cc3565b80156104d75780601f106104ac576101008083540402835291602001916104d7565b820191906000526020600020905b8154815290600101906020018083116104ba57829003601f168201915b5050505050905090565b60006104f56104ee610d5d565b8484610d65565b6001905092915050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600754905090565b600061053c848484610f30565b6105fd84610548610d5d565b6105f88560405180606001604052806028815260200161204460289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006105ae610d5d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461127a9092919063ffffffff16565b610d65565b600190509392505050565b6000600660009054906101000a900460ff16905090565b60006106c861062c610d5d565b846106c3856002600061063d610d5d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4790919063ffffffff16565b610d65565b6001905092915050565b60036020528060005260406000206000915054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610743610d5d565b73ffffffffffffffffffffffffffffffffffffffff1661076161084f565b73ffffffffffffffffffffffffffffffffffffffff16146107b7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ae90611a50565b60405180910390fd5b6107c160006112cf565b565b600b5481565b6107d1610d5d565b73ffffffffffffffffffffffffffffffffffffffff166107ef61084f565b73ffffffffffffffffffffffffffffffffffffffff1614610845576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161083c90611a50565b60405180910390fd5b80600a8190555050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606005805461088790611cc3565b80601f01602080910402602001604051908101604052809291908181526020018280546108b390611cc3565b80156109005780601f106108d557610100808354040283529160200191610900565b820191906000526020600020905b8154815290600101906020018083116108e357829003601f168201915b5050505050905090565b60006109cd610917610d5d565b846109c88560405180606001604052806025815260200161206c6025913960026000610941610d5d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461127a9092919063ffffffff16565b610d65565b6001905092915050565b60006109eb6109e4610d5d565b8484610f30565b6001905092915050565b6109fd610d5d565b73ffffffffffffffffffffffffffffffffffffffff16610a1b61084f565b73ffffffffffffffffffffffffffffffffffffffff1614610a71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6890611a50565b60405180910390fd5b60005b83839050811015610b10578160036000868685818110610a9757610a96611dcb565b5b9050602002016020810190610aac919061169a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080610b0890611cf5565b915050610a74565b50505050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600a5481565b610bd1610d5d565b73ffffffffffffffffffffffffffffffffffffffff16610bef61084f565b73ffffffffffffffffffffffffffffffffffffffff1614610c45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c3c90611a50565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610cb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cac90611a10565b60405180910390fd5b610cbe816112cf565b50565b610cc9610d5d565b73ffffffffffffffffffffffffffffffffffffffff16610ce761084f565b73ffffffffffffffffffffffffffffffffffffffff1614610d3d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d3490611a50565b60405180910390fd5b80600b8190555050565b60008183610d559190611b02565b905092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610dd5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dcc90611a90565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610e45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3c90611a30565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f239190611ab0565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610fa0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9790611a70565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611010576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611007906119f0565b60405180910390fd5b61107c8160405180606001604052806026815260200161201e60269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461127a9092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806111625750600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61117657611171848484611393565b611178565b815b90506111cc81600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4790919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161126c9190611ab0565b60405180910390a350505050565b60008383111582906112c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112b991906119ce565b60405180910390fd5b5082840390509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080600090508473ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16141561141f57611418606461140a600a54866115c390919063ffffffff16565b6115d990919063ffffffff16565b90506114a1565b8373ffffffffffffffffffffffffffffffffffffffff16600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156114a05761149d606461148f600b54866115c390919063ffffffff16565b6115d990919063ffffffff16565b90505b5b60008111156115a6576114fc81600160008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610d4790919063ffffffff16565b600160008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161159d9190611ab0565b60405180910390a35b6115b981846115ef90919063ffffffff16565b9150509392505050565b600081836115d19190611b89565b905092915050565b600081836115e79190611b58565b905092915050565b600081836115fd9190611be3565b905092915050565b60008135905061161481611fd8565b92915050565b60008083601f8401126116305761162f611dff565b5b8235905067ffffffffffffffff81111561164d5761164c611dfa565b5b60208301915083602082028301111561166957611668611e04565b5b9250929050565b60008135905061167f81611fef565b92915050565b60008135905061169481612006565b92915050565b6000602082840312156116b0576116af611e0e565b5b60006116be84828501611605565b91505092915050565b600080604083850312156116de576116dd611e0e565b5b60006116ec85828601611605565b92505060206116fd85828601611605565b9150509250929050565b6000806000606084860312156117205761171f611e0e565b5b600061172e86828701611605565b935050602061173f86828701611605565b925050604061175086828701611685565b9150509250925092565b6000806040838503121561177157611770611e0e565b5b600061177f85828601611605565b925050602061179085828601611685565b9150509250929050565b6000806000604084860312156117b3576117b2611e0e565b5b600084013567ffffffffffffffff8111156117d1576117d0611e09565b5b6117dd8682870161161a565b935093505060206117f086828701611670565b9150509250925092565b6000602082840312156118105761180f611e0e565b5b600061181e84828501611685565b91505092915050565b61183081611c17565b82525050565b61183f81611c29565b82525050565b61184e81611c6c565b82525050565b600061185f82611ae6565b6118698185611af1565b9350611879818560208601611c90565b61188281611e13565b840191505092915050565b600061189a602383611af1565b91506118a582611e24565b604082019050919050565b60006118bd602683611af1565b91506118c882611e73565b604082019050919050565b60006118e0602283611af1565b91506118eb82611ec2565b604082019050919050565b6000611903602083611af1565b915061190e82611f11565b602082019050919050565b6000611926602583611af1565b915061193182611f3a565b604082019050919050565b6000611949602483611af1565b915061195482611f89565b604082019050919050565b61196881611c55565b82525050565b61197781611c5f565b82525050565b60006020820190506119926000830184611827565b92915050565b60006020820190506119ad6000830184611836565b92915050565b60006020820190506119c86000830184611845565b92915050565b600060208201905081810360008301526119e88184611854565b905092915050565b60006020820190508181036000830152611a098161188d565b9050919050565b60006020820190508181036000830152611a29816118b0565b9050919050565b60006020820190508181036000830152611a49816118d3565b9050919050565b60006020820190508181036000830152611a69816118f6565b9050919050565b60006020820190508181036000830152611a8981611919565b9050919050565b60006020820190508181036000830152611aa98161193c565b9050919050565b6000602082019050611ac5600083018461195f565b92915050565b6000602082019050611ae0600083018461196e565b92915050565b600081519050919050565b600082825260208201905092915050565b6000611b0d82611c55565b9150611b1883611c55565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115611b4d57611b4c611d3e565b5b828201905092915050565b6000611b6382611c55565b9150611b6e83611c55565b925082611b7e57611b7d611d6d565b5b828204905092915050565b6000611b9482611c55565b9150611b9f83611c55565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611bd857611bd7611d3e565b5b828202905092915050565b6000611bee82611c55565b9150611bf983611c55565b925082821015611c0c57611c0b611d3e565b5b828203905092915050565b6000611c2282611c35565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6000611c7782611c7e565b9050919050565b6000611c8982611c35565b9050919050565b60005b83811015611cae578082015181840152602081019050611c93565b83811115611cbd576000848401525b50505050565b60006002820490506001821680611cdb57607f821691505b60208210811415611cef57611cee611d9c565b5b50919050565b6000611d0082611c55565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff821415611d3357611d32611d3e565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b611fe181611c17565b8114611fec57600080fd5b50565b611ff881611c29565b811461200357600080fd5b50565b61200f81611c55565b811461201a57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220258aabb2d25603c8fa26671256c648ac7df59030d09dffb16928c5339036c70164736f6c63430008050033

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

00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000005f5e100000000000000000000000000b0b90c3020a58c7fb3a43cddcfd560273b7567590000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000000000000000000000000000000000000000000647656d696e690000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000647656d696e690000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : name_ (string): Gemini
Arg [1] : symbol_ (string): Gemini
Arg [2] : totalSupply_ (uint256): 100000000
Arg [3] : owner_ (address): 0xB0B90c3020a58c7fb3a43cdDcFd560273B756759
Arg [4] : router_ (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D

-----Encoded View---------------
9 Constructor Arguments found :
Arg [0] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [2] : 0000000000000000000000000000000000000000000000000000000005f5e100
Arg [3] : 000000000000000000000000b0b90c3020a58c7fb3a43cddcfd560273b756759
Arg [4] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [6] : 47656d696e690000000000000000000000000000000000000000000000000000
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [8] : 47656d696e690000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

5030:6244:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6345:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7658:210;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5418:41;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6814:108;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7876:454;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6658:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8338:300;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5240:50;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6985:177;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1498:94;;;:::i;:::-;;5542:37;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10402:121;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1275:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6555:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8646:400;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7170:216;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10163:233;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5466:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7449:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5499:36;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1600:192;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10531:125;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6345:91;6390:13;6423:5;6416:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6345:91;:::o;7658:210::-;7777:4;7799:39;7808:12;:10;:12::i;:::-;7822:7;7831:6;7799:8;:39::i;:::-;7856:4;7849:11;;7658:210;;;;:::o;5418:41::-;;;;;;;;;;;;;:::o;6814:108::-;6875:7;6902:12;;6895:19;;6814:108;:::o;7876:454::-;8016:4;8033:36;8043:6;8051:9;8062:6;8033:9;:36::i;:::-;8080:220;8103:6;8124:12;:10;:12::i;:::-;8151:138;8207:6;8151:138;;;;;;;;;;;;;;;;;:11;:19;8163:6;8151:19;;;;;;;;;;;;;;;:33;8171:12;:10;:12::i;:::-;8151:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;8080:8;:220::i;:::-;8318:4;8311:11;;7876:454;;;;;:::o;6658:91::-;6707:5;6732:9;;;;;;;;;;;6725:16;;6658:91;:::o;8338:300::-;8453:4;8475:133;8498:12;:10;:12::i;:::-;8525:7;8547:50;8586:10;8547:11;:25;8559:12;:10;:12::i;:::-;8547:25;;;;;;;;;;;;;;;:34;8573:7;8547:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;8475:8;:133::i;:::-;8626:4;8619:11;;8338:300;;;;:::o;5240:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;6985:177::-;7104:7;7136:9;:18;7146:7;7136:18;;;;;;;;;;;;;;;;7129:25;;6985:177;;;:::o;1498:94::-;1421:12;:10;:12::i;:::-;1410:23;;:7;:5;:7::i;:::-;:23;;;1402:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1563:21:::1;1581:1;1563:9;:21::i;:::-;1498:94::o:0;5542:37::-;;;;:::o;10402:121::-;1421:12;:10;:12::i;:::-;1410:23;;:7;:5;:7::i;:::-;:23;;;1402:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10499:16:::1;10479:17;:36;;;;10402:121:::0;:::o;1275:87::-;1321:7;1348:6;;;;;;;;;;;1341:13;;1275:87;:::o;6555:95::-;6602:13;6635:7;6628:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6555:95;:::o;8646:400::-;8766:4;8788:228;8811:12;:10;:12::i;:::-;8838:7;8860:145;8917:15;8860:145;;;;;;;;;;;;;;;;;:11;:25;8872:12;:10;:12::i;:::-;8860:25;;;;;;;;;;;;;;;:34;8886:7;8860:34;;;;;;;;;;;;;;;;:38;;:145;;;;;:::i;:::-;8788:8;:228::i;:::-;9034:4;9027:11;;8646:400;;;;:::o;7170:216::-;7292:4;7314:42;7324:12;:10;:12::i;:::-;7338:9;7349:6;7314:9;:42::i;:::-;7374:4;7367:11;;7170:216;;;;:::o;10163:233::-;1421:12;:10;:12::i;:::-;1410:23;;:7;:5;:7::i;:::-;:23;;;1402:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10280:9:::1;10276:113;10299:8;;:15;;10295:1;:19;10276:113;;;10369:8;10336:17;:30;10354:8;;10363:1;10354:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;10336:30;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;10316:3;;;;;:::i;:::-;;;;10276:113;;;;10163:233:::0;;;:::o;5466:26::-;;;;;;;;;;;;;:::o;7449:201::-;7583:7;7615:11;:18;7627:5;7615:18;;;;;;;;;;;;;;;:27;7634:7;7615:27;;;;;;;;;;;;;;;;7608:34;;7449:201;;;;:::o;5499:36::-;;;;:::o;1600:192::-;1421:12;:10;:12::i;:::-;1410:23;;:7;:5;:7::i;:::-;:23;;;1402:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1709:1:::1;1689:22;;:8;:22;;;;1681:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;1765:19;1775:8;1765:9;:19::i;:::-;1600:192:::0;:::o;10531:125::-;1421:12;:10;:12::i;:::-;1410:23;;:7;:5;:7::i;:::-;:23;;;1402:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10631:17:::1;10610:18;:38;;;;10531:125:::0;:::o;3356:98::-;3414:7;3445:1;3441;:5;;;;:::i;:::-;3434:12;;3356:98;;;;:::o;830:::-;883:7;910:10;903:17;;830:98;:::o;9775:380::-;9928:1;9911:19;;:5;:19;;;;9903:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10009:1;9990:21;;:7;:21;;;;9982:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10093:6;10063:11;:18;10075:5;10063:18;;;;;;;;;;;;;;;:27;10082:7;10063:27;;;;;;;;;;;;;;;:36;;;;10131:7;10115:32;;10124:5;10115:32;;;10140:6;10115:32;;;;;;:::i;:::-;;;;;;;;9775:380;;;:::o;9054:713::-;9212:1;9194:20;;:6;:20;;;;9186:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;9296:1;9275:23;;:9;:23;;;;9267:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;9371:70;9393:6;9371:70;;;;;;;;;;;;;;;;;:9;:17;9381:6;9371:17;;;;;;;;;;;;;;;;:21;;:70;;;;;:::i;:::-;9351:9;:17;9361:6;9351:17;;;;;;;;;;;;;;;:90;;;;9462:19;9485:17;:25;9503:6;9485:25;;;;;;;;;;;;;;;;;;;;;;;;;:57;;;;9514:17;:28;9532:9;9514:28;;;;;;;;;;;;;;;;;;;;;;;;;9485:57;9484:146;;9596:34;9604:6;9612:9;9623:6;9596:7;:34::i;:::-;9484:146;;;9587:6;9484:146;9462:168;;9666:37;9691:11;9666:9;:20;9676:9;9666:20;;;;;;;;;;;;;;;;:24;;:37;;;;:::i;:::-;9643:9;:20;9653:9;9643:20;;;;;;;;;;;;;;;:60;;;;9736:9;9719:40;;9728:6;9719:40;;;9747:11;9719:40;;;;;;:::i;:::-;;;;;;;;9175:592;9054:713;;;:::o;3886:240::-;4006:7;4064:1;4059;:6;;4067:12;4051:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;4106:1;4102;:5;4095:12;;3886:240;;;;;:::o;1800:173::-;1856:16;1875:6;;;;;;;;;;;1856:25;;1901:8;1892:6;;:17;;;;;;;;;;;;;;;;;;1956:8;1925:40;;1946:8;1925:40;;;;;;;;;;;;1845:128;1800:173;:::o;10664:603::-;10750:7;10772:17;10792:1;10772:21;;10822:6;10807:21;;:11;;;;;;;;;;;:21;;;10804:239;;;10857:38;10891:3;10857:29;10868:17;;10857:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;10845:50;;10804:239;;;10954:9;10939:24;;:11;;;;;;;;;;;:24;;;10936:107;;;10992:39;11027:3;10992:30;11003:18;;10992:6;:10;;:30;;;;:::i;:::-;:34;;:39;;;;:::i;:::-;10980:51;;10936:107;10804:239;11070:1;11058:9;:13;11055:164;;;11112:36;11138:9;11112;:21;11130:1;11112:21;;;;;;;;;;;;;;;;:25;;:36;;;;:::i;:::-;11088:9;:21;11106:1;11088:21;;;;;;;;;;;;;;;:60;;;;11193:1;11168:39;;11177:6;11168:39;;;11197:9;11168:39;;;;;;:::i;:::-;;;;;;;;11055:164;11238:21;11249:9;11238:6;:10;;:21;;;;:::i;:::-;11231:28;;;10664:603;;;;;:::o;3568:98::-;3626:7;3657:1;3653;:5;;;;:::i;:::-;3646:12;;3568:98;;;;:::o;3674:::-;3732:7;3763:1;3759;:5;;;;:::i;:::-;3752:12;;3674:98;;;;:::o;3462:::-;3520:7;3551:1;3547;:5;;;;:::i;:::-;3540:12;;3462:98;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;59:87;;;;:::o;169:568::-;242:8;252:6;302:3;295:4;287:6;283:17;279:27;269:2;;310:79;;:::i;:::-;269:2;423:6;410:20;400:30;;453:18;445:6;442:30;439:2;;;475:79;;:::i;:::-;439:2;589:4;581:6;577:17;565:29;;643:3;635:4;627:6;623:17;613:8;609:32;606:41;603:2;;;650:79;;:::i;:::-;603:2;259:478;;;;;:::o;743:133::-;786:5;824:6;811:20;802:29;;840:30;864:5;840:30;:::i;:::-;792:84;;;;:::o;882:139::-;928:5;966:6;953:20;944:29;;982:33;1009:5;982:33;:::i;:::-;934:87;;;;:::o;1027:329::-;1086:6;1135:2;1123:9;1114:7;1110:23;1106:32;1103:2;;;1141:79;;:::i;:::-;1103:2;1261:1;1286:53;1331:7;1322:6;1311:9;1307:22;1286:53;:::i;:::-;1276:63;;1232:117;1093:263;;;;:::o;1362:474::-;1430:6;1438;1487:2;1475:9;1466:7;1462:23;1458:32;1455:2;;;1493:79;;:::i;:::-;1455:2;1613:1;1638:53;1683:7;1674:6;1663:9;1659:22;1638:53;:::i;:::-;1628:63;;1584:117;1740:2;1766:53;1811:7;1802:6;1791:9;1787:22;1766:53;:::i;:::-;1756:63;;1711:118;1445:391;;;;;:::o;1842:619::-;1919:6;1927;1935;1984:2;1972:9;1963:7;1959:23;1955:32;1952:2;;;1990:79;;:::i;:::-;1952:2;2110:1;2135:53;2180:7;2171:6;2160:9;2156:22;2135:53;:::i;:::-;2125:63;;2081:117;2237:2;2263:53;2308:7;2299:6;2288:9;2284:22;2263:53;:::i;:::-;2253:63;;2208:118;2365:2;2391:53;2436:7;2427:6;2416:9;2412:22;2391:53;:::i;:::-;2381:63;;2336:118;1942:519;;;;;:::o;2467:474::-;2535:6;2543;2592:2;2580:9;2571:7;2567:23;2563:32;2560:2;;;2598:79;;:::i;:::-;2560:2;2718:1;2743:53;2788:7;2779:6;2768:9;2764:22;2743:53;:::i;:::-;2733:63;;2689:117;2845:2;2871:53;2916:7;2907:6;2896:9;2892:22;2871:53;:::i;:::-;2861:63;;2816:118;2550:391;;;;;:::o;2947:698::-;3039:6;3047;3055;3104:2;3092:9;3083:7;3079:23;3075:32;3072:2;;;3110:79;;:::i;:::-;3072:2;3258:1;3247:9;3243:17;3230:31;3288:18;3280:6;3277:30;3274:2;;;3310:79;;:::i;:::-;3274:2;3423:80;3495:7;3486:6;3475:9;3471:22;3423:80;:::i;:::-;3405:98;;;;3201:312;3552:2;3578:50;3620:7;3611:6;3600:9;3596:22;3578:50;:::i;:::-;3568:60;;3523:115;3062:583;;;;;:::o;3651:329::-;3710:6;3759:2;3747:9;3738:7;3734:23;3730:32;3727:2;;;3765:79;;:::i;:::-;3727:2;3885:1;3910:53;3955:7;3946:6;3935:9;3931:22;3910:53;:::i;:::-;3900:63;;3856:117;3717:263;;;;:::o;3986:118::-;4073:24;4091:5;4073:24;:::i;:::-;4068:3;4061:37;4051:53;;:::o;4110:109::-;4191:21;4206:5;4191:21;:::i;:::-;4186:3;4179:34;4169:50;;:::o;4225:183::-;4338:63;4395:5;4338:63;:::i;:::-;4333:3;4326:76;4316:92;;:::o;4414:364::-;4502:3;4530:39;4563:5;4530:39;:::i;:::-;4585:71;4649:6;4644:3;4585:71;:::i;:::-;4578:78;;4665:52;4710:6;4705:3;4698:4;4691:5;4687:16;4665:52;:::i;:::-;4742:29;4764:6;4742:29;:::i;:::-;4737:3;4733:39;4726:46;;4506:272;;;;;:::o;4784:366::-;4926:3;4947:67;5011:2;5006:3;4947:67;:::i;:::-;4940:74;;5023:93;5112:3;5023:93;:::i;:::-;5141:2;5136:3;5132:12;5125:19;;4930:220;;;:::o;5156:366::-;5298:3;5319:67;5383:2;5378:3;5319:67;:::i;:::-;5312:74;;5395:93;5484:3;5395:93;:::i;:::-;5513:2;5508:3;5504:12;5497:19;;5302:220;;;:::o;5528:366::-;5670:3;5691:67;5755:2;5750:3;5691:67;:::i;:::-;5684:74;;5767:93;5856:3;5767:93;:::i;:::-;5885:2;5880:3;5876:12;5869:19;;5674:220;;;:::o;5900:366::-;6042:3;6063:67;6127:2;6122:3;6063:67;:::i;:::-;6056:74;;6139:93;6228:3;6139:93;:::i;:::-;6257:2;6252:3;6248:12;6241:19;;6046:220;;;:::o;6272:366::-;6414:3;6435:67;6499:2;6494:3;6435:67;:::i;:::-;6428:74;;6511:93;6600:3;6511:93;:::i;:::-;6629:2;6624:3;6620:12;6613:19;;6418:220;;;:::o;6644:366::-;6786:3;6807:67;6871:2;6866:3;6807:67;:::i;:::-;6800:74;;6883:93;6972:3;6883:93;:::i;:::-;7001:2;6996:3;6992:12;6985:19;;6790:220;;;:::o;7016:118::-;7103:24;7121:5;7103:24;:::i;:::-;7098:3;7091:37;7081:53;;:::o;7140:112::-;7223:22;7239:5;7223:22;:::i;:::-;7218:3;7211:35;7201:51;;:::o;7258:222::-;7351:4;7389:2;7378:9;7374:18;7366:26;;7402:71;7470:1;7459:9;7455:17;7446:6;7402:71;:::i;:::-;7356:124;;;;:::o;7486:210::-;7573:4;7611:2;7600:9;7596:18;7588:26;;7624:65;7686:1;7675:9;7671:17;7662:6;7624:65;:::i;:::-;7578:118;;;;:::o;7702:274::-;7821:4;7859:2;7848:9;7844:18;7836:26;;7872:97;7966:1;7955:9;7951:17;7942:6;7872:97;:::i;:::-;7826:150;;;;:::o;7982:313::-;8095:4;8133:2;8122:9;8118:18;8110:26;;8182:9;8176:4;8172:20;8168:1;8157:9;8153:17;8146:47;8210:78;8283:4;8274:6;8210:78;:::i;:::-;8202:86;;8100:195;;;;:::o;8301:419::-;8467:4;8505:2;8494:9;8490:18;8482:26;;8554:9;8548:4;8544:20;8540:1;8529:9;8525:17;8518:47;8582:131;8708:4;8582:131;:::i;:::-;8574:139;;8472:248;;;:::o;8726:419::-;8892:4;8930:2;8919:9;8915:18;8907:26;;8979:9;8973:4;8969:20;8965:1;8954:9;8950:17;8943:47;9007:131;9133:4;9007:131;:::i;:::-;8999:139;;8897:248;;;:::o;9151:419::-;9317:4;9355:2;9344:9;9340:18;9332:26;;9404:9;9398:4;9394:20;9390:1;9379:9;9375:17;9368:47;9432:131;9558:4;9432:131;:::i;:::-;9424:139;;9322:248;;;:::o;9576:419::-;9742:4;9780:2;9769:9;9765:18;9757:26;;9829:9;9823:4;9819:20;9815:1;9804:9;9800:17;9793:47;9857:131;9983:4;9857:131;:::i;:::-;9849:139;;9747:248;;;:::o;10001:419::-;10167:4;10205:2;10194:9;10190:18;10182:26;;10254:9;10248:4;10244:20;10240:1;10229:9;10225:17;10218:47;10282:131;10408:4;10282:131;:::i;:::-;10274:139;;10172:248;;;:::o;10426:419::-;10592:4;10630:2;10619:9;10615:18;10607:26;;10679:9;10673:4;10669:20;10665:1;10654:9;10650:17;10643:47;10707:131;10833:4;10707:131;:::i;:::-;10699:139;;10597:248;;;:::o;10851:222::-;10944:4;10982:2;10971:9;10967:18;10959:26;;10995:71;11063:1;11052:9;11048:17;11039:6;10995:71;:::i;:::-;10949:124;;;;:::o;11079:214::-;11168:4;11206:2;11195:9;11191:18;11183:26;;11219:67;11283:1;11272:9;11268:17;11259:6;11219:67;:::i;:::-;11173:120;;;;:::o;11380:99::-;11432:6;11466:5;11460:12;11450:22;;11439:40;;;:::o;11485:169::-;11569:11;11603:6;11598:3;11591:19;11643:4;11638:3;11634:14;11619:29;;11581:73;;;;:::o;11660:305::-;11700:3;11719:20;11737:1;11719:20;:::i;:::-;11714:25;;11753:20;11771:1;11753:20;:::i;:::-;11748:25;;11907:1;11839:66;11835:74;11832:1;11829:81;11826:2;;;11913:18;;:::i;:::-;11826:2;11957:1;11954;11950:9;11943:16;;11704:261;;;;:::o;11971:185::-;12011:1;12028:20;12046:1;12028:20;:::i;:::-;12023:25;;12062:20;12080:1;12062:20;:::i;:::-;12057:25;;12101:1;12091:2;;12106:18;;:::i;:::-;12091:2;12148:1;12145;12141:9;12136:14;;12013:143;;;;:::o;12162:348::-;12202:7;12225:20;12243:1;12225:20;:::i;:::-;12220:25;;12259:20;12277:1;12259:20;:::i;:::-;12254:25;;12447:1;12379:66;12375:74;12372:1;12369:81;12364:1;12357:9;12350:17;12346:105;12343:2;;;12454:18;;:::i;:::-;12343:2;12502:1;12499;12495:9;12484:20;;12210:300;;;;:::o;12516:191::-;12556:4;12576:20;12594:1;12576:20;:::i;:::-;12571:25;;12610:20;12628:1;12610:20;:::i;:::-;12605:25;;12649:1;12646;12643:8;12640:2;;;12654:18;;:::i;:::-;12640:2;12699:1;12696;12692:9;12684:17;;12561:146;;;;:::o;12713:96::-;12750:7;12779:24;12797:5;12779:24;:::i;:::-;12768:35;;12758:51;;;:::o;12815:90::-;12849:7;12892:5;12885:13;12878:21;12867:32;;12857:48;;;:::o;12911:126::-;12948:7;12988:42;12981:5;12977:54;12966:65;;12956:81;;;:::o;13043:77::-;13080:7;13109:5;13098:16;;13088:32;;;:::o;13126:86::-;13161:7;13201:4;13194:5;13190:16;13179:27;;13169:43;;;:::o;13218:178::-;13294:9;13327:63;13384:5;13327:63;:::i;:::-;13314:76;;13304:92;;;:::o;13402:139::-;13478:9;13511:24;13529:5;13511:24;:::i;:::-;13498:37;;13488:53;;;:::o;13547:307::-;13615:1;13625:113;13639:6;13636:1;13633:13;13625:113;;;13724:1;13719:3;13715:11;13709:18;13705:1;13700:3;13696:11;13689:39;13661:2;13658:1;13654:10;13649:15;;13625:113;;;13756:6;13753:1;13750:13;13747:2;;;13836:1;13827:6;13822:3;13818:16;13811:27;13747:2;13596:258;;;;:::o;13860:320::-;13904:6;13941:1;13935:4;13931:12;13921:22;;13988:1;13982:4;13978:12;14009:18;13999:2;;14065:4;14057:6;14053:17;14043:27;;13999:2;14127;14119:6;14116:14;14096:18;14093:38;14090:2;;;14146:18;;:::i;:::-;14090:2;13911:269;;;;:::o;14186:233::-;14225:3;14248:24;14266:5;14248:24;:::i;:::-;14239:33;;14294:66;14287:5;14284:77;14281:2;;;14364:18;;:::i;:::-;14281:2;14411:1;14404:5;14400:13;14393:20;;14229:190;;;:::o;14425:180::-;14473:77;14470:1;14463:88;14570:4;14567:1;14560:15;14594:4;14591:1;14584:15;14611:180;14659:77;14656:1;14649:88;14756:4;14753:1;14746:15;14780:4;14777:1;14770:15;14797:180;14845:77;14842:1;14835:88;14942:4;14939:1;14932:15;14966:4;14963:1;14956:15;14983:180;15031:77;15028:1;15021:88;15128:4;15125:1;15118:15;15152:4;15149:1;15142:15;15169:117;15278:1;15275;15268:12;15292:117;15401:1;15398;15391:12;15415:117;15524:1;15521;15514:12;15538:117;15647:1;15644;15637:12;15661:117;15770:1;15767;15760:12;15784:102;15825:6;15876:2;15872:7;15867:2;15860:5;15856:14;15852:28;15842:38;;15832:54;;;:::o;15892:222::-;16032:34;16028:1;16020:6;16016:14;16009:58;16101:5;16096:2;16088:6;16084:15;16077:30;15998:116;:::o;16120:225::-;16260:34;16256:1;16248:6;16244:14;16237:58;16329:8;16324:2;16316:6;16312:15;16305:33;16226:119;:::o;16351:221::-;16491:34;16487:1;16479:6;16475:14;16468:58;16560:4;16555:2;16547:6;16543:15;16536:29;16457:115;:::o;16578:182::-;16718:34;16714:1;16706:6;16702:14;16695:58;16684:76;:::o;16766:224::-;16906:34;16902:1;16894:6;16890:14;16883:58;16975:7;16970:2;16962:6;16958:15;16951:32;16872:118;:::o;16996:223::-;17136:34;17132:1;17124:6;17120:14;17113:58;17205:6;17200:2;17192:6;17188:15;17181:31;17102:117;:::o;17225:122::-;17298:24;17316:5;17298:24;:::i;:::-;17291:5;17288:35;17278:2;;17337:1;17334;17327:12;17278:2;17268:79;:::o;17353:116::-;17423:21;17438:5;17423:21;:::i;:::-;17416:5;17413:32;17403:2;;17459:1;17456;17449:12;17403:2;17393:76;:::o;17475:122::-;17548:24;17566:5;17548:24;:::i;:::-;17541:5;17538:35;17528:2;;17587:1;17584;17577:12;17528:2;17518:79;:::o

Swarm Source

ipfs://258aabb2d25603c8fa26671256c648ac7df59030d09dffb16928c5339036c701

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
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]

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