S Price: $0.586864 (-1.15%)

Contract

0x7D3A9ff7c829533b0cc81346cfb0Cb71F90D47ad

Overview

S Balance

Sonic LogoSonic LogoSonic Logo0 S

S Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

1 Token Transfer found.

Parent Transaction Hash Block From To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
PicklesToken

Compiler Version
v0.8.28+commit.7893614a

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at SonicScan.org on 2024-12-22
*/

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

contract PicklesToken {
    string public name = "Pickles";
    string public symbol = "PICKLES";
    uint8 public decimals = 18;
    uint256 public totalSupply = 500_000_000 * 10**18;

    address public owner;

    // Distribution
    uint256 public presaleSupply = (totalSupply * 50) / 100; // 50% for presale
    uint256 public teamSupply = (totalSupply * 20) / 100;    // 20% for team
    uint256 public unlockedTeamSupply = 0;                  // Initially locked
    uint256 public remainingSupply = totalSupply;           // Remaining supply

    // Token holders
    mapping(address => uint256) public balanceOf;

    // Team token release
    uint256 public unlock90Days;
    uint256 public unlock180Days;
    uint256 public unlock270Days;
    uint256 public unlock365Days;
    mapping(uint256 => bool) public teamStageReleased;

    // Presale
    uint256 public tokenPrice = 0.025 ether; // Token price during presale
    bool public presaleActive = true;
    uint256 public tokensSold;

    uint256 public minPurchase = 10 ether; // Minimum purchase
    uint256 public maxPurchase = 5000 ether; // Maximum purchase

    // Events
    event Transfer(address indexed from, address indexed to, uint256 value);
    event TokensPurchased(address indexed buyer, uint256 amount);
    event TeamTokensReleased(uint256 stage, uint256 amount);

    constructor() {
        owner = msg.sender;

        // Allocate presale tokens
        balanceOf[address(this)] = presaleSupply;
        remainingSupply -= presaleSupply;

        // Set team tokens locked
        remainingSupply -= teamSupply;

        // Set team unlock times
        unlock90Days = block.timestamp + 90 days;
        unlock180Days = block.timestamp + 180 days;
        unlock270Days = block.timestamp + 270 days;
        unlock365Days = block.timestamp + 365 days;

        emit Transfer(address(0), address(this), presaleSupply);
    }

    modifier onlyOwner() {
        require(msg.sender == owner, "Not the contract owner");
        _;
    }

    // Transfer tokens
    function transfer(address to, uint256 value) external returns (bool) {
        require(to != address(0), "Cannot transfer to zero address");
        require(balanceOf[msg.sender] >= value, "Insufficient balance");

        balanceOf[msg.sender] -= value;
        balanceOf[to] += value;

        emit Transfer(msg.sender, to, value);
        return true;
    }

    // Buy tokens during presale
    function buyTokens() external payable {
        require(presaleActive, "Presale is not active");
        require(msg.value >= minPurchase, "Minimum purchase not met");
        require(msg.value <= maxPurchase, "Maximum purchase exceeded");

        uint256 tokensToBuy = (msg.value * 10**decimals) / tokenPrice;
        require(tokensToBuy <= balanceOf[address(this)], "Not enough tokens available");

        balanceOf[address(this)] -= tokensToBuy;
        balanceOf[msg.sender] += tokensToBuy;
        tokensSold += tokensToBuy;

        emit TokensPurchased(msg.sender, tokensToBuy);
    }

    // End presale
    function endPresale() external onlyOwner {
        presaleActive = false;
        uint256 unsoldTokens = balanceOf[address(this)];
        balanceOf[address(this)] = 0;
        balanceOf[owner] += unsoldTokens;

        emit Transfer(address(this), owner, unsoldTokens);
    }

    // Release team tokens in stages
    function releaseTeamTokens(uint256 stage) external onlyOwner {
        require(stage >= 1 && stage <= 4, "Invalid stage");
        require(!teamStageReleased[stage], "Stage already released");

        uint256 amount = teamSupply / 4; // 5% of total supply in each stage

        if (stage == 1) {
            require(block.timestamp >= unlock90Days, "90 days not passed");
        } else if (stage == 2) {
            require(block.timestamp >= unlock180Days, "180 days not passed");
        } else if (stage == 3) {
            require(block.timestamp >= unlock270Days, "270 days not passed");
        } else if (stage == 4) {
            require(block.timestamp >= unlock365Days, "365 days not passed");
        }

        teamStageReleased[stage] = true;
        unlockedTeamSupply += amount;
        balanceOf[owner] += amount;

        emit TeamTokensReleased(stage, amount);
        emit Transfer(address(0), owner, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"stage","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TeamTokensReleased","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"buyer","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TokensPurchased","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTokens","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"endPresale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxPurchase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minPurchase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"presaleActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"presaleSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"stage","type":"uint256"}],"name":"releaseTeamTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"remainingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"teamStageReleased","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teamSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensSold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unlock180Days","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unlock270Days","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unlock365Days","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unlock90Days","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unlockedTeamSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

60806040526040518060400160405280600781526020017f5069636b6c6573000000000000000000000000000000000000000000000000008152505f90816100479190610500565b506040518060400160405280600781526020017f5049434b4c4553000000000000000000000000000000000000000000000000008152506001908161008c9190610500565b50601260025f6101000a81548160ff021916908360ff1602179055506b019d971e4fe8401e74000000600355606460326003546100c991906105fc565b6100d3919061066a565b600555606460146003546100e791906105fc565b6100f1919061066a565b6006555f6007556003546008556658d15e17628000600f55600160105f6101000a81548160ff021916908315150217905550678ac7230489e8000060125569010f0cf064dd59200000601355348015610148575f5ffd5b503360045f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060055460095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f208190555060055460085f8282546101e0919061069a565b9250508190555060065460085f8282546101fa919061069a565b925050819055506276a7004261021091906106cd565b600a8190555062ed4e004261022591906106cd565b600b81905550630163f5004261023b91906106cd565b600c819055506301e133804261025191906106cd565b600d819055503073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6005546040516102b6919061070f565b60405180910390a3610728565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061033e57607f821691505b602082108103610351576103506102fa565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026103b37fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610378565b6103bd8683610378565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6104016103fc6103f7846103d5565b6103de565b6103d5565b9050919050565b5f819050919050565b61041a836103e7565b61042e61042682610408565b848454610384565b825550505050565b5f5f905090565b610445610436565b610450818484610411565b505050565b5b81811015610473576104685f8261043d565b600181019050610456565b5050565b601f8211156104b85761048981610357565b61049284610369565b810160208510156104a1578190505b6104b56104ad85610369565b830182610455565b50505b505050565b5f82821c905092915050565b5f6104d85f19846008026104bd565b1980831691505092915050565b5f6104f083836104c9565b9150826002028217905092915050565b610509826102c3565b67ffffffffffffffff811115610522576105216102cd565b5b61052c8254610327565b610537828285610477565b5f60209050601f831160018114610568575f8415610556578287015190505b61056085826104e5565b8655506105c7565b601f19841661057686610357565b5f5b8281101561059d57848901518255600182019150602085019450602081019050610578565b868310156105ba57848901516105b6601f8916826104c9565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f610606826103d5565b9150610611836103d5565b925082820261061f816103d5565b91508282048414831517610636576106356105cf565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f610674826103d5565b915061067f836103d5565b92508261068f5761068e61063d565b5b828204905092915050565b5f6106a4826103d5565b91506106af836103d5565b92508282039050818111156106c7576106c66105cf565b5b92915050565b5f6106d7826103d5565b91506106e2836103d5565b92508282019050808211156106fa576106f96105cf565b5b92915050565b610709816103d5565b82525050565b5f6020820190506107225f830184610700565b92915050565b611d0e806107355f395ff3fe60806040526004361061014a575f3560e01c806376beb07d116100b5578063a43be57b1161006e578063a43be57b14610464578063a9059cbb1461047a578063b3a196e9146104b6578063d0febe4c146104e0578063da0239a6146104ea578063dcecb1c2146105145761014a565b806376beb07d146103585780637ff9b596146103945780638da5cb5b146103be57806395d89b41146103e8578063977b055b1461041257806398b7bbef1461043c5761014a565b806333b5b62e1161010757806333b5b62e1461024a5780633c20a6fc14610274578063518ab2a81461029e57806353135ca0146102c85780635799bcae146102f257806370a082311461031c5761014a565b806306fdde031461014e57806318160ddd146101785780632cfac6ec146101a257806330e438ca146101cc578063313ce567146101f657806333682ecf14610220575b5f5ffd5b348015610159575f5ffd5b5061016261053e565b60405161016f9190611266565b60405180910390f35b348015610183575f5ffd5b5061018c6105c9565b604051610199919061129e565b60405180910390f35b3480156101ad575f5ffd5b506101b66105cf565b6040516101c3919061129e565b60405180910390f35b3480156101d7575f5ffd5b506101e06105d5565b6040516101ed919061129e565b60405180910390f35b348015610201575f5ffd5b5061020a6105db565b60405161021791906112d2565b60405180910390f35b34801561022b575f5ffd5b506102346105ed565b604051610241919061129e565b60405180910390f35b348015610255575f5ffd5b5061025e6105f3565b60405161026b919061129e565b60405180910390f35b34801561027f575f5ffd5b506102886105f9565b604051610295919061129e565b60405180910390f35b3480156102a9575f5ffd5b506102b26105ff565b6040516102bf919061129e565b60405180910390f35b3480156102d3575f5ffd5b506102dc610605565b6040516102e99190611305565b60405180910390f35b3480156102fd575f5ffd5b50610306610617565b604051610313919061129e565b60405180910390f35b348015610327575f5ffd5b50610342600480360381019061033d919061137c565b61061d565b60405161034f919061129e565b60405180910390f35b348015610363575f5ffd5b5061037e600480360381019061037991906113d1565b610632565b60405161038b9190611305565b60405180910390f35b34801561039f575f5ffd5b506103a861064f565b6040516103b5919061129e565b60405180910390f35b3480156103c9575f5ffd5b506103d2610655565b6040516103df919061140b565b60405180910390f35b3480156103f3575f5ffd5b506103fc61067a565b6040516104099190611266565b60405180910390f35b34801561041d575f5ffd5b50610426610706565b604051610433919061129e565b60405180910390f35b348015610447575f5ffd5b50610462600480360381019061045d91906113d1565b61070c565b005b34801561046f575f5ffd5b50610478610b1b565b005b348015610485575f5ffd5b506104a0600480360381019061049b9190611424565b610d43565b6040516104ad9190611305565b60405180910390f35b3480156104c1575f5ffd5b506104ca610f47565b6040516104d7919061129e565b60405180910390f35b6104e8610f4d565b005b3480156104f5575f5ffd5b506104fe6111ea565b60405161050b919061129e565b60405180910390f35b34801561051f575f5ffd5b506105286111f0565b604051610535919061129e565b60405180910390f35b5f805461054a9061148f565b80601f01602080910402602001604051908101604052809291908181526020018280546105769061148f565b80156105c15780601f10610598576101008083540402835291602001916105c1565b820191905f5260205f20905b8154815290600101906020018083116105a457829003601f168201915b505050505081565b60035481565b60065481565b600b5481565b60025f9054906101000a900460ff1681565b60075481565b60125481565b600d5481565b60115481565b60105f9054906101000a900460ff1681565b600c5481565b6009602052805f5260405f205f915090505481565b600e602052805f5260405f205f915054906101000a900460ff1681565b600f5481565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600180546106879061148f565b80601f01602080910402602001604051908101604052809291908181526020018280546106b39061148f565b80156106fe5780601f106106d5576101008083540402835291602001916106fe565b820191905f5260205f20905b8154815290600101906020018083116106e157829003601f168201915b505050505081565b60135481565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461079b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079290611509565b60405180910390fd5b600181101580156107ad575060048111155b6107ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e390611571565b60405180910390fd5b600e5f8281526020019081526020015f205f9054906101000a900460ff161561084a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610841906115d9565b60405180910390fd5b5f600460065461085a9190611651565b9050600182036108ae57600a544210156108a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a0906116cb565b60405180910390fd5b6109a3565b6002820361090057600b544210156108fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f290611733565b60405180910390fd5b6109a2565b6003820361095257600c5442101561094d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109449061179b565b60405180910390fd5b6109a1565b600482036109a057600d5442101561099f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099690611803565b60405180910390fd5b5b5b5b5b6001600e5f8481526020019081526020015f205f6101000a81548160ff0219169083151502179055508060075f8282546109dd9190611821565b925050819055508060095f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610a519190611821565b925050819055507ff8d4e868d21b6cfbdbbdec864799e9a4026da7f0e1e517581108bdba1949e96f8282604051610a89929190611854565b60405180910390a160045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610b0f919061129e565b60405180910390a35050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610baa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba190611509565b60405180910390fd5b5f60105f6101000a81548160ff0219169083151502179055505f60095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f60095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508060095f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610cb39190611821565b9250508190555060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610d38919061129e565b60405180910390a350565b5f5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da9906118c5565b60405180910390fd5b8160095f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610e32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e299061192d565b60405180910390fd5b8160095f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610e7e919061194b565b925050819055508160095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610ed19190611821565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f35919061129e565b60405180910390a36001905092915050565b60055481565b60105f9054906101000a900460ff16610f9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f92906119c8565b60405180910390fd5b601254341015610fe0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd790611a30565b60405180910390fd5b601354341115611025576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101c90611a98565b60405180910390fd5b5f600f5460025f9054906101000a900460ff16600a6110449190611be5565b3461104f9190611c2f565b6110599190611651565b905060095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20548111156110db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d290611cba565b60405180910390fd5b8060095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254611127919061194b565b925050819055508060095f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461117a9190611821565b925050819055508060115f8282546111929190611821565b925050819055503373ffffffffffffffffffffffffffffffffffffffff167f8f28852646c20cc973d3a8218f7eefed58c25c909f78f0265af4818c3d4dc271826040516111df919061129e565b60405180910390a250565b60085481565b600a5481565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611238826111f6565b6112428185611200565b9350611252818560208601611210565b61125b8161121e565b840191505092915050565b5f6020820190508181035f83015261127e818461122e565b905092915050565b5f819050919050565b61129881611286565b82525050565b5f6020820190506112b15f83018461128f565b92915050565b5f60ff82169050919050565b6112cc816112b7565b82525050565b5f6020820190506112e55f8301846112c3565b92915050565b5f8115159050919050565b6112ff816112eb565b82525050565b5f6020820190506113185f8301846112f6565b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61134b82611322565b9050919050565b61135b81611341565b8114611365575f5ffd5b50565b5f8135905061137681611352565b92915050565b5f602082840312156113915761139061131e565b5b5f61139e84828501611368565b91505092915050565b6113b081611286565b81146113ba575f5ffd5b50565b5f813590506113cb816113a7565b92915050565b5f602082840312156113e6576113e561131e565b5b5f6113f3848285016113bd565b91505092915050565b61140581611341565b82525050565b5f60208201905061141e5f8301846113fc565b92915050565b5f5f6040838503121561143a5761143961131e565b5b5f61144785828601611368565b9250506020611458858286016113bd565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806114a657607f821691505b6020821081036114b9576114b8611462565b5b50919050565b7f4e6f742074686520636f6e7472616374206f776e6572000000000000000000005f82015250565b5f6114f3601683611200565b91506114fe826114bf565b602082019050919050565b5f6020820190508181035f830152611520816114e7565b9050919050565b7f496e76616c6964207374616765000000000000000000000000000000000000005f82015250565b5f61155b600d83611200565b915061156682611527565b602082019050919050565b5f6020820190508181035f8301526115888161154f565b9050919050565b7f537461676520616c72656164792072656c6561736564000000000000000000005f82015250565b5f6115c3601683611200565b91506115ce8261158f565b602082019050919050565b5f6020820190508181035f8301526115f0816115b7565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61165b82611286565b915061166683611286565b925082611676576116756115f7565b5b828204905092915050565b7f39302064617973206e6f742070617373656400000000000000000000000000005f82015250565b5f6116b5601283611200565b91506116c082611681565b602082019050919050565b5f6020820190508181035f8301526116e2816116a9565b9050919050565b7f3138302064617973206e6f7420706173736564000000000000000000000000005f82015250565b5f61171d601383611200565b9150611728826116e9565b602082019050919050565b5f6020820190508181035f83015261174a81611711565b9050919050565b7f3237302064617973206e6f7420706173736564000000000000000000000000005f82015250565b5f611785601383611200565b915061179082611751565b602082019050919050565b5f6020820190508181035f8301526117b281611779565b9050919050565b7f3336352064617973206e6f7420706173736564000000000000000000000000005f82015250565b5f6117ed601383611200565b91506117f8826117b9565b602082019050919050565b5f6020820190508181035f83015261181a816117e1565b9050919050565b5f61182b82611286565b915061183683611286565b925082820190508082111561184e5761184d611624565b5b92915050565b5f6040820190506118675f83018561128f565b611874602083018461128f565b9392505050565b7f43616e6e6f74207472616e7366657220746f207a65726f2061646472657373005f82015250565b5f6118af601f83611200565b91506118ba8261187b565b602082019050919050565b5f6020820190508181035f8301526118dc816118a3565b9050919050565b7f496e73756666696369656e742062616c616e63650000000000000000000000005f82015250565b5f611917601483611200565b9150611922826118e3565b602082019050919050565b5f6020820190508181035f8301526119448161190b565b9050919050565b5f61195582611286565b915061196083611286565b925082820390508181111561197857611977611624565b5b92915050565b7f50726573616c65206973206e6f742061637469766500000000000000000000005f82015250565b5f6119b2601583611200565b91506119bd8261197e565b602082019050919050565b5f6020820190508181035f8301526119df816119a6565b9050919050565b7f4d696e696d756d207075726368617365206e6f74206d657400000000000000005f82015250565b5f611a1a601883611200565b9150611a25826119e6565b602082019050919050565b5f6020820190508181035f830152611a4781611a0e565b9050919050565b7f4d6178696d756d207075726368617365206578636565646564000000000000005f82015250565b5f611a82601983611200565b9150611a8d82611a4e565b602082019050919050565b5f6020820190508181035f830152611aaf81611a76565b9050919050565b5f8160011c9050919050565b5f5f8291508390505b6001851115611b0b57808604811115611ae757611ae6611624565b5b6001851615611af65780820291505b8081029050611b0485611ab6565b9450611acb565b94509492505050565b5f82611b235760019050611bde565b81611b30575f9050611bde565b8160018114611b465760028114611b5057611b7f565b6001915050611bde565b60ff841115611b6257611b61611624565b5b8360020a915084821115611b7957611b78611624565b5b50611bde565b5060208310610133831016604e8410600b8410161715611bb45782820a905083811115611baf57611bae611624565b5b611bde565b611bc18484846001611ac2565b92509050818404811115611bd857611bd7611624565b5b81810290505b9392505050565b5f611bef82611286565b9150611bfa836112b7565b9250611c277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611b14565b905092915050565b5f611c3982611286565b9150611c4483611286565b9250828202611c5281611286565b91508282048414831517611c6957611c68611624565b5b5092915050565b7f4e6f7420656e6f75676820746f6b656e7320617661696c61626c6500000000005f82015250565b5f611ca4601b83611200565b9150611caf82611c70565b602082019050919050565b5f6020820190508181035f830152611cd181611c98565b905091905056fea2646970667358221220fcdeda77405fa1831ce571e6d03967b9a812176a7c7e0571b867068b8b4171fd64736f6c634300081c0033

Deployed Bytecode

0x60806040526004361061014a575f3560e01c806376beb07d116100b5578063a43be57b1161006e578063a43be57b14610464578063a9059cbb1461047a578063b3a196e9146104b6578063d0febe4c146104e0578063da0239a6146104ea578063dcecb1c2146105145761014a565b806376beb07d146103585780637ff9b596146103945780638da5cb5b146103be57806395d89b41146103e8578063977b055b1461041257806398b7bbef1461043c5761014a565b806333b5b62e1161010757806333b5b62e1461024a5780633c20a6fc14610274578063518ab2a81461029e57806353135ca0146102c85780635799bcae146102f257806370a082311461031c5761014a565b806306fdde031461014e57806318160ddd146101785780632cfac6ec146101a257806330e438ca146101cc578063313ce567146101f657806333682ecf14610220575b5f5ffd5b348015610159575f5ffd5b5061016261053e565b60405161016f9190611266565b60405180910390f35b348015610183575f5ffd5b5061018c6105c9565b604051610199919061129e565b60405180910390f35b3480156101ad575f5ffd5b506101b66105cf565b6040516101c3919061129e565b60405180910390f35b3480156101d7575f5ffd5b506101e06105d5565b6040516101ed919061129e565b60405180910390f35b348015610201575f5ffd5b5061020a6105db565b60405161021791906112d2565b60405180910390f35b34801561022b575f5ffd5b506102346105ed565b604051610241919061129e565b60405180910390f35b348015610255575f5ffd5b5061025e6105f3565b60405161026b919061129e565b60405180910390f35b34801561027f575f5ffd5b506102886105f9565b604051610295919061129e565b60405180910390f35b3480156102a9575f5ffd5b506102b26105ff565b6040516102bf919061129e565b60405180910390f35b3480156102d3575f5ffd5b506102dc610605565b6040516102e99190611305565b60405180910390f35b3480156102fd575f5ffd5b50610306610617565b604051610313919061129e565b60405180910390f35b348015610327575f5ffd5b50610342600480360381019061033d919061137c565b61061d565b60405161034f919061129e565b60405180910390f35b348015610363575f5ffd5b5061037e600480360381019061037991906113d1565b610632565b60405161038b9190611305565b60405180910390f35b34801561039f575f5ffd5b506103a861064f565b6040516103b5919061129e565b60405180910390f35b3480156103c9575f5ffd5b506103d2610655565b6040516103df919061140b565b60405180910390f35b3480156103f3575f5ffd5b506103fc61067a565b6040516104099190611266565b60405180910390f35b34801561041d575f5ffd5b50610426610706565b604051610433919061129e565b60405180910390f35b348015610447575f5ffd5b50610462600480360381019061045d91906113d1565b61070c565b005b34801561046f575f5ffd5b50610478610b1b565b005b348015610485575f5ffd5b506104a0600480360381019061049b9190611424565b610d43565b6040516104ad9190611305565b60405180910390f35b3480156104c1575f5ffd5b506104ca610f47565b6040516104d7919061129e565b60405180910390f35b6104e8610f4d565b005b3480156104f5575f5ffd5b506104fe6111ea565b60405161050b919061129e565b60405180910390f35b34801561051f575f5ffd5b506105286111f0565b604051610535919061129e565b60405180910390f35b5f805461054a9061148f565b80601f01602080910402602001604051908101604052809291908181526020018280546105769061148f565b80156105c15780601f10610598576101008083540402835291602001916105c1565b820191905f5260205f20905b8154815290600101906020018083116105a457829003601f168201915b505050505081565b60035481565b60065481565b600b5481565b60025f9054906101000a900460ff1681565b60075481565b60125481565b600d5481565b60115481565b60105f9054906101000a900460ff1681565b600c5481565b6009602052805f5260405f205f915090505481565b600e602052805f5260405f205f915054906101000a900460ff1681565b600f5481565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600180546106879061148f565b80601f01602080910402602001604051908101604052809291908181526020018280546106b39061148f565b80156106fe5780601f106106d5576101008083540402835291602001916106fe565b820191905f5260205f20905b8154815290600101906020018083116106e157829003601f168201915b505050505081565b60135481565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461079b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079290611509565b60405180910390fd5b600181101580156107ad575060048111155b6107ec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107e390611571565b60405180910390fd5b600e5f8281526020019081526020015f205f9054906101000a900460ff161561084a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610841906115d9565b60405180910390fd5b5f600460065461085a9190611651565b9050600182036108ae57600a544210156108a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a0906116cb565b60405180910390fd5b6109a3565b6002820361090057600b544210156108fb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108f290611733565b60405180910390fd5b6109a2565b6003820361095257600c5442101561094d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109449061179b565b60405180910390fd5b6109a1565b600482036109a057600d5442101561099f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099690611803565b60405180910390fd5b5b5b5b5b6001600e5f8481526020019081526020015f205f6101000a81548160ff0219169083151502179055508060075f8282546109dd9190611821565b925050819055508060095f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610a519190611821565b925050819055507ff8d4e868d21b6cfbdbbdec864799e9a4026da7f0e1e517581108bdba1949e96f8282604051610a89929190611854565b60405180910390a160045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610b0f919061129e565b60405180910390a35050565b60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610baa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba190611509565b60405180910390fd5b5f60105f6101000a81548160ff0219169083151502179055505f60095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490505f60095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508060095f60045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610cb39190611821565b9250508190555060045f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610d38919061129e565b60405180910390a350565b5f5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610db2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610da9906118c5565b60405180910390fd5b8160095f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20541015610e32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e299061192d565b60405180910390fd5b8160095f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610e7e919061194b565b925050819055508160095f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610ed19190611821565b925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610f35919061129e565b60405180910390a36001905092915050565b60055481565b60105f9054906101000a900460ff16610f9b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f92906119c8565b60405180910390fd5b601254341015610fe0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fd790611a30565b60405180910390fd5b601354341115611025576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161101c90611a98565b60405180910390fd5b5f600f5460025f9054906101000a900460ff16600a6110449190611be5565b3461104f9190611c2f565b6110599190611651565b905060095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20548111156110db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d290611cba565b60405180910390fd5b8060095f3073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254611127919061194b565b925050819055508060095f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461117a9190611821565b925050819055508060115f8282546111929190611821565b925050819055503373ffffffffffffffffffffffffffffffffffffffff167f8f28852646c20cc973d3a8218f7eefed58c25c909f78f0265af4818c3d4dc271826040516111df919061129e565b60405180910390a250565b60085481565b600a5481565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611238826111f6565b6112428185611200565b9350611252818560208601611210565b61125b8161121e565b840191505092915050565b5f6020820190508181035f83015261127e818461122e565b905092915050565b5f819050919050565b61129881611286565b82525050565b5f6020820190506112b15f83018461128f565b92915050565b5f60ff82169050919050565b6112cc816112b7565b82525050565b5f6020820190506112e55f8301846112c3565b92915050565b5f8115159050919050565b6112ff816112eb565b82525050565b5f6020820190506113185f8301846112f6565b92915050565b5f5ffd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61134b82611322565b9050919050565b61135b81611341565b8114611365575f5ffd5b50565b5f8135905061137681611352565b92915050565b5f602082840312156113915761139061131e565b5b5f61139e84828501611368565b91505092915050565b6113b081611286565b81146113ba575f5ffd5b50565b5f813590506113cb816113a7565b92915050565b5f602082840312156113e6576113e561131e565b5b5f6113f3848285016113bd565b91505092915050565b61140581611341565b82525050565b5f60208201905061141e5f8301846113fc565b92915050565b5f5f6040838503121561143a5761143961131e565b5b5f61144785828601611368565b9250506020611458858286016113bd565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806114a657607f821691505b6020821081036114b9576114b8611462565b5b50919050565b7f4e6f742074686520636f6e7472616374206f776e6572000000000000000000005f82015250565b5f6114f3601683611200565b91506114fe826114bf565b602082019050919050565b5f6020820190508181035f830152611520816114e7565b9050919050565b7f496e76616c6964207374616765000000000000000000000000000000000000005f82015250565b5f61155b600d83611200565b915061156682611527565b602082019050919050565b5f6020820190508181035f8301526115888161154f565b9050919050565b7f537461676520616c72656164792072656c6561736564000000000000000000005f82015250565b5f6115c3601683611200565b91506115ce8261158f565b602082019050919050565b5f6020820190508181035f8301526115f0816115b7565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61165b82611286565b915061166683611286565b925082611676576116756115f7565b5b828204905092915050565b7f39302064617973206e6f742070617373656400000000000000000000000000005f82015250565b5f6116b5601283611200565b91506116c082611681565b602082019050919050565b5f6020820190508181035f8301526116e2816116a9565b9050919050565b7f3138302064617973206e6f7420706173736564000000000000000000000000005f82015250565b5f61171d601383611200565b9150611728826116e9565b602082019050919050565b5f6020820190508181035f83015261174a81611711565b9050919050565b7f3237302064617973206e6f7420706173736564000000000000000000000000005f82015250565b5f611785601383611200565b915061179082611751565b602082019050919050565b5f6020820190508181035f8301526117b281611779565b9050919050565b7f3336352064617973206e6f7420706173736564000000000000000000000000005f82015250565b5f6117ed601383611200565b91506117f8826117b9565b602082019050919050565b5f6020820190508181035f83015261181a816117e1565b9050919050565b5f61182b82611286565b915061183683611286565b925082820190508082111561184e5761184d611624565b5b92915050565b5f6040820190506118675f83018561128f565b611874602083018461128f565b9392505050565b7f43616e6e6f74207472616e7366657220746f207a65726f2061646472657373005f82015250565b5f6118af601f83611200565b91506118ba8261187b565b602082019050919050565b5f6020820190508181035f8301526118dc816118a3565b9050919050565b7f496e73756666696369656e742062616c616e63650000000000000000000000005f82015250565b5f611917601483611200565b9150611922826118e3565b602082019050919050565b5f6020820190508181035f8301526119448161190b565b9050919050565b5f61195582611286565b915061196083611286565b925082820390508181111561197857611977611624565b5b92915050565b7f50726573616c65206973206e6f742061637469766500000000000000000000005f82015250565b5f6119b2601583611200565b91506119bd8261197e565b602082019050919050565b5f6020820190508181035f8301526119df816119a6565b9050919050565b7f4d696e696d756d207075726368617365206e6f74206d657400000000000000005f82015250565b5f611a1a601883611200565b9150611a25826119e6565b602082019050919050565b5f6020820190508181035f830152611a4781611a0e565b9050919050565b7f4d6178696d756d207075726368617365206578636565646564000000000000005f82015250565b5f611a82601983611200565b9150611a8d82611a4e565b602082019050919050565b5f6020820190508181035f830152611aaf81611a76565b9050919050565b5f8160011c9050919050565b5f5f8291508390505b6001851115611b0b57808604811115611ae757611ae6611624565b5b6001851615611af65780820291505b8081029050611b0485611ab6565b9450611acb565b94509492505050565b5f82611b235760019050611bde565b81611b30575f9050611bde565b8160018114611b465760028114611b5057611b7f565b6001915050611bde565b60ff841115611b6257611b61611624565b5b8360020a915084821115611b7957611b78611624565b5b50611bde565b5060208310610133831016604e8410600b8410161715611bb45782820a905083811115611baf57611bae611624565b5b611bde565b611bc18484846001611ac2565b92509050818404811115611bd857611bd7611624565b5b81810290505b9392505050565b5f611bef82611286565b9150611bfa836112b7565b9250611c277fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611b14565b905092915050565b5f611c3982611286565b9150611c4483611286565b9250828202611c5281611286565b91508282048414831517611c6957611c68611624565b5b5092915050565b7f4e6f7420656e6f75676820746f6b656e7320617661696c61626c6500000000005f82015250565b5f611ca4601b83611200565b9150611caf82611c70565b602082019050919050565b5f6020820190508181035f830152611cd181611c98565b905091905056fea2646970667358221220fcdeda77405fa1831ce571e6d03967b9a812176a7c7e0571b867068b8b4171fd64736f6c634300081c0033

Deployed Bytecode Sourcemap

60:4445:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;89:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;198:49;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;387:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;765:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;165:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;465:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1093;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;835:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1059:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1020:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;800:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;651:44;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;870:49;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;944:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;256:20;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;126:32;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1157:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3543:959;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3214:283;;;;;;;;;;;;;:::i;:::-;;2169:369;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;306:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2580:606;;;:::i;:::-;;546:44;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;731:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;89:30;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;198:49::-;;;;:::o;387:52::-;;;;:::o;765:28::-;;;;:::o;165:26::-;;;;;;;;;;;;;:::o;465:37::-;;;;:::o;1093:::-;;;;:::o;835:28::-;;;;:::o;1059:25::-;;;;:::o;1020:32::-;;;;;;;;;;;;;:::o;800:28::-;;;;:::o;651:44::-;;;;;;;;;;;;;;;;;:::o;870:49::-;;;;;;;;;;;;;;;;;;;;;;:::o;944:39::-;;;;:::o;256:20::-;;;;;;;;;;;;;:::o;126:32::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1157:39::-;;;;:::o;3543:959::-;2085:5;;;;;;;;;;;2071:19;;:10;:19;;;2063:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;3632:1:::1;3623:5;:10;;:24;;;;;3646:1;3637:5;:10;;3623:24;3615:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;3685:17;:24;3703:5;3685:24;;;;;;;;;;;;;;;;;;;;;3684:25;3676:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;3749:14;3779:1;3766:10;;:14;;;;:::i;:::-;3749:31;;3842:1;3833:5;:10:::0;3829:444:::1;;3887:12;;3868:15;:31;;3860:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;3829:444;;;3953:1;3944:5;:10:::0;3940:333:::1;;3998:13;;3979:15;:32;;3971:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;3940:333;;;4066:1;4057:5;:10:::0;4053:220:::1;;4111:13;;4092:15;:32;;4084:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;4053:220;;;4179:1;4170:5;:10:::0;4166:107:::1;;4224:13;;4205:15;:32;;4197:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;4166:107;4053:220;3940:333;3829:444;4312:4;4285:17;:24;4303:5;4285:24;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;4349:6;4327:18;;:28;;;;;;;:::i;:::-;;;;;;;;4386:6;4366:9;:16;4376:5;;;;;;;;;;;4366:16;;;;;;;;;;;;;;;;:26;;;;;;;:::i;:::-;;;;;;;;4410:33;4429:5;4436:6;4410:33;;;;;;;:::i;:::-;;;;;;;;4480:5;;;;;;;;;;;4459:35;;4476:1;4459:35;;;4487:6;4459:35;;;;;;:::i;:::-;;;;;;;;3604:898;3543:959:::0;:::o;3214:283::-;2085:5;;;;;;;;;;;2071:19;;:10;:19;;;2063:54;;;;;;;;;;;;:::i;:::-;;;;;;;;;3282:5:::1;3266:13;;:21;;;;;;;;;;;;;;;;;;3298:20;3321:9;:24;3339:4;3321:24;;;;;;;;;;;;;;;;3298:47;;3383:1;3356:9;:24;3374:4;3356:24;;;;;;;;;;;;;;;:28;;;;3415:12;3395:9;:16;3405:5;;;;;;;;;;;3395:16;;;;;;;;;;;;;;;;:32;;;;;;;:::i;:::-;;;;;;;;3469:5;;;;;;;;;;;3445:44;;3462:4;3445:44;;;3476:12;3445:44;;;;;;:::i;:::-;;;;;;;;3255:242;3214:283::o:0;2169:369::-;2232:4;2271:1;2257:16;;:2;:16;;;2249:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;2353:5;2328:9;:21;2338:10;2328:21;;;;;;;;;;;;;;;;:30;;2320:63;;;;;;;;;;;;:::i;:::-;;;;;;;;;2421:5;2396:9;:21;2406:10;2396:21;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;2454:5;2437:9;:13;2447:2;2437:13;;;;;;;;;;;;;;;;:22;;;;;;;:::i;:::-;;;;;;;;2498:2;2477:31;;2486:10;2477:31;;;2502:5;2477:31;;;;;;:::i;:::-;;;;;;;;2526:4;2519:11;;2169:369;;;;:::o;306:55::-;;;;:::o;2580:606::-;2637:13;;;;;;;;;;;2629:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;2708:11;;2695:9;:24;;2687:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;2780:11;;2767:9;:24;;2759:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;2834:19;2885:10;;2873:8;;;;;;;;;;;2869:2;:12;;;;:::i;:::-;2857:9;:24;;;;:::i;:::-;2856:39;;;;:::i;:::-;2834:61;;2929:9;:24;2947:4;2929:24;;;;;;;;;;;;;;;;2914:11;:39;;2906:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;3026:11;2998:9;:24;3016:4;2998:24;;;;;;;;;;;;;;;;:39;;;;;;;:::i;:::-;;;;;;;;3073:11;3048:9;:21;3058:10;3048:21;;;;;;;;;;;;;;;;:36;;;;;;;:::i;:::-;;;;;;;;3109:11;3095:10;;:25;;;;;;;:::i;:::-;;;;;;;;3154:10;3138:40;;;3166:11;3138:40;;;;;;:::i;:::-;;;;;;;;2618:568;2580:606::o;546:44::-;;;;:::o;731:27::-;;;;:::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:139::-;376:6;371:3;366;360:23;417:1;408:6;403:3;399:16;392:27;287:139;;;:::o;432:102::-;473:6;524:2;520:7;515:2;508:5;504:14;500:28;490:38;;432:102;;;:::o;540:377::-;628:3;656:39;689:5;656:39;:::i;:::-;711:71;775:6;770:3;711:71;:::i;:::-;704:78;;791:65;849:6;844:3;837:4;830:5;826:16;791:65;:::i;:::-;881:29;903:6;881:29;:::i;:::-;876:3;872:39;865:46;;632:285;540:377;;;;:::o;923:313::-;1036:4;1074:2;1063:9;1059:18;1051:26;;1123:9;1117:4;1113:20;1109:1;1098:9;1094:17;1087:47;1151:78;1224:4;1215:6;1151:78;:::i;:::-;1143:86;;923:313;;;;:::o;1242:77::-;1279:7;1308:5;1297:16;;1242:77;;;:::o;1325:118::-;1412:24;1430:5;1412:24;:::i;:::-;1407:3;1400:37;1325:118;;:::o;1449:222::-;1542:4;1580:2;1569:9;1565:18;1557:26;;1593:71;1661:1;1650:9;1646:17;1637:6;1593:71;:::i;:::-;1449:222;;;;:::o;1677:86::-;1712:7;1752:4;1745:5;1741:16;1730:27;;1677:86;;;:::o;1769:112::-;1852:22;1868:5;1852:22;:::i;:::-;1847:3;1840:35;1769:112;;:::o;1887:214::-;1976:4;2014:2;2003:9;1999:18;1991:26;;2027:67;2091:1;2080:9;2076:17;2067:6;2027:67;:::i;:::-;1887:214;;;;:::o;2107:90::-;2141:7;2184:5;2177:13;2170:21;2159:32;;2107:90;;;:::o;2203:109::-;2284:21;2299:5;2284:21;:::i;:::-;2279:3;2272:34;2203:109;;:::o;2318:210::-;2405:4;2443:2;2432:9;2428:18;2420:26;;2456:65;2518:1;2507:9;2503:17;2494:6;2456:65;:::i;:::-;2318:210;;;;:::o;2615:117::-;2724:1;2721;2714:12;2861:126;2898:7;2938:42;2931:5;2927:54;2916:65;;2861:126;;;:::o;2993:96::-;3030:7;3059:24;3077:5;3059:24;:::i;:::-;3048:35;;2993:96;;;:::o;3095:122::-;3168:24;3186:5;3168:24;:::i;:::-;3161:5;3158:35;3148:63;;3207:1;3204;3197:12;3148:63;3095:122;:::o;3223:139::-;3269:5;3307:6;3294:20;3285:29;;3323:33;3350:5;3323:33;:::i;:::-;3223:139;;;;:::o;3368:329::-;3427:6;3476:2;3464:9;3455:7;3451:23;3447:32;3444:119;;;3482:79;;:::i;:::-;3444:119;3602:1;3627:53;3672:7;3663:6;3652:9;3648:22;3627:53;:::i;:::-;3617:63;;3573:117;3368:329;;;;:::o;3703:122::-;3776:24;3794:5;3776:24;:::i;:::-;3769:5;3766:35;3756:63;;3815:1;3812;3805:12;3756:63;3703:122;:::o;3831:139::-;3877:5;3915:6;3902:20;3893:29;;3931:33;3958:5;3931:33;:::i;:::-;3831:139;;;;:::o;3976:329::-;4035:6;4084:2;4072:9;4063:7;4059:23;4055:32;4052:119;;;4090:79;;:::i;:::-;4052:119;4210:1;4235:53;4280:7;4271:6;4260:9;4256:22;4235:53;:::i;:::-;4225:63;;4181:117;3976:329;;;;:::o;4311:118::-;4398:24;4416:5;4398:24;:::i;:::-;4393:3;4386:37;4311:118;;:::o;4435:222::-;4528:4;4566:2;4555:9;4551:18;4543:26;;4579:71;4647:1;4636:9;4632:17;4623:6;4579:71;:::i;:::-;4435:222;;;;:::o;4663:474::-;4731:6;4739;4788:2;4776:9;4767:7;4763:23;4759:32;4756:119;;;4794:79;;:::i;:::-;4756:119;4914:1;4939:53;4984:7;4975:6;4964:9;4960:22;4939:53;:::i;:::-;4929:63;;4885:117;5041:2;5067:53;5112:7;5103:6;5092:9;5088:22;5067:53;:::i;:::-;5057:63;;5012:118;4663:474;;;;;:::o;5143:180::-;5191:77;5188:1;5181:88;5288:4;5285:1;5278:15;5312:4;5309:1;5302:15;5329:320;5373:6;5410:1;5404:4;5400:12;5390:22;;5457:1;5451:4;5447:12;5478:18;5468:81;;5534:4;5526:6;5522:17;5512:27;;5468:81;5596:2;5588:6;5585:14;5565:18;5562:38;5559:84;;5615:18;;:::i;:::-;5559:84;5380:269;5329:320;;;:::o;5655:172::-;5795:24;5791:1;5783:6;5779:14;5772:48;5655:172;:::o;5833:366::-;5975:3;5996:67;6060:2;6055:3;5996:67;:::i;:::-;5989:74;;6072:93;6161:3;6072:93;:::i;:::-;6190:2;6185:3;6181:12;6174:19;;5833:366;;;:::o;6205:419::-;6371:4;6409:2;6398:9;6394:18;6386:26;;6458:9;6452:4;6448:20;6444:1;6433:9;6429:17;6422:47;6486:131;6612:4;6486:131;:::i;:::-;6478:139;;6205:419;;;:::o;6630:163::-;6770:15;6766:1;6758:6;6754:14;6747:39;6630:163;:::o;6799:366::-;6941:3;6962:67;7026:2;7021:3;6962:67;:::i;:::-;6955:74;;7038:93;7127:3;7038:93;:::i;:::-;7156:2;7151:3;7147:12;7140:19;;6799:366;;;:::o;7171:419::-;7337:4;7375:2;7364:9;7360:18;7352:26;;7424:9;7418:4;7414:20;7410:1;7399:9;7395:17;7388:47;7452:131;7578:4;7452:131;:::i;:::-;7444:139;;7171:419;;;:::o;7596:172::-;7736:24;7732:1;7724:6;7720:14;7713:48;7596:172;:::o;7774:366::-;7916:3;7937:67;8001:2;7996:3;7937:67;:::i;:::-;7930:74;;8013:93;8102:3;8013:93;:::i;:::-;8131:2;8126:3;8122:12;8115:19;;7774:366;;;:::o;8146:419::-;8312:4;8350:2;8339:9;8335:18;8327:26;;8399:9;8393:4;8389:20;8385:1;8374:9;8370:17;8363:47;8427:131;8553:4;8427:131;:::i;:::-;8419:139;;8146:419;;;:::o;8571:180::-;8619:77;8616:1;8609:88;8716:4;8713:1;8706:15;8740:4;8737:1;8730:15;8757:180;8805:77;8802:1;8795:88;8902:4;8899:1;8892:15;8926:4;8923:1;8916:15;8943:185;8983:1;9000:20;9018:1;9000:20;:::i;:::-;8995:25;;9034:20;9052:1;9034:20;:::i;:::-;9029:25;;9073:1;9063:35;;9078:18;;:::i;:::-;9063:35;9120:1;9117;9113:9;9108:14;;8943:185;;;;:::o;9134:168::-;9274:20;9270:1;9262:6;9258:14;9251:44;9134:168;:::o;9308:366::-;9450:3;9471:67;9535:2;9530:3;9471:67;:::i;:::-;9464:74;;9547:93;9636:3;9547:93;:::i;:::-;9665:2;9660:3;9656:12;9649:19;;9308:366;;;:::o;9680:419::-;9846:4;9884:2;9873:9;9869:18;9861:26;;9933:9;9927:4;9923:20;9919:1;9908:9;9904:17;9897:47;9961:131;10087:4;9961:131;:::i;:::-;9953:139;;9680:419;;;:::o;10105:169::-;10245:21;10241:1;10233:6;10229:14;10222:45;10105:169;:::o;10280:366::-;10422:3;10443:67;10507:2;10502:3;10443:67;:::i;:::-;10436:74;;10519:93;10608:3;10519:93;:::i;:::-;10637:2;10632:3;10628:12;10621:19;;10280:366;;;:::o;10652:419::-;10818:4;10856:2;10845:9;10841:18;10833:26;;10905:9;10899:4;10895:20;10891:1;10880:9;10876:17;10869:47;10933:131;11059:4;10933:131;:::i;:::-;10925:139;;10652:419;;;:::o;11077:169::-;11217:21;11213:1;11205:6;11201:14;11194:45;11077:169;:::o;11252:366::-;11394:3;11415:67;11479:2;11474:3;11415:67;:::i;:::-;11408:74;;11491:93;11580:3;11491:93;:::i;:::-;11609:2;11604:3;11600:12;11593:19;;11252:366;;;:::o;11624:419::-;11790:4;11828:2;11817:9;11813:18;11805:26;;11877:9;11871:4;11867:20;11863:1;11852:9;11848:17;11841:47;11905:131;12031:4;11905:131;:::i;:::-;11897:139;;11624:419;;;:::o;12049:169::-;12189:21;12185:1;12177:6;12173:14;12166:45;12049:169;:::o;12224:366::-;12366:3;12387:67;12451:2;12446:3;12387:67;:::i;:::-;12380:74;;12463:93;12552:3;12463:93;:::i;:::-;12581:2;12576:3;12572:12;12565:19;;12224:366;;;:::o;12596:419::-;12762:4;12800:2;12789:9;12785:18;12777:26;;12849:9;12843:4;12839:20;12835:1;12824:9;12820:17;12813:47;12877:131;13003:4;12877:131;:::i;:::-;12869:139;;12596:419;;;:::o;13021:191::-;13061:3;13080:20;13098:1;13080:20;:::i;:::-;13075:25;;13114:20;13132:1;13114:20;:::i;:::-;13109:25;;13157:1;13154;13150:9;13143:16;;13178:3;13175:1;13172:10;13169:36;;;13185:18;;:::i;:::-;13169:36;13021:191;;;;:::o;13218:332::-;13339:4;13377:2;13366:9;13362:18;13354:26;;13390:71;13458:1;13447:9;13443:17;13434:6;13390:71;:::i;:::-;13471:72;13539:2;13528:9;13524:18;13515:6;13471:72;:::i;:::-;13218:332;;;;;:::o;13556:181::-;13696:33;13692:1;13684:6;13680:14;13673:57;13556:181;:::o;13743:366::-;13885:3;13906:67;13970:2;13965:3;13906:67;:::i;:::-;13899:74;;13982:93;14071:3;13982:93;:::i;:::-;14100:2;14095:3;14091:12;14084:19;;13743:366;;;:::o;14115:419::-;14281:4;14319:2;14308:9;14304:18;14296:26;;14368:9;14362:4;14358:20;14354:1;14343:9;14339:17;14332:47;14396:131;14522:4;14396:131;:::i;:::-;14388:139;;14115:419;;;:::o;14540:170::-;14680:22;14676:1;14668:6;14664:14;14657:46;14540:170;:::o;14716:366::-;14858:3;14879:67;14943:2;14938:3;14879:67;:::i;:::-;14872:74;;14955:93;15044:3;14955:93;:::i;:::-;15073:2;15068:3;15064:12;15057:19;;14716:366;;;:::o;15088:419::-;15254:4;15292:2;15281:9;15277:18;15269:26;;15341:9;15335:4;15331:20;15327:1;15316:9;15312:17;15305:47;15369:131;15495:4;15369:131;:::i;:::-;15361:139;;15088:419;;;:::o;15513:194::-;15553:4;15573:20;15591:1;15573:20;:::i;:::-;15568:25;;15607:20;15625:1;15607:20;:::i;:::-;15602:25;;15651:1;15648;15644:9;15636:17;;15675:1;15669:4;15666:11;15663:37;;;15680:18;;:::i;:::-;15663:37;15513:194;;;;:::o;15713:171::-;15853:23;15849:1;15841:6;15837:14;15830:47;15713:171;:::o;15890:366::-;16032:3;16053:67;16117:2;16112:3;16053:67;:::i;:::-;16046:74;;16129:93;16218:3;16129:93;:::i;:::-;16247:2;16242:3;16238:12;16231:19;;15890:366;;;:::o;16262:419::-;16428:4;16466:2;16455:9;16451:18;16443:26;;16515:9;16509:4;16505:20;16501:1;16490:9;16486:17;16479:47;16543:131;16669:4;16543:131;:::i;:::-;16535:139;;16262:419;;;:::o;16687:174::-;16827:26;16823:1;16815:6;16811:14;16804:50;16687:174;:::o;16867:366::-;17009:3;17030:67;17094:2;17089:3;17030:67;:::i;:::-;17023:74;;17106:93;17195:3;17106:93;:::i;:::-;17224:2;17219:3;17215:12;17208:19;;16867:366;;;:::o;17239:419::-;17405:4;17443:2;17432:9;17428:18;17420:26;;17492:9;17486:4;17482:20;17478:1;17467:9;17463:17;17456:47;17520:131;17646:4;17520:131;:::i;:::-;17512:139;;17239:419;;;:::o;17664:175::-;17804:27;17800:1;17792:6;17788:14;17781:51;17664:175;:::o;17845:366::-;17987:3;18008:67;18072:2;18067:3;18008:67;:::i;:::-;18001:74;;18084:93;18173:3;18084:93;:::i;:::-;18202:2;18197:3;18193:12;18186:19;;17845:366;;;:::o;18217:419::-;18383:4;18421:2;18410:9;18406:18;18398:26;;18470:9;18464:4;18460:20;18456:1;18445:9;18441:17;18434:47;18498:131;18624:4;18498:131;:::i;:::-;18490:139;;18217:419;;;:::o;18642:102::-;18684:8;18731:5;18728:1;18724:13;18703:34;;18642:102;;;:::o;18750:848::-;18811:5;18818:4;18842:6;18833:15;;18866:5;18857:14;;18880:712;18901:1;18891:8;18888:15;18880:712;;;18996:4;18991:3;18987:14;18981:4;18978:24;18975:50;;;19005:18;;:::i;:::-;18975:50;19055:1;19045:8;19041:16;19038:451;;;19470:4;19463:5;19459:16;19450:25;;19038:451;19520:4;19514;19510:15;19502:23;;19550:32;19573:8;19550:32;:::i;:::-;19538:44;;18880:712;;;18750:848;;;;;;;:::o;19604:1073::-;19658:5;19849:8;19839:40;;19870:1;19861:10;;19872:5;;19839:40;19898:4;19888:36;;19915:1;19906:10;;19917:5;;19888:36;19984:4;20032:1;20027:27;;;;20068:1;20063:191;;;;19977:277;;20027:27;20045:1;20036:10;;20047:5;;;20063:191;20108:3;20098:8;20095:17;20092:43;;;20115:18;;:::i;:::-;20092:43;20164:8;20161:1;20157:16;20148:25;;20199:3;20192:5;20189:14;20186:40;;;20206:18;;:::i;:::-;20186:40;20239:5;;;19977:277;;20363:2;20353:8;20350:16;20344:3;20338:4;20335:13;20331:36;20313:2;20303:8;20300:16;20295:2;20289:4;20286:12;20282:35;20266:111;20263:246;;;20419:8;20413:4;20409:19;20400:28;;20454:3;20447:5;20444:14;20441:40;;;20461:18;;:::i;:::-;20441:40;20494:5;;20263:246;20534:42;20572:3;20562:8;20556:4;20553:1;20534:42;:::i;:::-;20519:57;;;;20608:4;20603:3;20599:14;20592:5;20589:25;20586:51;;;20617:18;;:::i;:::-;20586:51;20666:4;20659:5;20655:16;20646:25;;19604:1073;;;;;;:::o;20683:281::-;20741:5;20765:23;20783:4;20765:23;:::i;:::-;20757:31;;20809:25;20825:8;20809:25;:::i;:::-;20797:37;;20853:104;20890:66;20880:8;20874:4;20853:104;:::i;:::-;20844:113;;20683:281;;;;:::o;20970:410::-;21010:7;21033:20;21051:1;21033:20;:::i;:::-;21028:25;;21067:20;21085:1;21067:20;:::i;:::-;21062:25;;21122:1;21119;21115:9;21144:30;21162:11;21144:30;:::i;:::-;21133:41;;21323:1;21314:7;21310:15;21307:1;21304:22;21284:1;21277:9;21257:83;21234:139;;21353:18;;:::i;:::-;21234:139;21018:362;20970:410;;;;:::o;21386:177::-;21526:29;21522:1;21514:6;21510:14;21503:53;21386:177;:::o;21569:366::-;21711:3;21732:67;21796:2;21791:3;21732:67;:::i;:::-;21725:74;;21808:93;21897:3;21808:93;:::i;:::-;21926:2;21921:3;21917:12;21910:19;;21569:366;;;:::o;21941:419::-;22107:4;22145:2;22134:9;22130:18;22122:26;;22194:9;22188:4;22184:20;22180:1;22169:9;22165:17;22158:47;22222:131;22348:4;22222:131;:::i;:::-;22214:139;;21941:419;;;:::o

Swarm Source

ipfs://fcdeda77405fa1831ce571e6d03967b9a812176a7c7e0571b867068b8b4171fd

Block Transaction 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

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.