Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 335 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Transfer | 8552309 | 2361 days ago | IN | 0 ETH | 0.00047296 | ||||
| Transfer | 8552304 | 2361 days ago | IN | 0 ETH | 0.00062296 | ||||
| Transfer | 8552284 | 2361 days ago | IN | 0 ETH | 0.00062296 | ||||
| Transfer | 8552268 | 2361 days ago | IN | 0 ETH | 0.00062296 | ||||
| Transfer | 8542925 | 2362 days ago | IN | 0 ETH | 0.00104051 | ||||
| Transfer | 8542925 | 2362 days ago | IN | 0 ETH | 0.0012646 | ||||
| Transfer | 8540331 | 2363 days ago | IN | 0 ETH | 0.00093568 | ||||
| Transfer | 8540294 | 2363 days ago | IN | 0 ETH | 0.00102924 | ||||
| Transfer | 8523783 | 2365 days ago | IN | 0 ETH | 0.00040612 | ||||
| Transfer | 8502220 | 2369 days ago | IN | 0 ETH | 0.00047058 | ||||
| Transfer | 8492924 | 2370 days ago | IN | 0 ETH | 0.00010636 | ||||
| Transfer | 8472274 | 2373 days ago | IN | 0 ETH | 0.00006446 | ||||
| Transfer | 8467801 | 2374 days ago | IN | 0 ETH | 0.0000304 | ||||
| Transfer | 8467801 | 2374 days ago | IN | 0 ETH | 0.00003552 | ||||
| Transfer | 8464093 | 2375 days ago | IN | 0 ETH | 0.00003223 | ||||
| Transfer | 8463983 | 2375 days ago | IN | 0 ETH | 0.00008273 | ||||
| Transfer | 8463983 | 2375 days ago | IN | 0 ETH | 0.00003223 | ||||
| Transfer | 8463186 | 2375 days ago | IN | 0 ETH | 0.00010636 | ||||
| Transfer | 8462372 | 2375 days ago | IN | 0 ETH | 0.00003867 | ||||
| Transfer | 8462357 | 2375 days ago | IN | 0 ETH | 0.00009688 | ||||
| Transfer | 8462284 | 2375 days ago | IN | 0 ETH | 0.00003223 | ||||
| Transfer | 8462073 | 2375 days ago | IN | 0 ETH | 0.00003223 | ||||
| Transfer | 8461967 | 2375 days ago | IN | 0 ETH | 0.00010636 | ||||
| Transfer | 8461612 | 2375 days ago | IN | 0 ETH | 0.00003223 | ||||
| Transfer | 8461587 | 2375 days ago | IN | 0 ETH | 0.00003223 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
EDBCToken
Compiler Version
v0.5.2+commit.1df8f40c
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2019-08-20
*/
/**
*Submitted for verification at Etherscan.io on 2019-08-02
*/
/**
*Submitted for verification at Etherscan.io on 2019-08-06
*/
pragma solidity ^0.5.2;
/**
* @dev Interface of the ERC777Token standard as defined in the EIP.
*
* This contract uses the
* [ERC1820 registry standard](https://eips.ethereum.org/EIPS/eip-1820) to let
* token holders and recipients react to token movements by using setting implementers
* for the associated interfaces in said registry. See `IERC1820Registry` and
* `ERC1820Implementer`.
*/
interface OwnIERC777 {
/**
* @dev Returns the name of the token.
*/
function name() external view returns (string memory);
/**
* @dev Returns the symbol of the token, usually a shorter version of the
* name.
*/
function symbol() external view returns (string memory);
/**
* @dev Returns the smallest part of the token that is not divisible. This
* means all token operations (creation, movement and destruction) must have
* amounts that are a multiple of this number.
*
* For most token contracts, this value will equal 1.
*/
function granularity() external view returns (uint256);
/**
* @dev Returns the amount of tokens in existence.
*/
function totalSupply() external view returns (uint256);
/**
* @dev Returns the amount of tokens owned by an account (`owner`).
*/
function balanceOf(address owner) external view returns (uint256);
event Sent(
address indexed operator,
address indexed from,
address indexed to,
uint256 amount,
bytes data,
bytes operatorData
);
}
/**
* @dev Interface of the ERC777TokensRecipient standard as defined in the EIP.
*
* Accounts can be notified of `IERC777` tokens being sent to them by having a
* contract implement this interface (contract holders can be their own
* implementer) and registering it on the
* [ERC1820 global registry](https://eips.ethereum.org/EIPS/eip-1820).
*
* See `IERC1820Registry` and `ERC1820Implementer`.
*/
interface IERC777Recipient {
/**
* @dev Called by an `IERC777` token contract whenever tokens are being
* moved or created into a registered account (`to`). The type of operation
* is conveyed by `from` being the zero address or not.
*
* This call occurs _after_ the token contract's state is updated, so
* `IERC777.balanceOf`, etc., can be used to query the post-operation state.
*
* This function may revert to prevent the operation from being executed.
*/
function tokensReceived(
address operator,
address from,
address to,
uint amount,
bytes calldata userData,
bytes calldata operatorData
) external;
}
/**
* @dev Interface of the ERC777TokensSender standard as defined in the EIP.
*
* `IERC777` Token holders can be notified of operations performed on their
* tokens by having a contract implement this interface (contract holders can be
* their own implementer) and registering it on the
* [ERC1820 global registry](https://eips.ethereum.org/EIPS/eip-1820).
*
* See `IERC1820Registry` and `ERC1820Implementer`.
*/
interface IERC777Sender {
/**
* @dev Called by an `IERC777` token contract whenever a registered holder's
* (`from`) tokens are about to be moved or destroyed. The type of operation
* is conveyed by `to` being the zero address or not.
*
* This call occurs _before_ the token contract's state is updated, so
* `IERC777.balanceOf`, etc., can be used to query the pre-operation state.
*
* This function may revert to prevent the operation from being executed.
*/
function tokensToSend(
address operator,
address from,
address to,
uint amount,
bytes calldata userData,
bytes calldata operatorData
) external;
}
/**
* @dev Interface of the ERC20 standard as defined in the EIP. Does not include
* the optional functions; to access them see `ERC20Detailed`.
*/
interface IERC20 {
/**
* @dev Returns the amount of tokens in existence.
*/
function totalSupply() external view returns (uint256);
/**
* @dev Returns the amount of tokens owned by `account`.
*/
function balanceOf(address account) external view returns (uint256);
/**
* @dev Moves `amount` tokens from the caller's account to `recipient`.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a `Transfer` event.
*/
function transfer(address recipient, uint256 amount) external returns (bool);
/**
* @dev Returns the remaining number of tokens that `spender` will be
* allowed to spend on behalf of `owner` through `transferFrom`. This is
* zero by default.
*
* This value changes when `approve` or `transferFrom` are called.
*/
function allowance(address owner, address spender) external view returns (uint256);
/**
* @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* > Beware that changing an allowance with this method brings the risk
* that someone may use both the old and the new allowance by unfortunate
* transaction ordering. One possible solution to mitigate this race
* condition is to first reduce the spender's allowance to 0 and set the
* desired value afterwards:
* https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
*
* Emits an `Approval` event.
*/
function approve(address spender, uint256 amount) external returns (bool);
/**
* @dev Moves `amount` tokens from `sender` to `recipient` using the
* allowance mechanism. `amount` is then deducted from the caller's
* allowance.
*
* Returns a boolean value indicating whether the operation succeeded.
*
* Emits a `Transfer` event.
*/
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
/**
* @dev Emitted when `value` tokens are moved from one account (`from`) to
* another (`to`).
*
* Note that `value` may be zero.
*/
event Transfer(address indexed from, address indexed to, uint256 value);
/**
* @dev Emitted when the allowance of a `spender` for an `owner` is set by
* a call to `approve`. `value` is the new allowance.
*/
event Approval(address indexed owner, address indexed spender, uint256 value);
}
/**
* @dev Wrappers over Solidity's arithmetic operations with added overflow
* checks.
*
* Arithmetic operations in Solidity wrap on overflow. This can easily result
* in bugs, because programmers usually assume that an overflow raises an
* error, which is the standard behavior in high level programming languages.
* `SafeMath` restores this intuition by reverting the transaction when an
* operation overflows.
*
* Using this library instead of the unchecked operations eliminates an entire
* class of bugs, so it's recommended to use it always.
*/
library SafeMath {
/**
* @dev Returns the addition of two unsigned integers, reverting on
* overflow.
*
* Counterpart to Solidity's `+` operator.
*
* Requirements:
* - Addition cannot overflow.
*/
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
/**
* @dev Returns the subtraction of two unsigned integers, reverting on
* overflow (when the result is negative).
*
* Counterpart to Solidity's `-` operator.
*
* Requirements:
* - Subtraction cannot overflow.
*/
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
require(b <= a, "SafeMath: subtraction overflow");
uint256 c = a - b;
return c;
}
/**
* @dev Returns the multiplication of two unsigned integers, reverting on
* overflow.
*
* Counterpart to Solidity's `*` operator.
*
* Requirements:
* - Multiplication cannot 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, "SafeMath: multiplication overflow");
return c;
}
/**
* @dev Returns the integer division of two unsigned integers. Reverts on
* division by zero. The result is rounded towards zero.
*
* Counterpart to Solidity's `/` operator. Note: this function uses a
* `revert` opcode (which leaves remaining gas untouched) while Solidity
* uses an invalid opcode to revert (consuming all remaining gas).
*
* Requirements:
* - The divisor cannot be zero.
*/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
// Solidity only automatically asserts when dividing by 0
require(b > 0, "SafeMath: division by zero");
uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
/**
* @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
* Reverts when dividing by zero.
*
* Counterpart to Solidity's `%` operator. This function uses a `revert`
* opcode (which leaves remaining gas untouched) while Solidity uses an
* invalid opcode to revert (consuming all remaining gas).
*
* Requirements:
* - The divisor cannot be zero.
*/
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
require(b != 0, "SafeMath: modulo by zero");
return a % b;
}
}
/**
* @dev Collection of functions related to the address type,
*/
library Address {
/**
* @dev Returns true if `account` is a contract.
*
* This test is non-exhaustive, and there may be false-negatives: during the
* execution of a contract's constructor, its address will be reported as
* not containing a contract.
*
* > It is unsafe to assume that an address for which this function returns
* false is an externally-owned account (EOA) and not a contract.
*/
function isContract(address account) internal view returns (bool) {
// This method relies in extcodesize, which returns 0 for contracts in
// construction, since the code is only stored at the end of the
// constructor execution.
uint256 size;
// solhint-disable-next-line no-inline-assembly
assembly { size := extcodesize(account) }
return size > 0;
}
}
/**
* @dev Interface of the global ERC1820 Registry, as defined in the
* [EIP](https://eips.ethereum.org/EIPS/eip-1820). Accounts may register
* implementers for interfaces in this registry, as well as query support.
*
* Implementers may be shared by multiple accounts, and can also implement more
* than a single interface for each account. Contracts can implement interfaces
* for themselves, but externally-owned accounts (EOA) must delegate this to a
* contract.
*
* `IERC165` interfaces can also be queried via the registry.
*
* For an in-depth explanation and source code analysis, see the EIP text.
*/
interface IERC1820Registry {
/**
* @dev Sets `newManager` as the manager for `account`. A manager of an
* account is able to set interface implementers for it.
*
* By default, each account is its own manager. Passing a value of `0x0` in
* `newManager` will reset the manager to this initial state.
*
* Emits a `ManagerChanged` event.
*
* Requirements:
*
* - the caller must be the current manager for `account`.
*/
function setManager(address account, address newManager) external;
/**
* @dev Returns the manager for `account`.
*
* See `setManager`.
*/
function getManager(address account) external view returns (address);
/**
* @dev Sets the `implementer` contract as `account`'s implementer for
* `interfaceHash`.
*
* `account` being the zero address is an alias for the caller's address.
* The zero address can also be used in `implementer` to remove an old one.
*
* See `interfaceHash` to learn how these are created.
*
* Emits an `InterfaceImplementerSet` event.
*
* Requirements:
*
* - the caller must be the current manager for `account`.
* - `interfaceHash` must not be an `IERC165` interface id (i.e. it must not
* end in 28 zeroes).
* - `implementer` must implement `IERC1820Implementer` and return true when
* queried for support, unless `implementer` is the caller. See
* `IERC1820Implementer.canImplementInterfaceForAddress`.
*/
function setInterfaceImplementer(address account, bytes32 interfaceHash, address implementer) external;
/**
* @dev Returns the implementer of `interfaceHash` for `account`. If no such
* implementer is registered, returns the zero address.
*
* If `interfaceHash` is an `IERC165` interface id (i.e. it ends with 28
* zeroes), `account` will be queried for support of it.
*
* `account` being the zero address is an alias for the caller's address.
*/
function getInterfaceImplementer(address account, bytes32 interfaceHash) external view returns (address);
/**
* @dev Returns the interface hash for an `interfaceName`, as defined in the
* corresponding
* [section of the EIP](https://eips.ethereum.org/EIPS/eip-1820#interface-name).
*/
function interfaceHash(string calldata interfaceName) external pure returns (bytes32);
/**
* @notice Updates the cache with whether the contract implements an ERC165 interface or not.
* @param account Address of the contract for which to update the cache.
* @param interfaceId ERC165 interface for which to update the cache.
*/
function updateERC165Cache(address account, bytes4 interfaceId) external;
/**
* @notice Checks whether a contract implements an ERC165 interface or not.
* If the result is not cached a direct lookup on the contract address is performed.
* If the result is not cached or the cached value is out-of-date, the cache MUST be updated manually by calling
* 'updateERC165Cache' with the contract address.
* @param account Address of the contract to check.
* @param interfaceId ERC165 interface to check.
* @return True if `account.address()` implements `interfaceId`, false otherwise.
*/
function implementsERC165Interface(address account, bytes4 interfaceId) external view returns (bool);
/**
* @notice Checks whether a contract implements an ERC165 interface or not without using nor updating the cache.
* @param account Address of the contract to check.
* @param interfaceId ERC165 interface to check.
* @return True if `account.address()` implements `interfaceId`, false otherwise.
*/
function implementsERC165InterfaceNoCache(address account, bytes4 interfaceId) external view returns (bool);
event InterfaceImplementerSet(address indexed account, bytes32 indexed interfaceHash, address indexed implementer);
event ManagerChanged(address indexed account, address indexed newManager);
}
/**
* @dev Implementation of the `IERC777` interface.
*
* This implementation is agnostic to the way tokens are created. This means
* that a supply mechanism has to be added in a derived contract using `_mint`.
*
* Support for ERC20 is included in this contract, as specified by the EIP: both
* the ERC777 and ERC20 interfaces can be safely used when interacting with it.
* Both `IERC777.Sent` and `IERC20.Transfer` events are emitted on token
* movements.
*
* Additionally, the `granularity` value is hard-coded to `1`, meaning that there
* are no special restrictions in the amount of tokens that created, moved, or
* destroyed. This makes integration with ERC20 applications seamless.
*/
contract OwnERC777 is OwnIERC777, IERC20 {
using SafeMath for uint256;
using Address for address;
mapping(address => uint256) internal _balances;
uint256 internal _totalSupply;
string internal _name;
string internal _symbol;
// ERC20-allowances
mapping (address => mapping (address => uint256)) private _allowances;
IERC1820Registry private _erc1820 = IERC1820Registry(0x1820a4B7618BdE71Dce8cdc73aAB6C95905faD24);
// keccak256("ERC777TokensSender")
bytes32 constant private TOKENS_SENDER_INTERFACE_HASH =
0x29ddb589b1fb5fc7cf394961c1adf5f8c6454761adf795e67fe149f658abe895;
// keccak256("ERC777TokensRecipient")
bytes32 constant private TOKENS_RECIPIENT_INTERFACE_HASH =
0xb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b;
constructor() public {
// register interfaces
_erc1820.setInterfaceImplementer(address(this), keccak256("ERC777Token"), address(this));
_erc1820.setInterfaceImplementer(address(this), keccak256("ERC20Token"), address(this));
}
/**
* @dev See `IERC777.name`.
*/
function name() public view returns (string memory) {
return _name;
}
/**
* @dev See `IERC777.symbol`.
*/
function symbol() public view returns (string memory) {
return _symbol;
}
/**
* @dev See `ERC20Detailed.decimals`.
*
* Always returns 18, as per the
* [ERC777 EIP](https://eips.ethereum.org/EIPS/eip-777#backward-compatibility).
*/
function decimals() public pure returns (uint8) {
return 18;
}
/**
* @dev See `IERC777.granularity`.
*
* This implementation always returns `1`.
*/
function granularity() public view returns (uint256) {
return 1;
}
/**
* @dev See `IERC777.totalSupply`.
*/
function totalSupply() public view returns (uint256) {
return _totalSupply;
}
/**
* @dev Returns the amount of tokens owned by an account (`tokenHolder`).
*/
function balanceOf(address tokenHolder) public view returns (uint256) {
return _balances[tokenHolder];
}
/**
* @dev See `IERC20.transfer`.
*
* Unlike `send`, `recipient` is _not_ required to implement the `tokensReceived`
* interface if it is a contract.
*
* Also emits a `Sent` event.
*/
function transfer(address recipient, uint256 amount) external returns (bool) {
require(recipient != address(0), "ERC777: transfer to the zero address");
address from = msg.sender;
_callTokensToSend(from, from, recipient, amount, "", "");
_move(from, from, recipient, amount, "", "");
_callTokensReceived(from, from, recipient, amount, "", "", false);
return true;
}
/**
* @dev See `IERC20.allowance`.
*
* Note that operator and allowance concepts are orthogonal: operators may
* not have allowance, and accounts with allowance may not be operators
* themselves.
*/
function allowance(address holder, address spender) public view returns (uint256) {
return _allowances[holder][spender];
}
/**
* @dev See `IERC20.approve`.
*
* Note that accounts cannot have allowance issued by their operators.
*/
function approve(address spender, uint256 value) external returns (bool) {
address holder = msg.sender;
_approve(holder, spender, value);
return true;
}
/**
* @dev See `IERC20.transferFrom`.
*
* Note that operator and allowance concepts are orthogonal: operators cannot
* call `transferFrom` (unless they have allowance), and accounts with
* allowance cannot call `operatorSend` (unless they are operators).
*
* Emits `Sent` and `Transfer` events.
*/
function transferFrom(address holder, address recipient, uint256 amount) external returns (bool) {
require(recipient != address(0), "ERC777: transfer to the zero address");
require(holder != address(0), "ERC777: transfer from the zero address");
address spender = msg.sender;
_callTokensToSend(spender, holder, recipient, amount, "", "");
_move(spender, holder, recipient, amount, "", "");
_approve(holder, spender, _allowances[holder][spender].sub(amount));
_callTokensReceived(spender, holder, recipient, amount, "", "", false);
return true;
}
function _move(
address operator,
address from,
address to,
uint256 amount,
bytes memory userData,
bytes memory operatorData
)
private
{
_balances[from] = _balances[from].sub(amount);
_balances[to] = _balances[to].add(amount);
emit Sent(operator, from, to, amount, userData, operatorData);
emit Transfer(from, to, amount);
}
function _approve(address holder, address spender, uint256 value) private {
// TODO: restore this require statement if this function becomes internal, or is called at a new callsite. It is
// currently unnecessary.
//require(holder != address(0), "ERC777: approve from the zero address");
require(spender != address(0), "ERC777: approve to the zero address");
_allowances[holder][spender] = value;
emit Approval(holder, spender, value);
}
/**
* @dev Call from.tokensToSend() if the interface is registered
* @param operator address operator requesting the transfer
* @param from address token holder address
* @param to address recipient address
* @param amount uint256 amount of tokens to transfer
* @param userData bytes extra information provided by the token holder (if any)
* @param operatorData bytes extra information provided by the operator (if any)
*/
function _callTokensToSend(
address operator,
address from,
address to,
uint256 amount,
bytes memory userData,
bytes memory operatorData
)
private
{
address implementer = _erc1820.getInterfaceImplementer(from, TOKENS_SENDER_INTERFACE_HASH);
if (implementer != address(0)) {
IERC777Sender(implementer).tokensToSend(operator, from, to, amount, userData, operatorData);
}
}
/**
* @dev Call to.tokensReceived() if the interface is registered. Reverts if the recipient is a contract but
* tokensReceived() was not registered for the recipient
* @param operator address operator requesting the transfer
* @param from address token holder address
* @param to address recipient address
* @param amount uint256 amount of tokens to transfer
* @param userData bytes extra information provided by the token holder (if any)
* @param operatorData bytes extra information provided by the operator (if any)
* @param requireReceptionAck if true, contract recipients are required to implement ERC777TokensRecipient
*/
function _callTokensReceived(
address operator,
address from,
address to,
uint256 amount,
bytes memory userData,
bytes memory operatorData,
bool requireReceptionAck
)
private
{
address implementer = _erc1820.getInterfaceImplementer(to, TOKENS_RECIPIENT_INTERFACE_HASH);
if (implementer != address(0)) {
IERC777Recipient(implementer).tokensReceived(operator, from, to, amount, userData, operatorData);
} else if (requireReceptionAck) {
require(!to.isContract(), "ERC777: token recipient contract has no implementer for ERC777TokensRecipient");
}
}
}
contract EDBCToken is OwnERC777 {
constructor() public{
_name = "EDBC";
_symbol = "EDBC";
_totalSupply = 100000000000000000000000000000;
_balances[msg.sender] = _totalSupply;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"spender","type":"address"},{"name":"value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"holder","type":"address"},{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"granularity","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"tokenHolder","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"recipient","type":"address"},{"name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"holder","type":"address"},{"name":"spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"operator","type":"address"},{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"data","type":"bytes"},{"indexed":false,"name":"operatorData","type":"bytes"}],"name":"Sent","type":"event"}]Contract Creation Code
608060405260058054600160a060020a031916731820a4b7618bde71dce8cdc73aab6c95905fad241790553480156200003757600080fd5b50600554604080517f455243373737546f6b656e0000000000000000000000000000000000000000008152815190819003600b0181207f29965a1d0000000000000000000000000000000000000000000000000000000082523060048301819052602483019190915260448201529051600160a060020a03909216916329965a1d9160648082019260009290919082900301818387803b158015620000db57600080fd5b505af1158015620000f0573d6000803e3d6000fd5b5050600554604080517f4552433230546f6b656e000000000000000000000000000000000000000000008152815190819003600a0181207f29965a1d0000000000000000000000000000000000000000000000000000000082523060048301819052602483019190915260448201529051600160a060020a0390921693506329965a1d925060648082019260009290919082900301818387803b1580156200019757600080fd5b505af1158015620001ac573d6000803e3d6000fd5b50506040805180820190915260048082527f45444243000000000000000000000000000000000000000000000000000000006020909201918252620001f693506002925062000267565b506040805180820190915260048082527f454442430000000000000000000000000000000000000000000000000000000060209092019182526200023d9160039162000267565b506c01431e0fae6d7217caa00000006001819055336000908152602081905260409020556200030c565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002aa57805160ff1916838001178555620002da565b82800160010185558215620002da579182015b82811115620002da578251825591602001919060010190620002bd565b50620002e8929150620002ec565b5090565b6200030991905b80821115620002e85760008155600101620002f3565b90565b610f7c806200031c6000396000f3fe608060405234801561001057600080fd5b50600436106100a25760003560e060020a90048063556f0dc71161006a578063556f0dc7146101d257806370a08231146101da57806395d89b4114610200578063a9059cbb14610208578063dd62ed3e14610234576100a2565b806306fdde03146100a7578063095ea7b31461012457806318160ddd1461016457806323b872dd1461017e578063313ce567146101b4575b600080fd5b6100af610262565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100e95781810151838201526020016100d1565b50505050905090810190601f1680156101165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101506004803603604081101561013a57600080fd5b50600160a060020a0381351690602001356102f5565b604080519115158252519081900360200190f35b61016c61030d565b60408051918252519081900360200190f35b6101506004803603606081101561019457600080fd5b50600160a060020a03813581169160208101359091169060400135610313565b6101bc610488565b6040805160ff9092168252519081900360200190f35b61016c61048d565b61016c600480360360208110156101f057600080fd5b5035600160a060020a0316610492565b6100af6104ad565b6101506004803603604081101561021e57600080fd5b50600160a060020a03813516906020013561050e565b61016c6004803603604081101561024a57600080fd5b50600160a060020a03813581169160200135166105eb565b60028054604080516020601f60001961010060018716150201909416859004938401819004810282018101909252828152606093909290918301828280156102eb5780601f106102c0576101008083540402835291602001916102eb565b820191906000526020600020905b8154815290600101906020018083116102ce57829003601f168201915b5050505050905090565b600033610303818585610616565b5060019392505050565b60015490565b6000600160a060020a038316151561035f5760405160e560020a62461bcd028152600401808060200182810382526024815260200180610ee46024913960400191505060405180910390fd5b600160a060020a03841615156103a95760405160e560020a62461bcd028152600401808060200182810382526026815260200180610f086026913960400191505060405180910390fd5b60003390506103dc81868686602060405190810160405280600081525060206040519081016040528060008152506106c2565b61040a8186868660206040519081016040528060008152506020604051908101604052806000815250610919565b600160a060020a0380861660009081526004602090815260408083209385168352929052205461044d9086908390610448908763ffffffff610b1816565b610616565b61047d81868686602060405190810160405280600081525060206040519081016040528060008152506000610b78565b506001949350505050565b601290565b600190565b600160a060020a031660009081526020819052604090205490565b60038054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156102eb5780601f106102c0576101008083540402835291602001916102eb565b6000600160a060020a038316151561055a5760405160e560020a62461bcd028152600401808060200182810382526024815260200180610ee46024913960400191505060405180910390fd5b600033905061058d81828686602060405190810160405280600081525060206040519081016040528060008152506106c2565b6105bb8182868660206040519081016040528060008152506020604051908101604052806000815250610919565b61030381828686602060405190810160405280600081525060206040519081016040528060008152506000610b78565b600160a060020a03918216600090815260046020908152604080832093909416825291909152205490565b600160a060020a03821615156106605760405160e560020a62461bcd028152600401808060200182810382526023815260200180610f2e6023913960400191505060405180910390fd5b600160a060020a03808416600081815260046020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b600554604080517faabbb8ca000000000000000000000000000000000000000000000000000000008152600160a060020a0388811660048301527f29ddb589b1fb5fc7cf394961c1adf5f8c6454761adf795e67fe149f658abe89560248301529151600093929092169163aabbb8ca91604480820192602092909190829003018186803b15801561075257600080fd5b505afa158015610766573d6000803e3d6000fd5b505050506040513d602081101561077c57600080fd5b50519050600160a060020a038116156109105780600160a060020a03166375ab97828888888888886040518763ffffffff1660e060020a0281526004018087600160a060020a0316600160a060020a0316815260200186600160a060020a0316600160a060020a0316815260200185600160a060020a0316600160a060020a031681526020018481526020018060200180602001838103835285818151815260200191508051906020019080838360005b8381101561084557818101518382015260200161082d565b50505050905090810190601f1680156108725780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b838110156108a557818101518382015260200161088d565b50505050905090810190601f1680156108d25780820380516001836020036101000a031916815260200191505b5098505050505050505050600060405180830381600087803b1580156108f757600080fd5b505af115801561090b573d6000803e3d6000fd5b505050505b50505050505050565b600160a060020a038516600090815260208190526040902054610942908463ffffffff610b1816565b600160a060020a038087166000908152602081905260408082209390935590861681522054610977908463ffffffff610e2a16565b60008086600160a060020a0316600160a060020a031681526020019081526020016000208190555083600160a060020a031685600160a060020a031687600160a060020a03167f06b541ddaa720db2b10a4d0cdac39b8d360425fc073085fac19bc82614677987868686604051808481526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610a28578181015183820152602001610a10565b50505050905090810190601f168015610a555780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610a88578181015183820152602001610a70565b50505050905090810190601f168015610ab55780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a483600160a060020a031685600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3505050505050565b600082821115610b72576040805160e560020a62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600554604080517faabbb8ca000000000000000000000000000000000000000000000000000000008152600160a060020a0388811660048301527fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b60248301529151600093929092169163aabbb8ca91604480820192602092909190829003018186803b158015610c0857600080fd5b505afa158015610c1c573d6000803e3d6000fd5b505050506040513d6020811015610c3257600080fd5b50519050600160a060020a03811615610dc95780600160a060020a03166223de298989898989896040518763ffffffff1660e060020a0281526004018087600160a060020a0316600160a060020a0316815260200186600160a060020a0316600160a060020a0316815260200185600160a060020a0316600160a060020a031681526020018481526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610cfa578181015183820152602001610ce2565b50505050905090810190601f168015610d275780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d5a578181015183820152602001610d42565b50505050905090810190601f168015610d875780820380516001836020036101000a031916815260200191505b5098505050505050505050600060405180830381600087803b158015610dac57600080fd5b505af1158015610dc0573d6000803e3d6000fd5b50505050610e20565b8115610e2057610de186600160a060020a0316610e8e565b15610e205760405160e560020a62461bcd02815260040180806020018281038252604d815260200180610e97604d913960600191505060405180910390fd5b5050505050505050565b600082820183811015610e87576040805160e560020a62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000903b119056fe4552433737373a20746f6b656e20726563697069656e7420636f6e747261637420686173206e6f20696d706c656d656e74657220666f7220455243373737546f6b656e73526563697069656e744552433737373a207472616e7366657220746f20746865207a65726f20616464726573734552433737373a207472616e736665722066726f6d20746865207a65726f20616464726573734552433737373a20617070726f766520746f20746865207a65726f2061646472657373a165627a7a7230582016750a991946d9f26a3dc9ce67ddc183c69cc49e827bce21fe4daff6772a9eff0029
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100a25760003560e060020a90048063556f0dc71161006a578063556f0dc7146101d257806370a08231146101da57806395d89b4114610200578063a9059cbb14610208578063dd62ed3e14610234576100a2565b806306fdde03146100a7578063095ea7b31461012457806318160ddd1461016457806323b872dd1461017e578063313ce567146101b4575b600080fd5b6100af610262565b6040805160208082528351818301528351919283929083019185019080838360005b838110156100e95781810151838201526020016100d1565b50505050905090810190601f1680156101165780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101506004803603604081101561013a57600080fd5b50600160a060020a0381351690602001356102f5565b604080519115158252519081900360200190f35b61016c61030d565b60408051918252519081900360200190f35b6101506004803603606081101561019457600080fd5b50600160a060020a03813581169160208101359091169060400135610313565b6101bc610488565b6040805160ff9092168252519081900360200190f35b61016c61048d565b61016c600480360360208110156101f057600080fd5b5035600160a060020a0316610492565b6100af6104ad565b6101506004803603604081101561021e57600080fd5b50600160a060020a03813516906020013561050e565b61016c6004803603604081101561024a57600080fd5b50600160a060020a03813581169160200135166105eb565b60028054604080516020601f60001961010060018716150201909416859004938401819004810282018101909252828152606093909290918301828280156102eb5780601f106102c0576101008083540402835291602001916102eb565b820191906000526020600020905b8154815290600101906020018083116102ce57829003601f168201915b5050505050905090565b600033610303818585610616565b5060019392505050565b60015490565b6000600160a060020a038316151561035f5760405160e560020a62461bcd028152600401808060200182810382526024815260200180610ee46024913960400191505060405180910390fd5b600160a060020a03841615156103a95760405160e560020a62461bcd028152600401808060200182810382526026815260200180610f086026913960400191505060405180910390fd5b60003390506103dc81868686602060405190810160405280600081525060206040519081016040528060008152506106c2565b61040a8186868660206040519081016040528060008152506020604051908101604052806000815250610919565b600160a060020a0380861660009081526004602090815260408083209385168352929052205461044d9086908390610448908763ffffffff610b1816565b610616565b61047d81868686602060405190810160405280600081525060206040519081016040528060008152506000610b78565b506001949350505050565b601290565b600190565b600160a060020a031660009081526020819052604090205490565b60038054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156102eb5780601f106102c0576101008083540402835291602001916102eb565b6000600160a060020a038316151561055a5760405160e560020a62461bcd028152600401808060200182810382526024815260200180610ee46024913960400191505060405180910390fd5b600033905061058d81828686602060405190810160405280600081525060206040519081016040528060008152506106c2565b6105bb8182868660206040519081016040528060008152506020604051908101604052806000815250610919565b61030381828686602060405190810160405280600081525060206040519081016040528060008152506000610b78565b600160a060020a03918216600090815260046020908152604080832093909416825291909152205490565b600160a060020a03821615156106605760405160e560020a62461bcd028152600401808060200182810382526023815260200180610f2e6023913960400191505060405180910390fd5b600160a060020a03808416600081815260046020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b600554604080517faabbb8ca000000000000000000000000000000000000000000000000000000008152600160a060020a0388811660048301527f29ddb589b1fb5fc7cf394961c1adf5f8c6454761adf795e67fe149f658abe89560248301529151600093929092169163aabbb8ca91604480820192602092909190829003018186803b15801561075257600080fd5b505afa158015610766573d6000803e3d6000fd5b505050506040513d602081101561077c57600080fd5b50519050600160a060020a038116156109105780600160a060020a03166375ab97828888888888886040518763ffffffff1660e060020a0281526004018087600160a060020a0316600160a060020a0316815260200186600160a060020a0316600160a060020a0316815260200185600160a060020a0316600160a060020a031681526020018481526020018060200180602001838103835285818151815260200191508051906020019080838360005b8381101561084557818101518382015260200161082d565b50505050905090810190601f1680156108725780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b838110156108a557818101518382015260200161088d565b50505050905090810190601f1680156108d25780820380516001836020036101000a031916815260200191505b5098505050505050505050600060405180830381600087803b1580156108f757600080fd5b505af115801561090b573d6000803e3d6000fd5b505050505b50505050505050565b600160a060020a038516600090815260208190526040902054610942908463ffffffff610b1816565b600160a060020a038087166000908152602081905260408082209390935590861681522054610977908463ffffffff610e2a16565b60008086600160a060020a0316600160a060020a031681526020019081526020016000208190555083600160a060020a031685600160a060020a031687600160a060020a03167f06b541ddaa720db2b10a4d0cdac39b8d360425fc073085fac19bc82614677987868686604051808481526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610a28578181015183820152602001610a10565b50505050905090810190601f168015610a555780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610a88578181015183820152602001610a70565b50505050905090810190601f168015610ab55780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a483600160a060020a031685600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3505050505050565b600082821115610b72576040805160e560020a62461bcd02815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600554604080517faabbb8ca000000000000000000000000000000000000000000000000000000008152600160a060020a0388811660048301527fb281fc8c12954d22544db45de3159a39272895b169a852b314f9cc762e44c53b60248301529151600093929092169163aabbb8ca91604480820192602092909190829003018186803b158015610c0857600080fd5b505afa158015610c1c573d6000803e3d6000fd5b505050506040513d6020811015610c3257600080fd5b50519050600160a060020a03811615610dc95780600160a060020a03166223de298989898989896040518763ffffffff1660e060020a0281526004018087600160a060020a0316600160a060020a0316815260200186600160a060020a0316600160a060020a0316815260200185600160a060020a0316600160a060020a031681526020018481526020018060200180602001838103835285818151815260200191508051906020019080838360005b83811015610cfa578181015183820152602001610ce2565b50505050905090810190601f168015610d275780820380516001836020036101000a031916815260200191505b50838103825284518152845160209182019186019080838360005b83811015610d5a578181015183820152602001610d42565b50505050905090810190601f168015610d875780820380516001836020036101000a031916815260200191505b5098505050505050505050600060405180830381600087803b158015610dac57600080fd5b505af1158015610dc0573d6000803e3d6000fd5b50505050610e20565b8115610e2057610de186600160a060020a0316610e8e565b15610e205760405160e560020a62461bcd02815260040180806020018281038252604d815260200180610e97604d913960600191505060405180910390fd5b5050505050505050565b600082820183811015610e87576040805160e560020a62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6000903b119056fe4552433737373a20746f6b656e20726563697069656e7420636f6e747261637420686173206e6f20696d706c656d656e74657220666f7220455243373737546f6b656e73526563697069656e744552433737373a207472616e7366657220746f20746865207a65726f20616464726573734552433737373a207472616e736665722066726f6d20746865207a65726f20616464726573734552433737373a20617070726f766520746f20746865207a65726f2061646472657373a165627a7a7230582016750a991946d9f26a3dc9ce67ddc183c69cc49e827bce21fe4daff6772a9eff0029
Deployed Bytecode Sourcemap
24930:225:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24930:225:0;;;;;;;;-1:-1:-1;;;24930:225:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18140:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;18140:83:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20433:184;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;20433:184:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;18915:91;;;:::i;:::-;;;;;;;;;;;;;;;;20967:632;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;20967:632:0;;;;;;;;;;;;;;;;;:::i;18571:76::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18769:80;;;:::i;19111:118::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;19111:118:0;-1:-1:-1;;;;;19111:118:0;;:::i;18284:87::-;;;:::i;19468:434::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;19468:434:0;;;;;;;;:::i;20152:136::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;20152:136:0;;;;;;;;;;:::i;18140:83::-;18210:5;18203:12;;;;;;;-1:-1:-1;;18203:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18177:13;;18203:12;;18210:5;;18203:12;;18210:5;18203:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18140:83;:::o;20433:184::-;20500:4;20534:10;20555:32;20534:10;20572:7;20581:5;20555:8;:32::i;:::-;-1:-1:-1;20605:4:0;;20433:184;-1:-1:-1;;;20433:184:0:o;18915:91::-;18986:12;;18915:91;:::o;20967:632::-;21058:4;-1:-1:-1;;;;;21083:23:0;;;;21075:72;;;;-1:-1:-1;;;;;21075:72:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21166:20:0;;;;21158:71;;;;-1:-1:-1;;;;;21158:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21242:15;21260:10;21242:28;;21283:61;21301:7;21310:6;21318:9;21329:6;21283:61;;;;;;;;;;;;;;;;;;;;;;;;;;:17;:61::i;:::-;21357:49;21363:7;21372:6;21380:9;21391:6;21357:49;;;;;;;;;;;;;;;;;;;;;;;;;;:5;:49::i;:::-;-1:-1:-1;;;;;21443:19:0;;;;;;;:11;:19;;;;;;;;:28;;;;;;;;;;21417:67;;21426:6;;21434:7;;21443:40;;21476:6;21443:40;:32;:40;:::i;:::-;21417:8;:67::i;:::-;21497:70;21517:7;21526:6;21534:9;21545:6;21497:70;;;;;;;;;;;;;;;;;;;;;;;;;;21561:5;21497:19;:70::i;:::-;-1:-1:-1;21587:4:0;;20967:632;-1:-1:-1;;;;20967:632:0:o;18571:76::-;18637:2;18571:76;:::o;18769:80::-;18840:1;18769:80;:::o;19111:118::-;-1:-1:-1;;;;;19199:22:0;19172:7;19199:22;;;;;;;;;;;;19111:118::o;18284:87::-;18356:7;18349:14;;;;;;;;-1:-1:-1;;18349:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18323:13;;18349:14;;18356:7;;18349:14;;18356:7;18349:14;;;;;;;;;;;;;;;;;;;;;;;;19468:434;19539:4;-1:-1:-1;;;;;19564:23:0;;;;19556:72;;;;-1:-1:-1;;;;;19556:72:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19641:12;19656:10;19641:25;;19679:56;19697:4;19703;19709:9;19720:6;19679:56;;;;;;;;;;;;;;;;;;;;;;;;;;:17;:56::i;:::-;19748:44;19754:4;19760;19766:9;19777:6;19748:44;;;;;;;;;;;;;;;;;;;;;;;;;;:5;:44::i;:::-;19805:65;19825:4;19831;19837:9;19848:6;19805:65;;;;;;;;;;;;;;;;;;;;;;;;;;19864:5;19805:19;:65::i;20152:136::-;-1:-1:-1;;;;;20252:19:0;;;20225:7;20252:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;20152:136::o;22055:499::-;-1:-1:-1;;;;;22388:21:0;;;;22380:69;;;;-1:-1:-1;;;;;22380:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;22462:19:0;;;;;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;:36;;;22514:32;;;;;;;;;;;;;;;;;22055:499;;;:::o;23038:488::-;23291:8;;:68;;;;;;-1:-1:-1;;;;;23291:68:0;;;;;;;17562:66;23291:68;;;;;;23269:19;;23291:8;;;;;:32;;:68;;;;;;;;;;;;;;;:8;:68;;;5:2:-1;;;;30:1;27;20:12;5:2;23291:68:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;23291:68:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;23291:68:0;;-1:-1:-1;;;;;;23374:25:0;;;23370:149;;23430:11;-1:-1:-1;;;;;23416:39:0;;23456:8;23466:4;23472:2;23476:6;23484:8;23494:12;23416:91;;;;;-1:-1:-1;;;23416:91:0;;;;;;;-1:-1:-1;;;;;23416:91:0;-1:-1:-1;;;;;23416:91:0;;;;;;-1:-1:-1;;;;;23416:91:0;-1:-1:-1;;;;;23416:91:0;;;;;;-1:-1:-1;;;;;23416:91:0;-1:-1:-1;;;;;23416:91:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;23416:91:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;23416:91:0;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;23416:91:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23416:91:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;23416:91:0;;;;23370:149;23038:488;;;;;;;:::o;21607:440::-;-1:-1:-1;;;;;21844:15:0;;:9;:15;;;;;;;;;;;:27;;21864:6;21844:27;:19;:27;:::i;:::-;-1:-1:-1;;;;;21826:15:0;;;:9;:15;;;;;;;;;;;:45;;;;21898:13;;;;;;;:25;;21916:6;21898:25;:17;:25;:::i;:::-;21882:9;:13;21892:2;-1:-1:-1;;;;;21882:13:0;-1:-1:-1;;;;;21882:13:0;;;;;;;;;;;;:41;;;;21962:2;-1:-1:-1;;;;;21941:56:0;21956:4;-1:-1:-1;;;;;21941:56:0;21946:8;-1:-1:-1;;;;;21941:56:0;;21966:6;21974:8;21984:12;21941:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;21941:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;21941:56:0;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;21941:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22028:2;-1:-1:-1;;;;;22013:26:0;22022:4;-1:-1:-1;;;;;22013:26:0;;22032:6;22013:26;;;;;;;;;;;;;;;;;;21607:440;;;;;;:::o;8143:184::-;8201:7;8229:6;;;;8221:49;;;;;-1:-1:-1;;;;;8221:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8293:5:0;;;8143:184::o;24228:695::-;24518:8;;:69;;;;;;-1:-1:-1;;;;;24518:69:0;;;;;;;17748:66;24518:69;;;;;;24496:19;;24518:8;;;;;:32;;:69;;;;;;;;;;;;;;;:8;:69;;;5:2:-1;;;;30:1;27;20:12;5:2;24518:69:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;24518:69:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;24518:69:0;;-1:-1:-1;;;;;;24602:25:0;;;24598:318;;24661:11;-1:-1:-1;;;;;24644:44:0;;24689:8;24699:4;24705:2;24709:6;24717:8;24727:12;24644:96;;;;;-1:-1:-1;;;24644:96:0;;;;;;;-1:-1:-1;;;;;24644:96:0;-1:-1:-1;;;;;24644:96:0;;;;;;-1:-1:-1;;;;;24644:96:0;-1:-1:-1;;;;;24644:96:0;;;;;;-1:-1:-1;;;;;24644:96:0;-1:-1:-1;;;;;24644:96:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;24644:96:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;24644:96:0;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;24644:96:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24644:96:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;24644:96:0;;;;24598:318;;;24762:19;24758:158;;;24807:15;:2;-1:-1:-1;;;;;24807:13:0;;:15::i;:::-;24806:16;24798:106;;;;-1:-1:-1;;;;;24798:106:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24228:695;;;;;;;;:::o;7687:181::-;7745:7;7777:5;;;7801:6;;;;7793:46;;;;;-1:-1:-1;;;;;7793:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7859:1;7687:181;-1:-1:-1;;;7687:181:0:o;10998:422::-;11058:4;11365:20;;11404:8;;10998:422::o
Swarm Source
bzzr://16750a991946d9f26a3dc9ce67ddc183c69cc49e827bce21fe4daff6772a9eff
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 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.