ETH Price: $3,307.60 (-9.07%)

Contract

0x5C6c167BCda71291542f968279C8660cE8BF4988
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer198220092024-05-08 1:17:23226 days ago1715131043IN
0x5C6c167B...cE8BF4988
0 ETH0.000361165.93699768
Approve185327782023-11-09 7:04:23407 days ago1699513463IN
0x5C6c167B...cE8BF4988
0 ETH0.0012022225.81656257
Approve184599122023-10-30 2:10:35417 days ago1698631835IN
0x5C6c167B...cE8BF4988
0 ETH0.0006106113.18700513
Approve184391032023-10-27 4:16:59420 days ago1698380219IN
0x5C6c167B...cE8BF4988
0 ETH0.0007606116.33342846
Approve184350032023-10-26 14:31:59420 days ago1698330719IN
0x5C6c167B...cE8BF4988
0 ETH0.001581333.95691142
Approve184318942023-10-26 4:04:47421 days ago1698293087IN
0x5C6c167B...cE8BF4988
0 ETH0.0022464448.1904594
Approve184316092023-10-26 3:07:47421 days ago1698289667IN
0x5C6c167B...cE8BF4988
0 ETH0.0038027581.55510399
Approve184303192023-10-25 22:47:35421 days ago1698274055IN
0x5C6c167B...cE8BF4988
0 ETH0.001072122.99282624
Approve184288852023-10-25 17:57:59421 days ago1698256679IN
0x5C6c167B...cE8BF4988
0 ETH0.0017291937.13264279
Approve184288772023-10-25 17:56:23421 days ago1698256583IN
0x5C6c167B...cE8BF4988
0 ETH0.001704336.59816347
Approve184288732023-10-25 17:55:35421 days ago1698256535IN
0x5C6c167B...cE8BF4988
0 ETH0.0017034436.57982052
Approve184288582023-10-25 17:52:35421 days ago1698256355IN
0x5C6c167B...cE8BF4988
0 ETH0.0019593442.07494636
Approve184288192023-10-25 17:44:47421 days ago1698255887IN
0x5C6c167B...cE8BF4988
0 ETH0.0016729435.92481005
Approve184288152023-10-25 17:43:59421 days ago1698255839IN
0x5C6c167B...cE8BF4988
0 ETH0.0016277534.95434162
Approve184288092023-10-25 17:42:47421 days ago1698255767IN
0x5C6c167B...cE8BF4988
0 ETH0.0021072645.19307202
Approve184288042023-10-25 17:41:47421 days ago1698255707IN
0x5C6c167B...cE8BF4988
0 ETH0.0018214139.1130679
Approve184284612023-10-25 16:32:35421 days ago1698251555IN
0x5C6c167B...cE8BF4988
0 ETH0.0029161562.62142
Approve184284282023-10-25 16:25:59421 days ago1698251159IN
0x5C6c167B...cE8BF4988
0 ETH0.0026290156.38283139
Approve184279152023-10-25 14:42:35421 days ago1698244955IN
0x5C6c167B...cE8BF4988
0 ETH0.0018957740.709809
Approve184278872023-10-25 14:36:59421 days ago1698244619IN
0x5C6c167B...cE8BF4988
0 ETH0.0017586337.76480262
Approve184275402023-10-25 13:27:23422 days ago1698240443IN
0x5C6c167B...cE8BF4988
0 ETH0.0018013838.6331307
Approve184269362023-10-25 11:25:23422 days ago1698233123IN
0x5C6c167B...cE8BF4988
0 ETH0.0006380813.70219873
Approve184265632023-10-25 10:09:23422 days ago1698228563IN
0x5C6c167B...cE8BF4988
0 ETH0.000707815.17978849
Approve184262562023-10-25 9:06:59422 days ago1698224819IN
0x5C6c167B...cE8BF4988
0 ETH0.0007811816.75350041
Approve184262282023-10-25 9:01:23422 days ago1698224483IN
0x5C6c167B...cE8BF4988
0 ETH0.0007620416.3430127
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
185327822023-11-09 7:05:11407 days ago1699513511
0x5C6c167B...cE8BF4988
0.00149478 ETH
185327822023-11-09 7:05:11407 days ago1699513511
0x5C6c167B...cE8BF4988
0.00149478 ETH
185327822023-11-09 7:05:11407 days ago1699513511
0x5C6c167B...cE8BF4988
0.00298956 ETH
184445052023-10-27 22:24:11419 days ago1698445451
0x5C6c167B...cE8BF4988
0.00174828 ETH
184445052023-10-27 22:24:11419 days ago1698445451
0x5C6c167B...cE8BF4988
0.00174828 ETH
184445052023-10-27 22:24:11419 days ago1698445451
0x5C6c167B...cE8BF4988
0.00349657 ETH
184399502023-10-27 7:07:35420 days ago1698390455
0x5C6c167B...cE8BF4988
0.00197379 ETH
184399502023-10-27 7:07:35420 days ago1698390455
0x5C6c167B...cE8BF4988
0.00197379 ETH
184399502023-10-27 7:07:35420 days ago1698390455
0x5C6c167B...cE8BF4988
0.00394758 ETH
184370352023-10-26 21:21:35420 days ago1698355295
0x5C6c167B...cE8BF4988
0.00242326 ETH
184370352023-10-26 21:21:35420 days ago1698355295
0x5C6c167B...cE8BF4988
0.00242326 ETH
184370352023-10-26 21:21:35420 days ago1698355295
0x5C6c167B...cE8BF4988
0.00484652 ETH
184325702023-10-26 6:21:11421 days ago1698301271
0x5C6c167B...cE8BF4988
0.00341129 ETH
184325702023-10-26 6:21:11421 days ago1698301271
0x5C6c167B...cE8BF4988
0.00341129 ETH
184325702023-10-26 6:21:11421 days ago1698301271
0x5C6c167B...cE8BF4988
0.00682258 ETH
184319072023-10-26 4:07:23421 days ago1698293243
0x5C6c167B...cE8BF4988
0.00750202 ETH
184319072023-10-26 4:07:23421 days ago1698293243
0x5C6c167B...cE8BF4988
0.00750202 ETH
184319072023-10-26 4:07:23421 days ago1698293243
0x5C6c167B...cE8BF4988
0.01500404 ETH
184298352023-10-25 21:09:59421 days ago1698268199
0x5C6c167B...cE8BF4988
0.0061924 ETH
184288752023-10-25 17:55:59421 days ago1698256559
0x5C6c167B...cE8BF4988
0.00273803 ETH
184288752023-10-25 17:55:59421 days ago1698256559
0x5C6c167B...cE8BF4988
0.00273803 ETH
184288752023-10-25 17:55:59421 days ago1698256559
0x5C6c167B...cE8BF4988
0.00547606 ETH
184288432023-10-25 17:49:35421 days ago1698256175
0x5C6c167B...cE8BF4988
0.00316326 ETH
184288432023-10-25 17:49:35421 days ago1698256175
0x5C6c167B...cE8BF4988
0.00316326 ETH
184288432023-10-25 17:49:35421 days ago1698256175
0x5C6c167B...cE8BF4988
0.00632652 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
DFFK

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-10-24
*/

/******************************************************************                                                                                                          
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░████░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░████████░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░██▓▓▓▓▓▓██▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░████▓▓▓▓▓▓██░░░░░░░░░░░░░░
░░░░░░░░░░░░░░▓▓██▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██▓▓▓▓▓▓▓▓██▓▓░░░░░░░░░░░░
░░░░░░░░░░░░████▓▓▓▓  ▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██▓▓▓▓  ▓▓▓▓████░░░░░░░░░░
░░░░░░░░░░░░████▓▓▓▓  ▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██▓▓▓▓  ▓▓▓▓████░░░░░░░░░░
░░░░░░░░░░▒▒██▓▓▓▓░░  ▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██▓▓▓▓  ░░▓▓▓▓██▒▒░░░░░░░░
░░░░░░░░░░████▓▓▒▒    ▓▓▓▓██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██▓▓▓▓    ▓▓▓▓████░░░░░░░░
░░░░░░░░░░██▓▓▓▓      ▓▓▓▓████░░░░░░░░░░░░░░░░░░░░░░░░░░░░████▓▓▓▓      ▓▓▓▓██░░░░░░░░
░░░░░░░░░░██▓▓▓▓      ▓▓▓▓▓▓██░░░░░░░░░░░░░░░░░░░░░░░░░░░░██▓▓▓▓▓▓      ▓▓▓▓██░░░░░░░░
░░░░░░░░░░██▓▓▓▓      ▓▓▓▓▓▓██░░░░░░░░░░░░░░░░░░░░░░░░░░░░██▓▓▓▓▓▓      ▓▓▓▓██░░░░░░░░
░░░░░░░░████▓▓▓▓      ▓▓▓▓▓▓████░░░░░░░░░░░░░░░░░░░░░░░░████▓▓▓▓▓▓      ▓▓▓▓████░░░░░░
░░░░░░░░██▓▓▓▓        ▓▓▓▓▓▓▓▓██░░░░░░░░░░░░░░░░░░░░░░░░██▓▓▓▓▓▓▓▓        ▓▓▓▓██░░░░░░
░░░░░░░░██▓▓▓▓            ▓▓▓▓▓▓██░░░░░░░░░░░░░░░░░░░░██▓▓▓▓▓▓            ▓▓▓▓██░░░░░░
░░░░░░░░██▓▓▓▓          ░░▓▓▓▓▓▓██░░░░░░░░░░░░░░░░░░░░██▓▓▓▓▓▓░░          ▓▓▓▓██░░░░░░
░░░░░░░░██▓▓▓▓        ░░  ▓▓▓▓▓▓██░░████████████████░░██▓▓▓▓██  ░░        ▓▓▓▓██░░░░░░
░░░░░░░░██▓▓        ░░  ░░░░▓▓▓▓▓▓▓▓▒▒▒▒▒▒░░░░▒▒▒▒▒▒██▓▓▓▓▓▓  ░░  ░░        ▓▓██░░░░░░
░░░░░░██████      ░░  ░░  ▒▒▓▓▓▓▓▓▒▒▒▒▒▒░░░░░░░░▒▒▒▒░░▓▓▓▓▓▓▒▒  ░░  ░░      ▓▓████░░░░
░░░░██████▓▓▒▒▒▒▒▒  ▒▒  ▒▒░░░░▓▓░░░░░░░░░░░░░░░░░░░░░░░░▓▓░░▒▒▒▒  ▒▒  ▒▒▒▒▒▒▓▓██████░░
░░░░██░░▒▒▒▒▒▒▒▒▒▒░░▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒░░▒▒▒▒▒▒▒▒▒▒░░██░░
░░░░██░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░██░░
░░░░██░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░██░░
░░░░░░██░░▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒▒▒░░██░░░░
░░░░░░██░░▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒░░██░░░░
░░████░░▓▓░░▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒  ██░░████
░░██░░██░░░░▒▒▒▒▒▒▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒▒▒▒▒░░░░██░░██
░░██░░░░▒▒░░░░▒▒▒▒░░░░░░░░░░░░░░░░  ░░░░░░░░░░░░░░░░  ░░░░░░░░░░░░░░░░▒▒▒▒░░░░▓▓░░░░██
░░██░░░░░░░░▒▒░░▒▒▒▒░░░░██░░░░░░      ░░░░░░░░░░░░      ░░░░░░██░░░░▒▒▒▒░░▒▒░░░░░░░░██
░░░░██░░░░░░▒▒░░▒▒▒▒░░░░██░░░░░░░░  ░░░░░░░░░░░░░░░░  ░░░░░░░░██░░░░▒▒▒▒▒▒▒▒░░░░░░██░░
░░░░▒▒██░░░░░░▒▒▒▒▒▒░░░░██▒▒░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓██░░░░▒▒▒▒▒▒░░░░░░██▒▒░░
░░░░░░░░▓▓░░░░░░▒▒▒▒▒▒▒▒██████░░░░░░░░░░░░░░░░░░░░░░░░░░░░██████▒▒▒▒▒▒▒▒░░░░░░██░░░░░░
░░░░██████████░░░░▒▒░░▒▒░░████░░░░░░░░░░░░░░░░░░░░░░░░░░░░████░░▒▒░░▒▒░░░░██████████░░
░░░░██░░░░░░░░▓▓░░░░░░▒▒▒▒▒▒██▓▓░░░░░░░░░░░░░░░░░░░░░░░░▓▓██▒▒▒▒▒▒░░░░░░▓▓░░░░░░░░██░░
░░░░░░██░░░░░░░░░░░░░░▒▒▒▒▒▒░░██░░▒▒▒▒░░░░░░░░░░░░▒▒▒▒░░██░░▒▒▒▒▒▒░░░░░░░░░░░░░░██░░░░
░░░░░░░░██████░░░░░░░░▒▒▒▒▒▒░░▓▓▒▒▒▒▒▒░░░░░░░░░░░░▒▒▒▒▒▒▓▓▒▒▒▒▒▒▒▒░░░░░░░░██████░░░░░░
░░░░░░░░░░░░████░░░░░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░████░░░░░░░░░░
░░░░░░░░░░░░██████████░░░░▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒▒▒░░░░██████████░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓░░▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▒░░▓▓▓▓░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░▒▒▒▒░░▒▒▒▒▒▒▒▒░░░░░░░░░░░░▒▒▒▒▒▒▒▒░░▓▓▒▒░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░██░░▒▒▒▒▒▒▒▒░░░░░░░░▒▒▒▒▒▒▒▒░░██░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██░░▒▒▒▒▒▒░░░░░░░░▒▒▒▒▒▒░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓░░▒▒▒▒░░░░░░░░▒▒▒▒░░▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██░░▒▒▒▒▒▒░░░░▒▒▒▒▒▒░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██░░▒▒▒▒▒▒▒▒▒▒▒▒░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██░░░░▓▓▓▓▓▓▒▒░░░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██░░▓▓▓▓▓▓▓▓░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██░░░░░░░░██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓▓▓▓░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░

telegram: https://t.me/dffkportal
Twitter/X: https://twitter.com/legendofthedffk
Website: http://Legendofthedffk.com

******************************************************************/
// SPDX-License-Identifier: MIT
pragma solidity 0.8.21;

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

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

contract Ownable {
    address private _owner;

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

    constructor () {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }

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

    modifier onlyOwner() {
        require(isOwner());
        _;
    }

    function isOwner() private view returns (bool) {
        return msg.sender == _owner;
    }

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

    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0));
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}


library SafeMath {

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

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

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

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

}


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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

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

contract DFFK is Context, IERC20, Ownable {
    using SafeMath for uint256;
    
    string private constant _name = "Donkey Faced Fiat Killas";
    string private constant _symbol = "DFFK";
    uint256 private constant _totalSupply = 10_000_000 * 10**18;
    uint256 public maxWalletlimit = 2_00_001 * 10**18; // 2% Maxwalletlimit
    uint256 public minSwap = 10_000 * 10**18; 
    uint8 private constant _decimals = 18;

    IUniswapV2Router02 immutable uniswapV2Router;
    address immutable uniswapV2Pair;
    address immutable WETH;
 
    address payable public marketingWallet;
    address payable public DevWallet;
    uint256 public BuyTax;
    uint256 public SellTax;
    uint8 private inSwapAndLiquify;
    
    uint256 public taxChangeInterval = 15 minutes;
    uint256 public lastTaxChangeTimestamp;
    uint8 public currentTaxPeriod = 0;
    
    bool public TradingEnabled = false;

    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFees;
    mapping(address => bool) private _isExcludedFromWalletLimit;


    constructor() {
        uniswapV2Router = IUniswapV2Router02( 
            0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
        );
        WETH = uniswapV2Router.WETH();

        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(
            address(this),
            WETH
        );

        //initial tax values
        BuyTax = 6;
        SellTax = 6;

        marketingWallet = payable(0x04148e45e5B0655152c22A3ebb5858289138ce09); //Marketing Wallet Address
        DevWallet = payable(0x630C587f77BA0879291fb3c93fDdBC1213AeC30A); // Dev Wallet Address
        _balance[msg.sender] = _totalSupply;
        _isExcludedFromFees[marketingWallet] = true;
        _isExcludedFromFees[msg.sender] = true;
        _isExcludedFromFees[address(this)] = true;
        _isExcludedFromFees[address(uniswapV2Router)] = true;
        _isExcludedFromWalletLimit[marketingWallet] = true;
        _isExcludedFromWalletLimit[msg.sender] = true;
        _isExcludedFromWalletLimit[address(this)] = true;
        _isExcludedFromWalletLimit[address(uniswapV2Router)] = true;

        _allowances[address(this)][address(uniswapV2Router)] = type(uint256)
            .max;
        _allowances[msg.sender][address(uniswapV2Router)] = type(uint256).max;
        _allowances[marketingWallet][address(uniswapV2Router)] = type(uint256)
            .max;

        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

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

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

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

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

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

    function transfer(address recipient, uint256 amount)
        public
        override
        returns (bool)
    {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender)
        public
        view
        override
        returns (uint256)
    {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount)
        public
        override
        returns (bool)
    {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(
            sender,
            _msgSender(),
            _allowances[sender][_msgSender()] - amount
        );
        return true;
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    
    function ExcludeFromFees(address holder, bool exempt) external onlyOwner {
        _isExcludedFromFees[holder] = exempt;
    }
    
    function ChangeMinSwap(uint256 NewMinSwapAmount) external onlyOwner {
        minSwap = NewMinSwapAmount * 10**18;
    }

    function ChangeMarketingWalletAddress(address newAddress) external onlyOwner() {
        marketingWallet = payable(newAddress);
    }
    
    function ChangeDevWalletAddress(address newAddress) external onlyOwner() {
        DevWallet = payable(newAddress);
    }
    
    function EnableTrading() external onlyOwner {
        TradingEnabled = true;
        lastTaxChangeTimestamp = block.timestamp;
    }

    function transferToAddressETH(address payable recipient, uint256 amount) private {
        recipient.transfer(amount);
    }

    function DisableWalletLimit() external onlyOwner {
        maxWalletlimit = _totalSupply;
    }
    
    function ExcludeFromWalletLimit(address holder, bool exempt) external onlyOwner {
        _isExcludedFromWalletLimit[holder] = exempt;
    }


    function _transfer(
        address from,
        address to,
        uint256 amount
    ) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(amount > 1e9, "Min transfer amt");
        require(TradingEnabled || _isExcludedFromFees[from] || _isExcludedFromFees[to], "Not Enabled");
        
        
        uint256 elapsedTime = block.timestamp - lastTaxChangeTimestamp;
        
        if (elapsedTime >= taxChangeInterval && currentTaxPeriod < 2) {
            currentTaxPeriod++;
                if (currentTaxPeriod == 1) {
                    //Initial Tax values
                    BuyTax = 6;
                    SellTax = 6;
                } else if (currentTaxPeriod == 2) {
                    // After 15 minutes, set buyTax to 2% and sellTax to 2%
                    BuyTax = 2;
                    SellTax = 2;
                }
                // Update the last tax change timestamp    
                lastTaxChangeTimestamp = block.timestamp;
            }



        uint256 _tax;
        if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) {
            _tax = 0;
        } else {

            if (inSwapAndLiquify == 1) {
                //No tax transfer
                _balance[from] -= amount;
                _balance[to] += amount;

                emit Transfer(from, to, amount);
                return;
            }

            if (from == uniswapV2Pair) {
                    _tax = BuyTax;
                if (!_isExcludedFromWalletLimit[from] || !_isExcludedFromWalletLimit[to]) {
                require(balanceOf(to).add(amount) <= maxWalletlimit);
                }
            } else if (to == uniswapV2Pair) {
                uint256 tokensToSwap = _balance[address(this)];
                if (tokensToSwap > minSwap && inSwapAndLiquify == 0) {
                    inSwapAndLiquify = 1;
                    address[] memory path = new address[](2);
                    path[0] = address(this);
                    path[1] = WETH;
                    uniswapV2Router
                        .swapExactTokensForETHSupportingFeeOnTransferTokens(
                            tokensToSwap,
                            0,
                            path,
                            address(this),
                            block.timestamp
                        );
                    inSwapAndLiquify = 0;
                }
                    _tax = SellTax;

            } else {
                _tax = 0;
            }
        }
        

        //Is there tax for sender|receiver?
        if (_tax != 0) {
            //Tax transfer
            uint256 taxTokens = (amount * _tax) / 100;
            uint256 transferAmount = amount - taxTokens;

            _balance[from] -= amount;
            _balance[to] += transferAmount;
            _balance[address(this)] += taxTokens;
            emit Transfer(from, address(this), taxTokens);
            emit Transfer(from, to, transferAmount);
        } else {
            //No tax transfer
            _balance[from] -= amount;
            _balance[to] += amount;

            emit Transfer(from, to, amount);
        }

    uint256 amountReceived = address(this).balance;

    uint256 amountETHMarketing = amountReceived.mul(50).div(100); // 50% to marketing wallet
    uint256 amountETHDev = amountReceived.mul(50).div(100); // 50% to dev wallet
    
    if (amountETHMarketing > 0)
    transferToAddressETH(marketingWallet, amountETHMarketing);
    
    if (amountETHDev > 0)
    transferToAddressETH(DevWallet, amountETHDev);
    }

    receive() external payable {}
}

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":[],"name":"BuyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"ChangeDevWalletAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"ChangeMarketingWalletAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"NewMinSwapAmount","type":"uint256"}],"name":"ChangeMinSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"DevWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DisableWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"EnableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"ExcludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"ExcludeFromWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"SellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentTaxPeriod","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"lastTaxChangeTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletlimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"taxChangeInterval","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60e0604052692a5a137079499464000060015569021e19e0c9bab2400000600255610384600855600a805461ffff191690553480156200003d575f80fd5b505f80546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3737a250d5630b4cf539739df2c5dacb4c659f2488d6080819052604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa158015620000d0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620000f691906200039e565b6001600160a01b031660c0816001600160a01b0316815250506080516001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200014e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200017491906200039e565b60c0516040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291169063c9c65396906044016020604051808303815f875af1158015620001c3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001e991906200039e565b6001600160a01b0390811660a052600660058190558055600380546001600160a01b03199081167304148e45e5b0655152c22a3ebb5858289138ce091782556004805490911673630c587f77ba0879291fb3c93fddbc1213aec30a179055335f818152600b602090815260408083206a084595161401484a0000009055845486168352600d8252808320805460ff19908116600190811790925585855282852080548216831790553080865283862080548316841790556080518916808752848720805484168517905588548a168752600e865284872080548416851790558787528487208054841685179055818752848720805484168517905580875284872080549093169093179091558452600c80845282852082865284528285205f199081905595855280845282852082865284528285208690559554909616835293815283822094825293909352912055620003403390565b6001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6a084595161401484a0000006040516200039091815260200190565b60405180910390a3620003cd565b5f60208284031215620003af575f80fd5b81516001600160a01b0381168114620003c6575f80fd5b9392505050565b60805160a05160c05161150d620003ff5f395f610d5101525f8181610bd50152610c9001525f610da8015261150d5ff3fe6080604052600436106101bd575f3560e01c806375f0a874116100f25780639d8f770611610092578063dd62ed3e11610062578063dd62ed3e14610500578063df31dd3914610544578063f2fde38b1461055d578063fed3c8261461057c575f80fd5b80639d8f77061461048e578063a9059cbb146104ad578063b115e4df146104cc578063b1848c26146104eb575f80fd5b806383fd0367116100cd57806383fd03671461041c57806389e40cf9146104315780638da5cb5b1461044657806395d89b4114610462575f80fd5b806375f0a874146103b35780637906ee3f146103ea57806379966345146103fe575f80fd5b8063313ce5671161015d57806359cd90311161013857806359cd90311461033757806370a082311461034c578063715018a61461038057806374233c0614610394575f80fd5b8063313ce567146102e257806343c98828146103035780634cd5dc6a14610322575f80fd5b80630a910d1f116101985780630a910d1f1461026f57806318160ddd146102925780631d97b7cd146102af57806323b872dd146102c3575f80fd5b806305d2743f146101c857806306fdde03146101e9578063095ea7b314610240575f80fd5b366101c457005b5f80fd5b3480156101d3575f80fd5b506101e76101e2366004611260565b61059b565b005b3480156101f4575f80fd5b5060408051808201909152601881527f446f6e6b65792046616365642046696174204b696c6c6173000000000000000060208201525b6040516102379190611279565b60405180910390f35b34801561024b575f80fd5b5061025f61025a3660046112c4565b6105d2565b6040519015158152602001610237565b34801561027a575f80fd5b5061028460055481565b604051908152602001610237565b34801561029d575f80fd5b506a084595161401484a000000610284565b3480156102ba575f80fd5b506101e76105e8565b3480156102ce575f80fd5b5061025f6102dd3660046112ec565b610612565b3480156102ed575f80fd5b5060125b60405160ff9091168152602001610237565b34801561030e575f80fd5b506101e761031d366004611325565b610662565b34801561032d575f80fd5b5061028460085481565b348015610342575f80fd5b5061028460025481565b348015610357575f80fd5b50610284610366366004611260565b6001600160a01b03165f908152600b602052604090205490565b34801561038b575f80fd5b506101e76106a1565b34801561039f575f80fd5b506101e76103ae36600461135e565b6106fe565b3480156103be575f80fd5b506003546103d2906001600160a01b031681565b6040516001600160a01b039091168152602001610237565b3480156103f5575f80fd5b506101e761072b565b348015610409575f80fd5b50600a5461025f90610100900460ff1681565b348015610427575f80fd5b5061028460065481565b34801561043c575f80fd5b5061028460015481565b348015610451575f80fd5b505f546001600160a01b03166103d2565b34801561046d575f80fd5b506040805180820190915260048152634446464b60e01b602082015261022a565b348015610499575f80fd5b506101e76104a8366004611325565b610751565b3480156104b8575f80fd5b5061025f6104c73660046112c4565b610790565b3480156104d7575f80fd5b506004546103d2906001600160a01b031681565b3480156104f6575f80fd5b5061028460095481565b34801561050b575f80fd5b5061028461051a366004611375565b6001600160a01b039182165f908152600c6020908152604080832093909416825291909152205490565b34801561054f575f80fd5b50600a546102f19060ff1681565b348015610568575f80fd5b506101e7610577366004611260565b61079c565b348015610587575f80fd5b506101e7610596366004611260565b6107bd565b5f546001600160a01b031633146105b0575f80fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b5f6105de3384846107f4565b5060015b92915050565b5f546001600160a01b031633146105fd575f80fd5b600a805461ff00191661010017905542600955565b5f61061e84848461091c565b6001600160a01b0384165f908152600c60209081526040808320338085529252909120546106589186916106539086906113ba565b6107f4565b5060019392505050565b5f546001600160a01b03163314610677575f80fd5b6001600160a01b03919091165f908152600e60205260409020805460ff1916911515919091179055565b5f546001600160a01b031633146106b6575f80fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b03163314610713575f80fd5b61072581670de0b6b3a76400006113cd565b60025550565b5f546001600160a01b03163314610740575f80fd5b6a084595161401484a000000600155565b5f546001600160a01b03163314610766575f80fd5b6001600160a01b03919091165f908152600d60205260409020805460ff1916911515919091179055565b5f6105de33848461091c565b5f546001600160a01b031633146107b1575f80fd5b6107ba81611049565b50565b5f546001600160a01b031633146107d2575f80fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661085b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166108bc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610852565b6001600160a01b038381165f818152600c602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109805760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610852565b633b9aca0081116109c65760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b6044820152606401610852565b600a54610100900460ff16806109f357506001600160a01b0383165f908152600d602052604090205460ff165b80610a1557506001600160a01b0382165f908152600d602052604090205460ff165b610a4f5760405162461bcd60e51b815260206004820152600b60248201526a139bdd08115b98589b195960aa1b6044820152606401610852565b5f60095442610a5e91906113ba565b90506008548110158015610a795750600a54600260ff909116105b15610ae257600a805460ff16905f610a90836113e4565b82546101009290920a60ff818102199093169183160217909155600a54166001039050610ac557600660058190558055610add565b600a5460ff16600203610add57600260058190556006555b426009555b6001600160a01b0384165f908152600d602052604081205460ff1680610b1f57506001600160a01b0384165f908152600d602052604090205460ff165b15610b2b57505f610e2d565b60075460ff16600103610bd3576001600160a01b0385165f908152600b602052604081208054859290610b5f9084906113ba565b90915550506001600160a01b0384165f908152600b602052604081208054859290610b8b908490611402565b92505081905550836001600160a01b0316856001600160a01b03165f805160206114b883398151915285604051610bc491815260200190565b60405180910390a35050505050565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b031603610c8e57506005546001600160a01b0385165f908152600e602052604090205460ff161580610c4f57506001600160a01b0384165f908152600e602052604090205460ff16155b15610c8957600154610c7f84610c79876001600160a01b03165f908152600b602052604090205490565b906110b4565b1115610c89575f80fd5b610e2d565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031603610e2a57305f908152600b602052604090205460025481118015610cea575060075460ff16155b15610e20576007805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610d2f57610d2f611415565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610d8357610d83611415565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f00000000000000000000000000000000000000000000000000000000000000009091169063791ac94790610de79085905f90869030904290600401611429565b5f604051808303815f87803b158015610dfe575f80fd5b505af1158015610e10573d5f803e3d5ffd5b50506007805460ff191690555050505b5050600654610e2d565b505f5b8015610f45575f6064610e4083866113cd565b610e4a9190611498565b90505f610e5782866113ba565b6001600160a01b0388165f908152600b6020526040812080549293508792909190610e839084906113ba565b90915550506001600160a01b0386165f908152600b602052604081208054839290610eaf908490611402565b9091555050305f908152600b602052604081208054849290610ed2908490611402565b909155505060405182815230906001600160a01b038916905f805160206114b88339815191529060200160405180910390a3856001600160a01b0316876001600160a01b03165f805160206114b883398151915283604051610f3691815260200190565b60405180910390a35050610fda565b6001600160a01b0385165f908152600b602052604081208054859290610f6c9084906113ba565b90915550506001600160a01b0384165f908152600b602052604081208054859290610f98908490611402565b92505081905550836001600160a01b0316856001600160a01b03165f805160206114b883398151915285604051610fd191815260200190565b60405180910390a35b475f610ff26064610fec846032611119565b90611197565b90505f6110056064610fec856032611119565b9050811561102357600354611023906001600160a01b0316836111d8565b801561103f5760045461103f906001600160a01b0316826111d8565b5050505050505050565b6001600160a01b03811661105b575f80fd5b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f806110c08385611402565b9050838110156111125760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610852565b9392505050565b5f825f0361112857505f6105e2565b5f61113383856113cd565b9050826111408583611498565b146111125760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610852565b5f61111283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611210565b6040516001600160a01b0383169082156108fc029083905f818181858888f1935050505015801561120b573d5f803e3d5ffd5b505050565b5f81836112305760405162461bcd60e51b81526004016108529190611279565b505f61123c8486611498565b95945050505050565b80356001600160a01b038116811461125b575f80fd5b919050565b5f60208284031215611270575f80fd5b61111282611245565b5f6020808352835180828501525f5b818110156112a457858101830151858201604001528201611288565b505f604082860101526040601f19601f8301168501019250505092915050565b5f80604083850312156112d5575f80fd5b6112de83611245565b946020939093013593505050565b5f805f606084860312156112fe575f80fd5b61130784611245565b925061131560208501611245565b9150604084013590509250925092565b5f8060408385031215611336575f80fd5b61133f83611245565b915060208301358015158114611353575f80fd5b809150509250929050565b5f6020828403121561136e575f80fd5b5035919050565b5f8060408385031215611386575f80fd5b61138f83611245565b915061139d60208401611245565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105e2576105e26113a6565b80820281158282048414176105e2576105e26113a6565b5f60ff821660ff81036113f9576113f96113a6565b60010192915050565b808201808211156105e2576105e26113a6565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156114775784516001600160a01b031683529383019391830191600101611452565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826114b257634e487b7160e01b5f52601260045260245ffd5b50049056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122044616b8cce5af036b18a90199782132b4df2e45a164001a99e007b73d2e4d89264736f6c63430008150033

Deployed Bytecode

0x6080604052600436106101bd575f3560e01c806375f0a874116100f25780639d8f770611610092578063dd62ed3e11610062578063dd62ed3e14610500578063df31dd3914610544578063f2fde38b1461055d578063fed3c8261461057c575f80fd5b80639d8f77061461048e578063a9059cbb146104ad578063b115e4df146104cc578063b1848c26146104eb575f80fd5b806383fd0367116100cd57806383fd03671461041c57806389e40cf9146104315780638da5cb5b1461044657806395d89b4114610462575f80fd5b806375f0a874146103b35780637906ee3f146103ea57806379966345146103fe575f80fd5b8063313ce5671161015d57806359cd90311161013857806359cd90311461033757806370a082311461034c578063715018a61461038057806374233c0614610394575f80fd5b8063313ce567146102e257806343c98828146103035780634cd5dc6a14610322575f80fd5b80630a910d1f116101985780630a910d1f1461026f57806318160ddd146102925780631d97b7cd146102af57806323b872dd146102c3575f80fd5b806305d2743f146101c857806306fdde03146101e9578063095ea7b314610240575f80fd5b366101c457005b5f80fd5b3480156101d3575f80fd5b506101e76101e2366004611260565b61059b565b005b3480156101f4575f80fd5b5060408051808201909152601881527f446f6e6b65792046616365642046696174204b696c6c6173000000000000000060208201525b6040516102379190611279565b60405180910390f35b34801561024b575f80fd5b5061025f61025a3660046112c4565b6105d2565b6040519015158152602001610237565b34801561027a575f80fd5b5061028460055481565b604051908152602001610237565b34801561029d575f80fd5b506a084595161401484a000000610284565b3480156102ba575f80fd5b506101e76105e8565b3480156102ce575f80fd5b5061025f6102dd3660046112ec565b610612565b3480156102ed575f80fd5b5060125b60405160ff9091168152602001610237565b34801561030e575f80fd5b506101e761031d366004611325565b610662565b34801561032d575f80fd5b5061028460085481565b348015610342575f80fd5b5061028460025481565b348015610357575f80fd5b50610284610366366004611260565b6001600160a01b03165f908152600b602052604090205490565b34801561038b575f80fd5b506101e76106a1565b34801561039f575f80fd5b506101e76103ae36600461135e565b6106fe565b3480156103be575f80fd5b506003546103d2906001600160a01b031681565b6040516001600160a01b039091168152602001610237565b3480156103f5575f80fd5b506101e761072b565b348015610409575f80fd5b50600a5461025f90610100900460ff1681565b348015610427575f80fd5b5061028460065481565b34801561043c575f80fd5b5061028460015481565b348015610451575f80fd5b505f546001600160a01b03166103d2565b34801561046d575f80fd5b506040805180820190915260048152634446464b60e01b602082015261022a565b348015610499575f80fd5b506101e76104a8366004611325565b610751565b3480156104b8575f80fd5b5061025f6104c73660046112c4565b610790565b3480156104d7575f80fd5b506004546103d2906001600160a01b031681565b3480156104f6575f80fd5b5061028460095481565b34801561050b575f80fd5b5061028461051a366004611375565b6001600160a01b039182165f908152600c6020908152604080832093909416825291909152205490565b34801561054f575f80fd5b50600a546102f19060ff1681565b348015610568575f80fd5b506101e7610577366004611260565b61079c565b348015610587575f80fd5b506101e7610596366004611260565b6107bd565b5f546001600160a01b031633146105b0575f80fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b5f6105de3384846107f4565b5060015b92915050565b5f546001600160a01b031633146105fd575f80fd5b600a805461ff00191661010017905542600955565b5f61061e84848461091c565b6001600160a01b0384165f908152600c60209081526040808320338085529252909120546106589186916106539086906113ba565b6107f4565b5060019392505050565b5f546001600160a01b03163314610677575f80fd5b6001600160a01b03919091165f908152600e60205260409020805460ff1916911515919091179055565b5f546001600160a01b031633146106b6575f80fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b03163314610713575f80fd5b61072581670de0b6b3a76400006113cd565b60025550565b5f546001600160a01b03163314610740575f80fd5b6a084595161401484a000000600155565b5f546001600160a01b03163314610766575f80fd5b6001600160a01b03919091165f908152600d60205260409020805460ff1916911515919091179055565b5f6105de33848461091c565b5f546001600160a01b031633146107b1575f80fd5b6107ba81611049565b50565b5f546001600160a01b031633146107d2575f80fd5b600480546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661085b5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b0382166108bc5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610852565b6001600160a01b038381165f818152600c602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109805760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610852565b633b9aca0081116109c65760405162461bcd60e51b815260206004820152601060248201526f135a5b881d1c985b9cd9995c88185b5d60821b6044820152606401610852565b600a54610100900460ff16806109f357506001600160a01b0383165f908152600d602052604090205460ff165b80610a1557506001600160a01b0382165f908152600d602052604090205460ff165b610a4f5760405162461bcd60e51b815260206004820152600b60248201526a139bdd08115b98589b195960aa1b6044820152606401610852565b5f60095442610a5e91906113ba565b90506008548110158015610a795750600a54600260ff909116105b15610ae257600a805460ff16905f610a90836113e4565b82546101009290920a60ff818102199093169183160217909155600a54166001039050610ac557600660058190558055610add565b600a5460ff16600203610add57600260058190556006555b426009555b6001600160a01b0384165f908152600d602052604081205460ff1680610b1f57506001600160a01b0384165f908152600d602052604090205460ff165b15610b2b57505f610e2d565b60075460ff16600103610bd3576001600160a01b0385165f908152600b602052604081208054859290610b5f9084906113ba565b90915550506001600160a01b0384165f908152600b602052604081208054859290610b8b908490611402565b92505081905550836001600160a01b0316856001600160a01b03165f805160206114b883398151915285604051610bc491815260200190565b60405180910390a35050505050565b7f0000000000000000000000007f77bee54430ff497185e471e527fba3d5d335f16001600160a01b0316856001600160a01b031603610c8e57506005546001600160a01b0385165f908152600e602052604090205460ff161580610c4f57506001600160a01b0384165f908152600e602052604090205460ff16155b15610c8957600154610c7f84610c79876001600160a01b03165f908152600b602052604090205490565b906110b4565b1115610c89575f80fd5b610e2d565b7f0000000000000000000000007f77bee54430ff497185e471e527fba3d5d335f16001600160a01b0316846001600160a01b031603610e2a57305f908152600b602052604090205460025481118015610cea575060075460ff16155b15610e20576007805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610d2f57610d2f611415565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610d8357610d83611415565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d9091169063791ac94790610de79085905f90869030904290600401611429565b5f604051808303815f87803b158015610dfe575f80fd5b505af1158015610e10573d5f803e3d5ffd5b50506007805460ff191690555050505b5050600654610e2d565b505f5b8015610f45575f6064610e4083866113cd565b610e4a9190611498565b90505f610e5782866113ba565b6001600160a01b0388165f908152600b6020526040812080549293508792909190610e839084906113ba565b90915550506001600160a01b0386165f908152600b602052604081208054839290610eaf908490611402565b9091555050305f908152600b602052604081208054849290610ed2908490611402565b909155505060405182815230906001600160a01b038916905f805160206114b88339815191529060200160405180910390a3856001600160a01b0316876001600160a01b03165f805160206114b883398151915283604051610f3691815260200190565b60405180910390a35050610fda565b6001600160a01b0385165f908152600b602052604081208054859290610f6c9084906113ba565b90915550506001600160a01b0384165f908152600b602052604081208054859290610f98908490611402565b92505081905550836001600160a01b0316856001600160a01b03165f805160206114b883398151915285604051610fd191815260200190565b60405180910390a35b475f610ff26064610fec846032611119565b90611197565b90505f6110056064610fec856032611119565b9050811561102357600354611023906001600160a01b0316836111d8565b801561103f5760045461103f906001600160a01b0316826111d8565b5050505050505050565b6001600160a01b03811661105b575f80fd5b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f806110c08385611402565b9050838110156111125760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610852565b9392505050565b5f825f0361112857505f6105e2565b5f61113383856113cd565b9050826111408583611498565b146111125760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610852565b5f61111283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611210565b6040516001600160a01b0383169082156108fc029083905f818181858888f1935050505015801561120b573d5f803e3d5ffd5b505050565b5f81836112305760405162461bcd60e51b81526004016108529190611279565b505f61123c8486611498565b95945050505050565b80356001600160a01b038116811461125b575f80fd5b919050565b5f60208284031215611270575f80fd5b61111282611245565b5f6020808352835180828501525f5b818110156112a457858101830151858201604001528201611288565b505f604082860101526040601f19601f8301168501019250505092915050565b5f80604083850312156112d5575f80fd5b6112de83611245565b946020939093013593505050565b5f805f606084860312156112fe575f80fd5b61130784611245565b925061131560208501611245565b9150604084013590509250925092565b5f8060408385031215611336575f80fd5b61133f83611245565b915060208301358015158114611353575f80fd5b809150509250929050565b5f6020828403121561136e575f80fd5b5035919050565b5f8060408385031215611386575f80fd5b61138f83611245565b915061139d60208401611245565b90509250929050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156105e2576105e26113a6565b80820281158282048414176105e2576105e26113a6565b5f60ff821660ff81036113f9576113f96113a6565b60010192915050565b808201808211156105e2576105e26113a6565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156114775784516001600160a01b031683529383019391830191600101611452565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826114b257634e487b7160e01b5f52601260045260245ffd5b50049056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122044616b8cce5af036b18a90199782132b4df2e45a164001a99e007b73d2e4d89264736f6c63430008150033

Deployed Bytecode Sourcemap

16423:9314:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21186:135;;;;;;;;;;-1:-1:-1;21186:135:0;;;;;:::i;:::-;;:::i;:::-;;19066:83;;;;;;;;;;-1:-1:-1;19136:5:0;;;;;;;;;;;;;;;;;19066:83;;;;;;;:::i;:::-;;;;;;;;19976:193;;;;;;;;;;-1:-1:-1;19976:193:0;;;;;:::i;:::-;;:::i;:::-;;;1360:14:1;;1353:22;1335:41;;1323:2;1308:18;19976:193:0;1195:187:1;17065:21:0;;;;;;;;;;;;;;;;;;;1533:25:1;;;1521:2;1506:18;17065:21:0;1387:177:1;19343:100:0;;;;;;;;;;-1:-1:-1;16663:19:0;19343:100;;21468:135;;;;;;;;;;;;;:::i;20177:350::-;;;;;;;;;;-1:-1:-1;20177:350:0;;;;;:::i;:::-;;:::i;19252:83::-;;;;;;;;;;-1:-1:-1;16849:2:0;19252:83;;;2074:4:1;2062:17;;;2044:36;;2032:2;2017:18;19252:83:0;1902:184:1;21854:142:0;;;;;;;;;;-1:-1:-1;21854:142:0;;;;;:::i;:::-;;:::i;17165:45::-;;;;;;;;;;;;;;;;16766:40;;;;;;;;;;;;;;;;19451:118;;;;;;;;;;-1:-1:-1;19451:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;19544:17:0;19517:7;19544:17;;;:8;:17;;;;;;;19451:118;14198:140;;;;;;;;;;;;;:::i;21056:122::-;;;;;;;;;;-1:-1:-1;21056:122:0;;;;;:::i;:::-;;:::i;16981:38::-;;;;;;;;;;-1:-1:-1;16981:38:0;;;;-1:-1:-1;;;;;16981:38:0;;;;;;-1:-1:-1;;;;;2808:32:1;;;2790:51;;2778:2;2763:18;16981:38:0;2628:219:1;21745:97:0;;;;;;;;;;;;;:::i;17307:34::-;;;;;;;;;;-1:-1:-1;17307:34:0;;;;;;;;;;;17093:22;;;;;;;;;;;;;;;;16689:49;;;;;;;;;;;;;;;;13932:79;;;;;;;;;;-1:-1:-1;13970:7:0;13997:6;-1:-1:-1;;;;;13997:6:0;13932:79;;19157:87;;;;;;;;;;-1:-1:-1;19229:7:0;;;;;;;;;;;;-1:-1:-1;;;19229:7:0;;;;19157:87;;20916:128;;;;;;;;;;-1:-1:-1;20916:128:0;;;;;:::i;:::-;;:::i;19577:199::-;;;;;;;;;;-1:-1:-1;19577:199:0;;;;;:::i;:::-;;:::i;17026:32::-;;;;;;;;;;-1:-1:-1;17026:32:0;;;;-1:-1:-1;;;;;17026:32:0;;;17217:37;;;;;;;;;;;;;;;;19784:184;;;;;;;;;;-1:-1:-1;19784:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;19933:18:0;;;19901:7;19933:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;19784:184;17261:33;;;;;;;;;;-1:-1:-1;17261:33:0;;;;;;;;14346:109;;;;;;;;;;-1:-1:-1;14346:109:0;;;;;:::i;:::-;;:::i;21333:123::-;;;;;;;;;;-1:-1:-1;21333:123:0;;;;;:::i;:::-;;:::i;21186:135::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;21276:15:::1;:37:::0;;-1:-1:-1;;;;;;21276:37:0::1;-1:-1:-1::0;;;;;21276:37:0;;;::::1;::::0;;;::::1;::::0;;21186:135::o;19976:193::-;20078:4;20100:39;12841:10;20123:7;20132:6;20100:8;:39::i;:::-;-1:-1:-1;20157:4:0;19976:193;;;;;:::o;21468:135::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;21523:14:::1;:21:::0;;-1:-1:-1;;21523:21:0::1;;;::::0;;21580:15:::1;21555:22;:40:::0;21468:135::o;20177:350::-;20309:4;20326:36;20336:6;20344:9;20355:6;20326:9;:36::i;:::-;-1:-1:-1;;;;;20444:19:0;;;;;;:11;:19;;;;;;;;12841:10;20444:33;;;;;;;;;20373:124;;20396:6;;20444:42;;20480:6;;20444:42;:::i;:::-;20373:8;:124::i;:::-;-1:-1:-1;20515:4:0;20177:350;;;;;:::o;21854:142::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;-1:-1:-1;;;;;21945:34:0;;;::::1;;::::0;;;:26:::1;:34;::::0;;;;:43;;-1:-1:-1;;21945:43:0::1;::::0;::::1;;::::0;;;::::1;::::0;;21854:142::o;14198:140::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;14297:1:::1;14281:6:::0;;14260:40:::1;::::0;-1:-1:-1;;;;;14281:6:0;;::::1;::::0;14260:40:::1;::::0;14297:1;;14260:40:::1;14328:1;14311:19:::0;;-1:-1:-1;;;;;;14311:19:0::1;::::0;;14198:140::o;21056:122::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;21145:25:::1;:16:::0;21164:6:::1;21145:25;:::i;:::-;21135:7;:35:::0;-1:-1:-1;21056:122:0:o;21745:97::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;16663:19:::1;21805:14;:29:::0;21745:97::o;20916:128::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;-1:-1:-1;;;;;21000:27:0;;;::::1;;::::0;;;:19:::1;:27;::::0;;;;:36;;-1:-1:-1;;21000:36:0::1;::::0;::::1;;::::0;;;::::1;::::0;;20916:128::o;19577:199::-;19682:4;19704:42;12841:10;19728:9;19739:6;19704:9;:42::i;14346:109::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;14419:28:::1;14438:8;14419:18;:28::i;:::-;14346:109:::0;:::o;21333:123::-;14138:4;14176:6;-1:-1:-1;;;;;14176:6:0;14162:10;:20;14051:18;;;;;;21417:9:::1;:31:::0;;-1:-1:-1;;;;;;21417:31:0::1;-1:-1:-1::0;;;;;21417:31:0;;;::::1;::::0;;;::::1;::::0;;21333:123::o;20535:369::-;-1:-1:-1;;;;;20662:19:0;;20654:68;;;;-1:-1:-1;;;20654:68:0;;3965:2:1;20654:68:0;;;3947:21:1;4004:2;3984:18;;;3977:30;4043:34;4023:18;;;4016:62;-1:-1:-1;;;4094:18:1;;;4087:34;4138:19;;20654:68:0;;;;;;;;;-1:-1:-1;;;;;20741:21:0;;20733:68;;;;-1:-1:-1;;;20733:68:0;;4370:2:1;20733:68:0;;;4352:21:1;4409:2;4389:18;;;4382:30;4448:34;4428:18;;;4421:62;-1:-1:-1;;;4499:18:1;;;4492:32;4541:19;;20733:68:0;4168:398:1;20733:68:0;-1:-1:-1;;;;;20812:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;20864:32;;1533:25:1;;;20864:32:0;;1506:18:1;20864:32:0;;;;;;;20535:369;;;:::o;22006:3691::-;-1:-1:-1;;;;;22128:18:0;;22120:68;;;;-1:-1:-1;;;22120:68:0;;4773:2:1;22120:68:0;;;4755:21:1;4812:2;4792:18;;;4785:30;4851:34;4831:18;;;4824:62;-1:-1:-1;;;4902:18:1;;;4895:35;4947:19;;22120:68:0;4571:401:1;22120:68:0;22216:3;22207:6;:12;22199:41;;;;-1:-1:-1;;;22199:41:0;;5179:2:1;22199:41:0;;;5161:21:1;5218:2;5198:18;;;5191:30;-1:-1:-1;;;5237:18:1;;;5230:46;5293:18;;22199:41:0;4977:340:1;22199:41:0;22259:14;;;;;;;;:43;;-1:-1:-1;;;;;;22277:25:0;;;;;;:19;:25;;;;;;;;22259:43;:70;;;-1:-1:-1;;;;;;22306:23:0;;;;;;:19;:23;;;;;;;;22259:70;22251:94;;;;-1:-1:-1;;;22251:94:0;;5524:2:1;22251:94:0;;;5506:21:1;5563:2;5543:18;;;5536:30;-1:-1:-1;;;5582:18:1;;;5575:41;5633:18;;22251:94:0;5322:335:1;22251:94:0;22376:19;22416:22;;22398:15;:40;;;;:::i;:::-;22376:62;;22478:17;;22463:11;:32;;:56;;;;-1:-1:-1;22499:16:0;;22518:1;22499:16;;;;:20;22463:56;22459:602;;;22536:16;:18;;;;;:16;:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;22577:16;;;-1:-1:-1;22577:21:0;;-1:-1:-1;22573:353:0;;22674:1;22665:6;:10;;;22698:11;;22573:353;;;22739:16;;;;22759:1;22739:21;22735:191;;22871:1;22862:6;:10;;;22895:7;:11;22735:191;23030:15;23005:22;:40;22459:602;-1:-1:-1;;;;;23104:25:0;;23077:12;23104:25;;;:19;:25;;;;;;;;;:52;;-1:-1:-1;;;;;;23133:23:0;;;;;;:19;:23;;;;;;;;23104:52;23100:1509;;;-1:-1:-1;23180:1:0;23100:1509;;;23220:16;;;;;:21;23216:239;;-1:-1:-1;;;;;23297:14:0;;;;;;:8;:14;;;;;:24;;23315:6;;23297:14;:24;;23315:6;;23297:24;:::i;:::-;;;;-1:-1:-1;;;;;;;23340:12:0;;;;;;:8;:12;;;;;:22;;23356:6;;23340:12;:22;;23356:6;;23340:22;:::i;:::-;;;;;;;;23403:2;-1:-1:-1;;;;;23388:26:0;23397:4;-1:-1:-1;;;;;23388:26:0;-1:-1:-1;;;;;;;;;;;23407:6:0;23388:26;;;;1533:25:1;;1521:2;1506:18;;1387:177;23388:26:0;;;;;;;;23433:7;;22006:3691;;;:::o;23216:239::-;23483:13;-1:-1:-1;;;;;23475:21:0;:4;-1:-1:-1;;;;;23475:21:0;;23471:1127;;-1:-1:-1;23528:6:0;;-1:-1:-1;;;;;23558:32:0;;;;;;:26;:32;;;;;;;;23557:33;;:68;;-1:-1:-1;;;;;;23595:30:0;;;;;;:26;:30;;;;;;;;23594:31;23557:68;23553:165;;;23683:14;;23654:25;23672:6;23654:13;23664:2;-1:-1:-1;;;;;19544:17:0;19517:7;19544:17;;;:8;:17;;;;;;;19451:118;23654:13;:17;;:25::i;:::-;:43;;23646:52;;;;;;23471:1127;;;23749:13;-1:-1:-1;;;;;23743:19:0;:2;-1:-1:-1;;;;;23743:19:0;;23739:859;;23823:4;23783:20;23806:23;;;:8;:23;;;;;;23867:7;;23852:22;;:47;;;;-1:-1:-1;23878:16:0;;;;:21;23852:47;23848:647;;;23924:16;:20;;-1:-1:-1;;23924:20:0;23943:1;23924:20;;;23991:16;;;24005:1;23991:16;;;;;;;;-1:-1:-1;;23991:16:0;;;;;;;;;;-1:-1:-1;23991:16:0;23967:40;;24048:4;24030;24035:1;24030:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;24030:23:0;;;-1:-1:-1;;;;;24030:23:0;;;;;24086:4;24076;24081:1;24076:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;24076:14:0;;;:7;;;;;;;;;:14;24113:319;;-1:-1:-1;;;24113:319:0;;:15;:92;;;;;;:319;;24236:12;;24279:1;;24311:4;;24354;;24390:15;;24113:319;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;24455:16:0;:20;;-1:-1:-1;;24455:20:0;;;-1:-1:-1;;;23848:647:0;-1:-1:-1;;24524:7:0;;23739:859;;;-1:-1:-1;24581:1:0;23739:859;24680:9;;24676:593;;24734:17;24772:3;24755:13;24764:4;24755:6;:13;:::i;:::-;24754:21;;;;:::i;:::-;24734:41;-1:-1:-1;24790:22:0;24815:18;24734:41;24815:6;:18;:::i;:::-;-1:-1:-1;;;;;24850:14:0;;;;;;:8;:14;;;;;:24;;24790:43;;-1:-1:-1;24868:6:0;;24850:14;;;:24;;24868:6;;24850:24;:::i;:::-;;;;-1:-1:-1;;;;;;;24889:12:0;;;;;;:8;:12;;;;;:30;;24905:14;;24889:12;:30;;24905:14;;24889:30;:::i;:::-;;;;-1:-1:-1;;24951:4:0;24934:23;;;;:8;:23;;;;;:36;;24961:9;;24934:23;:36;;24961:9;;24934:36;:::i;:::-;;;;-1:-1:-1;;24990:40:0;;1533:25:1;;;25013:4:0;;-1:-1:-1;;;;;24990:40:0;;;-1:-1:-1;;;;;;;;;;;24990:40:0;1521:2:1;1506:18;24990:40:0;;;;;;;25065:2;-1:-1:-1;;;;;25050:34:0;25059:4;-1:-1:-1;;;;;25050:34:0;-1:-1:-1;;;;;;;;;;;25069:14:0;25050:34;;;;1533:25:1;;1521:2;1506:18;;1387:177;25050:34:0;;;;;;;;24691:405;;24676:593;;;-1:-1:-1;;;;;25148:14:0;;;;;;:8;:14;;;;;:24;;25166:6;;25148:14;:24;;25166:6;;25148:24;:::i;:::-;;;;-1:-1:-1;;;;;;;25187:12:0;;;;;;:8;:12;;;;;:22;;25203:6;;25187:12;:22;;25203:6;;25187:22;:::i;:::-;;;;;;;;25246:2;-1:-1:-1;;;;;25231:26:0;25240:4;-1:-1:-1;;;;;25231:26:0;-1:-1:-1;;;;;;;;;;;25250:6:0;25231:26;;;;1533:25:1;;1521:2;1506:18;;1387:177;25231:26:0;;;;;;;;24676:593;25302:21;25277:22;25361:31;25388:3;25361:22;25302:21;25380:2;25361:18;:22::i;:::-;:26;;:31::i;:::-;25332:60;-1:-1:-1;25426:20:0;25449:31;25476:3;25449:22;:14;25468:2;25449:18;:22::i;:31::-;25426:54;-1:-1:-1;25518:22:0;;25514:90;;25568:15;;25547:57;;-1:-1:-1;;;;;25568:15:0;25585:18;25547:20;:57::i;:::-;25621:16;;25617:72;;25665:9;;25644:45;;-1:-1:-1;;;;;25665:9:0;25676:12;25644:20;:45::i;:::-;22109:3588;;;;;22006:3691;;;:::o;14463:187::-;-1:-1:-1;;;;;14537:22:0;;14529:31;;;;;;14597:6;;;14576:38;;-1:-1:-1;;;;;14576:38:0;;;;14597:6;;;14576:38;;;14625:6;:17;;-1:-1:-1;;;;;;14625:17:0;-1:-1:-1;;;;;14625:17:0;;;;;;;;;;14463:187::o;14685:181::-;14743:7;;14775:5;14779:1;14775;:5;:::i;:::-;14763:17;;14804:1;14799;:6;;14791:46;;;;-1:-1:-1;;;14791:46:0;;7645:2:1;14791:46:0;;;7627:21:1;7684:2;7664:18;;;7657:30;7723:29;7703:18;;;7696:57;7770:18;;14791:46:0;7443:351:1;14791:46:0;14857:1;14685:181;-1:-1:-1;;;14685:181:0:o;15218:250::-;15276:7;15300:1;15305;15300:6;15296:47;;-1:-1:-1;15330:1:0;15323:8;;15296:47;15355:9;15367:5;15371:1;15367;:5;:::i;:::-;15355:17;-1:-1:-1;15400:1:0;15391:5;15395:1;15355:17;15391:5;:::i;:::-;:10;15383:56;;;;-1:-1:-1;;;15383:56:0;;8001:2:1;15383:56:0;;;7983:21:1;8040:2;8020:18;;;8013:30;8079:34;8059:18;;;8052:62;-1:-1:-1;;;8130:18:1;;;8123:31;8171:19;;15383:56:0;7799:397:1;15476:132:0;15534:7;15561:39;15565:1;15568;15561:39;;;;;;;;;;;;;;;;;:3;:39::i;21611:126::-;21703:26;;-1:-1:-1;;;;;21703:18:0;;;:26;;;;;21722:6;;21703:26;;;;21722:6;21703:18;:26;;;;;;;;;;;;;;;;;;;;;21611:126;;:::o;15616:278::-;15702:7;15737:12;15730:5;15722:28;;;;-1:-1:-1;;;15722:28:0;;;;;;;;:::i;:::-;-1:-1:-1;15761:9:0;15773:5;15777:1;15773;:5;:::i;:::-;15761:17;15616:278;-1:-1:-1;;;;;15616:278:0:o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;383:548::-;495:4;524:2;553;542:9;535:21;585:6;579:13;628:6;623:2;612:9;608:18;601:34;653:1;663:140;677:6;674:1;671:13;663:140;;;772:14;;;768:23;;762:30;738:17;;;757:2;734:26;727:66;692:10;;663:140;;;667:3;852:1;847:2;838:6;827:9;823:22;819:31;812:42;922:2;915;911:7;906:2;898:6;894:15;890:29;879:9;875:45;871:54;863:62;;;;383:548;;;;:::o;936:254::-;1004:6;1012;1065:2;1053:9;1044:7;1040:23;1036:32;1033:52;;;1081:1;1078;1071:12;1033:52;1104:29;1123:9;1104:29;:::i;:::-;1094:39;1180:2;1165:18;;;;1152:32;;-1:-1:-1;;;936:254:1:o;1569:328::-;1646:6;1654;1662;1715:2;1703:9;1694:7;1690:23;1686:32;1683:52;;;1731:1;1728;1721:12;1683:52;1754:29;1773:9;1754:29;:::i;:::-;1744:39;;1802:38;1836:2;1825:9;1821:18;1802:38;:::i;:::-;1792:48;;1887:2;1876:9;1872:18;1859:32;1849:42;;1569:328;;;;;:::o;2091:347::-;2156:6;2164;2217:2;2205:9;2196:7;2192:23;2188:32;2185:52;;;2233:1;2230;2223:12;2185:52;2256:29;2275:9;2256:29;:::i;:::-;2246:39;;2335:2;2324:9;2320:18;2307:32;2382:5;2375:13;2368:21;2361:5;2358:32;2348:60;;2404:1;2401;2394:12;2348:60;2427:5;2417:15;;;2091:347;;;;;:::o;2443:180::-;2502:6;2555:2;2543:9;2534:7;2530:23;2526:32;2523:52;;;2571:1;2568;2561:12;2523:52;-1:-1:-1;2594:23:1;;2443:180;-1:-1:-1;2443:180:1:o;3060:260::-;3128:6;3136;3189:2;3177:9;3168:7;3164:23;3160:32;3157:52;;;3205:1;3202;3195:12;3157:52;3228:29;3247:9;3228:29;:::i;:::-;3218:39;;3276:38;3310:2;3299:9;3295:18;3276:38;:::i;:::-;3266:48;;3060:260;;;;;:::o;3325:127::-;3386:10;3381:3;3377:20;3374:1;3367:31;3417:4;3414:1;3407:15;3441:4;3438:1;3431:15;3457:128;3524:9;;;3545:11;;;3542:37;;;3559:18;;:::i;3590:168::-;3663:9;;;3694;;3711:15;;;3705:22;;3691:37;3681:71;;3732:18;;:::i;5662:175::-;5699:3;5743:4;5736:5;5732:16;5772:4;5763:7;5760:17;5757:43;;5780:18;;:::i;:::-;5829:1;5816:15;;5662:175;-1:-1:-1;;5662:175:1:o;5842:125::-;5907:9;;;5928:10;;;5925:36;;;5941:18;;:::i;6104:127::-;6165:10;6160:3;6156:20;6153:1;6146:31;6196:4;6193:1;6186:15;6220:4;6217:1;6210:15;6236:980;6498:4;6546:3;6535:9;6531:19;6577:6;6566:9;6559:25;6603:2;6641:6;6636:2;6625:9;6621:18;6614:34;6684:3;6679:2;6668:9;6664:18;6657:31;6708:6;6743;6737:13;6774:6;6766;6759:22;6812:3;6801:9;6797:19;6790:26;;6851:2;6843:6;6839:15;6825:29;;6872:1;6882:195;6896:6;6893:1;6890:13;6882:195;;;6961:13;;-1:-1:-1;;;;;6957:39:1;6945:52;;7052:15;;;;7017:12;;;;6993:1;6911:9;6882:195;;;-1:-1:-1;;;;;;;7133:32:1;;;;7128:2;7113:18;;7106:60;-1:-1:-1;;;7197:3:1;7182:19;7175:35;7094:3;6236:980;-1:-1:-1;;;6236:980:1:o;7221:217::-;7261:1;7287;7277:132;;7331:10;7326:3;7322:20;7319:1;7312:31;7366:4;7363:1;7356:15;7394:4;7391:1;7384:15;7277:132;-1:-1:-1;7423:9:1;;7221:217::o

Swarm Source

ipfs://44616b8cce5af036b18a90199782132b4df2e45a164001a99e007b73d2e4d892

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  ]
[ 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.