ETH Price: $3,394.71 (+4.27%)
 

Overview

Max Total Supply

1,000,000,000 FRIEND

Holders

142

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
apehardbetmore.eth
Balance
9,830,399.618515265 FRIEND

Value
$0.00
0x2e319D36e246D36C1FDA338E677137045Be14B34
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
FRIEND

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: MIT

/*

    Buy, create, explore & speculate on rooms with friends - $FRIEND Enter space: http://friendroom.space :earth_asia:

    Redefining how friends interact with each other using web3

    • Create, explore, decorate rooms
    • All $FRIEND Uniswap trading tax is distributed to rooms
    • Global chat
    • Room shareholder chat
    • Custom decorations and music in your room
    • Sell and buy shares
    and much much more..

    Web: https://friendroom.space
    X: https://twitter.com/FriendRoom_Web3
    Tg: https://t.me/friendroom_official

 */

pragma solidity 0.8.19;

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

interface IUniswapV2Router {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint defriendine
    ) external returns (uint amountA, uint amountB, uint liquidity);

    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint defriendine
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);

    function swapExactTokensForTokensSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint defriendine
    ) external;

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint defriendine
    ) external payable;

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint defriendine
    ) external;
}

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

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

abstract contract Ownable {
    address internal _owner;

    constructor(address owner) {
        _owner = owner;
    }

    modifier onlyOwner() {
        require(_isOwner(msg.sender), "!OWNER");
        _;
    }

    function _isOwner(address account) internal view returns (bool) {
        return account == _owner;
    }

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

    event OwnershipTransferred(address owner);
}

contract FRIEND is IERC20, Ownable {
    using SafeMath for uint256;

    string private constant _name = "FriendRoom";
    string private constant _symbol = "FRIEND";

    uint8 private constant _decimals = 9;
    uint256 private total_supply = 10 ** 9 * (10 ** _decimals);

    mapping (address => uint256) private balances;
    mapping (address => mapping (address => uint256)) private allowances;
    mapping (address => bool) private _no_taxfee_address;
    mapping (address => bool) private no_max_tx_address;

    uint256 private _taxfee_liq = 0; 
    uint256 private _taxfee_market = 23;
    uint256 private _taxfee_total = _taxfee_liq + _taxfee_market;
    uint256 private denominator = 100;

    modifier lock_swap() { swapping = true; _; swapping = false; }

    bool private swap_enabled = true;
    uint256 private _threshold_min_swap = total_supply / 100000; // 0.1%
    bool private swapping;

    address private router_addr = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    address private dead_address = 0x000000000000000000000000000000000000dEaD;

    uint256 private _max_tx_size = (total_supply * 15) / 1000;
    address private _taxfee_wallet;
    IUniswapV2Router private uniswap_router;
    address private uniswap_pair;

    constructor (address friend_address) Ownable(msg.sender) {
        uniswap_router = IUniswapV2Router(router_addr);
        uniswap_pair = IUniswapV2Factory(uniswap_router.factory()).createPair(uniswap_router.WETH(), address(this));
        allowances[address(this)][address(uniswap_router)] = type(uint256).max;
        _taxfee_wallet = friend_address;
        _no_taxfee_address[_taxfee_wallet] = true;
        no_max_tx_address[_owner] = true;
        no_max_tx_address[_taxfee_wallet] = true;
        no_max_tx_address[dead_address] = true;
        balances[_owner] = total_supply;
        emit Transfer(address(0), _owner, total_supply);
    }
    
    function _should_charge_tax(address sender) internal view returns (bool) {
        return !_no_taxfee_address[sender];
    }
    
    function perform_friend_swap() internal lock_swap {
        uint256 contract_token_balance = balanceOf(address(this));
        uint256 tokens_to_lp = contract_token_balance.mul(_taxfee_liq).div(_taxfee_total).div(2);
        uint256 amount_to_swap = contract_token_balance.sub(tokens_to_lp);

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswap_router.WETH();

        uniswap_router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amount_to_swap,
            0,
            path,
            address(this),
            block.timestamp
        );
        uint256 amount_eth = address(this).balance;
        uint256 total_taxfee_tokens = _taxfee_total.sub(_taxfee_liq.div(2));
        uint256 eth_to_lp = amount_eth.mul(_taxfee_liq).div(total_taxfee_tokens).div(2);
        uint256 eth_to_marketing = amount_eth.mul(_taxfee_market).div(total_taxfee_tokens);

        payable(_taxfee_wallet).transfer(eth_to_marketing);
        if(tokens_to_lp > 0){
            uniswap_router.addLiquidityETH{value: eth_to_lp}(
                address(this),
                tokens_to_lp,
                0,
                0,
                _taxfee_wallet,
                block.timestamp
            );
        }
    }

    function _transfer_from(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(swapping){ return _transfer_basic(sender, recipient, amount); }
        
        if (recipient != uniswap_pair && recipient != dead_address) {
            require(no_max_tx_address[recipient] || balances[recipient] + amount <= _max_tx_size, "Transfer amount exceeds the bag size.");
        }        
        if(_verify_swap_back(sender, recipient, amount)){ 
            perform_friend_swap(); 
        } 
        bool should_tax = _should_charge_tax(sender);
        if (should_tax) {
            balances[recipient] = balances[recipient].add(_sent_amount_(sender, amount));
        } else {
            balances[recipient] = balances[recipient].add(amount);
        }

        emit Transfer(sender, recipient, amount);
        return true;
    }
    
    function approve(address spender, uint256 amount) public override returns (bool) {
        allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function balanceOf(address account) public view override returns (uint256) { return balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return allowances[holder][spender]; }
    
    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transfer_from(msg.sender, recipient, amount);
    }

    receive() external payable { }
                  
    function _verify_swap_back(address sender, address recipient, uint256 amount) private view returns (bool) {
        return _checking_swap() && 
            _should_charge_tax(sender) && 
            _checking_sell_tx(recipient) && 
            amount > _threshold_min_swap;
    }
    
    function _checking_sell_tx(address recipient) private view returns (bool){
        return recipient == uniswap_pair;
    }

    function _checking_swap() internal view returns (bool) {
        return !swapping
        && swap_enabled
        && balances[address(this)] >= _threshold_min_swap;
    }
    
    function adjust_friend_wallet_size(uint256 percent) external onlyOwner {
        _max_tx_size = (total_supply * percent) / 1000;
    }

    function _transfer_basic(address sender, address recipient, uint256 amount) internal returns (bool) {
        balances[sender] = balances[sender].sub(amount, "Insufficient Balance");
        balances[recipient] = balances[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }

    function _sent_amount_(address sender, uint256 amount) internal returns (uint256) {
        balances[sender] = balances[sender].sub(amount, "Insufficient Balance");
        uint256 fee_tokens = amount.mul(_taxfee_total).div(denominator);
        bool has_no_fee = sender == _owner;
        if (has_no_fee) {
            fee_tokens = 0;
        }
        
        balances[address(this)] = balances[address(this)].add(fee_tokens);
        emit Transfer(sender, address(this), fee_tokens);
        return amount.sub(fee_tokens);
    }
    
    function update_friend_tax(uint256 lp_fee, uint256 dev_fee) external onlyOwner {
         _taxfee_liq = lp_fee; 
         _taxfee_market = dev_fee;
         _taxfee_total = _taxfee_liq + _taxfee_market;
    }    

    function totalSupply() external view override returns (uint256) { return total_supply; }
    function decimals() external pure override returns (uint8) { return _decimals; }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if(allowances[sender][msg.sender] != type(uint256).max){
            allowances[sender][msg.sender] = allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }

        return _transfer_from(sender, recipient, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"friend_address","type":"address"}],"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":false,"internalType":"address","name":"owner","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":"uint256","name":"percent","type":"uint256"}],"name":"adjust_friend_wallet_size","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"lp_fee","type":"uint256"},{"internalType":"uint256","name":"dev_fee","type":"uint256"}],"name":"update_friend_tax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126009600a62000496565b6200002290633b9aca00620004ae565b60015560006006819055601760078190556200003e91620004c8565b6008556064600955600a805460ff19166001908117909155546200006790620186a090620004de565b600b55600c8054747a250d5630b4cf539739df2c5dacb4c659f2488d00610100600160a81b0319909116179055600d80546001600160a01b03191661dead1790556001546103e890620000bc90600f620004ae565b620000c89190620004de565b600e55348015620000d857600080fd5b506040516200168638038062001686833981016040819052620000fb9162000501565b600080546001600160a01b03199081163317909155600c54601080549092166101009091046001600160a01b03169081179091556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156200016b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000191919062000501565b6001600160a01b031663c9c65396601060009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000219919062000501565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303816000875af115801562000266573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028c919062000501565b601180546001600160a01b039283166001600160a01b0319918216179091553060009081526003602090815260408083206010548616845282528083206000199055600f805487871695168517815593835260048252808320805460ff1990811660019081179092558454871685526005845282852080548216831790559454861684528184208054861682179055600d54861684528184208054909516811790945592548254851683526002825283832081905582549351908152929093169290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506200052c565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003d8578160001904821115620003bc57620003bc62000381565b80851615620003ca57918102915b93841c93908002906200039c565b509250929050565b600082620003f15750600162000490565b81620004005750600062000490565b8160018114620004195760028114620004245762000444565b600191505062000490565b60ff84111562000438576200043862000381565b50506001821b62000490565b5060208310610133831016604e8410600b841016171562000469575081810a62000490565b62000475838362000397565b80600019048211156200048c576200048c62000381565b0290505b92915050565b6000620004a760ff841683620003e0565b9392505050565b808202811582820484141762000490576200049062000381565b8082018082111562000490576200049062000381565b600082620004fc57634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200051457600080fd5b81516001600160a01b0381168114620004a757600080fd5b61114a806200053c6000396000f3fe6080604052600436106100ab5760003560e01c8063715018a611610064578063715018a6146101bd57806395d89b41146101d4578063a9059cbb14610203578063b342f87f14610223578063dd62ed3e14610243578063f75316d41461028957600080fd5b806306fdde03146100b7578063095ea7b3146100fc57806318160ddd1461012c57806323b872dd1461014b578063313ce5671461016b57806370a082311461018757600080fd5b366100b257005b600080fd5b3480156100c357600080fd5b5060408051808201909152600a815269467269656e64526f6f6d60b01b60208201525b6040516100f39190610e49565b60405180910390f35b34801561010857600080fd5b5061011c610117366004610eaf565b6102a9565b60405190151581526020016100f3565b34801561013857600080fd5b506001545b6040519081526020016100f3565b34801561015757600080fd5b5061011c610166366004610edb565b610316565b34801561017757600080fd5b50604051600981526020016100f3565b34801561019357600080fd5b5061013d6101a2366004610f1c565b6001600160a01b031660009081526002602052604090205490565b3480156101c957600080fd5b506101d26103d8565b005b3480156101e057600080fd5b5060408051808201909152600681526511949251539160d21b60208201526100e6565b34801561020f57600080fd5b5061011c61021e366004610eaf565b610450565b34801561022f57600080fd5b506101d261023e366004610f39565b61045d565b34801561024f57600080fd5b5061013d61025e366004610f5b565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561029557600080fd5b506101d26102a4366004610f94565b6104a2565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103049086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383166000908152600360209081526040808320338452909152812054600019146103c3576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b038716600090815260038252838120338252909152919091205461039e9184906104ed565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b6103ce848484610527565b90505b9392505050565b6000546001600160a01b0316331461040b5760405162461bcd60e51b815260040161040290610fad565b60405180910390fd5b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b60006103d1338484610527565b6000546001600160a01b031633146104875760405162461bcd60e51b815260040161040290610fad565b6006829055600781905561049b8183610fe3565b6008555050565b6000546001600160a01b031633146104cc5760405162461bcd60e51b815260040161040290610fad565b6103e8816001546104dd9190610ff6565b6104e7919061100d565b600e5550565b600081848411156105115760405162461bcd60e51b81526004016104029190610e49565b50600061051e848661102f565b95945050505050565b600c5460009060ff161561054757610540848484610738565b90506103d1565b6011546001600160a01b038481169116148015906105735750600d546001600160a01b03848116911614155b1561061e576001600160a01b03831660009081526005602052604090205460ff16806105c45750600e546001600160a01b0384166000908152600260205260409020546105c1908490610fe3565b11155b61061e5760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b6064820152608401610402565b61062984848461081e565b1561063657610636610878565b6001600160a01b03841660009081526004602052604090205460ff161580156106a3576106856106668685610b5d565b6001600160a01b03861660009081526002602052604090205490610c7c565b6001600160a01b0385166000908152600260205260409020556106e0565b6001600160a01b0384166000908152600260205260409020546106c69084610c7c565b6001600160a01b0385166000908152600260205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161072591815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526002909152918220546107899184906104ed565b6001600160a01b0380861660009081526002602052604080822093909355908516815220546107b89083610c7c565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061080c9086815260200190565b60405180910390a35060019392505050565b6000610828610cdb565b801561084d57506001600160a01b03841660009081526004602052604090205460ff16155b801561086657506011546001600160a01b038481169116145b80156103ce575050600b541092915050565b600c805460ff1916600117905530600090815260026020526040812054905060006108bf60026108b96008546108b960065487610d1590919063ffffffff16565b90610d97565b905060006108cd8383610dd9565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061090757610907611042565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610960573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109849190611058565b8160018151811061099757610997611042565b6001600160a01b03928316602091820292909201015260105460405163791ac94760e01b815291169063791ac947906109dd908590600090869030904290600401611075565b600060405180830381600087803b1580156109f757600080fd5b505af1158015610a0b573d6000803e3d6000fd5b505060065447925060009150610a2f90610a26906002610d97565b60085490610dd9565b90506000610a5160026108b9846108b960065488610d1590919063ffffffff16565b90506000610a6e836108b960075487610d1590919063ffffffff16565b600f546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610aa9573d6000803e3d6000fd5b508615610b4957601054600f5460405163f305d71960e01b8152306004820152602481018a905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990849060c40160606040518083038185885af1158015610b20573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b4591906110e6565b5050505b5050600c805460ff19169055505050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0385166000908152600290915291822054610bae9184906104ed565b6001600160a01b038416600090815260026020526040812091909155600954600854610be091906108b9908690610d15565b6000549091506001600160a01b038581169116148015610bff57600091505b30600090815260026020526040902054610c199083610c7c565b30600081815260026020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c6a9086815260200190565b60405180910390a361051e8483610dd9565b600080610c898385610fe3565b9050838110156103d15760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610402565b600c5460009060ff16158015610cf35750600a5460ff165b8015610d105750600b543060009081526002602052604090205410155b905090565b600082600003610d2757506000610310565b6000610d338385610ff6565b905082610d40858361100d565b146103d15760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610402565b60006103d183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610e1b565b60006103d183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506104ed565b60008183610e3c5760405162461bcd60e51b81526004016104029190610e49565b50600061051e848661100d565b600060208083528351808285015260005b81811015610e7657858101830151858201604001528201610e5a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610eac57600080fd5b50565b60008060408385031215610ec257600080fd5b8235610ecd81610e97565b946020939093013593505050565b600080600060608486031215610ef057600080fd5b8335610efb81610e97565b92506020840135610f0b81610e97565b929592945050506040919091013590565b600060208284031215610f2e57600080fd5b81356103d181610e97565b60008060408385031215610f4c57600080fd5b50508035926020909101359150565b60008060408385031215610f6e57600080fd5b8235610f7981610e97565b91506020830135610f8981610e97565b809150509250929050565b600060208284031215610fa657600080fd5b5035919050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561031057610310610fcd565b808202811582820484141761031057610310610fcd565b60008261102a57634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561031057610310610fcd565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561106a57600080fd5b81516103d181610e97565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156110c55784516001600160a01b0316835293830193918301916001016110a0565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156110fb57600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220ead17fb7c5987a1c98a9c5c8d9ecd7a05cf9a178a9a087f62318b9efe096067064736f6c63430008130033000000000000000000000000ca37c388268a52bb34356277958841aafbc1f4c4

Deployed Bytecode

0x6080604052600436106100ab5760003560e01c8063715018a611610064578063715018a6146101bd57806395d89b41146101d4578063a9059cbb14610203578063b342f87f14610223578063dd62ed3e14610243578063f75316d41461028957600080fd5b806306fdde03146100b7578063095ea7b3146100fc57806318160ddd1461012c57806323b872dd1461014b578063313ce5671461016b57806370a082311461018757600080fd5b366100b257005b600080fd5b3480156100c357600080fd5b5060408051808201909152600a815269467269656e64526f6f6d60b01b60208201525b6040516100f39190610e49565b60405180910390f35b34801561010857600080fd5b5061011c610117366004610eaf565b6102a9565b60405190151581526020016100f3565b34801561013857600080fd5b506001545b6040519081526020016100f3565b34801561015757600080fd5b5061011c610166366004610edb565b610316565b34801561017757600080fd5b50604051600981526020016100f3565b34801561019357600080fd5b5061013d6101a2366004610f1c565b6001600160a01b031660009081526002602052604090205490565b3480156101c957600080fd5b506101d26103d8565b005b3480156101e057600080fd5b5060408051808201909152600681526511949251539160d21b60208201526100e6565b34801561020f57600080fd5b5061011c61021e366004610eaf565b610450565b34801561022f57600080fd5b506101d261023e366004610f39565b61045d565b34801561024f57600080fd5b5061013d61025e366004610f5b565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561029557600080fd5b506101d26102a4366004610f94565b6104a2565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906103049086815260200190565b60405180910390a35060015b92915050565b6001600160a01b0383166000908152600360209081526040808320338452909152812054600019146103c3576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b038716600090815260038252838120338252909152919091205461039e9184906104ed565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b6103ce848484610527565b90505b9392505050565b6000546001600160a01b0316331461040b5760405162461bcd60e51b815260040161040290610fad565b60405180910390fd5b600080546001600160a01b03191681556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1565b60006103d1338484610527565b6000546001600160a01b031633146104875760405162461bcd60e51b815260040161040290610fad565b6006829055600781905561049b8183610fe3565b6008555050565b6000546001600160a01b031633146104cc5760405162461bcd60e51b815260040161040290610fad565b6103e8816001546104dd9190610ff6565b6104e7919061100d565b600e5550565b600081848411156105115760405162461bcd60e51b81526004016104029190610e49565b50600061051e848661102f565b95945050505050565b600c5460009060ff161561054757610540848484610738565b90506103d1565b6011546001600160a01b038481169116148015906105735750600d546001600160a01b03848116911614155b1561061e576001600160a01b03831660009081526005602052604090205460ff16806105c45750600e546001600160a01b0384166000908152600260205260409020546105c1908490610fe3565b11155b61061e5760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b6064820152608401610402565b61062984848461081e565b1561063657610636610878565b6001600160a01b03841660009081526004602052604090205460ff161580156106a3576106856106668685610b5d565b6001600160a01b03861660009081526002602052604090205490610c7c565b6001600160a01b0385166000908152600260205260409020556106e0565b6001600160a01b0384166000908152600260205260409020546106c69084610c7c565b6001600160a01b0385166000908152600260205260409020555b836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161072591815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526002909152918220546107899184906104ed565b6001600160a01b0380861660009081526002602052604080822093909355908516815220546107b89083610c7c565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061080c9086815260200190565b60405180910390a35060019392505050565b6000610828610cdb565b801561084d57506001600160a01b03841660009081526004602052604090205460ff16155b801561086657506011546001600160a01b038481169116145b80156103ce575050600b541092915050565b600c805460ff1916600117905530600090815260026020526040812054905060006108bf60026108b96008546108b960065487610d1590919063ffffffff16565b90610d97565b905060006108cd8383610dd9565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061090757610907611042565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610960573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109849190611058565b8160018151811061099757610997611042565b6001600160a01b03928316602091820292909201015260105460405163791ac94760e01b815291169063791ac947906109dd908590600090869030904290600401611075565b600060405180830381600087803b1580156109f757600080fd5b505af1158015610a0b573d6000803e3d6000fd5b505060065447925060009150610a2f90610a26906002610d97565b60085490610dd9565b90506000610a5160026108b9846108b960065488610d1590919063ffffffff16565b90506000610a6e836108b960075487610d1590919063ffffffff16565b600f546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610aa9573d6000803e3d6000fd5b508615610b4957601054600f5460405163f305d71960e01b8152306004820152602481018a905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990849060c40160606040518083038185885af1158015610b20573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b4591906110e6565b5050505b5050600c805460ff19169055505050505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0385166000908152600290915291822054610bae9184906104ed565b6001600160a01b038416600090815260026020526040812091909155600954600854610be091906108b9908690610d15565b6000549091506001600160a01b038581169116148015610bff57600091505b30600090815260026020526040902054610c199083610c7c565b30600081815260026020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c6a9086815260200190565b60405180910390a361051e8483610dd9565b600080610c898385610fe3565b9050838110156103d15760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610402565b600c5460009060ff16158015610cf35750600a5460ff165b8015610d105750600b543060009081526002602052604090205410155b905090565b600082600003610d2757506000610310565b6000610d338385610ff6565b905082610d40858361100d565b146103d15760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610402565b60006103d183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610e1b565b60006103d183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506104ed565b60008183610e3c5760405162461bcd60e51b81526004016104029190610e49565b50600061051e848661100d565b600060208083528351808285015260005b81811015610e7657858101830151858201604001528201610e5a565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610eac57600080fd5b50565b60008060408385031215610ec257600080fd5b8235610ecd81610e97565b946020939093013593505050565b600080600060608486031215610ef057600080fd5b8335610efb81610e97565b92506020840135610f0b81610e97565b929592945050506040919091013590565b600060208284031215610f2e57600080fd5b81356103d181610e97565b60008060408385031215610f4c57600080fd5b50508035926020909101359150565b60008060408385031215610f6e57600080fd5b8235610f7981610e97565b91506020830135610f8981610e97565b809150509250929050565b600060208284031215610fa657600080fd5b5035919050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8082018082111561031057610310610fcd565b808202811582820484141761031057610310610fcd565b60008261102a57634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561031057610310610fcd565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561106a57600080fd5b81516103d181610e97565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156110c55784516001600160a01b0316835293830193918301916001016110a0565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156110fb57600080fd5b835192506020840151915060408401519050925092509256fea2646970667358221220ead17fb7c5987a1c98a9c5c8d9ecd7a05cf9a178a9a087f62318b9efe096067064736f6c63430008130033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000ca37c388268a52bb34356277958841aafbc1f4c4

-----Decoded View---------------
Arg [0] : friend_address (address): 0xcA37c388268a52Bb34356277958841AAfbC1F4C4

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000ca37c388268a52bb34356277958841aafbc1f4c4


Deployed Bytecode Sourcemap

4694:7596:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9304:80;;;;;;;;;;-1:-1:-1;9376:5:0;;;;;;;;;;;;-1:-1:-1;;;9376:5:0;;;;9304:80;;;;;;;:::i;:::-;;;;;;;;8991:215;;;;;;;;;;-1:-1:-1;8991:215:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;8991:215:0;1023:187:1;11737:88:0;;;;;;;;;;-1:-1:-1;11810:12:0;;11737:88;;;1361:25:1;;;1349:2;1334:18;11737:88:0;1215:177:1;11919:368:0;;;;;;;;;;-1:-1:-1;11919:368:0;;;;;:::i;:::-;;:::i;11831:80::-;;;;;;;;;;-1:-1:-1;11831:80:0;;4908:1;2000:36:1;;1988:2;1973:18;11831:80:0;1858:184:1;9390:104:0;;;;;;;;;;-1:-1:-1;9390:104:0;;;;;:::i;:::-;-1:-1:-1;;;;;9474:17:0;9456:7;9474:17;;;:8;:17;;;;;;;9390:104;4505:132;;;;;;;;;;;;;:::i;:::-;;9214:84;;;;;;;;;;-1:-1:-1;9288:7:0;;;;;;;;;;;;-1:-1:-1;;;9288:7:0;;;;9214:84;;9644:157;;;;;;;;;;-1:-1:-1;9644:157:0;;;;;:::i;:::-;;:::i;11513:212::-;;;;;;;;;;-1:-1:-1;11513:212:0;;;;;:::i;:::-;;:::i;9500:132::-;;;;;;;;;;-1:-1:-1;9500:132:0;;;;;:::i;:::-;-1:-1:-1;;;;;9602:18:0;;;9584:7;9602:18;;;:10;:18;;;;;;;;:27;;;;;;;;;;;;;9500:132;10479:136;;;;;;;;;;-1:-1:-1;10479:136:0;;;;;:::i;:::-;;:::i;8991:215::-;9094:10;9066:4;9083:22;;;:10;:22;;;;;;;;-1:-1:-1;;;;;9083:31:0;;;;;;;;;;:40;;;9139:37;9066:4;;9083:31;;9139:37;;;;9117:6;1361:25:1;;1349:2;1334:18;;1215:177;9139:37:0;;;;;;;;-1:-1:-1;9194:4:0;8991:215;;;;;:::o;11919:368::-;-1:-1:-1;;;;;12039:18:0;;12019:4;12039:18;;;:10;:18;;;;;;;;12058:10;12039:30;;;;;;;;-1:-1:-1;;12039:51:0;12036:183;;12139:68;;;;;;;;;;;-1:-1:-1;;;12139:68:0;;;;;;;;-1:-1:-1;;;;;12139:18:0;;-1:-1:-1;12139:18:0;;;:10;:18;;;;;12158:10;12139:30;;;;;;;;;;:68;;12174:6;;12139:34;:68::i;:::-;-1:-1:-1;;;;;12106:18:0;;;;;;:10;:18;;;;;;;;12125:10;12106:30;;;;;;;:101;12036:183;12238:41;12253:6;12261:9;12272:6;12238:14;:41::i;:::-;12231:48;;11919:368;;;;;;:::o;4505:132::-;4448:4;4483:6;-1:-1:-1;;;;;4483:6:0;4340:10;4472:17;4323:39;;;;-1:-1:-1;;;4323:39:0;;;;;;;:::i;:::-;;;;;;;;;4579:1:::1;4562:19:::0;;-1:-1:-1;;;;;;4562:19:0::1;::::0;;4597:32:::1;::::0;3610:51:1;;;4597:32:0::1;::::0;3598:2:1;3583:18;4597:32:0::1;;;;;;;4505:132::o:0;9644:157::-;9724:4;9748:45;9763:10;9775:9;9786:6;9748:14;:45::i;11513:212::-;4448:4;4483:6;-1:-1:-1;;;;;4483:6:0;4340:10;4472:17;4323:39;;;;-1:-1:-1;;;4323:39:0;;;;;;;:::i;:::-;11604:11:::1;:20:::0;;;11637:14:::1;:24:::0;;;11689:28:::1;11654:7:::0;11618:6;11689:28:::1;:::i;:::-;11673:13;:44:::0;-1:-1:-1;;11513:212:0:o;10479:136::-;4448:4;4483:6;-1:-1:-1;;;;;4483:6:0;4340:10;4472:17;4323:39;;;;-1:-1:-1;;;4323:39:0;;;;;;;:::i;:::-;10603:4:::1;10592:7;10577:12;;:22;;;;:::i;:::-;10576:31;;;;:::i;:::-;10561:12;:46:::0;-1:-1:-1;10479:136:0:o;1007:190::-;1093:7;1129:12;1121:6;;;;1113:29;;;;-1:-1:-1;;;1113:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1153:9:0;1165:5;1169:1;1165;:5;:::i;:::-;1153:17;1007:190;-1:-1:-1;;;;;1007:190:0:o;8101:878::-;8214:8;;8194:4;;8214:8;;8211:66;;;8232:42;8248:6;8256:9;8267:6;8232:15;:42::i;:::-;8225:49;;;;8211:66;8314:12;;-1:-1:-1;;;;;8301:25:0;;;8314:12;;8301:25;;;;:54;;-1:-1:-1;8343:12:0;;-1:-1:-1;;;;;8330:25:0;;;8343:12;;8330:25;;8301:54;8297:213;;;-1:-1:-1;;;;;8380:28:0;;;;;;:17;:28;;;;;;;;;:76;;-1:-1:-1;8444:12:0;;-1:-1:-1;;;;;8412:19:0;;;;;;:8;:19;;;;;;:28;;8434:6;;8412:28;:::i;:::-;:44;;8380:76;8372:126;;;;-1:-1:-1;;;8372:126:0;;4664:2:1;8372:126:0;;;4646:21:1;4703:2;4683:18;;;4676:30;4742:34;4722:18;;;4715:62;-1:-1:-1;;;4793:18:1;;;4786:35;4838:19;;8372:126:0;4462:401:1;8372:126:0;8531:44;8549:6;8557:9;8568:6;8531:17;:44::i;:::-;8528:98;;;8592:21;:19;:21::i;:::-;-1:-1:-1;;;;;6739:26:0;;8637:15;6739:26;;;:18;:26;;;;;;;;6738:27;8692:205;;;;8745:54;8769:29;8783:6;8791;8769:13;:29::i;:::-;-1:-1:-1;;;;;8745:19:0;;;;;;:8;:19;;;;;;;:23;:54::i;:::-;-1:-1:-1;;;;;8723:19:0;;;;;;:8;:19;;;;;:76;8692:205;;;-1:-1:-1;;;;;8854:19:0;;;;;;:8;:19;;;;;;:31;;8878:6;8854:23;:31::i;:::-;-1:-1:-1;;;;;8832:19:0;;;;;;:8;:19;;;;;:53;8692:205;8931:9;-1:-1:-1;;;;;8914:35:0;8923:6;-1:-1:-1;;;;;8914:35:0;;8942:6;8914:35;;;;1361:25:1;;1349:2;1334:18;;1215:177;8914:35:0;;;;;;;;-1:-1:-1;8967:4:0;;8101:878;-1:-1:-1;;;;8101:878:0:o;10623:327::-;10753:52;;;;;;;;;;;-1:-1:-1;;;10753:52:0;;;;;;;;-1:-1:-1;;;;;10753:16:0;;10717:4;10753:16;;;:8;:16;;;;;;;:52;;10774:6;;10753:20;:52::i;:::-;-1:-1:-1;;;;;10734:16:0;;;;;;;:8;:16;;;;;;:71;;;;10838:19;;;;;;;:31;;10862:6;10838:23;:31::i;:::-;-1:-1:-1;;;;;10816:19:0;;;;;;;:8;:19;;;;;;;:53;;;;10885:35;;;;;;;;;;10913:6;1361:25:1;;1349:2;1334:18;;1215:177;10885:35:0;;;;;;;;-1:-1:-1;10938:4:0;10623:327;;;;;:::o;9865:284::-;9965:4;9989:16;:14;:16::i;:::-;:60;;;;-1:-1:-1;;;;;;6739:26:0;;6714:4;6739:26;;;:18;:26;;;;;;;;6738:27;10023:26;9989:106;;;;-1:-1:-1;10265:12:0;;-1:-1:-1;;;;;10252:25:0;;;10265:12;;10252:25;10067:28;9989:152;;;;-1:-1:-1;;10122:19:0;;-1:-1:-1;10113:28:0;9865:284;-1:-1:-1;;9865:284:0:o;6785:1308::-;5442:8;:15;;-1:-1:-1;;5442:15:0;5453:4;5442:15;;;6897:4:::1;-1:-1:-1::0;9474:17:0;;;:8;:17;;;;;;6846:57:::1;;6914:20;6937:65;7000:1;6937:58;6981:13;;6937:39;6964:11;;6937:22;:26;;:39;;;;:::i;:::-;:43:::0;::::1;:58::i;:65::-;6914:88:::0;-1:-1:-1;7013:22:0::1;7038:40;:22:::0;6914:88;7038:26:::1;:40::i;:::-;7115:16;::::0;;7129:1:::1;7115:16:::0;;;;;::::1;::::0;;7013:65;;-1:-1:-1;7091:21:0::1;::::0;7115:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;7115:16:0::1;7091:40;;7160:4;7142;7147:1;7142:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7142:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;7186:14:::1;::::0;:21:::1;::::0;;-1:-1:-1;;;7186:21:0;;;;:14;;;::::1;::::0;:19:::1;::::0;:21:::1;::::0;;::::1;::::0;7142:7;;7186:21;;;;;:14;:21:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7176:4;7181:1;7176:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7176:31:0;;::::1;:7;::::0;;::::1;::::0;;;;;:31;7220:14:::1;::::0;:198:::1;::::0;-1:-1:-1;;;7220:198:0;;:14;::::1;::::0;:65:::1;::::0;:198:::1;::::0;7300:14;;7220::::1;::::0;7345:4;;7372::::1;::::0;7392:15:::1;::::0;7220:198:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;7530:11:0::1;::::0;7450:21:::1;::::0;-1:-1:-1;7429:18:0::1;::::0;-1:-1:-1;7512:37:0::1;::::0;7530:18:::1;::::0;7546:1:::1;7530:15;:18::i;:::-;7512:13;::::0;;:17:::1;:37::i;:::-;7482:67;;7560:17;7580:59;7637:1;7580:52;7612:19;7580:27;7595:11;;7580:10;:14;;:27;;;;:::i;:59::-;7560:79;;7650:24;7677:55;7712:19;7677:30;7692:14;;7677:10;:14;;:30;;;;:::i;:55::-;7753:14;::::0;7745:50:::1;::::0;7650:82;;-1:-1:-1;;;;;;7753:14:0::1;::::0;7745:50;::::1;;;::::0;7650:82;;7753:14:::1;7745:50:::0;7753:14;7745:50;7650:82;7753:14;7745:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;7809:16:0;;7806:280:::1;;7841:14;::::0;8011::::1;::::0;7841:233:::1;::::0;-1:-1:-1;;;7841:233:0;;7916:4:::1;7841:233;::::0;::::1;6714:34:1::0;6764:18;;;6757:34;;;7841:14:0::1;6807:18:1::0;;;6800:34;;;6850:18;;;6843:34;-1:-1:-1;;;;;8011:14:0;;::::1;6893:19:1::0;;;6886:44;8044:15:0::1;6946:19:1::0;;;6939:35;7841:14:0;::::1;::::0;:30:::1;::::0;7879:9;;6648:19:1;;7841:233:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;7806:280;-1:-1:-1::0;;5462:8:0;:16;;-1:-1:-1;;5462:16:0;;;-1:-1:-1;;;;;;6785:1308:0:o;10958:543::-;11070:52;;;;;;;;;;;-1:-1:-1;;;11070:52:0;;;;;;;;-1:-1:-1;;;;;11070:16:0;;11031:7;11070:16;;;:8;:16;;;;;;;:52;;11091:6;;11070:20;:52::i;:::-;-1:-1:-1;;;;;11051:16:0;;;;;;:8;:16;;;;;:71;;;;11184:11;;11165:13;;11154:42;;11184:11;11154:25;;:6;;:10;:25::i;:42::-;11207:15;11235:6;11133:63;;-1:-1:-1;;;;;;11225:16:0;;;11235:6;;11225:16;11252:57;;;;11296:1;11283:14;;11252:57;11372:4;11355:23;;;;:8;:23;;;;;;:39;;11383:10;11355:27;:39::i;:::-;11346:4;11329:23;;;;:8;:23;;;;;;;:65;;;;11410:43;;-1:-1:-1;;;;;11410:43:0;;;;;;;11442:10;1361:25:1;;1349:2;1334:18;;1215:177;11410:43:0;;;;;;;;11471:22;:6;11482:10;11471;:22::i;676:179::-;734:7;;766:5;770:1;766;:5;:::i;:::-;754:17;;795:1;790;:6;;782:46;;;;-1:-1:-1;;;782:46:0;;7498:2:1;782:46:0;;;7480:21:1;7537:2;7517:18;;;7510:30;7576:29;7556:18;;;7549:57;7623:18;;782:46:0;7296:351:1;10293:174:0;10367:8;;10342:4;;10367:8;;10366:9;:34;;;;-1:-1:-1;10388:12:0;;;;10366:34;:93;;;;-1:-1:-1;10440:19:0;;10430:4;10413:23;;;;:8;:23;;;;;;:46;;10366:93;10359:100;;10293:174;:::o;1205:246::-;1263:7;1287:1;1292;1287:6;1283:47;;-1:-1:-1;1317:1:0;1310:8;;1283:47;1340:9;1352:5;1356:1;1352;:5;:::i;:::-;1340:17;-1:-1:-1;1385:1:0;1376:5;1380:1;1340:17;1376:5;:::i;:::-;:10;1368:56;;;;-1:-1:-1;;;1368:56:0;;7854:2:1;1368:56:0;;;7836:21:1;7893:2;7873:18;;;7866:30;7932:34;7912:18;;;7905:62;-1:-1:-1;;;7983:18:1;;;7976:31;8024:19;;1368:56:0;7652:397:1;1459:132:0;1517:7;1544:39;1548:1;1551;1544:39;;;;;;;;;;;;;;;;;:3;:39::i;863:136::-;921:7;948:43;952:1;955;948:43;;;;;;;;;;;;;;;;;:3;:43::i;1599:189::-;1685:7;1720:12;1713:5;1705:28;;;;-1:-1:-1;;;1705:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1744:9:0;1756:5;1760:1;1756;: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;2299:248::-;2367:6;2375;2428:2;2416:9;2407:7;2403:23;2399:32;2396:52;;;2444:1;2441;2434:12;2396:52;-1:-1:-1;;2467:23:1;;;2537:2;2522:18;;;2509:32;;-1:-1:-1;2299:248:1:o;2552:388::-;2620:6;2628;2681:2;2669:9;2660:7;2656:23;2652:32;2649:52;;;2697:1;2694;2687:12;2649:52;2736:9;2723:23;2755:31;2780:5;2755:31;:::i;:::-;2805:5;-1:-1:-1;2862:2:1;2847:18;;2834:32;2875:33;2834:32;2875:33;:::i;:::-;2927:7;2917:17;;;2552:388;;;;;:::o;2945:180::-;3004:6;3057:2;3045:9;3036:7;3032:23;3028:32;3025:52;;;3073:1;3070;3063:12;3025:52;-1:-1:-1;3096:23:1;;2945:180;-1:-1:-1;2945:180:1:o;3130:329::-;3332:2;3314:21;;;3371:1;3351:18;;;3344:29;-1:-1:-1;;;3404:2:1;3389:18;;3382:36;3450:2;3435:18;;3130:329::o;3672:127::-;3733:10;3728:3;3724:20;3721:1;3714:31;3764:4;3761:1;3754:15;3788:4;3785:1;3778:15;3804:125;3869:9;;;3890:10;;;3887:36;;;3903:18;;:::i;3934:168::-;4007:9;;;4038;;4055:15;;;4049:22;;4035:37;4025:71;;4076:18;;:::i;4107:217::-;4147:1;4173;4163:132;;4217:10;4212:3;4208:20;4205:1;4198:31;4252:4;4249:1;4242:15;4280:4;4277:1;4270:15;4163:132;-1:-1:-1;4309:9:1;;4107:217::o;4329:128::-;4396:9;;;4417:11;;;4414:37;;;4431:18;;:::i;5000:127::-;5061:10;5056:3;5052:20;5049:1;5042:31;5092:4;5089:1;5082:15;5116:4;5113:1;5106:15;5132:251;5202:6;5255:2;5243:9;5234:7;5230:23;5226:32;5223:52;;;5271:1;5268;5261:12;5223:52;5303:9;5297:16;5322:31;5347:5;5322:31;:::i;5388:980::-;5650:4;5698:3;5687:9;5683:19;5729:6;5718:9;5711:25;5755:2;5793:6;5788:2;5777:9;5773:18;5766:34;5836:3;5831:2;5820:9;5816:18;5809:31;5860:6;5895;5889:13;5926:6;5918;5911:22;5964:3;5953:9;5949:19;5942:26;;6003:2;5995:6;5991:15;5977:29;;6024:1;6034:195;6048:6;6045:1;6042:13;6034:195;;;6113:13;;-1:-1:-1;;;;;6109:39:1;6097:52;;6204:15;;;;6169:12;;;;6145:1;6063:9;6034:195;;;-1:-1:-1;;;;;;;6285:32:1;;;;6280:2;6265:18;;6258:60;-1:-1:-1;;;6349:3:1;6334:19;6327:35;6246:3;5388:980;-1:-1:-1;;;5388:980:1:o;6985:306::-;7073:6;7081;7089;7142:2;7130:9;7121:7;7117:23;7113:32;7110:52;;;7158:1;7155;7148:12;7110:52;7187:9;7181:16;7171:26;;7237:2;7226:9;7222:18;7216:25;7206:35;;7281:2;7270:9;7266:18;7260:25;7250:35;;6985:306;;;;;:::o

Swarm Source

ipfs://ead17fb7c5987a1c98a9c5c8d9ecd7a05cf9a178a9a087f62318b9efe0960670
Loading...
Loading
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.