ETH Price: $2,919.09 (+3.98%)

Contract

0xd225C369288924caB54C6d7a25daeBBCd66C5682

Overview

ETH Balance

0 ETH

ETH Value

$0.00

More Info

Private Name Tags

Multichain Info

No addresses found
Transaction Hash
Block
From
To
Approve320132392025-11-10 7:59:5877 days ago1762761598IN
0xd225C369...Cd66C5682
0 ETH0.000000050.00120035
Approve225183112025-07-23 10:31:10187 days ago1753266670IN
0xd225C369...Cd66C5682
0 ETH0.000000030.00120057
Approve224843152025-07-23 1:04:34187 days ago1753232674IN
0xd225C369...Cd66C5682
0 ETH0.000000030.00120095
Approve223023642025-07-20 22:32:03189 days ago1753050723IN
0xd225C369...Cd66C5682
0 ETH0.000000010.00010163
Renounce Ownersh...148120032025-04-25 5:52:42276 days ago1745560362IN
0xd225C369...Cd66C5682
0 ETH0.000000150.00110042
Add Liquidity148117972025-04-25 5:49:16276 days ago1745560156IN
0xd225C369...Cd66C5682
0 ETH0.000003150.00110042

Latest 3 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
148117972025-04-25 5:49:16276 days ago1745560156
0xd225C369...Cd66C5682
0.001 ETH
148117322025-04-25 5:48:11276 days ago1745560091
0xd225C369...Cd66C5682
0xd225C369...Cd66C5682
0.001 ETH
148117322025-04-25 5:48:11276 days ago1745560091  Contract Creation0.001 ETH

Cross-Chain Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0xa5d8f8f2...b7BeC474d
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
TokenOnBase

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at uniscan.xyz on 2025-03-08
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

interface BaseToken is IERC20 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint256);
}

abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }
    function _msgData() internal view virtual returns (bytes calldata) {
        this; 
        return msg.data;
    }
}

contract ERC20 is Context, IERC20, BaseToken {
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    uint256 private _totalSupply;
    uint256 private _decimals;
    string private _name;
    string private _symbol;
// Category	                    Percentage
// Ecosystem Development   	    30%  0x3145B2EC114466A98fF2a22603eAB40DbEC6CD36
// Founders/Team           	    20%  0x4d0300342dE537121cB6d8D3370aaFEc694bD79E
// Seed Funding/Early Investors	20%  0xb78C6F8A4CCb6429B8B79Ed563ca2cF13BC91FC8
// Treasury/Foundation	        10%  0x432e69ccB799F021C6CBDEa1b734B069578B4de2
// Rewards/Airdrops	            10%  0x551Aa84ADb62725d654866803Def1459A1b256AF
// Advisors	                    05%  0xf3AF3a87b46DF75bf7f9081A3086f727A35C47Ac
    constructor (string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
        _totalSupply = 100000000000000000000;
        _balances[0x3145B2EC114466A98fF2a22603eAB40DbEC6CD36] = _totalSupply * 30 / 100;
        _balances[0x4d0300342dE537121cB6d8D3370aaFEc694bD79E] = _totalSupply * 20 / 100; 
        _balances[0xb78C6F8A4CCb6429B8B79Ed563ca2cF13BC91FC8] = _totalSupply * 20 / 100;
        _balances[0x432e69ccB799F021C6CBDEa1b734B069578B4de2] = _totalSupply * 10 / 100;
        _balances[0x551Aa84ADb62725d654866803Def1459A1b256AF] = _totalSupply * 10 / 100;
        _balances[0xf3AF3a87b46DF75bf7f9081A3086f727A35C47Ac] = _totalSupply * 5 / 100;
        _balances[address(this)] = _totalSupply * 5 / 100;
        _decimals = 9;      
        emit Transfer(address(0), 0x3145B2EC114466A98fF2a22603eAB40DbEC6CD36, _totalSupply * 30 / 100);
        emit Transfer(address(0), 0x4d0300342dE537121cB6d8D3370aaFEc694bD79E, _totalSupply * 20 / 100);
        emit Transfer(address(0), 0xb78C6F8A4CCb6429B8B79Ed563ca2cF13BC91FC8, _totalSupply * 20 / 100);
        emit Transfer(address(0), 0x432e69ccB799F021C6CBDEa1b734B069578B4de2, _totalSupply * 10 / 100);
        emit Transfer(address(0), 0x551Aa84ADb62725d654866803Def1459A1b256AF, _totalSupply * 10 / 100);
        emit Transfer(address(0), 0xf3AF3a87b46DF75bf7f9081A3086f727A35C47Ac, _totalSupply * 5 / 100);
        emit Transfer(address(0), address(this), _totalSupply * 5 / 100);
    }

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

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

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

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

    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);
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        _approve(sender, _msgSender(), currentAllowance - amount);
        return true;
    }

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

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        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");

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

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

interface IUniswapV2Router02 {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

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

contract TokenOnBase is ERC20 {
    address private _owner;
    bool public tradingOpen = false;
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    uint256 public requiredETH;
    constructor(
        string memory name_,
        string memory symbol_,
        address tokenOwner_
    ) payable ERC20(name_, symbol_) {
  require(msg.value == 1000000000000000, "Incorrect ETH amount");
   requiredETH = 1000000000000000;
        _owner = tokenOwner_;
          payable(address(this)).transfer(msg.value);
    }

    modifier onlyOwner() {
        require(msg.sender == _owner, "Only the owner can call this function");
        _;
    }

    function addLiquidity() external onlyOwner {
        require(!tradingOpen, "Trading is already open");

        uniswapV2Router = IUniswapV2Router02(0x284F11109359a7e1306C3e447ef14D38400063FF);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _approve(address(this), address(uniswapV2Router), 100000000000000000000);

        uniswapV2Router.addLiquidityETH{value: address(this).balance}(
            address(this),
            balanceOf(address(this)),
            0,
            0,
            _owner,
            block.timestamp
        );

        tradingOpen = true;
    }

    function renounceOwnership() public onlyOwner {
        _owner = address(0);
    }

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

    string public BaseTokenVC = "0.8.28"; 

    function getBaseTokenVC() public view returns (string memory) {
        return BaseTokenVC;
    }

    receive() external payable {}
}


contract TokenFactory {
    address[] public deployedTokens; // Array to store addresses of deployed tokens
     uint256 public requiredETH;
    event TokenDeployed(address indexed tokenAddress, string name, string symbol, address owner);
  constructor() {
        requiredETH = 1000000000000000;
    }

    // Function to deploy a new TokenOnBase contract
    function createToken(
        string memory name_,
        string memory symbol_,
        address tokenOwner_
    ) external payable returns (address) {
        // Deploy a new TokenOnBase contract
        TokenOnBase newToken = new TokenOnBase{value: msg.value}(name_, symbol_, tokenOwner_);
        
        // Store the address of the deployed token
        deployedTokens.push(address(newToken));
        
        // Emit an event with the details of the deployed token
        emit TokenDeployed(address(newToken), name_, symbol_, tokenOwner_);
        
        // Return the address of the deployed token
        return address(newToken);
    }

    // Function to get the number of deployed tokens
    function getDeployedTokensCount() external view returns (uint256) {
        return deployedTokens.length;
    }

    // Function to get the address of a deployed token by index
    function getDeployedToken(uint256 index) external view returns (address) {
        require(index < deployedTokens.length, "Index out of bounds");
        return deployedTokens[index];
    }
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"tokenOwner_","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":"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":"BaseTokenVC","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getBaseTokenVC","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"requiredETH","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

0x6006805460ff60a01b1916815560c06040526080908152650605c705c64760d31b60a052600a90610030908261063d565b5060405161178d38038061178d83398101604081905261004f91610780565b8282600461005d838261063d565b50600561006a828261063d565b5068056bc75e2d63100000600281905560649061008890601e610805565b610092919061082e565b733145b2ec114466a98ff2a22603eab40dbec6cd365f9081526020527f3e38f67074ee6f1fc82b564c40e5dca85ba7f7a4d0b95308034eab396e91f0f1556002546064906100e1906014610805565b6100eb919061082e565b734d0300342de537121cb6d8d3370aafec694bd79e5f9081526020527fea7b6456300cfe2178d381537396f4529363e7505bd6cd4324cb146e7e975d105560025460649061013a906014610805565b610144919061082e565b73b78c6f8a4ccb6429b8b79ed563ca2cf13bc91fc85f9081526020527f56a1f08a54be7312dfef93b72414b696e428e89e4362b4b882c38be338b45f1d5560025460649061019390600a610805565b61019d919061082e565b73432e69ccb799f021c6cbdea1b734b069578b4de25f9081526020527f01ec8e43e1aeeb611cc29cdafeebd6941ce29576eeb09e79c4bc5f4cc5bef858556002546064906101ec90600a610805565b6101f6919061082e565b73551aa84adb62725d654866803def1459a1b256af5f9081526020527f93240556274238f075524734eeb1fd68264f365b779844e78f64234e6264e6a155600254606490610245906005610805565b61024f919061082e565b73f3af3a87b46df75bf7f9081a3086f727a35c47ac5f9081526020527fec669d71b2aa3f804ec3d443158445867f17fca6f8f1cddee78289b3fa5ce8805560025460649061029e906005610805565b6102a8919061082e565b305f908152602081905260408120919091556009600355600254733145b2ec114466a98ff2a22603eab40dbec6cd3691905f51602061176d5f395f51905f52906064906102f690601e610805565b610300919061082e565b60405190815260200160405180910390a3600254734d0300342de537121cb6d8d3370aafec694bd79e905f905f51602061176d5f395f51905f5290606490610349906014610805565b610353919061082e565b60405190815260200160405180910390a360025473b78c6f8a4ccb6429b8b79ed563ca2cf13bc91fc8905f905f51602061176d5f395f51905f529060649061039c906014610805565b6103a6919061082e565b60405190815260200160405180910390a360025473432e69ccb799f021c6cbdea1b734b069578b4de2905f905f51602061176d5f395f51905f52906064906103ef90600a610805565b6103f9919061082e565b60405190815260200160405180910390a360025473551aa84adb62725d654866803def1459a1b256af905f905f51602061176d5f395f51905f529060649061044290600a610805565b61044c919061082e565b60405190815260200160405180910390a360025473f3af3a87b46df75bf7f9081a3086f727a35c47ac905f905f51602061176d5f395f51905f5290606490610495906005610805565b61049f919061082e565b60405190815260200160405180910390a360025430905f905f51602061176d5f395f51905f52906064906104d4906005610805565b6104de919061082e565b60405190815260200160405180910390a350503466038d7ea4c680001461054b5760405162461bcd60e51b815260206004820152601460248201527f496e636f72726563742045544820616d6f756e74000000000000000000000000604482015260640160405180910390fd5b66038d7ea4c68000600955600680546001600160a01b0383166001600160a01b031990911617905560405130903480156108fc02915f818181858888f1935050505015801561059c573d5f5f3e3d5ffd5b5050505061084d565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806105cd57607f821691505b6020821081036105eb57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561063857805f5260205f20601f840160051c810160208510156106165750805b601f840160051c820191505b81811015610635575f8155600101610622565b50505b505050565b81516001600160401b03811115610656576106566105a5565b61066a8161066484546105b9565b846105f1565b6020601f82116001811461069c575f83156106855750848201515b5f19600385901b1c1916600184901b178455610635565b5f84815260208120601f198516915b828110156106cb57878501518255602094850194600190920191016106ab565b50848210156106e857868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f82601f830112610706575f5ffd5b81516001600160401b0381111561071f5761071f6105a5565b604051601f8201601f19908116603f011681016001600160401b038111828210171561074d5761074d6105a5565b604052818152838201602001851015610764575f5ffd5b8160208501602083015e5f918101602001919091529392505050565b5f5f5f60608486031215610792575f5ffd5b83516001600160401b038111156107a7575f5ffd5b6107b3868287016106f7565b602086015190945090506001600160401b038111156107d0575f5ffd5b6107dc868287016106f7565b604086015190935090506001600160a01b03811681146107fa575f5ffd5b809150509250925092565b808202811582820484141761082857634e487b7160e01b5f52601160045260245ffd5b92915050565b5f8261084857634e487b7160e01b5f52601260045260245ffd5b500490565b610f138061085a5f395ff3fe60806040526004361061011e575f3560e01c806370a082311161009d578063a9059cbb11610062578063a9059cbb1461030b578063ae40ca861461032a578063dd62ed3e1461033e578063e8078d9414610382578063ffb54a9914610396575f5ffd5b806370a0823114610271578063715018a6146102a5578063893d20e8146102bb57806395d89b41146102d8578063a457c2d7146102ec575f5ffd5b8063313ce567116100e3578063313ce567146101f6578063395093511461020a57806346b79fa71461022957806349bd5a5e1461023d57806349eea8c91461025c575f5ffd5b806306fdde0314610129578063095ea7b3146101535780631694505e1461018257806318160ddd146101b957806323b872dd146101d7575f5ffd5b3661012557005b5f5ffd5b348015610134575f5ffd5b5061013d6103b6565b60405161014a9190610cd3565b60405180910390f35b34801561015e575f5ffd5b5061017261016d366004610d1f565b610446565b604051901515815260200161014a565b34801561018d575f5ffd5b506007546101a1906001600160a01b031681565b6040516001600160a01b03909116815260200161014a565b3480156101c4575f5ffd5b506002545b60405190815260200161014a565b3480156101e2575f5ffd5b506101726101f1366004610d49565b61045c565b348015610201575f5ffd5b506003546101c9565b348015610215575f5ffd5b50610172610224366004610d1f565b610510565b348015610234575f5ffd5b5061013d610546565b348015610248575f5ffd5b506008546101a1906001600160a01b031681565b348015610267575f5ffd5b506101c960095481565b34801561027c575f5ffd5b506101c961028b366004610d87565b6001600160a01b03165f9081526020819052604090205490565b3480156102b0575f5ffd5b506102b96105d2565b005b3480156102c6575f5ffd5b506006546001600160a01b03166101a1565b3480156102e3575f5ffd5b5061013d61060e565b3480156102f7575f5ffd5b50610172610306366004610d1f565b61061d565b348015610316575f5ffd5b50610172610325366004610d1f565b6106b7565b348015610335575f5ffd5b5061013d6106c3565b348015610349575f5ffd5b506101c9610358366004610da9565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b34801561038d575f5ffd5b506102b96106d2565b3480156103a1575f5ffd5b5060065461017290600160a01b900460ff1681565b6060600480546103c590610de0565b80601f01602080910402602001604051908101604052809291908181526020018280546103f190610de0565b801561043c5780601f106104135761010080835404028352916020019161043c565b820191905f5260205f20905b81548152906001019060200180831161041f57829003601f168201915b5050505050905090565b5f6104523384846109da565b5060015b92915050565b5f610468848484610afd565b6001600160a01b0384165f908152600160209081526040808320338452909152902054828110156104f15760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b61050585336105008685610e2c565b6109da565b506001949350505050565b335f8181526001602090815260408083206001600160a01b03871684529091528120549091610452918590610500908690610e3f565b600a805461055390610de0565b80601f016020809104026020016040519081016040528092919081815260200182805461057f90610de0565b80156105ca5780601f106105a1576101008083540402835291602001916105ca565b820191905f5260205f20905b8154815290600101906020018083116105ad57829003601f168201915b505050505081565b6006546001600160a01b031633146105fc5760405162461bcd60e51b81526004016104e890610e52565b600680546001600160a01b0319169055565b6060600580546103c590610de0565b335f9081526001602090815260408083206001600160a01b03861684529091528120548281101561069e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016104e8565b6106ad33856105008685610e2c565b5060019392505050565b5f610452338484610afd565b6060600a80546103c590610de0565b6006546001600160a01b031633146106fc5760405162461bcd60e51b81526004016104e890610e52565b600654600160a01b900460ff16156107565760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104e8565b600780546001600160a01b03191673284f11109359a7e1306c3e447ef14d38400063ff9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156107b8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107dc9190610e97565b6001600160a01b031663c9c653963060075f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561083b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085f9190610e97565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108a9573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cd9190610e97565b600880546001600160a01b0319166001600160a01b039283161790556007546109029130911668056bc75e2d631000006109da565b6007546001600160a01b031663f305d7194730610933816001600160a01b03165f9081526020819052604090205490565b60065460405160e086901b6001600160e01b03191681526001600160a01b03938416600482015260248101929092525f6044830181905260648301529190911660848201524260a482015260c40160606040518083038185885af115801561099d573d5f5f3e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109c29190610eb2565b50506006805460ff60a01b1916600160a01b17905550565b6001600160a01b038316610a3c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104e8565b6001600160a01b038216610a9d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104e8565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b615760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104e8565b6001600160a01b038216610bc35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104e8565b6001600160a01b0383165f9081526020819052604090205481811015610c3a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016104e8565b610c448282610e2c565b6001600160a01b038086165f908152602081905260408082209390935590851681529081208054849290610c79908490610e3f565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cc591815260200190565b60405180910390a350505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610d1c575f5ffd5b50565b5f5f60408385031215610d30575f5ffd5b8235610d3b81610d08565b946020939093013593505050565b5f5f5f60608486031215610d5b575f5ffd5b8335610d6681610d08565b92506020840135610d7681610d08565b929592945050506040919091013590565b5f60208284031215610d97575f5ffd5b8135610da281610d08565b9392505050565b5f5f60408385031215610dba575f5ffd5b8235610dc581610d08565b91506020830135610dd581610d08565b809150509250929050565b600181811c90821680610df457607f821691505b602082108103610e1257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561045657610456610e18565b8082018082111561045657610456610e18565b60208082526025908201527f4f6e6c7920746865206f776e65722063616e2063616c6c20746869732066756e60408201526431ba34b7b760d91b606082015260800190565b5f60208284031215610ea7575f5ffd5b8151610da281610d08565b5f5f5f60608486031215610ec4575f5ffd5b505081516020830151604090930151909492935091905056fea26469706673582212209acd1a2caa4b209783ecccb82618a8cbe7c5f0abb9dc1ab49754a2f240d927ef64736f6c634300081c0033ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000848e29fdd764a70b6da80a707dad07cc2ee9fef6000000000000000000000000000000000000000000000000000000000000001c42726574742028426173656429204e6569726f20457468657265756d00000000000000000000000000000000000000000000000000000000000000000000001c42726574742028426173656429204e6569726f20457468657265756d00000000

Deployed Bytecode

0x60806040526004361061011e575f3560e01c806370a082311161009d578063a9059cbb11610062578063a9059cbb1461030b578063ae40ca861461032a578063dd62ed3e1461033e578063e8078d9414610382578063ffb54a9914610396575f5ffd5b806370a0823114610271578063715018a6146102a5578063893d20e8146102bb57806395d89b41146102d8578063a457c2d7146102ec575f5ffd5b8063313ce567116100e3578063313ce567146101f6578063395093511461020a57806346b79fa71461022957806349bd5a5e1461023d57806349eea8c91461025c575f5ffd5b806306fdde0314610129578063095ea7b3146101535780631694505e1461018257806318160ddd146101b957806323b872dd146101d7575f5ffd5b3661012557005b5f5ffd5b348015610134575f5ffd5b5061013d6103b6565b60405161014a9190610cd3565b60405180910390f35b34801561015e575f5ffd5b5061017261016d366004610d1f565b610446565b604051901515815260200161014a565b34801561018d575f5ffd5b506007546101a1906001600160a01b031681565b6040516001600160a01b03909116815260200161014a565b3480156101c4575f5ffd5b506002545b60405190815260200161014a565b3480156101e2575f5ffd5b506101726101f1366004610d49565b61045c565b348015610201575f5ffd5b506003546101c9565b348015610215575f5ffd5b50610172610224366004610d1f565b610510565b348015610234575f5ffd5b5061013d610546565b348015610248575f5ffd5b506008546101a1906001600160a01b031681565b348015610267575f5ffd5b506101c960095481565b34801561027c575f5ffd5b506101c961028b366004610d87565b6001600160a01b03165f9081526020819052604090205490565b3480156102b0575f5ffd5b506102b96105d2565b005b3480156102c6575f5ffd5b506006546001600160a01b03166101a1565b3480156102e3575f5ffd5b5061013d61060e565b3480156102f7575f5ffd5b50610172610306366004610d1f565b61061d565b348015610316575f5ffd5b50610172610325366004610d1f565b6106b7565b348015610335575f5ffd5b5061013d6106c3565b348015610349575f5ffd5b506101c9610358366004610da9565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b34801561038d575f5ffd5b506102b96106d2565b3480156103a1575f5ffd5b5060065461017290600160a01b900460ff1681565b6060600480546103c590610de0565b80601f01602080910402602001604051908101604052809291908181526020018280546103f190610de0565b801561043c5780601f106104135761010080835404028352916020019161043c565b820191905f5260205f20905b81548152906001019060200180831161041f57829003601f168201915b5050505050905090565b5f6104523384846109da565b5060015b92915050565b5f610468848484610afd565b6001600160a01b0384165f908152600160209081526040808320338452909152902054828110156104f15760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b61050585336105008685610e2c565b6109da565b506001949350505050565b335f8181526001602090815260408083206001600160a01b03871684529091528120549091610452918590610500908690610e3f565b600a805461055390610de0565b80601f016020809104026020016040519081016040528092919081815260200182805461057f90610de0565b80156105ca5780601f106105a1576101008083540402835291602001916105ca565b820191905f5260205f20905b8154815290600101906020018083116105ad57829003601f168201915b505050505081565b6006546001600160a01b031633146105fc5760405162461bcd60e51b81526004016104e890610e52565b600680546001600160a01b0319169055565b6060600580546103c590610de0565b335f9081526001602090815260408083206001600160a01b03861684529091528120548281101561069e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016104e8565b6106ad33856105008685610e2c565b5060019392505050565b5f610452338484610afd565b6060600a80546103c590610de0565b6006546001600160a01b031633146106fc5760405162461bcd60e51b81526004016104e890610e52565b600654600160a01b900460ff16156107565760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104e8565b600780546001600160a01b03191673284f11109359a7e1306c3e447ef14d38400063ff9081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156107b8573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107dc9190610e97565b6001600160a01b031663c9c653963060075f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561083b573d5f5f3e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085f9190610e97565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108a9573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cd9190610e97565b600880546001600160a01b0319166001600160a01b039283161790556007546109029130911668056bc75e2d631000006109da565b6007546001600160a01b031663f305d7194730610933816001600160a01b03165f9081526020819052604090205490565b60065460405160e086901b6001600160e01b03191681526001600160a01b03938416600482015260248101929092525f6044830181905260648301529190911660848201524260a482015260c40160606040518083038185885af115801561099d573d5f5f3e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109c29190610eb2565b50506006805460ff60a01b1916600160a01b17905550565b6001600160a01b038316610a3c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104e8565b6001600160a01b038216610a9d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104e8565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b615760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104e8565b6001600160a01b038216610bc35760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104e8565b6001600160a01b0383165f9081526020819052604090205481811015610c3a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016104e8565b610c448282610e2c565b6001600160a01b038086165f908152602081905260408082209390935590851681529081208054849290610c79908490610e3f565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cc591815260200190565b60405180910390a350505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610d1c575f5ffd5b50565b5f5f60408385031215610d30575f5ffd5b8235610d3b81610d08565b946020939093013593505050565b5f5f5f60608486031215610d5b575f5ffd5b8335610d6681610d08565b92506020840135610d7681610d08565b929592945050506040919091013590565b5f60208284031215610d97575f5ffd5b8135610da281610d08565b9392505050565b5f5f60408385031215610dba575f5ffd5b8235610dc581610d08565b91506020830135610dd581610d08565b809150509250929050565b600181811c90821680610df457607f821691505b602082108103610e1257634e487b7160e01b5f52602260045260245ffd5b50919050565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561045657610456610e18565b8082018082111561045657610456610e18565b60208082526025908201527f4f6e6c7920746865206f776e65722063616e2063616c6c20746869732066756e60408201526431ba34b7b760d91b606082015260800190565b5f60208284031215610ea7575f5ffd5b8151610da281610d08565b5f5f5f60608486031215610ec4575f5ffd5b505081516020830151604090930151909492935091905056fea26469706673582212209acd1a2caa4b209783ecccb82618a8cbe7c5f0abb9dc1ab49754a2f240d927ef64736f6c634300081c0033

Deployed Bytecode Sourcemap

7142:1743:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3556:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4479:169;;;;;;;;;;-1:-1:-1;4479:169:0;;;;;:::i;:::-;;:::i;:::-;;;1110:14:1;;1103:22;1085:41;;1073:2;1058:18;4479:169:0;945:187:1;7246:41:0;;;;;;;;;;-1:-1:-1;7246:41:0;;;;-1:-1:-1;;;;;7246:41:0;;;;;;-1:-1:-1;;;;;1327:32:1;;;1309:51;;1297:2;1282:18;7246:41:0;1137:229:1;3886:108:0;;;;;;;;;;-1:-1:-1;3974:12:0;;3886:108;;;1517:25:1;;;1505:2;1490:18;3886:108:0;1371:177:1;4656:418:0;;;;;;;;;;-1:-1:-1;4656:418:0;;;;;:::i;:::-;;:::i;3776:102::-;;;;;;;;;;-1:-1:-1;3861:9:0;;3776:102;;5082:215;;;;;;;;;;-1:-1:-1;5082:215:0;;;;;:::i;:::-;;:::i;8700:36::-;;;;;;;;;;;;;:::i;7294:28::-;;;;;;;;;;-1:-1:-1;7294:28:0;;;;-1:-1:-1;;;;;7294:28:0;;;7329:26;;;;;;;;;;;;;;;;4002:127;;;;;;;;;;-1:-1:-1;4002:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;4103:18:0;4076:7;4103:18;;;;;;;;;;;;4002:127;8519:84;;;;;;;;;;;;;:::i;:::-;;8611:81;;;;;;;;;;-1:-1:-1;8678:6:0;;-1:-1:-1;;;;;8678:6:0;8611:81;;3664:104;;;;;;;;;;;;;:::i;5305:375::-;;;;;;;;;;-1:-1:-1;5305:375:0;;;;;:::i;:::-;;:::i;4137:175::-;;;;;;;;;;-1:-1:-1;4137:175:0;;;;;:::i;:::-;;:::i;8746:99::-;;;;;;;;;;;;;:::i;4320:151::-;;;;;;;;;;-1:-1:-1;4320:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;4436:18:0;;;4409:7;4436:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4320:151;7838:673;;;;;;;;;;;;;:::i;7208:31::-;;;;;;;;;;-1:-1:-1;7208:31:0;;;;-1:-1:-1;;;7208:31:0;;;;;;3556:100;3610:13;3643:5;3636:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3556:100;:::o;4479:169::-;4562:4;4579:39;1069:10;4602:7;4611:6;4579:8;:39::i;:::-;-1:-1:-1;4636:4:0;4479:169;;;;;:::o;4656:418::-;4762:4;4779:36;4789:6;4797:9;4808:6;4779:9;:36::i;:::-;-1:-1:-1;;;;;4853:19:0;;4826:24;4853:19;;;:11;:19;;;;;;;;1069:10;4853:33;;;;;;;;4905:26;;;;4897:79;;;;-1:-1:-1;;;4897:79:0;;3506:2:1;4897:79:0;;;3488:21:1;3545:2;3525:18;;;3518:30;3584:34;3564:18;;;3557:62;-1:-1:-1;;;3635:18:1;;;3628:38;3683:19;;4897:79:0;;;;;;;;;4987:57;4996:6;1069:10;5018:25;5037:6;5018:16;:25;:::i;:::-;4987:8;:57::i;:::-;-1:-1:-1;5062:4:0;;4656:418;-1:-1:-1;;;;4656:418:0:o;5082:215::-;1069:10;5170:4;5219:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5219:34:0;;;;;;;;;;5170:4;;5187:80;;5210:7;;5219:47;;5256:10;;5219:47;:::i;8700:36::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8519:84::-;7762:6;;-1:-1:-1;;;;;7762:6:0;7748:10;:20;7740:70;;;;-1:-1:-1;;;7740:70:0;;;;;;;:::i;:::-;8576:6:::1;:19:::0;;-1:-1:-1;;;;;;8576:19:0::1;::::0;;8519:84::o;3664:104::-;3720:13;3753:7;3746:14;;;;;:::i;5305:375::-;1069:10;5398:4;5442:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;5442:34:0;;;;;;;;;;5495:35;;;;5487:85;;;;-1:-1:-1;;;5487:85:0;;4716:2:1;5487:85:0;;;4698:21:1;4755:2;4735:18;;;4728:30;4794:34;4774:18;;;4767:62;-1:-1:-1;;;4845:18:1;;;4838:35;4890:19;;5487:85:0;4514:401:1;5487:85:0;5583:67;1069:10;5606:7;5615:34;5634:15;5615:16;:34;:::i;5583:67::-;-1:-1:-1;5668:4:0;;5305:375;-1:-1:-1;;;5305:375:0:o;4137:175::-;4223:4;4240:42;1069:10;4264:9;4275:6;4240:9;:42::i;8746:99::-;8793:13;8826:11;8819:18;;;;;:::i;7838:673::-;7762:6;;-1:-1:-1;;;;;7762:6:0;7748:10;:20;7740:70;;;;-1:-1:-1;;;7740:70:0;;;;;;;:::i;:::-;7901:11:::1;::::0;-1:-1:-1;;;7901:11:0;::::1;;;7900:12;7892:48;;;::::0;-1:-1:-1;;;7892:48:0;;5122:2:1;7892:48:0::1;::::0;::::1;5104:21:1::0;5161:2;5141:18;;;5134:30;5200:25;5180:18;;;5173:53;5243:18;;7892:48:0::1;4920:347:1::0;7892:48:0::1;7953:15;:80:::0;;-1:-1:-1;;;;;;7953:80:0::1;7990:42;7953:80:::0;;::::1;::::0;;;8078:25:::1;::::0;;-1:-1:-1;;;8078:25:0;;;;:23:::1;::::0;:25:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;7990:42;8078:25:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8060:55:0::1;;8124:4;8131:15;;;;;;;;;-1:-1:-1::0;;;;;8131:15:0::1;-1:-1:-1::0;;;;;8131:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8060:94;::::0;-1:-1:-1;;;;;;8060:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5720:32:1;;;8060:94:0::1;::::0;::::1;5702:51:1::0;5789:32;;5769:18;;;5762:60;5675:18;;8060:94:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8044:13;:110:::0;;-1:-1:-1;;;;;;8044:110:0::1;-1:-1:-1::0;;;;;8044:110:0;;::::1;;::::0;;8197:15:::1;::::0;8165:72:::1;::::0;8182:4:::1;::::0;8197:15:::1;8215:21;8165:8;:72::i;:::-;8250:15;::::0;-1:-1:-1;;;;;8250:15:0::1;:31;8289:21;8334:4;8354:24;8334:4:::0;-1:-1:-1;;;;;4103:18:0;4076:7;4103:18;;;;;;;;;;;;4002:127;8354:24:::1;8425:6;::::0;8250:222:::1;::::0;::::1;::::0;;;-1:-1:-1;;;;;;8250:222:0;;;-1:-1:-1;;;;;6154:32:1;;;8250:222:0::1;::::0;::::1;6136:51:1::0;6203:18;;;6196:34;;;;8393:1:0::1;6246:18:1::0;;;6239:34;;;6289:18;;;6282:34;8425:6:0;;;::::1;6332:19:1::0;;;6325:61;8446:15:0::1;6402:19:1::0;;;6395:35;6108:19;;8250:222:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;8485:11:0::1;:18:::0;;-1:-1:-1;;;;8485:18:0::1;-1:-1:-1::0;;;8485:18:0::1;::::0;;-1:-1:-1;7838:673:0:o;6240:346::-;-1:-1:-1;;;;;6342:19:0;;6334:68;;;;-1:-1:-1;;;6334:68:0;;7104:2:1;6334:68:0;;;7086:21:1;7143:2;7123:18;;;7116:30;7182:34;7162:18;;;7155:62;-1:-1:-1;;;7233:18:1;;;7226:34;7277:19;;6334:68:0;6902:400:1;6334:68:0;-1:-1:-1;;;;;6421:21:0;;6413:68;;;;-1:-1:-1;;;6413:68:0;;7509:2:1;6413:68:0;;;7491:21:1;7548:2;7528:18;;;7521:30;7587:34;7567:18;;;7560:62;-1:-1:-1;;;7638:18:1;;;7631:32;7680:19;;6413:68:0;7307:398:1;6413:68:0;-1:-1:-1;;;;;6494:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6546:32;;1517:25:1;;;6546:32:0;;1490:18:1;6546:32:0;;;;;;;6240:346;;;:::o;5688:544::-;-1:-1:-1;;;;;5794:20:0;;5786:70;;;;-1:-1:-1;;;5786:70:0;;7912:2:1;5786:70:0;;;7894:21:1;7951:2;7931:18;;;7924:30;7990:34;7970:18;;;7963:62;-1:-1:-1;;;8041:18:1;;;8034:35;8086:19;;5786:70:0;7710:401:1;5786:70:0;-1:-1:-1;;;;;5875:23:0;;5867:71;;;;-1:-1:-1;;;5867:71:0;;8318:2:1;5867:71:0;;;8300:21:1;8357:2;8337:18;;;8330:30;8396:34;8376:18;;;8369:62;-1:-1:-1;;;8447:18:1;;;8440:33;8490:19;;5867:71:0;8116:399:1;5867:71:0;-1:-1:-1;;;;;5975:17:0;;5951:21;5975:17;;;;;;;;;;;6011:23;;;;6003:74;;;;-1:-1:-1;;;6003:74:0;;8722:2:1;6003:74:0;;;8704:21:1;8761:2;8741:18;;;8734:30;8800:34;8780:18;;;8773:62;-1:-1:-1;;;8851:18:1;;;8844:36;8897:19;;6003:74:0;8520:402:1;6003:74:0;6108:22;6124:6;6108:13;:22;:::i;:::-;-1:-1:-1;;;;;6088:17:0;;;:9;:17;;;;;;;;;;;:42;;;;6141:20;;;;;;;;:30;;6165:6;;6088:9;6141:30;;6165:6;;6141:30;:::i;:::-;;;;;;;;6206:9;-1:-1:-1;;;;;6189:35:0;6198:6;-1:-1:-1;;;;;6189:35:0;;6217:6;6189:35;;;;1517:25:1;;1505:2;1490:18;;1371:177;6189:35:0;;;;;;;;5775:457;5688:544;;;:::o;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;492:70;437:131;:::o;573:367::-;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;904:2;889:18;;;;876:32;;-1:-1:-1;;;573:367:1:o;1553:508::-;1630:6;1638;1646;1699:2;1687:9;1678:7;1674:23;1670:32;1667:52;;;1715:1;1712;1705:12;1667:52;1754:9;1741:23;1773:31;1798:5;1773:31;:::i;:::-;1823:5;-1:-1:-1;1880:2:1;1865:18;;1852:32;1893:33;1852:32;1893:33;:::i;:::-;1553:508;;1945:7;;-1:-1:-1;;;2025:2:1;2010:18;;;;1997:32;;1553:508::o;2274:247::-;2333:6;2386:2;2374:9;2365:7;2361:23;2357:32;2354:52;;;2402:1;2399;2392:12;2354:52;2441:9;2428:23;2460:31;2485:5;2460:31;:::i;:::-;2510:5;2274:247;-1:-1:-1;;;2274:247:1:o;2526:388::-;2594:6;2602;2655:2;2643:9;2634:7;2630:23;2626:32;2623:52;;;2671:1;2668;2661:12;2623:52;2710:9;2697:23;2729:31;2754:5;2729:31;:::i;:::-;2779:5;-1:-1:-1;2836:2:1;2821:18;;2808:32;2849:33;2808:32;2849:33;:::i;:::-;2901:7;2891:17;;;2526:388;;;;;:::o;2919:380::-;2998:1;2994:12;;;;3041;;;3062:61;;3116:4;3108:6;3104:17;3094:27;;3062:61;3169:2;3161:6;3158:14;3138:18;3135:38;3132:161;;3215:10;3210:3;3206:20;3203:1;3196:31;3250:4;3247:1;3240:15;3278:4;3275:1;3268:15;3132:161;;2919:380;;;:::o;3713:127::-;3774:10;3769:3;3765:20;3762:1;3755:31;3805:4;3802:1;3795:15;3829:4;3826:1;3819:15;3845:128;3912:9;;;3933:11;;;3930:37;;;3947:18;;:::i;3978:125::-;4043:9;;;4064:10;;;4061:36;;;4077:18;;:::i;4108:401::-;4310:2;4292:21;;;4349:2;4329:18;;;4322:30;4388:34;4383:2;4368:18;;4361:62;-1:-1:-1;;;4454:2:1;4439:18;;4432:35;4499:3;4484:19;;4108:401::o;5272:251::-;5342:6;5395:2;5383:9;5374:7;5370:23;5366:32;5363:52;;;5411:1;5408;5401:12;5363:52;5443:9;5437:16;5462:31;5487:5;5462:31;:::i;6441:456::-;6529:6;6537;6545;6598:2;6586:9;6577:7;6573:23;6569:32;6566:52;;;6614:1;6611;6604:12;6566:52;-1:-1:-1;;6659:16:1;;6765:2;6750:18;;6744:25;6861:2;6846:18;;;6840:25;6659:16;;6744:25;;-1:-1:-1;6840:25:1;6441:456;-1:-1:-1;6441:456:1:o

Swarm Source

ipfs://9acd1a2caa4b209783ecccb82618a8cbe7c5f0abb9dc1ab49754a2f240d927ef

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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