Feature Tip: Add private address tag to any address under My Name Tag !
Latest 25 from a total of 410 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Pause | 10179710 | 2091 days ago | IN | 0 ETH | 0.00135507 | ||||
| Distribute | 10062813 | 2109 days ago | IN | 0 ETH | 0.00500313 | ||||
| Distribute | 10056356 | 2110 days ago | IN | 0 ETH | 0.00532686 | ||||
| Distribute | 10049913 | 2111 days ago | IN | 0 ETH | 0.00432623 | ||||
| Distribute | 10043475 | 2112 days ago | IN | 0 ETH | 0.0018541 | ||||
| Distribute | 10036990 | 2113 days ago | IN | 0 ETH | 0.00276643 | ||||
| Distribute | 10030583 | 2114 days ago | IN | 0 ETH | 0.00224258 | ||||
| Distribute | 10024065 | 2115 days ago | IN | 0 ETH | 0.0024427 | ||||
| Distribute | 10017649 | 2116 days ago | IN | 0 ETH | 0.00170695 | ||||
| Distribute | 10011226 | 2117 days ago | IN | 0 ETH | 0.00201008 | ||||
| Distribute | 10004776 | 2118 days ago | IN | 0 ETH | 0.00159511 | ||||
| Distribute | 10004768 | 2118 days ago | IN | 0 ETH | 0.00156568 | ||||
| Distribute | 9998241 | 2119 days ago | IN | 0 ETH | 0.00140676 | ||||
| Distribute | 9991680 | 2120 days ago | IN | 0 ETH | 0.00144796 | ||||
| Distribute | 9985300 | 2121 days ago | IN | 0 ETH | 0.0010742 | ||||
| Distribute | 9978867 | 2122 days ago | IN | 0 ETH | 0.00111834 | ||||
| Distribute | 9972492 | 2123 days ago | IN | 0 ETH | 0.00346099 | ||||
| Distribute | 9965985 | 2124 days ago | IN | 0 ETH | 0.0019571 | ||||
| Distribute | 9959497 | 2125 days ago | IN | 0 ETH | 0.00111246 | ||||
| Distribute | 9953073 | 2126 days ago | IN | 0 ETH | 0.00105948 | ||||
| Distribute | 9946670 | 2127 days ago | IN | 0 ETH | 0.00108891 | ||||
| Distribute | 9940218 | 2128 days ago | IN | 0 ETH | 0.00120663 | ||||
| Distribute | 9933751 | 2129 days ago | IN | 0 ETH | 0.00132435 | ||||
| Distribute | 9927332 | 2130 days ago | IN | 0 ETH | 0.00108891 | ||||
| Distribute | 9920811 | 2131 days ago | IN | 0 ETH | 0.00135084 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
ATD
Compiler Version
v0.5.2+commit.1df8f40c
Optimization Enabled:
No with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2019-05-13
*/
pragma solidity >=0.5.0 <0.6.0;
/**
* @title ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/20
*/
interface IERC20 {
function transfer(address to, uint256 value) external returns (bool);
function approve(address spender, uint256 value) external returns (bool);
function transferFrom(address from, address to, uint256 value) external returns (bool);
function totalSupply() external view returns (uint256);
function balanceOf(address who) external view returns (uint256);
function allowance(address owner, address spender) external view returns (uint256);
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
/**
* @title ERC20Detailed token
* @dev The decimals are only for visualization purposes.
* All the operations are done using the smallest and indivisible token unit,
* just as on Ethereum all the operations are done in wei.
*/
contract ERC20Detailed is IERC20 {
string private _name;
string private _symbol;
uint8 private _decimals;
constructor (string memory name, string memory symbol, uint8 decimals) public {
_name = name;
_symbol = symbol;
_decimals = decimals;
}
/**
* @return the name of the token.
*/
function name() public view returns (string memory) {
return _name;
}
/**
* @return the symbol of the token.
*/
function symbol() public view returns (string memory) {
return _symbol;
}
/**
* @return the number of decimals of the token.
*/
function decimals() public view returns (uint8) {
return _decimals;
}
}
contract SignerRole {
using Roles for Roles.Role;
event SignerAdded(address indexed account);
event SignerRemoved(address indexed account);
Roles.Role private _signers;
constructor () internal {
_addSigner(msg.sender);
}
modifier onlySigner() {
require(isSigner(msg.sender));
_;
}
function isSigner(address account) public view returns (bool) {
return _signers.has(account);
}
function addSigner(address account) public onlySigner {
_addSigner(account);
}
function renounceSigner() public {
_removeSigner(msg.sender);
}
function _addSigner(address account) internal {
_signers.add(account);
emit SignerAdded(account);
}
function _removeSigner(address account) internal {
_signers.remove(account);
emit SignerRemoved(account);
}
}
contract PauserRole {
using Roles for Roles.Role;
event PauserAdded(address indexed account);
event PauserRemoved(address indexed account);
Roles.Role private _pausers;
constructor () internal {
_addPauser(msg.sender);
}
modifier onlyPauser() {
require(isPauser(msg.sender));
_;
}
function isPauser(address account) public view returns (bool) {
return _pausers.has(account);
}
function addPauser(address account) public onlyPauser {
_addPauser(account);
}
function renouncePauser() public {
_removePauser(msg.sender);
}
function _addPauser(address account) internal {
_pausers.add(account);
emit PauserAdded(account);
}
function _removePauser(address account) internal {
_pausers.remove(account);
emit PauserRemoved(account);
}
}
/**
* @title Pausable
* @dev Base contract which allows children to implement an emergency stop mechanism.
*/
contract Pausable is PauserRole {
event Paused(address account);
event Unpaused(address account);
bool private _paused;
constructor () internal {
_paused = false;
}
/**
* @return true if the contract is paused, false otherwise.
*/
function paused() public view returns (bool) {
return _paused;
}
/**
* @dev Modifier to make a function callable only when the contract is not paused.
*/
modifier whenNotPaused() {
require(!_paused);
_;
}
/**
* @dev Modifier to make a function callable only when the contract is paused.
*/
modifier whenPaused() {
require(_paused);
_;
}
/**
* @dev called by the owner to pause, triggers stopped state
*/
function pause() public onlyPauser whenNotPaused {
_paused = true;
emit Paused(msg.sender);
}
/**
* @dev called by the owner to unpause, returns to normal state
*/
function unpause() public onlyPauser whenPaused {
_paused = false;
emit Unpaused(msg.sender);
}
}
/**
* @title SafeMath
* @dev Unsigned math operations with safety checks that revert on error
*/
library SafeMath {
/**
* @dev Multiplies two unsigned integers, reverts on overflow.
*/
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
// Gas optimization: this is cheaper than requiring 'a' not being zero, but the
// benefit is lost if 'b' is also tested.
// See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b);
return c;
}
/**
* @dev Integer division of two unsigned integers truncating the quotient, reverts on division by zero.
*/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
// Solidity only automatically asserts when dividing by 0
require(b > 0);
uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
/**
* @dev Subtracts two unsigned integers, reverts on overflow (i.e. if subtrahend is greater than minuend).
*/
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
require(b <= a);
uint256 c = a - b;
return c;
}
/**
* @dev Adds two unsigned integers, reverts on overflow.
*/
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a);
return c;
}
/**
* @dev Divides two unsigned integers and returns the remainder (unsigned integer modulo),
* reverts when dividing by zero.
*/
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
require(b != 0);
return a % b;
}
}
contract DistributionConfigurable is PauserRole {
/**
Structures
*/
struct DistributionConfig {
address lockedWallet;
address unlockWallet;
uint256 ratioDTV;
uint256 ratioDecimals;
}
/**
State variables
*/
DistributionConfig[] public distributionConfigs;
/**
Events
*/
event DistributionConfigAdded(
address indexed lockedWallet,
address indexed unlockWallet,
uint256 ratioDTV,
uint256 ratioDecimals
);
event DistributionConfigEdited(
uint256 indexed index,
address indexed lockedWallet,
address indexed unlockWallet,
uint256 previousRatioDTV,
uint256 previousRatioDecimals,
uint256 ratioDTV,
uint256 ratioDecimals
);
event DistributionConfigDeleted(
uint256 indexed index,
address indexed lockedWallet,
address indexed unlockWallet,
uint256 ratioDTV,
uint256 ratioDecimals
);
/**
External views
*/
function distributionConfigsLength()
external view
returns (uint256 length)
{
return distributionConfigs.length;
}
/**
Public
*/
function addDistributionConfig(
address lockedWallet,
address unlockWallet,
uint256 ratioDTV,
uint256 ratioDecimals
) public onlyPauser {
require(lockedWallet != address(0), "lockedWallet address cannot be zero");
require(unlockWallet != address(0), "unlockWallet address cannot be zero");
require(lockedWallet != unlockWallet, "lockedWallet and unlockWallet addresses cannot be the same");
require(ratioDTV > 0, "ratioDTV cannot be zero");
require(ratioDecimals > 0, "ratioDecimals cannot be zero");
distributionConfigs.push(DistributionConfig({
lockedWallet: lockedWallet,
unlockWallet: unlockWallet,
ratioDTV: ratioDTV,
ratioDecimals: ratioDecimals
}));
emit DistributionConfigAdded(
lockedWallet,
unlockWallet,
ratioDTV,
ratioDecimals
);
}
function editDistributionConfig(
uint256 index,
uint256 ratioDTV,
uint256 ratioDecimals
) public onlyPauser {
require(index < distributionConfigs.length, "index is out of bound");
require(ratioDTV > 0, "ratioDTV cannot be zero");
require(ratioDecimals > 0, "ratioDecimals cannot be zero");
emit DistributionConfigEdited(
index,
distributionConfigs[index].lockedWallet,
distributionConfigs[index].unlockWallet,
distributionConfigs[index].ratioDTV,
distributionConfigs[index].ratioDecimals,
ratioDTV,
ratioDecimals
);
distributionConfigs[index].ratioDTV = ratioDTV;
distributionConfigs[index].ratioDecimals = ratioDecimals;
}
function deleteDistributionConfig(
uint256 index
) public onlyPauser {
require(index < distributionConfigs.length, "index is out of bound");
emit DistributionConfigDeleted(
index,
distributionConfigs[index].lockedWallet,
distributionConfigs[index].unlockWallet,
distributionConfigs[index].ratioDTV,
distributionConfigs[index].ratioDecimals
);
// Replace the element to delete and shift elements of the array.
for (uint i = index; i<distributionConfigs.length-1; i++){
distributionConfigs[i] = distributionConfigs[i+1];
}
distributionConfigs.length--;
}
}
/**
* @title Roles
* @dev Library for managing addresses assigned to a Role.
*/
library Roles {
struct Role {
mapping (address => bool) bearer;
}
/**
* @dev give an account access to this role
*/
function add(Role storage role, address account) internal {
require(account != address(0));
require(!has(role, account));
role.bearer[account] = true;
}
/**
* @dev remove an account's access to this role
*/
function remove(Role storage role, address account) internal {
require(account != address(0));
require(has(role, account));
role.bearer[account] = false;
}
/**
* @dev check if an account has this role
* @return bool
*/
function has(Role storage role, address account) internal view returns (bool) {
require(account != address(0));
return role.bearer[account];
}
}
/**
* @title Ownable
* @dev The Ownable contract has an owner address, and provides basic authorization control
* functions, this simplifies the implementation of "user permissions".
*/
contract Ownable {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev The Ownable constructor sets the original `owner` of the contract to the sender
* account.
*/
constructor () internal {
_owner = msg.sender;
emit OwnershipTransferred(address(0), _owner);
}
/**
* @return the address of the owner.
*/
function owner() public view returns (address) {
return _owner;
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
require(isOwner());
_;
}
/**
* @return true if `msg.sender` is the owner of the contract.
*/
function isOwner() public view returns (bool) {
return msg.sender == _owner;
}
/**
* @dev Allows the current owner to relinquish control of the contract.
* @notice Renouncing to ownership will leave the contract without an owner.
* It will not be possible to call the functions with the `onlyOwner`
* modifier anymore.
*/
function renounceOwnership() public onlyOwner {
emit OwnershipTransferred(_owner, address(0));
_owner = address(0);
}
/**
* @dev Allows the current owner to transfer control of the contract to a newOwner.
* @param newOwner The address to transfer ownership to.
*/
function transferOwnership(address newOwner) public onlyOwner {
_transferOwnership(newOwner);
}
/**
* @dev Transfers control of the contract to a newOwner.
* @param newOwner The address to transfer ownership to.
*/
function _transferOwnership(address newOwner) internal {
require(newOwner != address(0));
emit OwnershipTransferred(_owner, newOwner);
_owner = newOwner;
}
}
contract ATD is Ownable, Pausable, SignerRole, DistributionConfigurable {
using SafeMath for uint256;
/**
State variables
*/
ERC20Detailed public token;
/**
Constructor
*/
constructor(
ERC20Detailed _token
) public {
token = _token;
}
/**
Events
*/
event Distributed(
uint256 indexed date,
address indexed lockedWallet,
address indexed unlockWallet,
uint256 ratioDTV,
uint256 ratioDecimals,
uint256 dailyTradedVolume,
uint256 amount
);
event TotalDistributed(
uint256 indexed date,
uint256 dailyTradedVolume,
uint256 amount
);
/**
Publics
*/
function distribute(
uint256 dailyTradedVolume
) public whenNotPaused onlySigner {
require(
dailyTradedVolume.div(10 ** uint256(token.decimals())) > 0,
"dailyTradedVolume is not in token unit"
);
uint256 total = 0;
for (uint256 i = 0; i < distributionConfigs.length; i++) {
DistributionConfig storage dc = distributionConfigs[i];
uint256 amount = dailyTradedVolume.mul(dc.ratioDTV).div(10 ** dc.ratioDecimals);
token.transferFrom(dc.lockedWallet, dc.unlockWallet, amount);
total = total.add(amount);
emit Distributed(
now,
dc.lockedWallet,
dc.unlockWallet,
dc.ratioDTV,
dc.ratioDecimals,
dailyTradedVolume,
amount
);
}
emit TotalDistributed(now, dailyTradedVolume, total);
}
function destroy() public onlyOwner {
selfdestruct(msg.sender);
}
function removePauser(address account) public onlyOwner {
_removePauser(account);
}
function removeSigner(address account) public onlyOwner {
_removeSigner(account);
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"removeSigner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"isPauser","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"removePauser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"distributionConfigs","outputs":[{"name":"lockedWallet","type":"address"},{"name":"unlockWallet","type":"address"},{"name":"ratioDTV","type":"uint256"},{"name":"ratioDecimals","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renouncePauser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"index","type":"uint256"},{"name":"ratioDTV","type":"uint256"},{"name":"ratioDecimals","type":"uint256"}],"name":"editDistributionConfig","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"account","type":"address"}],"name":"isSigner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"addPauser","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"destroy","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"index","type":"uint256"}],"name":"deleteDistributionConfig","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"dailyTradedVolume","type":"uint256"}],"name":"distribute","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"distributionConfigsLength","outputs":[{"name":"length","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"lockedWallet","type":"address"},{"name":"unlockWallet","type":"address"},{"name":"ratioDTV","type":"uint256"},{"name":"ratioDecimals","type":"uint256"}],"name":"addDistributionConfig","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceSigner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"account","type":"address"}],"name":"addSigner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"token","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_token","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"date","type":"uint256"},{"indexed":true,"name":"lockedWallet","type":"address"},{"indexed":true,"name":"unlockWallet","type":"address"},{"indexed":false,"name":"ratioDTV","type":"uint256"},{"indexed":false,"name":"ratioDecimals","type":"uint256"},{"indexed":false,"name":"dailyTradedVolume","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"Distributed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"date","type":"uint256"},{"indexed":false,"name":"dailyTradedVolume","type":"uint256"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"TotalDistributed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"lockedWallet","type":"address"},{"indexed":true,"name":"unlockWallet","type":"address"},{"indexed":false,"name":"ratioDTV","type":"uint256"},{"indexed":false,"name":"ratioDecimals","type":"uint256"}],"name":"DistributionConfigAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"index","type":"uint256"},{"indexed":true,"name":"lockedWallet","type":"address"},{"indexed":true,"name":"unlockWallet","type":"address"},{"indexed":false,"name":"previousRatioDTV","type":"uint256"},{"indexed":false,"name":"previousRatioDecimals","type":"uint256"},{"indexed":false,"name":"ratioDTV","type":"uint256"},{"indexed":false,"name":"ratioDecimals","type":"uint256"}],"name":"DistributionConfigEdited","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"index","type":"uint256"},{"indexed":true,"name":"lockedWallet","type":"address"},{"indexed":true,"name":"unlockWallet","type":"address"},{"indexed":false,"name":"ratioDTV","type":"uint256"},{"indexed":false,"name":"ratioDecimals","type":"uint256"}],"name":"DistributionConfigDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"SignerAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"SignerRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Paused","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"account","type":"address"}],"name":"Unpaused","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"PauserAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"account","type":"address"}],"name":"PauserRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]Contract Creation Code
60806040523480156200001157600080fd5b5060405160208062002411833981018060405260208110156200003357600080fd5b8101908080519060200190929190505050336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36200011a3362000197640100000000026401000000009004565b6000600260006101000a81548160ff0219169083151502179055506200014f3362000201640100000000026401000000009004565b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050620003c3565b620001bb8160016200026b6401000000000262001e0d179091906401000000009004565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b620002258160036200026b6401000000000262001e0d179091906401000000009004565b8073ffffffffffffffffffffffffffffffffffffffff167f47d1c22a25bb3a5d4e481b9b1e6944c2eade3181a0a20b495ed61d35b5323f2460405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515620002a857600080fd5b620002c382826200032e640100000000026401000000009004565b151515620002d057600080fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141515156200036c57600080fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b61203e80620003d36000396000f3fe608060405234801561001057600080fd5b506004361061016a576000357c01000000000000000000000000000000000000000000000000000000009004806383197ef0116100e05780639c3e91d8116100995780639c3e91d814610500578063cf802e1e1461051e578063e5c8b03d14610596578063eb12d61e146105a0578063f2fde38b146105e4578063fc0c546a146106285761016a565b806383197ef0146104245780638456cb591461042e5780638d8e0acc146104385780638da5cb5b146104665780638f32d59b146104b057806391c05b0b146104d25761016a565b80636e1cd95f116101325780636e1cd95f1461027f5780636ef8d66d1461032e578063715018a614610338578063763b40b5146103425780637df73e271461038457806382dc1ec4146103e05761016a565b80630e316ab71461016f5780633f4ba83a146101b357806346fbf68e146101bd5780635c975abb146102195780636b2c0f551461023b575b600080fd5b6101b16004803603602081101561018557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610672565b005b6101bb610691565b005b6101ff600480360360208110156101d357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610740565b604051808215151515815260200191505060405180910390f35b61022161075d565b604051808215151515815260200191505060405180910390f35b61027d6004803603602081101561025157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610774565b005b6102ab6004803603602081101561029557600080fd5b8101908080359060200190929190505050610793565b604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200182815260200194505050505060405180910390f35b610336610812565b005b61034061081d565b005b6103826004803603606081101561035857600080fd5b810190808035906020019092919080359060200190929190803590602001909291905050506108ef565b005b6103c66004803603602081101561039a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bfc565b604051808215151515815260200191505060405180910390f35b610422600480360360208110156103f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c19565b005b61042c610c39565b005b610436610c65565b005b6104646004803603602081101561044e57600080fd5b8101908080359060200190929190505050610d15565b005b61046e611032565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104b861105b565b604051808215151515815260200191505060405180910390f35b6104fe600480360360208110156104e857600080fd5b81019080803590602001909291905050506110b2565b005b610508611534565b6040518082815260200191505060405180910390f35b6105946004803603608081101561053457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050611541565b005b61059e61196f565b005b6105e2600480360360208110156105b657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061197a565b005b610626600480360360208110156105fa57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061199a565b005b6106306119b9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61067a61105b565b151561068557600080fd5b61068e816119df565b50565b61069a33610740565b15156106a557600080fd5b600260009054906101000a900460ff1615156106c057600080fd5b6000600260006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6000610756826001611a3990919063ffffffff16565b9050919050565b6000600260009054906101000a900460ff16905090565b61077c61105b565b151561078757600080fd5b61079081611acd565b50565b6004818154811015156107a257fe5b90600052602060002090600402016000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905084565b61081b33611acd565b565b61082561105b565b151561083057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6108f833610740565b151561090357600080fd5b6004805490508310151561097f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f696e646578206973206f7574206f6620626f756e64000000000000000000000081525060200191505060405180910390fd5b6000821115156109f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f726174696f4454562063616e6e6f74206265207a65726f00000000000000000081525060200191505060405180910390fd5b600081111515610a6f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726174696f446563696d616c732063616e6e6f74206265207a65726f0000000081525060200191505060405180910390fd5b600483815481101515610a7e57fe5b906000526020600020906004020160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600484815481101515610ad557fe5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16847fee0eb5daf1e44595fa4c3dd68a2a475100c6c08435bed80599cfc2a0a353018e600487815481101515610b4e57fe5b906000526020600020906004020160020154600488815481101515610b6f57fe5b90600052602060002090600402016003015487876040518085815260200184815260200183815260200182815260200194505050505060405180910390a481600484815481101515610bbd57fe5b90600052602060002090600402016002018190555080600484815481101515610be257fe5b906000526020600020906004020160030181905550505050565b6000610c12826003611a3990919063ffffffff16565b9050919050565b610c2233610740565b1515610c2d57600080fd5b610c3681611b27565b50565b610c4161105b565b1515610c4c57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b610c6e33610740565b1515610c7957600080fd5b600260009054906101000a900460ff16151515610c9557600080fd5b6001600260006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b610d1e33610740565b1515610d2957600080fd5b60048054905081101515610da5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f696e646578206973206f7574206f6620626f756e64000000000000000000000081525060200191505060405180910390fd5b600481815481101515610db457fe5b906000526020600020906004020160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600482815481101515610e0b57fe5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16827fe9a043fd2807c21031fdccbb069758a045a57a96d8db6a60a0248cfad3bfb082600485815481101515610e8457fe5b906000526020600020906004020160020154600486815481101515610ea557fe5b906000526020600020906004020160030154604051808381526020018281526020019250505060405180910390a460008190505b60016004805490500381101561101857600460018201815481101515610efb57fe5b9060005260206000209060040201600482815481101515610f1857fe5b90600052602060002090600402016000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060028201548160020155600382015481600301559050508080600101915050610ed9565b50600480548091906001900361102e9190611ebd565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b600260009054906101000a900460ff161515156110ce57600080fd5b6110d733610bfc565b15156110e257600080fd5b60006111bb600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040160206040518083038186803b15801561116b57600080fd5b505afa15801561117f573d6000803e3d6000fd5b505050506040513d602081101561119557600080fd5b810190808051906020019092919050505060ff16600a0a83611b8190919063ffffffff16565b111515611213576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611fed6026913960400191505060405180910390fd5b600080905060008090505b6004805490508110156114ef57600060048281548110151561123c57fe5b90600052602060002090600402019050600061127e8260030154600a0a611270846002015488611bab90919063ffffffff16565b611b8190919063ffffffff16565b9050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8360000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168460010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156113c157600080fd5b505af11580156113d5573d6000803e3d6000fd5b505050506040513d60208110156113eb57600080fd5b8101908080519060200190929190505050506114108185611be990919063ffffffff16565b93508160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16427f4f8320e5423e7a248869328eacf23c5ccd0ca7ccc8b8223a149a74dec878ba8b856002015486600301548a876040518085815260200184815260200183815260200182815260200194505050505060405180910390a45050808060010191505061121e565b50427f47b6f7bd4d0829ff106b9f4d34205081e7cb05f95d22e5534608e5193954b3cd8383604051808381526020018281526020019250505060405180910390a25050565b6000600480549050905090565b61154a33610740565b151561155557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156115dd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180611fca6023913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611665576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180611fa76023913960400191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156116ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180611f6d603a913960400191505060405180910390fd5b600082111515611764576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f726174696f4454562063616e6e6f74206265207a65726f00000000000000000081525060200191505060405180910390fd5b6000811115156117dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726174696f446563696d616c732063616e6e6f74206265207a65726f0000000081525060200191505060405180910390fd5b60046080604051908101604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff168152602001848152602001838152509080600181540180825580915050906001820390600052602060002090600402016000909192909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160020155606082015181600301555050508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f92e3a88d0298e1bab0fe2d47a7e225ed413ca154b371fbfda18c9b22a55b459d8484604051808381526020018281526020019250505060405180910390a350505050565b611978336119df565b565b61198333610bfc565b151561198e57600080fd5b61199781611c0a565b50565b6119a261105b565b15156119ad57600080fd5b6119b681611c64565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6119f3816003611d5e90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f3525e22824a8a7df2c9a6029941c824cf95b6447f1e13d5128fd3826d35afe8b60405160405180910390a250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611a7657600080fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611ae1816001611d5e90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b611b3b816001611e0d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b60008082111515611b9157600080fd5b60008284811515611b9e57fe5b0490508091505092915050565b600080831415611bbe5760009050611be3565b60008284029050828482811515611bd157fe5b04141515611bde57600080fd5b809150505b92915050565b6000808284019050838110151515611c0057600080fd5b8091505092915050565b611c1e816003611e0d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f47d1c22a25bb3a5d4e481b9b1e6944c2eade3181a0a20b495ed61d35b5323f2460405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611ca057600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611d9a57600080fd5b611da48282611a39565b1515611daf57600080fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611e4957600080fd5b611e538282611a39565b151515611e5f57600080fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b815481835581811115611eea57600402816004028360005260206000209182019101611ee99190611eef565b5b505050565b611f6991905b80821115611f6557600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550600401611ef5565b5090565b9056fe6c6f636b656457616c6c657420616e6420756e6c6f636b57616c6c6574206164647265737365732063616e6e6f74206265207468652073616d65756e6c6f636b57616c6c657420616464726573732063616e6e6f74206265207a65726f6c6f636b656457616c6c657420616464726573732063616e6e6f74206265207a65726f6461696c79547261646564566f6c756d65206973206e6f7420696e20746f6b656e20756e6974a165627a7a72305820db542f69bfa89b7357f96c0f8be4897b08498574526f0bd5f341766cb6d85c6f0029000000000000000000000000420167d87d35c3a249b32ef6225872fbd9ab85d2
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061016a576000357c01000000000000000000000000000000000000000000000000000000009004806383197ef0116100e05780639c3e91d8116100995780639c3e91d814610500578063cf802e1e1461051e578063e5c8b03d14610596578063eb12d61e146105a0578063f2fde38b146105e4578063fc0c546a146106285761016a565b806383197ef0146104245780638456cb591461042e5780638d8e0acc146104385780638da5cb5b146104665780638f32d59b146104b057806391c05b0b146104d25761016a565b80636e1cd95f116101325780636e1cd95f1461027f5780636ef8d66d1461032e578063715018a614610338578063763b40b5146103425780637df73e271461038457806382dc1ec4146103e05761016a565b80630e316ab71461016f5780633f4ba83a146101b357806346fbf68e146101bd5780635c975abb146102195780636b2c0f551461023b575b600080fd5b6101b16004803603602081101561018557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610672565b005b6101bb610691565b005b6101ff600480360360208110156101d357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610740565b604051808215151515815260200191505060405180910390f35b61022161075d565b604051808215151515815260200191505060405180910390f35b61027d6004803603602081101561025157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610774565b005b6102ab6004803603602081101561029557600080fd5b8101908080359060200190929190505050610793565b604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200182815260200194505050505060405180910390f35b610336610812565b005b61034061081d565b005b6103826004803603606081101561035857600080fd5b810190808035906020019092919080359060200190929190803590602001909291905050506108ef565b005b6103c66004803603602081101561039a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610bfc565b604051808215151515815260200191505060405180910390f35b610422600480360360208110156103f657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610c19565b005b61042c610c39565b005b610436610c65565b005b6104646004803603602081101561044e57600080fd5b8101908080359060200190929190505050610d15565b005b61046e611032565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104b861105b565b604051808215151515815260200191505060405180910390f35b6104fe600480360360208110156104e857600080fd5b81019080803590602001909291905050506110b2565b005b610508611534565b6040518082815260200191505060405180910390f35b6105946004803603608081101561053457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190505050611541565b005b61059e61196f565b005b6105e2600480360360208110156105b657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061197a565b005b610626600480360360208110156105fa57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061199a565b005b6106306119b9565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61067a61105b565b151561068557600080fd5b61068e816119df565b50565b61069a33610740565b15156106a557600080fd5b600260009054906101000a900460ff1615156106c057600080fd5b6000600260006101000a81548160ff0219169083151502179055507f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b6000610756826001611a3990919063ffffffff16565b9050919050565b6000600260009054906101000a900460ff16905090565b61077c61105b565b151561078757600080fd5b61079081611acd565b50565b6004818154811015156107a257fe5b90600052602060002090600402016000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154905084565b61081b33611acd565b565b61082561105b565b151561083057600080fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6108f833610740565b151561090357600080fd5b6004805490508310151561097f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f696e646578206973206f7574206f6620626f756e64000000000000000000000081525060200191505060405180910390fd5b6000821115156109f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f726174696f4454562063616e6e6f74206265207a65726f00000000000000000081525060200191505060405180910390fd5b600081111515610a6f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726174696f446563696d616c732063616e6e6f74206265207a65726f0000000081525060200191505060405180910390fd5b600483815481101515610a7e57fe5b906000526020600020906004020160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600484815481101515610ad557fe5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16847fee0eb5daf1e44595fa4c3dd68a2a475100c6c08435bed80599cfc2a0a353018e600487815481101515610b4e57fe5b906000526020600020906004020160020154600488815481101515610b6f57fe5b90600052602060002090600402016003015487876040518085815260200184815260200183815260200182815260200194505050505060405180910390a481600484815481101515610bbd57fe5b90600052602060002090600402016002018190555080600484815481101515610be257fe5b906000526020600020906004020160030181905550505050565b6000610c12826003611a3990919063ffffffff16565b9050919050565b610c2233610740565b1515610c2d57600080fd5b610c3681611b27565b50565b610c4161105b565b1515610c4c57600080fd5b3373ffffffffffffffffffffffffffffffffffffffff16ff5b610c6e33610740565b1515610c7957600080fd5b600260009054906101000a900460ff16151515610c9557600080fd5b6001600260006101000a81548160ff0219169083151502179055507f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a25833604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a1565b610d1e33610740565b1515610d2957600080fd5b60048054905081101515610da5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f696e646578206973206f7574206f6620626f756e64000000000000000000000081525060200191505060405180910390fd5b600481815481101515610db457fe5b906000526020600020906004020160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600482815481101515610e0b57fe5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16827fe9a043fd2807c21031fdccbb069758a045a57a96d8db6a60a0248cfad3bfb082600485815481101515610e8457fe5b906000526020600020906004020160020154600486815481101515610ea557fe5b906000526020600020906004020160030154604051808381526020018281526020019250505060405180910390a460008190505b60016004805490500381101561101857600460018201815481101515610efb57fe5b9060005260206000209060040201600482815481101515610f1857fe5b90600052602060002090600402016000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060028201548160020155600382015481600301559050508080600101915050610ed9565b50600480548091906001900361102e9190611ebd565b5050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b600260009054906101000a900460ff161515156110ce57600080fd5b6110d733610bfc565b15156110e257600080fd5b60006111bb600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff167c010000000000000000000000000000000000000000000000000000000002815260040160206040518083038186803b15801561116b57600080fd5b505afa15801561117f573d6000803e3d6000fd5b505050506040513d602081101561119557600080fd5b810190808051906020019092919050505060ff16600a0a83611b8190919063ffffffff16565b111515611213576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611fed6026913960400191505060405180910390fd5b600080905060008090505b6004805490508110156114ef57600060048281548110151561123c57fe5b90600052602060002090600402019050600061127e8260030154600a0a611270846002015488611bab90919063ffffffff16565b611b8190919063ffffffff16565b9050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8360000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168460010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b1580156113c157600080fd5b505af11580156113d5573d6000803e3d6000fd5b505050506040513d60208110156113eb57600080fd5b8101908080519060200190929190505050506114108185611be990919063ffffffff16565b93508160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168260000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16427f4f8320e5423e7a248869328eacf23c5ccd0ca7ccc8b8223a149a74dec878ba8b856002015486600301548a876040518085815260200184815260200183815260200182815260200194505050505060405180910390a45050808060010191505061121e565b50427f47b6f7bd4d0829ff106b9f4d34205081e7cb05f95d22e5534608e5193954b3cd8383604051808381526020018281526020019250505060405180910390a25050565b6000600480549050905090565b61154a33610740565b151561155557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156115dd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180611fca6023913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515611665576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180611fa76023913960400191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141515156116ec576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603a815260200180611f6d603a913960400191505060405180910390fd5b600082111515611764576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f726174696f4454562063616e6e6f74206265207a65726f00000000000000000081525060200191505060405180910390fd5b6000811115156117dc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601c8152602001807f726174696f446563696d616c732063616e6e6f74206265207a65726f0000000081525060200191505060405180910390fd5b60046080604051908101604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff168152602001848152602001838152509080600181540180825580915050906001820390600052602060002090600402016000909192909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060408201518160020155606082015181600301555050508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f92e3a88d0298e1bab0fe2d47a7e225ed413ca154b371fbfda18c9b22a55b459d8484604051808381526020018281526020019250505060405180910390a350505050565b611978336119df565b565b61198333610bfc565b151561198e57600080fd5b61199781611c0a565b50565b6119a261105b565b15156119ad57600080fd5b6119b681611c64565b50565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6119f3816003611d5e90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f3525e22824a8a7df2c9a6029941c824cf95b6447f1e13d5128fd3826d35afe8b60405160405180910390a250565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614151515611a7657600080fd5b8260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b611ae1816001611d5e90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167fcd265ebaf09df2871cc7bd4133404a235ba12eff2041bb89d9c714a2621c7c7e60405160405180910390a250565b611b3b816001611e0d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f6719d08c1888103bea251a4ed56406bd0c3e69723c8a1686e017e7bbe159b6f860405160405180910390a250565b60008082111515611b9157600080fd5b60008284811515611b9e57fe5b0490508091505092915050565b600080831415611bbe5760009050611be3565b60008284029050828482811515611bd157fe5b04141515611bde57600080fd5b809150505b92915050565b6000808284019050838110151515611c0057600080fd5b8091505092915050565b611c1e816003611e0d90919063ffffffff16565b8073ffffffffffffffffffffffffffffffffffffffff167f47d1c22a25bb3a5d4e481b9b1e6944c2eade3181a0a20b495ed61d35b5323f2460405160405180910390a250565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611ca057600080fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611d9a57600080fd5b611da48282611a39565b1515611daf57600080fd5b60008260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611e4957600080fd5b611e538282611a39565b151515611e5f57600080fd5b60018260000160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b815481835581811115611eea57600402816004028360005260206000209182019101611ee99190611eef565b5b505050565b611f6991905b80821115611f6557600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556002820160009055600382016000905550600401611ef5565b5090565b9056fe6c6f636b656457616c6c657420616e6420756e6c6f636b57616c6c6574206164647265737365732063616e6e6f74206265207468652073616d65756e6c6f636b57616c6c657420616464726573732063616e6e6f74206265207a65726f6c6f636b656457616c6c657420616464726573732063616e6e6f74206265207a65726f6461696c79547261646564566f6c756d65206973206e6f7420696e20746f6b656e20756e6974a165627a7a72305820db542f69bfa89b7357f96c0f8be4897b08498574526f0bd5f341766cb6d85c6f0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000420167d87d35c3a249b32ef6225872fbd9ab85d2
-----Decoded View---------------
Arg [0] : _token (address): 0x420167D87d35c3A249b32Ef6225872fBD9aB85D2
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000420167d87d35c3a249b32ef6225872fbd9ab85d2
Deployed Bytecode Sourcemap
13369:1810:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13369:1810:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15083:91;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15083:91:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;4822:118;;;:::i;:::-;;3096:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3096:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4075:78;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;14986:91;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14986:91:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;7106:47;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7106:47:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3313:77;;;:::i;:::-;;12599:140;;;:::i;:::-;;8881:728;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8881:728:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2164:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2164:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3213:92;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3213:92:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;14907:73;;;:::i;:::-;;4611:116;;;:::i;:::-;;9615:640;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9615:640:0;;;;;;;;;;;;;;;;;:::i;:::-;;11886:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;12221:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;14067:834;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14067:834:0;;;;;;;;;;;;;;;;;:::i;:::-;;7836:135;;;:::i;:::-;;;;;;;;;;;;;;;;;;;8005:870;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;8005:870:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2381:77;;;:::i;:::-;;2281:92;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2281:92:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;12916:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12916:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;13516:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15083:91;12098:9;:7;:9::i;:::-;12090:18;;;;;;;;15146:22;15160:7;15146:13;:22::i;:::-;15083:91;:::o;4822:118::-;3047:20;3056:10;3047:8;:20::i;:::-;3039:29;;;;;;;;4491:7;;;;;;;;;;;4483:16;;;;;;;;4891:5;4881:7;;:15;;;;;;;;;;;;;;;;;;4912:20;4921:10;4912:20;;;;;;;;;;;;;;;;;;;;;;4822:118::o;3096:109::-;3152:4;3176:21;3189:7;3176:8;:12;;:21;;;;:::i;:::-;3169:28;;3096:109;;;:::o;4075:78::-;4114:4;4138:7;;;;;;;;;;;4131:14;;4075:78;:::o;14986:91::-;12098:9;:7;:9::i;:::-;12090:18;;;;;;;;15049:22;15063:7;15049:13;:22::i;:::-;14986:91;:::o;7106:47::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3313:77::-;3357:25;3371:10;3357:13;:25::i;:::-;3313:77::o;12599:140::-;12098:9;:7;:9::i;:::-;12090:18;;;;;;;;12698:1;12661:40;;12682:6;;;;;;;;;;;12661:40;;;;;;;;;;;;12729:1;12712:6;;:19;;;;;;;;;;;;;;;;;;12599:140::o;8881:728::-;3047:20;3056:10;3047:8;:20::i;:::-;3039:29;;;;;;;;9030:19;:26;;;;9022:5;:34;9014:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9108:1;9097:8;:12;9089:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9168:1;9152:13;:17;9144:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9309:19;9329:5;9309:26;;;;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;9214:273;;9261:19;9281:5;9261:26;;;;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;9214:273;;9247:5;9214:273;9357:19;9377:5;9357:26;;;;;;;;;;;;;;;;;;;;:35;;;9401:19;9421:5;9401:26;;;;;;;;;;;;;;;;;;;;:40;;;9450:8;9467:13;9214:273;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9532:8;9494:19;9514:5;9494:26;;;;;;;;;;;;;;;;;;;;:35;;:46;;;;9590:13;9547:19;9567:5;9547:26;;;;;;;;;;;;;;;;;;;;:40;;:56;;;;8881:728;;;:::o;2164:109::-;2220:4;2244:21;2257:7;2244:8;:12;;:21;;;;:::i;:::-;2237:28;;2164:109;;;:::o;3213:92::-;3047:20;3056:10;3047:8;:20::i;:::-;3039:29;;;;;;;;3278:19;3289:7;3278:10;:19::i;:::-;3213:92;:::o;14907:73::-;12098:9;:7;:9::i;:::-;12090:18;;;;;;;;14963:10;14950:24;;;4611:116;3047:20;3056:10;3047:8;:20::i;:::-;3039:29;;;;;;;;4312:7;;;;;;;;;;;4311:8;4303:17;;;;;;;;4681:4;4671:7;;:14;;;;;;;;;;;;;;;;;;4701:18;4708:10;4701:18;;;;;;;;;;;;;;;;;;;;;;4611:116::o;9615:640::-;3047:20;3056:10;3047:8;:20::i;:::-;3039:29;;;;;;;;9715:19;:26;;;;9707:5;:34;9699:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9875:19;9895:5;9875:26;;;;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;9779:235;;9827:19;9847:5;9827:26;;;;;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;9779:235;;9813:5;9779:235;9923:19;9943:5;9923:26;;;;;;;;;;;;;;;;;;;;:35;;;9967:19;9987:5;9967:26;;;;;;;;;;;;;;;;;;;;:40;;;9779:235;;;;;;;;;;;;;;;;;;;;;;;;10097:6;10106:5;10097:14;;10092:123;10142:1;10115:19;:26;;;;:28;10113:1;:30;10092:123;;;10183:19;10205:1;10203;:3;10183:24;;;;;;;;;;;;;;;;;;;;10158:19;10178:1;10158:22;;;;;;;;;;;;;;;;;;;;:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10145:3;;;;;;;10092:123;;;;10221:19;:28;;;;;;;;;;;;:::i;:::-;;9615:640;:::o;11886:79::-;11924:7;11951:6;;;;;;;;;;;11944:13;;11886:79;:::o;12221:92::-;12261:4;12299:6;;;;;;;;;;;12285:20;;:10;:20;;;12278:27;;12221:92;:::o;14067:834::-;4312:7;;;;;;;;;;;4311:8;4303:17;;;;;;;;2115:20;2124:10;2115:8;:20::i;:::-;2107:29;;;;;;;;14236:1;14179:54;14215:5;;;;;;;;;;;:14;;;:16;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14215:16:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14215:16:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14215:16:0;;;;;;;;;;;;;;;;14207:25;;14201:2;:31;14179:17;:21;;:54;;;;:::i;:::-;:58;14163:130;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14300:13;14316:1;14300:17;;14329:9;14341:1;14329:13;;14324:513;14348:19;:26;;;;14344:1;:30;14324:513;;;14390:29;14422:19;14442:1;14422:22;;;;;;;;;;;;;;;;;;;;14390:54;;14453:14;14470:62;14515:2;:16;;;14509:2;:22;14470:34;14492:2;:11;;;14470:17;:21;;:34;;;;:::i;:::-;:38;;:62;;;;:::i;:::-;14453:79;;14541:5;;;;;;;;;;;:18;;;14560:2;:15;;;;;;;;;;;;14577:2;:15;;;;;;;;;;;;14594:6;14541:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14541:60:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14541:60:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14541:60:0;;;;;;;;;;;;;;;;;14618:17;14628:6;14618:5;:9;;:17;;;;:::i;:::-;14610:25;;14711:2;:15;;;;;;;;;;;;14649:180;;14685:2;:15;;;;;;;;;;;;14649:180;;14671:3;14649:180;14737:2;:11;;;14759:2;:16;;;14786:17;14814:6;14649:180;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14324:513;;14376:3;;;;;;;14324:513;;;;14865:3;14848:47;14870:17;14889:5;14848:47;;;;;;;;;;;;;;;;;;;;;;;;2147:1;14067:834;:::o;7836:135::-;7906:14;7939:19;:26;;;;7932:33;;7836:135;:::o;8005:870::-;3047:20;3056:10;3047:8;:20::i;:::-;3039:29;;;;;;;;8203:1;8179:26;;:12;:26;;;;8171:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8284:1;8260:26;;:12;:26;;;;8252:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8357:12;8341:28;;:12;:28;;;;8333:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8458:1;8447:8;:12;8439:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8518:1;8502:13;:17;8494:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8559:19;8584:161;;;;;;;;;8626:12;8584:161;;;;;;8661:12;8584:161;;;;;;8692:8;8584:161;;;;8724:13;8584:161;;;8559:187;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;8559:187:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8811:12;8758:111;;8790:12;8758:111;;;8832:8;8849:13;8758:111;;;;;;;;;;;;;;;;;;;;;;;;8005:870;;;;:::o;2381:77::-;2425:25;2439:10;2425:13;:25::i;:::-;2381:77::o;2281:92::-;2115:20;2124:10;2115:8;:20::i;:::-;2107:29;;;;;;;;2346:19;2357:7;2346:10;:19::i;:::-;2281:92;:::o;12916:109::-;12098:9;:7;:9::i;:::-;12090:18;;;;;;;;12989:28;13008:8;12989:18;:28::i;:::-;12916:109;:::o;13516:26::-;;;;;;;;;;;;;:::o;2596:130::-;2656:24;2672:7;2656:8;:15;;:24;;;;:::i;:::-;2710:7;2696:22;;;;;;;;;;;;2596:130;:::o;11058:165::-;11130:4;11174:1;11155:21;;:7;:21;;;;11147:30;;;;;;;;11195:4;:11;;:20;11207:7;11195:20;;;;;;;;;;;;;;;;;;;;;;;;;11188:27;;11058:165;;;;:::o;3528:130::-;3588:24;3604:7;3588:8;:15;;:24;;;;:::i;:::-;3642:7;3628:22;;;;;;;;;;;;3528:130;:::o;3398:122::-;3455:21;3468:7;3455:8;:12;;:21;;;;:::i;:::-;3504:7;3492:20;;;;;;;;;;;;3398:122;:::o;5725:303::-;5783:7;5882:1;5878;:5;5870:14;;;;;;;;5895:9;5911:1;5907;:5;;;;;;;;5895:17;;6019:1;6012:8;;;5725:303;;;;:::o;5159:433::-;5217:7;5466:1;5461;:6;5457:47;;;5491:1;5484:8;;;;5457:47;5516:9;5532:1;5528;:5;5516:17;;5561:1;5556;5552;:5;;;;;;;;:10;5544:19;;;;;;;;5583:1;5576:8;;;5159:433;;;;;:::o;6400:150::-;6458:7;6478:9;6494:1;6490;:5;6478:17;;6519:1;6514;:6;;6506:15;;;;;;;;6541:1;6534:8;;;6400:150;;;;:::o;2466:122::-;2523:21;2536:7;2523:8;:12;;:21;;;;:::i;:::-;2572:7;2560:20;;;;;;;;;;;;2466:122;:::o;13175:187::-;13269:1;13249:22;;:8;:22;;;;13241:31;;;;;;;;13317:8;13288:38;;13309:6;;;;;;;;;;;13288:38;;;;;;;;;;;;13346:8;13337:6;;:17;;;;;;;;;;;;;;;;;;13175:187;:::o;10775:189::-;10874:1;10855:21;;:7;:21;;;;10847:30;;;;;;;;10896:18;10900:4;10906:7;10896:3;:18::i;:::-;10888:27;;;;;;;;10951:5;10928:4;:11;;:20;10940:7;10928:20;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;10775:189;;:::o;10510:186::-;10606:1;10587:21;;:7;:21;;;;10579:30;;;;;;;;10629:18;10633:4;10639:7;10629:3;:18::i;:::-;10628:19;10620:28;;;;;;;;10684:4;10661;:11;;:20;10673:7;10661:20;;;;;;;;;;;;;;;;:27;;;;;;;;;;;;;;;;;;10510:186;;:::o;13369:1810::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o
Swarm Source
bzzr://db542f69bfa89b7357f96c0f8be4897b08498574526f0bd5f341766cb6d85c6f
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.