ETH Price: $3,779.06 (+22.10%)
Gas: 18 Gwei

Contract

0x650F44eD6F1FE0E1417cb4b3115d52494B4D9b6D
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

More Info

Private Name Tags

TokenTracker

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Value
Unmeow199065192024-05-19 20:58:4740 hrs ago1716152327IN
SushiSwap: MEOW Token
0 ETH0.00024452.92377434
Unmeow Sushi198589112024-05-13 5:09:118 days ago1715576951IN
SushiSwap: MEOW Token
0 ETH0.000412923.22032258
Approve198170582024-05-07 8:40:5914 days ago1715071259IN
SushiSwap: MEOW Token
0 ETH0.000161176.65833502
Approve197053122024-04-21 17:36:2329 days ago1713720983IN
SushiSwap: MEOW Token
0 ETH0.000191837.92505911
Meow195971812024-04-06 14:08:1144 days ago1712412491IN
SushiSwap: MEOW Token
0 ETH0.0014000914.82384976
Unmeow195887012024-04-05 9:38:5946 days ago1712309939IN
SushiSwap: MEOW Token
0 ETH0.0013015215.56105421
Unmeow195866682024-04-05 2:48:5946 days ago1712285339IN
SushiSwap: MEOW Token
0 ETH0.0011370513.59270247
Unmeow Sushi195325382024-03-28 12:13:4754 days ago1711628027IN
SushiSwap: MEOW Token
0 ETH0.0044726734.88171034
Approve195225612024-03-27 1:53:2355 days ago1711504403IN
SushiSwap: MEOW Token
0 ETH0.0010880423.5313451
Unmeow Sushi195191512024-03-26 14:16:4755 days ago1711462607IN
SushiSwap: MEOW Token
0 ETH0.005461547.68037449
Unmeow195160232024-03-26 3:44:4756 days ago1711424687IN
SushiSwap: MEOW Token
0 ETH0.0015313818.30923902
Unmeow195052702024-03-24 15:24:3557 days ago1711293875IN
SushiSwap: MEOW Token
0 ETH0.0016044319.18266411
Unmeow Sushi194877082024-03-22 4:12:2360 days ago1711080743IN
SushiSwap: MEOW Token
0 ETH0.0028890322.53117531
Unmeow Sushi194496102024-03-16 19:45:1165 days ago1710618311IN
SushiSwap: MEOW Token
0 ETH0.0038271329.84724512
Unmeow Sushi194299512024-03-14 1:19:3568 days ago1710379175IN
SushiSwap: MEOW Token
0 ETH0.0054056847.19312227
Unmeow Sushi194107152024-03-11 8:38:5971 days ago1710146339IN
SushiSwap: MEOW Token
0 ETH0.0052915846.19696417
Unmeow193942132024-03-09 1:18:5973 days ago1709947139IN
SushiSwap: MEOW Token
0 ETH0.0039527547.25916303
Transfer193937752024-03-08 23:50:3573 days ago1709941835IN
SushiSwap: MEOW Token
0 ETH0.0025471849.82660475
Unmeow193686842024-03-05 11:31:5977 days ago1709638319IN
SushiSwap: MEOW Token
0 ETH0.0044411553.09845475
Unmeow193460122024-03-02 7:32:2380 days ago1709364743IN
SushiSwap: MEOW Token
0 ETH0.0042342750.62500043
Unmeow192952042024-02-24 4:57:4787 days ago1708750667IN
SushiSwap: MEOW Token
0 ETH0.0018960822.6728801
Unmeow Sushi192920622024-02-23 18:25:2387 days ago1708712723IN
SushiSwap: MEOW Token
0 ETH0.0044566534.75677304
Approve192494232024-02-17 18:41:3593 days ago1708195295IN
SushiSwap: MEOW Token
0 ETH0.0004539418.75320368
Unmeow Sushi192333262024-02-15 12:27:3596 days ago1708000055IN
SushiSwap: MEOW Token
0 ETH0.0028535322.25430116
Meow192215052024-02-13 20:38:1197 days ago1707856691IN
SushiSwap: MEOW Token
0 ETH0.0038162338.4651068
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
Meowshi

Compiler Version
v0.8.4+commit.c7e474f2

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-06-01
*/

// SPDX-License-Identifier: UNLICENSED
// @title Meowshi (MEOW) 🐈 🍣 🍱
// @author Gatoshi Nyakamoto

pragma solidity 0.8.4;

/// @notice Interface for depositing into & withdrawing from BentoBox vault.
interface IERC20{} interface IBentoBoxBasic {
    function deposit( 
        IERC20 token_,
        address from,
        address to,
        uint256 amount,
        uint256 share
    ) external payable returns (uint256 amountOut, uint256 shareOut);

    function withdraw(
        IERC20 token_,
        address from,
        address to,
        uint256 amount,
        uint256 share
    ) external returns (uint256 amountOut, uint256 shareOut);
}

/// @notice Interface for depositing into & withdrawing from SushiBar.
interface ISushiBar { 
    function balanceOf(address account) external view returns (uint256);
    function enter(uint256 amount) external;
    function leave(uint256 share) external;
    function approve(address spender, uint256 amount) external returns (bool);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
}

/// @notice Meowshi takes SUSHI/xSUSHI to mint governing MEOW tokens that can be burned to claim SUSHI/xSUSHI from BENTO with yields.
//  ៱˳_˳៱   ∫
contract Meowshi {
    IBentoBoxBasic constant bento = IBentoBoxBasic(0xF5BCE5077908a1b7370B9ae04AdC565EBd643966); // BENTO vault contract (multinet)
    ISushiBar constant sushiToken = ISushiBar(0x6B3595068778DD592e39A122f4f5a5cF09C90fE2); // SUSHI token contract (mainnet)
    address constant sushiBar = 0x8798249c2E607446EfB7Ad49eC89dD1865Ff4272; // xSUSHI token contract for staking SUSHI (mainnet)
    string constant public name = "Meowshi";
    string constant public symbol = "MEOW";
    uint8 constant public decimals = 18;
    uint256 constant multiplier = 100_000; // 1 xSUSHI BENTO share = 100,000 MEOW
    uint256 public totalSupply;
    
    /// @notice owner -> spender -> allowance mapping.
    mapping(address => mapping(address => uint256)) public allowance;
    /// @notice owner -> balance mapping.
    mapping(address => uint256) public balanceOf;
    /// @notice owner -> nonce mapping used in {permit}.
    mapping(address => uint256) public nonces;
    /// @notice A record of each account's delegate.
    mapping(address => address) public delegates;
    /// @notice A record of votes checkpoints for each account, by index.
    mapping(address => mapping(uint32 => Checkpoint)) public checkpoints;
    /// @notice The number of checkpoints for each account.
    mapping(address => uint32) public numCheckpoints;
    /// @notice The ERC-712 typehash for this contract's domain.
    bytes32 constant DOMAIN_TYPEHASH = keccak256("EIP712Domain(string name,uint256 chainId,address verifyingContract)");
    /// @notice The ERC-712 typehash for the delegation struct used by the contract.
    bytes32 constant DELEGATION_TYPEHASH = keccak256("Delegation(address delegatee,uint256 nonce,uint256 expiry)");
    /// @notice The ERC-712 typehash for the permit struct used by the contract.
    bytes32 constant PERMIT_TYPEHASH = keccak256("Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)");
    /// @notice Events that are emitted when an ERC-20 approval or transfer occurs. 
    event Approval(address indexed owner, address indexed spender, uint256 amount);
    event Transfer(address indexed from, address indexed to, uint256 amount);
    /// @notice An event that's emitted when an account changes its delegate.
    event DelegateChanged(address indexed delegator, address indexed fromDelegate, address indexed toDelegate);
    /// @notice An event that's emitted when a delegate account's vote balance changes.
    event DelegateVotesChanged(address indexed delegate, uint256 previousBalance, uint256 newBalance);
    
    /// @notice A checkpoint for marking number of votes from a given block.
    struct Checkpoint {
        uint32 fromBlock;
        uint256 votes;
    }
    
    constructor() {
        sushiToken.approve(sushiBar, type(uint256).max); // max {approve} xSUSHI to draw SUSHI from this contract
        ISushiBar(sushiBar).approve(address(bento), type(uint256).max); // max {approve} BENTO to draw xSUSHI from this contract
    }

    /*************
    MEOW FUNCTIONS
    *************/
    // **** xSUSHI
    /// @notice Enter Meowshi. Deposit xSUSHI `amount`. Mint MEOW for `to`.
    function meow(address to, uint256 amount) external returns (uint256 shares) {
        ISushiBar(sushiBar).transferFrom(msg.sender, address(bento), amount); // forward to BENTO for skim
        (, shares) = bento.deposit(IERC20(sushiBar), address(bento), address(this), amount, 0);
        meowMint(to, shares * multiplier);
    }

    /// @notice Leave Meowshi. Burn MEOW `amount`. Claim xSUSHI for `to`.
    function unmeow(address to, uint256 amount) external returns (uint256 amountOut) {
        meowBurn(amount);
        unchecked {(amountOut, ) = bento.withdraw(IERC20(sushiBar), address(this), to, 0, amount / multiplier);}
    }
    
    // **** SUSHI
    /// @notice Enter Meowshi. Deposit SUSHI `amount`. Mint MEOW for `to`.
    function meowSushi(address to, uint256 amount) external returns (uint256 shares) {
        sushiToken.transferFrom(msg.sender, address(this), amount);
        ISushiBar(sushiBar).enter(amount);
        (, shares) = bento.deposit(IERC20(sushiBar), address(this), address(this), ISushiBar(sushiBar).balanceOf(address(this)), 0);
        meowMint(to, shares * multiplier);
    }

    /// @notice Leave Meowshi. Burn MEOW `amount`. Claim SUSHI for `to`.
    function unmeowSushi(address to, uint256 amount) external returns (uint256 amountOut) {
        meowBurn(amount);
        unchecked {(amountOut, ) = bento.withdraw(IERC20(sushiBar), address(this), address(this), 0, amount / multiplier);}
        ISushiBar(sushiBar).leave(amountOut);
        sushiToken.transfer(to, sushiToken.balanceOf(address(this))); 
    }

    // **** SUPPLY MGMT
    /// @notice Internal mint function for *meow*.
    function meowMint(address to, uint256 amount) private {
        balanceOf[to] += amount;
        totalSupply += amount;
        _moveDelegates(address(0), delegates[to], amount);
        emit Transfer(address(0), to, amount);
    }
    
    /// @notice Internal burn function for *unmeow*.
    function meowBurn(uint256 amount) private {
        balanceOf[msg.sender] -= amount;
        unchecked {totalSupply -= amount;}
        _moveDelegates(delegates[msg.sender], address(0), amount);
        emit Transfer(msg.sender, address(0), amount);
    }
    
    /**************
    TOKEN FUNCTIONS
    **************/
    /// @notice Approves `amount` from msg.sender to be spent by `spender`.
    /// @param spender Address of the party that can draw tokens from msg.sender's account.
    /// @param amount The maximum collective `amount` that `spender` can draw.
    /// @return (bool) Returns 'true' if succeeded.
    function approve(address spender, uint256 amount) external returns (bool) {
        allowance[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    /// @notice Triggers an approval from owner to spends.
    /// @param owner The address to approve from.
    /// @param spender The address to be approved.
    /// @param amount The number of tokens that are approved (2^256-1 means infinite).
    /// @param deadline The time at which to expire the signature.
    /// @param v The recovery byte of the signature.
    /// @param r Half of the ECDSA signature pair.
    /// @param s Half of the ECDSA signature pair.
    function permit(address owner, address spender, uint256 amount, uint deadline, uint8 v, bytes32 r, bytes32 s) external {
        bytes32 domainSeparator = keccak256(abi.encode(DOMAIN_TYPEHASH, keccak256(bytes(name)), getChainId(), address(this)));
        unchecked {bytes32 structHash = keccak256(abi.encode(PERMIT_TYPEHASH, owner, spender, amount, nonces[owner]++, deadline));
        bytes32 digest = keccak256(abi.encodePacked("\x19\x01", domainSeparator, structHash));
        address signatory = ecrecover(digest, v, r, s); 
        require(signatory != address(0), 'Meowshi::permit: invalid signature');
        require(signatory == owner, 'Meowshi::permit: unauthorized');}
        require(block.timestamp <= deadline, 'Meowshi::permit: signature expired');
        allowance[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    
    /// @notice Transfers `amount` tokens from `msg.sender` to `to`.
    /// @param to The address to move tokens `to`.
    /// @param amount The token `amount` to move.
    /// @return (bool) Returns 'true' if succeeded.
    function transfer(address to, uint256 amount) external returns (bool) {
        balanceOf[msg.sender] -= amount; 
        unchecked {balanceOf[to] += amount;}
        _moveDelegates(delegates[msg.sender], delegates[to], amount);
        emit Transfer(msg.sender, to, amount);
        return true;
    }

    /// @notice Transfers `amount` tokens from `from` to `to`. Caller needs approval from `from`.
    /// @param from Address to draw tokens `from`.
    /// @param to The address to move tokens `to`.
    /// @param amount The token `amount` to move.
    /// @return (bool) Returns 'true' if succeeded.
    function transferFrom(address from, address to, uint256 amount) external returns (bool) {
        if (allowance[from][msg.sender] != type(uint256).max) {
            allowance[from][msg.sender] -= amount;
        }
        balanceOf[from] -= amount;
        unchecked {balanceOf[to] += amount;}
        _moveDelegates(delegates[from], delegates[to], amount);
        emit Transfer(from, to, amount);
        return true;
    }
    
    /*******************
    DELEGATION FUNCTIONS
    *******************/
    /// @notice Delegate votes from `msg.sender` to `delegatee`.
    /// @param delegatee The address to delegate votes to.
    function delegate(address delegatee) external {
        return _delegate(msg.sender, delegatee);
    }

    /// @notice Delegates votes from signatory to `delegatee`.
    /// @param delegatee The address to delegate votes to.
    /// @param nonce The contract state required to match the signature.
    /// @param expiry The time at which to expire the signature.
    /// @param v The recovery byte of the signature.
    /// @param r Half of the ECDSA signature pair.
    /// @param s Half of the ECDSA signature pair.
    function delegateBySig(address delegatee, uint256 nonce, uint256 expiry, uint8 v, bytes32 r, bytes32 s) external {
        bytes32 domainSeparator = keccak256(abi.encode(DOMAIN_TYPEHASH, keccak256(bytes(name)), getChainId(), address(this)));
        bytes32 structHash = keccak256(abi.encode(DELEGATION_TYPEHASH, delegatee, nonce, expiry));
        bytes32 digest = keccak256(abi.encodePacked("\x19\x01", domainSeparator, structHash));
        address signatory = ecrecover(digest, v, r, s);
        require(signatory != address(0), 'Meowshi::delegateBySig: invalid signature');
        unchecked {require(nonce == nonces[signatory]++, 'Meowshi::delegateBySig: invalid nonce');}
        require(block.timestamp <= expiry, 'Meowshi::delegateBySig: signature expired');
        return _delegate(signatory, delegatee);
    }
    
    /***************
    GETTER FUNCTIONS
    ***************/
    /// @notice Get current chain. 
    function getChainId() private view returns (uint256) {
        uint256 chainId;
        assembly {chainId := chainid()}
        return chainId;
    }

    /// @notice Gets the current votes balance for `account`.
    /// @param account The address to get votes balance.
    /// @return The number of current votes for `account`.
    function getCurrentVotes(address account) external view returns (uint256) {
        unchecked {uint32 nCheckpoints = numCheckpoints[account];
        return nCheckpoints > 0 ? checkpoints[account][nCheckpoints - 1].votes : 0;}
    }

    /// @notice Determine the prior number of votes for an `account` as of a block number.
    /// @dev Block number must be a finalized block or else this function will revert to prevent misinformation.
    /// @param account The address of the `account` to check.
    /// @param blockNumber The block number to get the vote balance at.
    /// @return The number of votes the `account` had as of the given block.
    function getPriorVotes(address account, uint256 blockNumber) external view returns (uint256) {
        require(blockNumber < block.number, 'Meowshi::getPriorVotes: not yet determined');
        uint32 nCheckpoints = numCheckpoints[account];
        if (nCheckpoints == 0) {return 0;}
        unchecked {
        // @dev First check most recent balance.
        if (checkpoints[account][nCheckpoints - 1].fromBlock <= blockNumber) {return checkpoints[account][nCheckpoints - 1].votes;}
        // @dev Next check implicit zero balance.
        if (checkpoints[account][0].fromBlock > blockNumber) {return 0;}
        uint32 lower = 0;
        uint32 upper = nCheckpoints - 1;
        while (upper > lower) {
            uint32 center = upper - (upper - lower) / 2; // avoiding overflow
            Checkpoint memory cp = checkpoints[account][center];
            if (cp.fromBlock == blockNumber) {
                return cp.votes;
            } else if (cp.fromBlock < blockNumber) {
                lower = center;
            } else {upper = center - 1;}}
        return checkpoints[account][lower].votes;}
    }
    
    /***************
    HELPER FUNCTIONS
    ***************/
    function _delegate(address delegator, address delegatee) private {
        address currentDelegate = delegates[delegator]; 
        uint256 delegatorBalance = balanceOf[delegator];
        delegates[delegator] = delegatee;
        emit DelegateChanged(delegator, currentDelegate, delegatee);
        _moveDelegates(currentDelegate, delegatee, delegatorBalance);
    }

    function _moveDelegates(address srcRep, address dstRep, uint256 amount) private {
        unchecked {
        if (srcRep != dstRep && amount > 0) {
            if (srcRep != address(0)) {
                uint32 srcRepNum = numCheckpoints[srcRep];
                uint256 srcRepOld = srcRepNum > 0 ? checkpoints[srcRep][srcRepNum - 1].votes : 0;
                uint256 srcRepNew = srcRepOld - amount;
                _writeCheckpoint(srcRep, srcRepNum, srcRepOld, srcRepNew);
            }
            if (dstRep != address(0)) {
                uint32 dstRepNum = numCheckpoints[dstRep];
                uint256 dstRepOld = dstRepNum > 0 ? checkpoints[dstRep][dstRepNum - 1].votes : 0;
                uint256 dstRepNew = dstRepOld + amount;
                _writeCheckpoint(dstRep, dstRepNum, dstRepOld, dstRepNew);
            }
        }}
    }
    
    function _writeCheckpoint(address delegatee, uint32 nCheckpoints, uint256 oldVotes, uint256 newVotes) private {
        uint32 blockNumber = safe32(block.number);
        unchecked {
        if (nCheckpoints > 0 && checkpoints[delegatee][nCheckpoints - 1].fromBlock == blockNumber) {
            checkpoints[delegatee][nCheckpoints - 1].votes = newVotes;
        } else {
            checkpoints[delegatee][nCheckpoints] = Checkpoint(blockNumber, newVotes);
            numCheckpoints[delegatee] = nCheckpoints + 1;
        }}
        emit DelegateVotesChanged(delegatee, oldVotes, newVotes);
    }
    
    /// @notice Enables calling multiple methods in a single call to this contract.
    function multicall(bytes[] calldata data) external returns (bytes[] memory results) {
        results = new bytes[](data.length);
        unchecked {
        for (uint256 i = 0; i < data.length; i++) {
            (bool success, bytes memory result) = address(this).delegatecall(data[i]);
            if (!success) {
                if (result.length < 68) revert();
                assembly {result := add(result, 0x04)}
                revert(abi.decode(result, (string)));
            }
            results[i] = result;
        }}
    }
    
    function safe32(uint256 n) private pure returns (uint32) {
        require(n < 2**32, 'Meowshi::_writeCheckpoint: block number exceeds 32 bits'); return uint32(n);}
}

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":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegator","type":"address"},{"indexed":true,"internalType":"address","name":"fromDelegate","type":"address"},{"indexed":true,"internalType":"address","name":"toDelegate","type":"address"}],"name":"DelegateChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"delegate","type":"address"},{"indexed":false,"internalType":"uint256","name":"previousBalance","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newBalance","type":"uint256"}],"name":"DelegateVotesChanged","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":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","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":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint32","name":"","type":"uint32"}],"name":"checkpoints","outputs":[{"internalType":"uint32","name":"fromBlock","type":"uint32"},{"internalType":"uint256","name":"votes","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"}],"name":"delegate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"delegatee","type":"address"},{"internalType":"uint256","name":"nonce","type":"uint256"},{"internalType":"uint256","name":"expiry","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"delegateBySig","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"delegates","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"getCurrentVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"blockNumber","type":"uint256"}],"name":"getPriorVotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"meow","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"meowSushi","outputs":[{"internalType":"uint256","name":"shares","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes[]","name":"data","type":"bytes[]"}],"name":"multicall","outputs":[{"internalType":"bytes[]","name":"results","type":"bytes[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"numCheckpoints","outputs":[{"internalType":"uint32","name":"","type":"uint32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"unmeow","outputs":[{"internalType":"uint256","name":"amountOut","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"unmeowSushi","outputs":[{"internalType":"uint256","name":"amountOut","type":"uint256"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5060405163095ea7b360e01b8152738798249c2e607446efb7ad49ec89dd1865ff427260048201526000196024820152736b3595068778dd592e39a122f4f5a5cf09c90fe29063095ea7b390604401602060405180830381600087803b1580156200007b57600080fd5b505af115801562000090573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000b6919062000162565b5060405163095ea7b360e01b815273f5bce5077908a1b7370b9ae04adc565ebd64396660048201526000196024820152738798249c2e607446efb7ad49ec89dd1865ff42729063095ea7b390604401602060405180830381600087803b1580156200012057600080fd5b505af115801562000135573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200015b919062000162565b506200018b565b60006020828403121562000174578081fd5b8151801515811462000184578182fd5b9392505050565b6120a4806200019b6000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c806370a08231116100c3578063b4b5ea571161007c578063b4b5ea5714610368578063c3cda5201461037b578063d505accf1461038e578063dd62ed3e146103a1578063e6ff41eb146103cc578063f1127ed8146103df57600080fd5b806370a08231146102bf578063782d6fe1146102df5780637ecebe00146102f257806395d89b4114610312578063a9059cbb14610335578063ac9650d81461034857600080fd5b8063313ce56711610115578063313ce567146101ee5780633c0adb6814610208578063587cde1e1461021b5780635c19a95c1461025c578063642ed500146102715780636fcfff451461028457600080fd5b806306fdde0314610152578063095ea7b31461018e57806318160ddd146101b15780631b04a34f146101c857806323b872dd146101db575b600080fd5b610178604051806040016040528060078152602001664d656f7773686960c81b81525081565b6040516101859190611f49565b60405180910390f35b6101a161019c366004611c46565b610436565b6040519015158152602001610185565b6101ba60005481565b604051908152602001610185565b6101ba6101d6366004611c46565b6104a3565b6101a16101e9366004611ba2565b610560565b6101f6601281565b60405160ff9091168152602001610185565b6101ba610216366004611c46565b61067c565b610244610229366004611b56565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610185565b61026f61026a366004611b56565b6108a7565b005b6101ba61027f366004611c46565b6108b4565b6102aa610292366004611b56565b60066020526000908152604090205463ffffffff1681565b60405163ffffffff9091168152602001610185565b6101ba6102cd366004611b56565b60026020526000908152604090205481565b6101ba6102ed366004611c46565b610ae3565b6101ba610300366004611b56565b60036020526000908152604090205481565b610178604051806040016040528060048152602001634d454f5760e01b81525081565b6101a1610343366004611c46565b610d0f565b61035b610356366004611d04565b610da3565b6040516101859190611eb4565b6101ba610376366004611b56565b610f13565b61026f610389366004611c6f565b610f77565b61026f61039c366004611bdd565b611264565b6101ba6103af366004611b70565b600160209081526000928352604080842090915290825290205481565b6101ba6103da366004611c46565b61159e565b61041a6103ed366004611cc6565b60056020908152600092835260408084209091529082529020805460019091015463ffffffff9091169082565b6040805163ffffffff9093168352602083019190915201610185565b3360008181526001602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906104919086815260200190565b60405180910390a35060015b92915050565b60006104ae8261169a565b60405163097da6d360e41b815273f5bce5077908a1b7370b9ae04adc565ebd643966906397da6d309061050790738798249c2e607446efb7ad49ec89dd1865ff42729030908890600090620186a08a0490600401611f15565b6040805180830381600087803b15801561052057600080fd5b505af1158015610534573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105589190611e55565b509392505050565b6001600160a01b0383166000908152600160209081526040808320338452909152812054600019146105c5576001600160a01b0384166000908152600160209081526040808320338452909152812080548492906105bf908490611fdf565b90915550505b6001600160a01b038416600090815260026020526040812080548492906105ed908490611fdf565b90915550506001600160a01b038084166000818152600260209081526040808320805488019055888516835260049091528082205492825290205461063792918216911684611713565b826001600160a01b0316846001600160a01b031660008051602061204f8339815191528460405161066a91815260200190565b60405180910390a35060019392505050565b6040516323b872dd60e01b815233600482015230602482015260448101829052600090736b3595068778dd592e39a122f4f5a5cf09c90fe2906323b872dd90606401602060405180830381600087803b1580156106d857600080fd5b505af11580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107109190611d74565b50604051632967cf8360e21b815260048101839052738798249c2e607446efb7ad49ec89dd1865ff42729063a59f3e0c90602401600060405180830381600087803b15801561075e57600080fd5b505af1158015610772573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820181905273f5bce5077908a1b7370b9ae04adc565ebd64396693506302b9446c9250738798249c2e607446efb7ad49ec89dd1865ff427291819083906370a082319060240160206040518083038186803b1580156107e257600080fd5b505afa1580156107f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081a9190611e3d565b60006040518663ffffffff1660e01b815260040161083c959493929190611f15565b6040805180830381600087803b15801561085557600080fd5b505af1158015610869573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088d9190611e55565b915061049d9050836108a2620186a084611fc0565b61183f565b6108b133826118dc565b50565b60006108bf8261169a565b60405163097da6d360e41b815273f5bce5077908a1b7370b9ae04adc565ebd643966906397da6d309061091890738798249c2e607446efb7ad49ec89dd1865ff42729030908190600090620186a08a0490600401611f15565b6040805180830381600087803b15801561093157600080fd5b505af1158015610945573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109699190611e55565b506040516367dfd4c960e01b815260048101829052909150738798249c2e607446efb7ad49ec89dd1865ff4272906367dfd4c990602401600060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820152736b3595068778dd592e39a122f4f5a5cf09c90fe2925063a9059cbb9150859083906370a082319060240160206040518083038186803b158015610a2657600080fd5b505afa158015610a3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5e9190611e3d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381600087803b158015610aa457600080fd5b505af1158015610ab8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610adc9190611d74565b5092915050565b6000438210610b4c5760405162461bcd60e51b815260206004820152602a60248201527f4d656f777368693a3a6765745072696f72566f7465733a206e6f74207965742060448201526919195d195c9b5a5b995960b21b60648201526084015b60405180910390fd5b6001600160a01b03831660009081526006602052604090205463ffffffff1680610b7a57600091505061049d565b6001600160a01b038416600090815260056020908152604080832063ffffffff600019860181168552925290912054168310610be9576001600160a01b03841660009081526005602090815260408083206000199490940163ffffffff1683529290522060010154905061049d565b6001600160a01b038416600090815260056020908152604080832083805290915290205463ffffffff16831015610c2457600091505061049d565b600060001982015b8163ffffffff168163ffffffff161115610cd8576000600263ffffffff848403166001600160a01b038916600090815260056020908152604080832094909304860363ffffffff8181168452948252918390208351808501909452805490941680845260019094015490830152925090871415610cb35760200151945061049d9350505050565b805163ffffffff16871115610cca57819350610cd1565b6001820392505b5050610c2c565b506001600160a01b038516600090815260056020908152604080832063ffffffff9094168352929052206001015491505092915050565b33600090815260026020526040812080548391908390610d30908490611fdf565b90915550506001600160a01b038084166000818152600260209081526040808320805488019055338352600490915280822054928252902054610d7892918216911684611713565b6040518281526001600160a01b03841690339060008051602061204f83398151915290602001610491565b60608167ffffffffffffffff811115610dcc57634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015610dff57816020015b6060815260200190600190039081610dea5790505b50905060005b82811015610adc5760008030868685818110610e3157634e487b7160e01b600052603260045260246000fd5b9050602002810190610e439190611f5c565b604051610e51929190611ea4565b600060405180830381855af49150503d8060008114610e8c576040519150601f19603f3d011682016040523d82523d6000602084013e610e91565b606091505b509150915081610edd57604481511015610eaa57600080fd5b60048101905080806020019051810190610ec49190611d94565b60405162461bcd60e51b8152600401610b439190611f49565b80848481518110610efe57634e487b7160e01b600052603260045260246000fd5b60209081029190910101525050600101610e05565b6001600160a01b03811660009081526006602052604081205463ffffffff1680610f3e576000610f70565b6001600160a01b038316600090815260056020908152604080832063ffffffff60001986011684529091529020600101545b9392505050565b60408051808201825260078152664d656f7773686960c81b60209182015281517f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a866818301527fb2519001d922cc8f01da040a1ebf40356f395758595af77f4a075390db7ffeeb81840152466060820152306080808301919091528351808303909101815260a0820184528051908301207fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60c08301526001600160a01b038a1660e083015261010082018990526101208083018990528451808403909101815261014083019094528351939092019290922061190160f01b6101608401526101628301829052610182830181905290916000906101a20160408051601f198184030181528282528051602091820120600080855291840180845281905260ff8a169284019290925260608301889052608083018790529092509060019060a0016020604051602081039080840390855afa1580156110f9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661116e5760405162461bcd60e51b815260206004820152602960248201527f4d656f777368693a3a64656c656761746542795369673a20696e76616c6964206044820152687369676e617475726560b81b6064820152608401610b43565b6001600160a01b038116600090815260036020526040902080546001810190915589146111eb5760405162461bcd60e51b815260206004820152602560248201527f4d656f777368693a3a64656c656761746542795369673a20696e76616c6964206044820152646e6f6e636560d81b6064820152608401610b43565b8742111561124d5760405162461bcd60e51b815260206004820152602960248201527f4d656f777368693a3a64656c656761746542795369673a207369676e617475726044820152681948195e1c1a5c995960ba1b6064820152608401610b43565b611257818b6118dc565b505050505b505050505050565b60408051808201825260078152664d656f7773686960c81b60209182015281517f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a866818301527fb2519001d922cc8f01da040a1ebf40356f395758595af77f4a075390db7ffeeb81840152466060820152306080808301919091528351808303909101815260a0820184528051908301206001600160a01b038b81166000818152600386528681208054600181019091557f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960c087015260e0860192909252918c1661010085015261012084018b90526101408401526101608084018a90528551808503909101815261018084019095528451949093019390932061190160f01b6101a08301526101a282018490526101c2820181905291906101e20160408051601f198184030181528282528051602091820120600080855291840180845281905260ff8a169284019290925260608301889052608083018790529092509060019060a0016020604051602081039080840390855afa15801561140b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114795760405162461bcd60e51b815260206004820152602260248201527f4d656f777368693a3a7065726d69743a20696e76616c6964207369676e617475604482015261726560f01b6064820152608401610b43565b8a6001600160a01b0316816001600160a01b0316146114da5760405162461bcd60e51b815260206004820152601d60248201527f4d656f777368693a3a7065726d69743a20756e617574686f72697a65640000006044820152606401610b43565b505050844211156115385760405162461bcd60e51b815260206004820152602260248201527f4d656f777368693a3a7065726d69743a207369676e6174757265206578706972604482015261195960f21b6064820152608401610b43565b6001600160a01b038881166000818152600160209081526040808320948c16808452948252918290208a905590518981527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35050505050505050565b6040516323b872dd60e01b815233600482015273f5bce5077908a1b7370b9ae04adc565ebd643966602482015260448101829052600090738798249c2e607446efb7ad49ec89dd1865ff4272906323b872dd90606401602060405180830381600087803b15801561160e57600080fd5b505af1158015611622573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116469190611d74565b5060405162ae511b60e21b815273f5bce5077908a1b7370b9ae04adc565ebd643966906302b9446c9061083c90738798249c2e607446efb7ad49ec89dd1865ff427290849030908890600090600401611f15565b33600090815260026020526040812080548392906116b9908490611fdf565b9091555050600080548290038155338152600460205260408120546116ea916001600160a01b039091169083611713565b604051818152600090339060008051602061204f8339815191529060200160405180910390a350565b816001600160a01b0316836001600160a01b0316141580156117355750600081115b1561183a576001600160a01b038316156117bc576001600160a01b03831660009081526006602052604081205463ffffffff1690816117755760006117a7565b6001600160a01b038516600090815260056020908152604080832063ffffffff60001987011684529091529020600101545b90508281036117b88684848461195c565b5050505b6001600160a01b0382161561183a576001600160a01b03821660009081526006602052604081205463ffffffff1690816117f7576000611829565b6001600160a01b038416600090815260056020908152604080832063ffffffff60001987011684529091529020600101545b905082810161125c8584848461195c565b505050565b6001600160a01b03821660009081526002602052604081208054839290611867908490611fa8565b925050819055508060008082825461187f9190611fa8565b90915550506001600160a01b038083166000908152600460205260408120546118a9921683611713565b6040518181526001600160a01b0383169060009060008051602061204f8339815191529060200160405180910390a35050565b6001600160a01b03808316600081815260046020818152604080842080546002845282862054949093528787166001600160a01b03198416811790915590519190951694919391928592917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a4611956828483611713565b50505050565b600061196743611aa9565b905060008463ffffffff161180156119b057506001600160a01b038516600090815260056020908152604080832063ffffffff6000198901811685529252909120548282169116145b156119ed576001600160a01b038516600090815260056020908152604080832063ffffffff60001989011684529091529020600101829055611a5e565b60408051808201825263ffffffff808416825260208083018681526001600160a01b038a166000818152600584528681208b8616825284528681209551865490861663ffffffff19918216178755925160019687015590815260069092529390208054928801909116919092161790555b60408051848152602081018490526001600160a01b038716917fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724910160405180910390a25050505050565b60006401000000008210611b255760405162461bcd60e51b815260206004820152603760248201527f4d656f777368693a3a5f7772697465436865636b706f696e743a20626c6f636b60448201527f206e756d626572206578636565647320333220626974730000000000000000006064820152608401610b43565b5090565b80356001600160a01b0381168114611b4057600080fd5b919050565b803560ff81168114611b4057600080fd5b600060208284031215611b67578081fd5b610f7082611b29565b60008060408385031215611b82578081fd5b611b8b83611b29565b9150611b9960208401611b29565b90509250929050565b600080600060608486031215611bb6578081fd5b611bbf84611b29565b9250611bcd60208501611b29565b9150604084013590509250925092565b600080600080600080600060e0888a031215611bf7578283fd5b611c0088611b29565b9650611c0e60208901611b29565b95506040880135945060608801359350611c2a60808901611b45565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215611c58578182fd5b611c6183611b29565b946020939093013593505050565b60008060008060008060c08789031215611c87578182fd5b611c9087611b29565b95506020870135945060408701359350611cac60608801611b45565b92506080870135915060a087013590509295509295509295565b60008060408385031215611cd8578182fd5b611ce183611b29565b9150602083013563ffffffff81168114611cf9578182fd5b809150509250929050565b60008060208385031215611d16578182fd5b823567ffffffffffffffff80821115611d2d578384fd5b818501915085601f830112611d40578384fd5b813581811115611d4e578485fd5b8660208260051b8501011115611d62578485fd5b60209290920196919550909350505050565b600060208284031215611d85578081fd5b81518015158114610f70578182fd5b600060208284031215611da5578081fd5b815167ffffffffffffffff80821115611dbc578283fd5b818401915084601f830112611dcf578283fd5b815181811115611de157611de1612038565b604051601f8201601f19908116603f01168101908382118183101715611e0957611e09612038565b81604052828152876020848701011115611e21578586fd5b611e32836020830160208801611ff6565b979650505050505050565b600060208284031215611e4e578081fd5b5051919050565b60008060408385031215611e67578182fd5b505080516020909101519092909150565b60008151808452611e90816020860160208601611ff6565b601f01601f19169290920160200192915050565b8183823760009101908152919050565b6000602080830181845280855180835260408601915060408160051b8701019250838701855b82811015611f0857603f19888603018452611ef6858351611e78565b94509285019290850190600101611eda565b5092979650505050505050565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252608081019190915260a00190565b602081526000610f706020830184611e78565b6000808335601e19843603018112611f72578283fd5b83018035915067ffffffffffffffff821115611f8c578283fd5b602001915036819003821315611fa157600080fd5b9250929050565b60008219821115611fbb57611fbb612022565b500190565b6000816000190483118215151615611fda57611fda612022565b500290565b600082821015611ff157611ff1612022565b500390565b60005b83811015612011578181015183820152602001611ff9565b838111156119565750506000910152565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122035b0fe5adbdae498498519145e816863e43ce263ac09956b745a7b88ea999a1f64736f6c63430008040033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061014d5760003560e01c806370a08231116100c3578063b4b5ea571161007c578063b4b5ea5714610368578063c3cda5201461037b578063d505accf1461038e578063dd62ed3e146103a1578063e6ff41eb146103cc578063f1127ed8146103df57600080fd5b806370a08231146102bf578063782d6fe1146102df5780637ecebe00146102f257806395d89b4114610312578063a9059cbb14610335578063ac9650d81461034857600080fd5b8063313ce56711610115578063313ce567146101ee5780633c0adb6814610208578063587cde1e1461021b5780635c19a95c1461025c578063642ed500146102715780636fcfff451461028457600080fd5b806306fdde0314610152578063095ea7b31461018e57806318160ddd146101b15780631b04a34f146101c857806323b872dd146101db575b600080fd5b610178604051806040016040528060078152602001664d656f7773686960c81b81525081565b6040516101859190611f49565b60405180910390f35b6101a161019c366004611c46565b610436565b6040519015158152602001610185565b6101ba60005481565b604051908152602001610185565b6101ba6101d6366004611c46565b6104a3565b6101a16101e9366004611ba2565b610560565b6101f6601281565b60405160ff9091168152602001610185565b6101ba610216366004611c46565b61067c565b610244610229366004611b56565b6004602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610185565b61026f61026a366004611b56565b6108a7565b005b6101ba61027f366004611c46565b6108b4565b6102aa610292366004611b56565b60066020526000908152604090205463ffffffff1681565b60405163ffffffff9091168152602001610185565b6101ba6102cd366004611b56565b60026020526000908152604090205481565b6101ba6102ed366004611c46565b610ae3565b6101ba610300366004611b56565b60036020526000908152604090205481565b610178604051806040016040528060048152602001634d454f5760e01b81525081565b6101a1610343366004611c46565b610d0f565b61035b610356366004611d04565b610da3565b6040516101859190611eb4565b6101ba610376366004611b56565b610f13565b61026f610389366004611c6f565b610f77565b61026f61039c366004611bdd565b611264565b6101ba6103af366004611b70565b600160209081526000928352604080842090915290825290205481565b6101ba6103da366004611c46565b61159e565b61041a6103ed366004611cc6565b60056020908152600092835260408084209091529082529020805460019091015463ffffffff9091169082565b6040805163ffffffff9093168352602083019190915201610185565b3360008181526001602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906104919086815260200190565b60405180910390a35060015b92915050565b60006104ae8261169a565b60405163097da6d360e41b815273f5bce5077908a1b7370b9ae04adc565ebd643966906397da6d309061050790738798249c2e607446efb7ad49ec89dd1865ff42729030908890600090620186a08a0490600401611f15565b6040805180830381600087803b15801561052057600080fd5b505af1158015610534573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105589190611e55565b509392505050565b6001600160a01b0383166000908152600160209081526040808320338452909152812054600019146105c5576001600160a01b0384166000908152600160209081526040808320338452909152812080548492906105bf908490611fdf565b90915550505b6001600160a01b038416600090815260026020526040812080548492906105ed908490611fdf565b90915550506001600160a01b038084166000818152600260209081526040808320805488019055888516835260049091528082205492825290205461063792918216911684611713565b826001600160a01b0316846001600160a01b031660008051602061204f8339815191528460405161066a91815260200190565b60405180910390a35060019392505050565b6040516323b872dd60e01b815233600482015230602482015260448101829052600090736b3595068778dd592e39a122f4f5a5cf09c90fe2906323b872dd90606401602060405180830381600087803b1580156106d857600080fd5b505af11580156106ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107109190611d74565b50604051632967cf8360e21b815260048101839052738798249c2e607446efb7ad49ec89dd1865ff42729063a59f3e0c90602401600060405180830381600087803b15801561075e57600080fd5b505af1158015610772573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820181905273f5bce5077908a1b7370b9ae04adc565ebd64396693506302b9446c9250738798249c2e607446efb7ad49ec89dd1865ff427291819083906370a082319060240160206040518083038186803b1580156107e257600080fd5b505afa1580156107f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081a9190611e3d565b60006040518663ffffffff1660e01b815260040161083c959493929190611f15565b6040805180830381600087803b15801561085557600080fd5b505af1158015610869573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061088d9190611e55565b915061049d9050836108a2620186a084611fc0565b61183f565b6108b133826118dc565b50565b60006108bf8261169a565b60405163097da6d360e41b815273f5bce5077908a1b7370b9ae04adc565ebd643966906397da6d309061091890738798249c2e607446efb7ad49ec89dd1865ff42729030908190600090620186a08a0490600401611f15565b6040805180830381600087803b15801561093157600080fd5b505af1158015610945573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109699190611e55565b506040516367dfd4c960e01b815260048101829052909150738798249c2e607446efb7ad49ec89dd1865ff4272906367dfd4c990602401600060405180830381600087803b1580156109ba57600080fd5b505af11580156109ce573d6000803e3d6000fd5b50506040516370a0823160e01b8152306004820152736b3595068778dd592e39a122f4f5a5cf09c90fe2925063a9059cbb9150859083906370a082319060240160206040518083038186803b158015610a2657600080fd5b505afa158015610a3a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a5e9190611e3d565b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401602060405180830381600087803b158015610aa457600080fd5b505af1158015610ab8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610adc9190611d74565b5092915050565b6000438210610b4c5760405162461bcd60e51b815260206004820152602a60248201527f4d656f777368693a3a6765745072696f72566f7465733a206e6f74207965742060448201526919195d195c9b5a5b995960b21b60648201526084015b60405180910390fd5b6001600160a01b03831660009081526006602052604090205463ffffffff1680610b7a57600091505061049d565b6001600160a01b038416600090815260056020908152604080832063ffffffff600019860181168552925290912054168310610be9576001600160a01b03841660009081526005602090815260408083206000199490940163ffffffff1683529290522060010154905061049d565b6001600160a01b038416600090815260056020908152604080832083805290915290205463ffffffff16831015610c2457600091505061049d565b600060001982015b8163ffffffff168163ffffffff161115610cd8576000600263ffffffff848403166001600160a01b038916600090815260056020908152604080832094909304860363ffffffff8181168452948252918390208351808501909452805490941680845260019094015490830152925090871415610cb35760200151945061049d9350505050565b805163ffffffff16871115610cca57819350610cd1565b6001820392505b5050610c2c565b506001600160a01b038516600090815260056020908152604080832063ffffffff9094168352929052206001015491505092915050565b33600090815260026020526040812080548391908390610d30908490611fdf565b90915550506001600160a01b038084166000818152600260209081526040808320805488019055338352600490915280822054928252902054610d7892918216911684611713565b6040518281526001600160a01b03841690339060008051602061204f83398151915290602001610491565b60608167ffffffffffffffff811115610dcc57634e487b7160e01b600052604160045260246000fd5b604051908082528060200260200182016040528015610dff57816020015b6060815260200190600190039081610dea5790505b50905060005b82811015610adc5760008030868685818110610e3157634e487b7160e01b600052603260045260246000fd5b9050602002810190610e439190611f5c565b604051610e51929190611ea4565b600060405180830381855af49150503d8060008114610e8c576040519150601f19603f3d011682016040523d82523d6000602084013e610e91565b606091505b509150915081610edd57604481511015610eaa57600080fd5b60048101905080806020019051810190610ec49190611d94565b60405162461bcd60e51b8152600401610b439190611f49565b80848481518110610efe57634e487b7160e01b600052603260045260246000fd5b60209081029190910101525050600101610e05565b6001600160a01b03811660009081526006602052604081205463ffffffff1680610f3e576000610f70565b6001600160a01b038316600090815260056020908152604080832063ffffffff60001986011684529091529020600101545b9392505050565b60408051808201825260078152664d656f7773686960c81b60209182015281517f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a866818301527fb2519001d922cc8f01da040a1ebf40356f395758595af77f4a075390db7ffeeb81840152466060820152306080808301919091528351808303909101815260a0820184528051908301207fe48329057bfd03d55e49b547132e39cffd9c1820ad7b9d4c5307691425d15adf60c08301526001600160a01b038a1660e083015261010082018990526101208083018990528451808403909101815261014083019094528351939092019290922061190160f01b6101608401526101628301829052610182830181905290916000906101a20160408051601f198184030181528282528051602091820120600080855291840180845281905260ff8a169284019290925260608301889052608083018790529092509060019060a0016020604051602081039080840390855afa1580156110f9573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661116e5760405162461bcd60e51b815260206004820152602960248201527f4d656f777368693a3a64656c656761746542795369673a20696e76616c6964206044820152687369676e617475726560b81b6064820152608401610b43565b6001600160a01b038116600090815260036020526040902080546001810190915589146111eb5760405162461bcd60e51b815260206004820152602560248201527f4d656f777368693a3a64656c656761746542795369673a20696e76616c6964206044820152646e6f6e636560d81b6064820152608401610b43565b8742111561124d5760405162461bcd60e51b815260206004820152602960248201527f4d656f777368693a3a64656c656761746542795369673a207369676e617475726044820152681948195e1c1a5c995960ba1b6064820152608401610b43565b611257818b6118dc565b505050505b505050505050565b60408051808201825260078152664d656f7773686960c81b60209182015281517f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a866818301527fb2519001d922cc8f01da040a1ebf40356f395758595af77f4a075390db7ffeeb81840152466060820152306080808301919091528351808303909101815260a0820184528051908301206001600160a01b038b81166000818152600386528681208054600181019091557f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960c087015260e0860192909252918c1661010085015261012084018b90526101408401526101608084018a90528551808503909101815261018084019095528451949093019390932061190160f01b6101a08301526101a282018490526101c2820181905291906101e20160408051601f198184030181528282528051602091820120600080855291840180845281905260ff8a169284019290925260608301889052608083018790529092509060019060a0016020604051602081039080840390855afa15801561140b573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b0381166114795760405162461bcd60e51b815260206004820152602260248201527f4d656f777368693a3a7065726d69743a20696e76616c6964207369676e617475604482015261726560f01b6064820152608401610b43565b8a6001600160a01b0316816001600160a01b0316146114da5760405162461bcd60e51b815260206004820152601d60248201527f4d656f777368693a3a7065726d69743a20756e617574686f72697a65640000006044820152606401610b43565b505050844211156115385760405162461bcd60e51b815260206004820152602260248201527f4d656f777368693a3a7065726d69743a207369676e6174757265206578706972604482015261195960f21b6064820152608401610b43565b6001600160a01b038881166000818152600160209081526040808320948c16808452948252918290208a905590518981527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35050505050505050565b6040516323b872dd60e01b815233600482015273f5bce5077908a1b7370b9ae04adc565ebd643966602482015260448101829052600090738798249c2e607446efb7ad49ec89dd1865ff4272906323b872dd90606401602060405180830381600087803b15801561160e57600080fd5b505af1158015611622573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116469190611d74565b5060405162ae511b60e21b815273f5bce5077908a1b7370b9ae04adc565ebd643966906302b9446c9061083c90738798249c2e607446efb7ad49ec89dd1865ff427290849030908890600090600401611f15565b33600090815260026020526040812080548392906116b9908490611fdf565b9091555050600080548290038155338152600460205260408120546116ea916001600160a01b039091169083611713565b604051818152600090339060008051602061204f8339815191529060200160405180910390a350565b816001600160a01b0316836001600160a01b0316141580156117355750600081115b1561183a576001600160a01b038316156117bc576001600160a01b03831660009081526006602052604081205463ffffffff1690816117755760006117a7565b6001600160a01b038516600090815260056020908152604080832063ffffffff60001987011684529091529020600101545b90508281036117b88684848461195c565b5050505b6001600160a01b0382161561183a576001600160a01b03821660009081526006602052604081205463ffffffff1690816117f7576000611829565b6001600160a01b038416600090815260056020908152604080832063ffffffff60001987011684529091529020600101545b905082810161125c8584848461195c565b505050565b6001600160a01b03821660009081526002602052604081208054839290611867908490611fa8565b925050819055508060008082825461187f9190611fa8565b90915550506001600160a01b038083166000908152600460205260408120546118a9921683611713565b6040518181526001600160a01b0383169060009060008051602061204f8339815191529060200160405180910390a35050565b6001600160a01b03808316600081815260046020818152604080842080546002845282862054949093528787166001600160a01b03198416811790915590519190951694919391928592917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f9190a4611956828483611713565b50505050565b600061196743611aa9565b905060008463ffffffff161180156119b057506001600160a01b038516600090815260056020908152604080832063ffffffff6000198901811685529252909120548282169116145b156119ed576001600160a01b038516600090815260056020908152604080832063ffffffff60001989011684529091529020600101829055611a5e565b60408051808201825263ffffffff808416825260208083018681526001600160a01b038a166000818152600584528681208b8616825284528681209551865490861663ffffffff19918216178755925160019687015590815260069092529390208054928801909116919092161790555b60408051848152602081018490526001600160a01b038716917fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724910160405180910390a25050505050565b60006401000000008210611b255760405162461bcd60e51b815260206004820152603760248201527f4d656f777368693a3a5f7772697465436865636b706f696e743a20626c6f636b60448201527f206e756d626572206578636565647320333220626974730000000000000000006064820152608401610b43565b5090565b80356001600160a01b0381168114611b4057600080fd5b919050565b803560ff81168114611b4057600080fd5b600060208284031215611b67578081fd5b610f7082611b29565b60008060408385031215611b82578081fd5b611b8b83611b29565b9150611b9960208401611b29565b90509250929050565b600080600060608486031215611bb6578081fd5b611bbf84611b29565b9250611bcd60208501611b29565b9150604084013590509250925092565b600080600080600080600060e0888a031215611bf7578283fd5b611c0088611b29565b9650611c0e60208901611b29565b95506040880135945060608801359350611c2a60808901611b45565b925060a0880135915060c0880135905092959891949750929550565b60008060408385031215611c58578182fd5b611c6183611b29565b946020939093013593505050565b60008060008060008060c08789031215611c87578182fd5b611c9087611b29565b95506020870135945060408701359350611cac60608801611b45565b92506080870135915060a087013590509295509295509295565b60008060408385031215611cd8578182fd5b611ce183611b29565b9150602083013563ffffffff81168114611cf9578182fd5b809150509250929050565b60008060208385031215611d16578182fd5b823567ffffffffffffffff80821115611d2d578384fd5b818501915085601f830112611d40578384fd5b813581811115611d4e578485fd5b8660208260051b8501011115611d62578485fd5b60209290920196919550909350505050565b600060208284031215611d85578081fd5b81518015158114610f70578182fd5b600060208284031215611da5578081fd5b815167ffffffffffffffff80821115611dbc578283fd5b818401915084601f830112611dcf578283fd5b815181811115611de157611de1612038565b604051601f8201601f19908116603f01168101908382118183101715611e0957611e09612038565b81604052828152876020848701011115611e21578586fd5b611e32836020830160208801611ff6565b979650505050505050565b600060208284031215611e4e578081fd5b5051919050565b60008060408385031215611e67578182fd5b505080516020909101519092909150565b60008151808452611e90816020860160208601611ff6565b601f01601f19169290920160200192915050565b8183823760009101908152919050565b6000602080830181845280855180835260408601915060408160051b8701019250838701855b82811015611f0857603f19888603018452611ef6858351611e78565b94509285019290850190600101611eda565b5092979650505050505050565b6001600160a01b03958616815293851660208501529190931660408301526060820192909252608081019190915260a00190565b602081526000610f706020830184611e78565b6000808335601e19843603018112611f72578283fd5b83018035915067ffffffffffffffff821115611f8c578283fd5b602001915036819003821315611fa157600080fd5b9250929050565b60008219821115611fbb57611fbb612022565b500190565b6000816000190483118215151615611fda57611fda612022565b500290565b600082821015611ff157611ff1612022565b500390565b60005b83811015612011578181015183820152602001611ff9565b838111156119565750506000910152565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122035b0fe5adbdae498498519145e816863e43ce263ac09956b745a7b88ea999a1f64736f6c63430008040033

Deployed Bytecode Sourcemap

1375:15284:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1787:39;;;;;;;;;;;;;;;-1:-1:-1;;;1787:39:0;;;;;;;;;;;;:::i;:::-;;;;;;;;7195:207;;;;;;:::i;:::-;;:::i;:::-;;;8131:14:1;;8124:22;8106:41;;8094:2;8079:18;7195:207:0;8061:92:1;2003:26:0;;;;;;;;;14702:25:1;;;14690:2;14675:18;2003:26:0;14657:76:1;5006:230:0;;;;;;:::i;:::-;;:::i;9620:435::-;;;;;;:::i;:::-;;:::i;1878:35::-;;1911:2;1878:35;;;;;15628:4:1;15616:17;;;15598:36;;15586:2;15571:18;1878:35:0;15553:87:1;5343:380:0;;;;;;:::i;:::-;;:::i;2423:44::-;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;2423:44:0;;;;;;-1:-1:-1;;;;;6455:32:1;;;6437:51;;6425:2;6410:18;2423:44:0;6392:102:1;10271:104:0;;;;;;:::i;:::-;;:::i;:::-;;5805:365;;;;;;:::i;:::-;;:::i;2685:48::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15165:10:1;15153:23;;;15135:42;;15123:2;15108:18;2685:48:0;15090:93:1;2212:44:0;;;;;;:::i;:::-;;;;;;;;;;;;;;12755:1133;;;;;;:::i;:::-;;:::i;2321:41::-;;;;;;:::i;:::-;;;;;;;;;;;;;;1833:38;;;;;;;;;;;;;;;-1:-1:-1;;;1833:38:0;;;;;8997:308;;;;;;:::i;:::-;;:::i;15928:551::-;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;12092:235::-;;;;;;:::i;:::-;;:::i;10805:830::-;;;;;;:::i;:::-;;:::i;7887:872::-;;;;;;:::i;:::-;;:::i;2098:64::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;4590:333;;;;;;:::i;:::-;;:::i;2549:68::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15390:10:1;15378:23;;;15360:42;;15433:2;15418:18;;15411:34;;;;15333:18;2549:68:0;15315:136:1;7195:207:0;7290:10;7263:4;7280:21;;;:9;:21;;;;;;;;-1:-1:-1;;;;;7280:30:0;;;;;;;;;;:39;;;7335:37;7263:4;;7280:30;;7335:37;;;;7313:6;14702:25:1;;14690:2;14675:18;;14657:76;7335:37:0;;;;;;;;-1:-1:-1;7390:4:0;7195:207;;;;;:::o;5006:230::-;5068:17;5098:16;5107:6;5098:8;:16::i;:::-;5152:75;;-1:-1:-1;;;5152:75:0;;1446:42;;5152:14;;:75;;1685:42;;5193:4;;5200:2;;5204:1;;1950:7;5207:19;;;5152:75;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5136:91:0;5006:230;-1:-1:-1;;;5006:230:0:o;9620:435::-;-1:-1:-1;;;;;9723:15:0;;9702:4;9723:15;;;:9;:15;;;;;;;;9739:10;9723:27;;;;;;;;-1:-1:-1;;9723:48:0;9719:118;;-1:-1:-1;;;;;9788:15:0;;;;;;:9;:15;;;;;;;;9804:10;9788:27;;;;;;;:37;;9819:6;;9788:15;:37;;9819:6;;9788:37;:::i;:::-;;;;-1:-1:-1;;9719:118:0;-1:-1:-1;;;;;9847:15:0;;;;;;:9;:15;;;;;:25;;9866:6;;9847:15;:25;;9866:6;;9847:25;:::i;:::-;;;;-1:-1:-1;;;;;;;9894:13:0;;;;;;;:9;:13;;;;;;;;:23;;;;;;9944:15;;;;;:9;:15;;;;;;;9961:13;;;;;;9929:54;;9944:15;;;;9961:13;9911:6;9929:14;:54::i;:::-;10014:2;-1:-1:-1;;;;;9999:26:0;10008:4;-1:-1:-1;;;;;9999:26:0;-1:-1:-1;;;;;;;;;;;10018:6:0;9999:26;;;;14702:25:1;;14690:2;14675:18;;14657:76;9999:26:0;;;;;;;;-1:-1:-1;10043:4:0;9620:435;;;;;:::o;5343:380::-;5435:58;;-1:-1:-1;;;5435:58:0;;5459:10;5435:58;;;6739:34:1;5479:4:0;6789:18:1;;;6782:43;6841:18;;;6834:34;;;5408:14:0;;1573:42;;5435:23;;6674:18:1;;5435:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;5504:33:0;;-1:-1:-1;;;5504:33:0;;;;;14702:25:1;;;1685:42:0;;5504:25;;14675:18:1;;5504:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5623:44:0;;-1:-1:-1;;;5623:44:0;;5601:4;5623:44;;;6437:51:1;;;1446:42:0;;-1:-1:-1;5561:13:0;;-1:-1:-1;1685:42:0;;5601:4;;1685:42;;5623:29;;6410:18:1;;5623:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5669:1;5561:110;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5548:123;-1:-1:-1;5682:33:0;;-1:-1:-1;5691:2:0;5695:19;1950:7;5548:123;5695:19;:::i;:::-;5682:8;:33::i;10271:104::-;10335:32;10345:10;10357:9;10335;:32::i;:::-;10271:104;:::o;5805:365::-;5872:17;5902:16;5911:6;5902:8;:16::i;:::-;5956:86;;-1:-1:-1;;;5956:86:0;;1446:42;;5956:14;;:86;;1685:42;;5997:4;;;;6019:1;;1950:7;6022:19;;;5956:86;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6054:36:0;;-1:-1:-1;;;6054:36:0;;;;;14702:25:1;;;5940:102:0;;-1:-1:-1;1685:42:0;;6054:25;;14675:18:1;;6054:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6125:35:0;;-1:-1:-1;;;6125:35:0;;6154:4;6125:35;;;6437:51:1;1573:42:0;;-1:-1:-1;6101:19:0;;-1:-1:-1;6121:2:0;;1573:42;;6125:20;;6410:18:1;;6125:35:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6101:60;;-1:-1:-1;;;;;;6101:60:0;;;;;;;-1:-1:-1;;;;;7071:32:1;;;6101:60:0;;;7053:51:1;7120:18;;;7113:34;7026:18;;6101:60:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5805:365;;;;:::o;12755:1133::-;12839:7;12881:12;12867:11;:26;12859:81;;;;-1:-1:-1;;;12859:81:0;;12360:2:1;12859:81:0;;;12342:21:1;12399:2;12379:18;;;12372:30;12438:34;12418:18;;;12411:62;-1:-1:-1;;;12489:18:1;;;12482:40;12539:19;;12859:81:0;;;;;;;;;-1:-1:-1;;;;;12973:23:0;;12951:19;12973:23;;;:14;:23;;;;;;;;13011:17;13007:34;;13038:1;13031:8;;;;;13007:34;-1:-1:-1;;;;;13126:20:0;;;;;;:11;:20;;;;;;;;:38;-1:-1:-1;;13147:16:0;;13126:38;;;;;;;;;:48;;:63;-1:-1:-1;13122:123:0;;-1:-1:-1;;;;;13199:20:0;;;;;;:11;:20;;;;;;;;-1:-1:-1;;13220:16:0;;;;13199:38;;;;;;;;13235:1;13199:44;;;-1:-1:-1;13192:51:0;;13122:123;-1:-1:-1;;;;;13310:20:0;;;;;;:11;:20;;;;;;;;:23;;;;;;;;:33;:23;:33;:47;-1:-1:-1;13306:64:0;;;13367:1;13360:8;;;;;13306:64;13380:12;-1:-1:-1;;13422:16:0;;13449:380;13464:5;13456:13;;:5;:13;;;13449:380;;;13486:13;13528:1;13510:19;13511:13;;;13510:19;-1:-1:-1;;;;;13588:20:0;;13565;13588;;;:11;:20;;;;;;;;13510:19;;;;13502:27;;13588:28;;;;;;;;;;;;;13565:51;;;;;;;;;;;;;;;;;;;;;;;;;13502:27;-1:-1:-1;13565:51:0;13635:27;;13631:197;;;13690:8;;;;-1:-1:-1;13683:15:0;;-1:-1:-1;;;;13683:15:0;13631:197;13724:12;;:26;;;-1:-1:-1;13720:108:0;;;13779:6;13771:14;;13720:108;;;13825:1;13816:6;:10;13808:18;;13720:108;13449:380;;;;;-1:-1:-1;;;;;;13846:20:0;;;;;;:11;:20;;;;;;;;:27;;;;;;;;;;:33;;;;-1:-1:-1;;12755:1133:0;;;;:::o;8997:308::-;9088:10;9061:4;9078:21;;;:9;:21;;;;;:31;;9103:6;;9078:21;9061:4;;9078:31;;9103:6;;9078:31;:::i;:::-;;;;-1:-1:-1;;;;;;;9132:13:0;;;;;;;:9;:13;;;;;;;;:23;;;;;;9192:10;9182:21;;:9;:21;;;;;;;9205:13;;;;;;9167:60;;9182:21;;;;9205:13;9149:6;9167:14;:60::i;:::-;9243:32;;14702:25:1;;;-1:-1:-1;;;;;9243:32:0;;;9252:10;;-1:-1:-1;;;;;;;;;;;9243:32:0;14690:2:1;14675:18;9243:32:0;14657:76:1;15928:551:0;15988:22;16045:4;16033:24;;;;;;-1:-1:-1;;;16033:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16023:34;;16094:9;16089:382;16109:15;;;16089:382;;;16147:12;;16192:4;16211;;16216:1;16211:7;;;;;-1:-1:-1;;;16211:7:0;;;;;;;;;;;;;;;;;;;;:::i;:::-;16184:35;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16146:73;;;;16239:7;16234:192;;16287:2;16271:6;:13;:18;16267:32;;;16291:8;;;16267:32;16350:4;16342:6;16338:17;16328:27;;16392:6;16381:28;;;;;;;;;;;;:::i;:::-;16374:36;;-1:-1:-1;;;16374:36:0;;;;;;;;:::i;16234:192::-;16453:6;16440:7;16448:1;16440:10;;;;;;-1:-1:-1;;;16440:10:0;;;;;;;;;;;;;;;;;;:19;-1:-1:-1;;16126:3:0;;16089:382;;12092:235;-1:-1:-1;;;;;12210:23:0;;12157:7;12210:23;;;:14;:23;;;;;;;;12251:16;:67;;12317:1;12251:67;;;-1:-1:-1;;;;;12270:20:0;;;;;;:11;:20;;;;;;;;:38;-1:-1:-1;;12291:16:0;;12270:38;;;;;;;;12306:1;12270:44;;12251:67;12244:74;12092:235;-1:-1:-1;;;12092:235:0:o;10805:830::-;11009:4;;;;;;;;;;;-1:-1:-1;;;11009:4:0;;;;;10965:80;;2841;10965;;;9407:25:1;10993:22:0;9448:18:1;;;9441:34;11861:9:0;9491:18:1;;;9484:34;11039:4:0;9534:18:1;;;;9527:60;;;;10965:80:0;;;;;;;;;;9379:19:1;;;10965:80:0;;10955:91;;;;;;3053:71;11088:57;;;8985:25:1;-1:-1:-1;;;;;9046:32:1;;9026:18;;;9019:60;9095:18;;;9088:34;;;9138:18;;;;9131:34;;;11088:57:0;;;;;;;;;;8957:19:1;;;11088:57:0;;;11078:68;;;;;;;;;;-1:-1:-1;;;11184:57:0;;;6152:27:1;6195:11;;;6188:27;;;6231:12;;;6224:28;;;10955:91:0;;-1:-1:-1;;6268:12:1;;11184:57:0;;;-1:-1:-1;;11184:57:0;;;;;;;;;11174:68;;11184:57;11174:68;;;;11253:17;11273:26;;;;;;;;;9825:25:1;;;9898:4;9886:17;;9866:18;;;9859:45;;;;9920:18;;;9913:34;;;9963:18;;;9956:34;;;11174:68:0;;-1:-1:-1;11253:17:0;11273:26;;9797:19:1;;11273:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;11273:26:0;;-1:-1:-1;;11273:26:0;;;-1:-1:-1;;;;;;;11318:23:0;;11310:77;;;;-1:-1:-1;;;11310:77:0;;13938:2:1;11310:77:0;;;13920:21:1;13977:2;13957:18;;;13950:30;14016:34;13996:18;;;13989:62;-1:-1:-1;;;14067:18:1;;;14060:39;14116:19;;11310:77:0;13910:231:1;11310:77:0;-1:-1:-1;;;;;11426:17:0;;;;;;:6;:17;;;;;:19;;;;;;;;11417:28;;11409:78;;;;-1:-1:-1;;;11409:78:0;;13532:2:1;11409:78:0;;;13514:21:1;13571:2;13551:18;;;13544:30;13610:34;13590:18;;;13583:62;-1:-1:-1;;;13661:18:1;;;13654:35;13706:19;;11409:78:0;13504:227:1;11409:78:0;11526:6;11507:15;:25;;11499:79;;;;-1:-1:-1;;;11499:79:0;;14348:2:1;11499:79:0;;;14330:21:1;14387:2;14367:18;;;14360:30;14426:34;14406:18;;;14399:62;-1:-1:-1;;;14477:18:1;;;14470:39;14526:19;;11499:79:0;14320:231:1;11499:79:0;11596:31;11606:9;11617;11596;:31::i;:::-;11589:38;;;;10805:830;;;;;;;:::o;7887:872::-;8097:4;;;;;;;;;;;-1:-1:-1;;;8097:4:0;;;;;8053:80;;2841;8053;;;9407:25:1;8081:22:0;9448:18:1;;;9441:34;11861:9:0;9491:18:1;;;9484:34;8127:4:0;9534:18:1;;;;9527:60;;;;8053:80:0;;;;;;;;;;9379:19:1;;;8053:80:0;;8043:91;;;;;;-1:-1:-1;;;;;8239:13:0;;;-1:-1:-1;8239:13:0;;;:6;:13;;;;;:15;;;;;;;;3248:95;8187:78;;;8445:25:1;8524:18;;;8517:43;;;;8596:15;;;8576:18;;;8569:43;8628:18;;;8621:34;;;8671:19;;;8664:35;8715:19;;;;8708:35;;;8187:78:0;;;;;;;;;;8417:19:1;;;8187:78:0;;;8177:89;;;;;;;;;;-1:-1:-1;;;8304:57:0;;;6152:27:1;6195:11;;;6188:27;;;6231:12;;;6224:28;;;8177:89:0;-1:-1:-1;6268:12:1;;8304:57:0;;;-1:-1:-1;;8304:57:0;;;;;;;;;8294:68;;8304:57;8294:68;;;;8373:17;8393:26;;;;;;;;;9825:25:1;;;9898:4;9886:17;;9866:18;;;9859:45;;;;9920:18;;;9913:34;;;9963:18;;;9956:34;;;8294:68:0;;-1:-1:-1;8373:17:0;8393:26;;9797:19:1;;8393:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8393:26:0;;-1:-1:-1;;8393:26:0;;;-1:-1:-1;;;;;;;8439:23:0;;8431:70;;;;-1:-1:-1;;;8431:70:0;;12771:2:1;8431:70:0;;;12753:21:1;12810:2;12790:18;;;12783:30;12849:34;12829:18;;;12822:62;-1:-1:-1;;;12900:18:1;;;12893:32;12942:19;;8431:70:0;12743:224:1;8431:70:0;8533:5;-1:-1:-1;;;;;8520:18:0;:9;-1:-1:-1;;;;;8520:18:0;;8512:60;;;;-1:-1:-1;;;8512:60:0;;13174:2:1;8512:60:0;;;13156:21:1;13213:2;13193:18;;;13186:30;13252:31;13232:18;;;13225:59;13301:18;;8512:60:0;13146:179:1;8512:60:0;7887:872;;;8611:8;8592:15;:27;;8584:74;;;;-1:-1:-1;;;8584:74:0;;11533:2:1;8584:74:0;;;11515:21:1;11572:2;11552:18;;;11545:30;11611:34;11591:18;;;11584:62;-1:-1:-1;;;11662:18:1;;;11655:32;11704:19;;8584:74:0;11505:224:1;8584:74:0;-1:-1:-1;;;;;8669:16:0;;;;;;;:9;:16;;;;;;;;:25;;;;;;;;;;;;;:34;;;8719:32;;14702:25:1;;;8719:32:0;;14675:18:1;8719:32:0;;;;;;;7887:872;;;;;;;;:::o;4590:333::-;4677:68;;-1:-1:-1;;;4677:68:0;;4710:10;4677:68;;;6739:34:1;1446:42:0;6789:18:1;;;6782:43;6841:18;;;6834:34;;;4650:14:0;;1685:42;;4677:32;;6674:18:1;;4677:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;4798:73:0;;-1:-1:-1;;;4798:73:0;;1446:42;;4798:13;;:73;;1685:42;;1446;;4854:4;;4861:6;;4869:1;;4798:73;;;:::i;6557:260::-;6620:10;6610:21;;;;:9;:21;;;;;:31;;6635:6;;6610:21;:31;;6635:6;;6610:31;:::i;:::-;;;;-1:-1:-1;;6663:11:0;:21;;;;;;;6721:10;6711:21;;:9;:21;;;;;;6696:57;;-1:-1:-1;;;;;6711:21:0;;;;6663;6696:14;:57::i;:::-;6769:40;;14702:25:1;;;6798:1:0;;6778:10;;-1:-1:-1;;;;;;;;;;;6769:40:0;14690:2:1;14675:18;6769:40:0;;;;;;;6557:260;:::o;14347:864::-;14473:6;-1:-1:-1;;;;;14463:16:0;:6;-1:-1:-1;;;;;14463:16:0;;;:30;;;;;14492:1;14483:6;:10;14463:30;14459:744;;;-1:-1:-1;;;;;14514:20:0;;;14510:334;;-1:-1:-1;;;;;14574:22:0;;14555:16;14574:22;;;:14;:22;;;;;;;;;14635:13;:60;;14694:1;14635:60;;;-1:-1:-1;;;;;14651:19:0;;;;;;:11;:19;;;;;;;;:34;-1:-1:-1;;14671:13:0;;14651:34;;;;;;;;14683:1;14651:40;;14635:60;14615:80;-1:-1:-1;14734:18:0;;;14771:57;14788:6;14796:9;14615:80;14734:18;14771:16;:57::i;:::-;14510:334;;;;-1:-1:-1;;;;;14862:20:0;;;14858:334;;-1:-1:-1;;;;;14922:22:0;;14903:16;14922:22;;;:14;:22;;;;;;;;;14983:13;:60;;15042:1;14983:60;;;-1:-1:-1;;;;;14999:19:0;;;;;;:11;:19;;;;;;;;:34;-1:-1:-1;;15019:13:0;;14999:34;;;;;;;;15031:1;14999:40;;14983:60;14963:80;-1:-1:-1;15082:18:0;;;15119:57;15136:6;15144:9;14963:80;15082:18;15119:16;:57::i;14858:334::-;14347:864;;;:::o;6255:236::-;-1:-1:-1;;;;;6320:13:0;;;;;;:9;:13;;;;;:23;;6337:6;;6320:13;:23;;6337:6;;6320:23;:::i;:::-;;;;;;;;6369:6;6354:11;;:21;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;6413:13:0;;;6409:1;6413:13;;;:9;:13;;;;;;6386:49;;6413:13;6428:6;6386:14;:49::i;:::-;6451:32;;14702:25:1;;;-1:-1:-1;;;;;6451:32:0;;;6468:1;;-1:-1:-1;;;;;;;;;;;6451:32:0;14690:2:1;14675:18;6451:32:0;;;;;;;6255:236;;:::o;13966:373::-;-1:-1:-1;;;;;14068:20:0;;;14042:23;14068:20;;;:9;:20;;;;;;;;;;14127:9;:20;;;;;;14158;;;;:32;;;-1:-1:-1;;;;;;14158:32:0;;;;;;;14206:54;;14068:20;;;;;14127;;14158:32;;14068:20;;;14206:54;;14042:23;14206:54;14271:60;14286:15;14303:9;14314:16;14271:14;:60::i;:::-;13966:373;;;;:::o;15223:608::-;15344:18;15365:20;15372:12;15365:6;:20::i;:::-;15344:41;;15436:1;15421:12;:16;;;:85;;;;-1:-1:-1;;;;;;15441:22:0;;;;;;:11;:22;;;;;;;;:65;-1:-1:-1;;15464:16:0;;15441:40;;;;;;;;;:50;:65;;;:50;;:65;15421:85;15417:339;;;-1:-1:-1;;;;;15523:22:0;;;;;;:11;:22;;;;;;;;:40;-1:-1:-1;;15546:16:0;;15523:40;;;;;;;;15561:1;15523:46;:57;;;15417:339;;;15652:33;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15613:22:0;;-1:-1:-1;15613:22:0;;;:11;:22;;;;;:36;;;;;;;;;;:72;;;;;;;-1:-1:-1;;15613:72:0;;;;;;;;;;;;;15700:25;;;:14;:25;;;;;;:44;;15728:16;;;15700:44;;;;;;;;;;15417:339;15772:51;;;14912:25:1;;;14968:2;14953:18;;14946:34;;;-1:-1:-1;;;;;15772:51:0;;;;;14885:18:1;15772:51:0;;;;;;;15223:608;;;;;:::o;16491:165::-;16540:6;16571:5;16567:1;:9;16559:77;;;;-1:-1:-1;;;16559:77:0;;11936:2:1;16559:77:0;;;11918:21:1;11975:2;11955:18;;;11948:30;12014:34;11994:18;;;11987:62;12085:25;12065:18;;;12058:53;12128:19;;16559:77:0;11908:245:1;16559:77:0;-1:-1:-1;16652:1:0;16491:165::o;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:2;;177:1;174;167:12;111:2;63:124;;;:::o;192:156::-;258:20;;318:4;307:16;;297:27;;287:2;;338:1;335;328:12;353:196;412:6;465:2;453:9;444:7;440:23;436:32;433:2;;;486:6;478;471:22;433:2;514:29;533:9;514:29;:::i;554:270::-;622:6;630;683:2;671:9;662:7;658:23;654:32;651:2;;;704:6;696;689:22;651:2;732:29;751:9;732:29;:::i;:::-;722:39;;780:38;814:2;803:9;799:18;780:38;:::i;:::-;770:48;;641:183;;;;;:::o;829:338::-;906:6;914;922;975:2;963:9;954:7;950:23;946:32;943:2;;;996:6;988;981:22;943:2;1024:29;1043:9;1024:29;:::i;:::-;1014:39;;1072:38;1106:2;1095:9;1091:18;1072:38;:::i;:::-;1062:48;;1157:2;1146:9;1142:18;1129:32;1119:42;;933:234;;;;;:::o;1172:616::-;1283:6;1291;1299;1307;1315;1323;1331;1384:3;1372:9;1363:7;1359:23;1355:33;1352:2;;;1406:6;1398;1391:22;1352:2;1434:29;1453:9;1434:29;:::i;:::-;1424:39;;1482:38;1516:2;1505:9;1501:18;1482:38;:::i;:::-;1472:48;;1567:2;1556:9;1552:18;1539:32;1529:42;;1618:2;1607:9;1603:18;1590:32;1580:42;;1641:37;1673:3;1662:9;1658:19;1641:37;:::i;:::-;1631:47;;1725:3;1714:9;1710:19;1697:33;1687:43;;1777:3;1766:9;1762:19;1749:33;1739:43;;1342:446;;;;;;;;;;:::o;1793:264::-;1861:6;1869;1922:2;1910:9;1901:7;1897:23;1893:32;1890:2;;;1943:6;1935;1928:22;1890:2;1971:29;1990:9;1971:29;:::i;:::-;1961:39;2047:2;2032:18;;;;2019:32;;-1:-1:-1;;;1880:177:1:o;2062:541::-;2164:6;2172;2180;2188;2196;2204;2257:3;2245:9;2236:7;2232:23;2228:33;2225:2;;;2279:6;2271;2264:22;2225:2;2307:29;2326:9;2307:29;:::i;:::-;2297:39;;2383:2;2372:9;2368:18;2355:32;2345:42;;2434:2;2423:9;2419:18;2406:32;2396:42;;2457:36;2489:2;2478:9;2474:18;2457:36;:::i;:::-;2447:46;;2540:3;2529:9;2525:19;2512:33;2502:43;;2592:3;2581:9;2577:19;2564:33;2554:43;;2215:388;;;;;;;;:::o;2608:370::-;2675:6;2683;2736:2;2724:9;2715:7;2711:23;2707:32;2704:2;;;2757:6;2749;2742:22;2704:2;2785:29;2804:9;2785:29;:::i;:::-;2775:39;;2864:2;2853:9;2849:18;2836:32;2908:10;2901:5;2897:22;2890:5;2887:33;2877:2;;2939:6;2931;2924:22;2877:2;2967:5;2957:15;;;2694:284;;;;;:::o;2983:676::-;3080:6;3088;3141:2;3129:9;3120:7;3116:23;3112:32;3109:2;;;3162:6;3154;3147:22;3109:2;3207:9;3194:23;3236:18;3277:2;3269:6;3266:14;3263:2;;;3298:6;3290;3283:22;3263:2;3341:6;3330:9;3326:22;3316:32;;3386:7;3379:4;3375:2;3371:13;3367:27;3357:2;;3413:6;3405;3398:22;3357:2;3458;3445:16;3484:2;3476:6;3473:14;3470:2;;;3505:6;3497;3490:22;3470:2;3563:7;3558:2;3548:6;3545:1;3541:14;3537:2;3533:23;3529:32;3526:45;3523:2;;;3589:6;3581;3574:22;3523:2;3625;3617:11;;;;;3647:6;;-1:-1:-1;3099:560:1;;-1:-1:-1;;;;3099:560:1:o;3664:297::-;3731:6;3784:2;3772:9;3763:7;3759:23;3755:32;3752:2;;;3805:6;3797;3790:22;3752:2;3842:9;3836:16;3895:5;3888:13;3881:21;3874:5;3871:32;3861:2;;3922:6;3914;3907:22;3966:924;4046:6;4099:2;4087:9;4078:7;4074:23;4070:32;4067:2;;;4120:6;4112;4105:22;4067:2;4158:9;4152:16;4187:18;4228:2;4220:6;4217:14;4214:2;;;4249:6;4241;4234:22;4214:2;4292:6;4281:9;4277:22;4267:32;;4337:7;4330:4;4326:2;4322:13;4318:27;4308:2;;4364:6;4356;4349:22;4308:2;4398;4392:9;4420:2;4416;4413:10;4410:2;;;4426:18;;:::i;:::-;4501:2;4495:9;4469:2;4555:13;;-1:-1:-1;;4551:22:1;;;4575:2;4547:31;4543:40;4531:53;;;4599:18;;;4619:22;;;4596:46;4593:2;;;4645:18;;:::i;:::-;4685:10;4681:2;4674:22;4720:2;4712:6;4705:18;4760:7;4755:2;4750;4746;4742:11;4738:20;4735:33;4732:2;;;4786:6;4778;4771:22;4732:2;4804:55;4856:2;4851;4843:6;4839:15;4834:2;4830;4826:11;4804:55;:::i;:::-;4878:6;4057:833;-1:-1:-1;;;;;;;4057:833:1:o;4895:194::-;4965:6;5018:2;5006:9;4997:7;4993:23;4989:32;4986:2;;;5039:6;5031;5024:22;4986:2;-1:-1:-1;5067:16:1;;4976:113;-1:-1:-1;4976:113:1:o;5094:255::-;5173:6;5181;5234:2;5222:9;5213:7;5209:23;5205:32;5202:2;;;5255:6;5247;5240:22;5202:2;-1:-1:-1;;5283:16:1;;5339:2;5324:18;;;5318:25;5283:16;;5318:25;;-1:-1:-1;5192:157:1:o;5354:257::-;5395:3;5433:5;5427:12;5460:6;5455:3;5448:19;5476:63;5532:6;5525:4;5520:3;5516:14;5509:4;5502:5;5498:16;5476:63;:::i;:::-;5593:2;5572:15;-1:-1:-1;;5568:29:1;5559:39;;;;5600:4;5555:50;;5403:208;-1:-1:-1;;5403:208:1:o;5616:273::-;5799:6;5791;5786:3;5773:33;5755:3;5825:16;;5850:15;;;5825:16;5763:126;-1:-1:-1;5763:126:1:o;7158:803::-;7318:4;7347:2;7387;7376:9;7372:18;7417:2;7406:9;7399:21;7440:6;7475;7469:13;7506:6;7498;7491:22;7544:2;7533:9;7529:18;7522:25;;7606:2;7596:6;7593:1;7589:14;7578:9;7574:30;7570:39;7556:53;;7644:2;7636:6;7632:15;7665:4;7678:254;7692:6;7689:1;7686:13;7678:254;;;7785:2;7781:7;7769:9;7761:6;7757:22;7753:36;7748:3;7741:49;7813:39;7845:6;7836;7830:13;7813:39;:::i;:::-;7803:49;-1:-1:-1;7910:12:1;;;;7875:15;;;;7714:1;7707:9;7678:254;;;-1:-1:-1;7949:6:1;;7327:634;-1:-1:-1;;;;;;;7327:634:1:o;10001:548::-;-1:-1:-1;;;;;10336:15:1;;;10318:34;;10388:15;;;10383:2;10368:18;;10361:43;10440:15;;;;10435:2;10420:18;;10413:43;10487:2;10472:18;;10465:34;;;;10530:3;10515:19;;10508:35;;;;10267:3;10252:19;;10234:315::o;11107:219::-;11256:2;11245:9;11238:21;11219:4;11276:44;11316:2;11305:9;11301:18;11293:6;11276:44;:::i;15645:533::-;15722:4;15728:6;15788:11;15775:25;15882:2;15878:7;15867:8;15851:14;15847:29;15843:43;15823:18;15819:68;15809:2;;15904:4;15898;15891:18;15809:2;15934:33;;15986:20;;;-1:-1:-1;16029:18:1;16018:30;;16015:2;;;16064:4;16058;16051:18;16015:2;16100:4;16088:17;;-1:-1:-1;16131:14:1;16127:27;;;16117:38;;16114:2;;;16168:1;16165;16158:12;16114:2;15739:439;;;;;:::o;16183:128::-;16223:3;16254:1;16250:6;16247:1;16244:13;16241:2;;;16260:18;;:::i;:::-;-1:-1:-1;16296:9:1;;16231:80::o;16316:168::-;16356:7;16422:1;16418;16414:6;16410:14;16407:1;16404:21;16399:1;16392:9;16385:17;16381:45;16378:2;;;16429:18;;:::i;:::-;-1:-1:-1;16469:9:1;;16368:116::o;16489:125::-;16529:4;16557:1;16554;16551:8;16548:2;;;16562:18;;:::i;:::-;-1:-1:-1;16599:9:1;;16538:76::o;16619:258::-;16691:1;16701:113;16715:6;16712:1;16709:13;16701:113;;;16791:11;;;16785:18;16772:11;;;16765:39;16737:2;16730:10;16701:113;;;16832:6;16829:1;16826:13;16823:2;;;-1:-1:-1;;16867:1:1;16849:16;;16842:27;16672:205::o;16882:127::-;16943:10;16938:3;16934:20;16931:1;16924:31;16974:4;16971:1;16964:15;16998:4;16995:1;16988:15;17014:127;17075:10;17070:3;17066:20;17063:1;17056:31;17106:4;17103:1;17096:15;17130:4;17127:1;17120:15

Swarm Source

ipfs://35b0fe5adbdae498498519145e816863e43ce263ac09956b745a7b88ea999a1f

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

A tool to help SushiSwap users stake their Sushi or xSushi into the BentoBox vault. This token is also given Snapshot voting weight on the sushigov.eth polling application and can be burned to claim combined yields from xSushi 'SushiBar' and BentoBox.

Validator Index Block Amount
View All Withdrawals

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

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