Source Code
Latest 24 from a total of 24 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Trigger Token Se... | 16040140 | 1198 days ago | IN | 0 ETH | 0.00526814 | ||||
| Trigger Token Se... | 15624232 | 1256 days ago | IN | 0 ETH | 0.0039602 | ||||
| Trigger Token Se... | 15446690 | 1283 days ago | IN | 0 ETH | 0.01210892 | ||||
| Trigger Token Se... | 15217694 | 1319 days ago | IN | 0 ETH | 0.00478445 | ||||
| Trigger Token Se... | 15033904 | 1348 days ago | IN | 0 ETH | 0.01392066 | ||||
| Trigger Token Se... | 14842195 | 1381 days ago | IN | 0 ETH | 0.01493966 | ||||
| Trigger Token Se... | 14785738 | 1390 days ago | IN | 0 ETH | 0.00735665 | ||||
| Trigger Token Se... | 14456351 | 1442 days ago | IN | 0 ETH | 0.03857906 | ||||
| Trigger Token Se... | 14310640 | 1465 days ago | IN | 0 ETH | 0.02706505 | ||||
| Trigger Token Se... | 14129555 | 1493 days ago | IN | 0 ETH | 0.06057646 | ||||
| Trigger Token Se... | 13935115 | 1523 days ago | IN | 0 ETH | 0.05323522 | ||||
| Trigger Token Se... | 13690343 | 1561 days ago | IN | 0 ETH | 0.04623368 | ||||
| Trigger Token Se... | 13494428 | 1592 days ago | IN | 0 ETH | 0.08531565 | ||||
| Trigger Token Se... | 13296188 | 1623 days ago | IN | 0 ETH | 0.0501281 | ||||
| Trigger Token Se... | 13103531 | 1653 days ago | IN | 0 ETH | 0.05591058 | ||||
| Trigger Token Se... | 12888793 | 1686 days ago | IN | 0 ETH | 0.01365501 | ||||
| Trigger Token Se... | 12703864 | 1715 days ago | IN | 0 ETH | 0.02730174 | ||||
| Trigger Token Se... | 12496982 | 1747 days ago | IN | 0 ETH | 0.03639128 | ||||
| Trigger Token Se... | 12309308 | 1776 days ago | IN | 0 ETH | 0.02123338 | ||||
| Trigger Token Se... | 12111557 | 1807 days ago | IN | 0 ETH | 0.05035725 | ||||
| Trigger Token Se... | 11893651 | 1840 days ago | IN | 0 ETH | 0.05864757 | ||||
| Transfer Ownersh... | 11893635 | 1840 days ago | IN | 0 ETH | 0.00616 | ||||
| Set TGE Date | 11893633 | 1840 days ago | IN | 0 ETH | 0.0086404 | ||||
| Set Token Addres... | 11893628 | 1840 days ago | IN | 0 ETH | 0.0088424 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
DistibutionContract5
Compiler Version
v0.5.8+commit.23d335f2
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2021-02-20
*/
/**
*Submitted for verification at Etherscan.io on 2020-09-28
*/
/**
*Submitted for verification at Etherscan.io on 2018-09-01
*/
pragma solidity 0.5.8;
// File: openzeppelin-solidity/contracts/token/ERC20/ERC20Basic.sol
/**
* @title ERC20Basic
* @dev Simpler version of ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/179
*/
contract ERC20Basic {
function totalSupply() public view returns (uint256);
function balanceOf(address who) public view returns (uint256);
function transfer(address to, uint256 value) public returns (bool);
event Transfer(address indexed from, address indexed to, 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) {
return sub(a, b, "SafeMath: subtraction overflow");
}
/**
* @dev Returns the subtraction of two unsigned integers, reverting with custom message on
* overflow (when the result is negative).
*
* Counterpart to Solidity's `-` operator.
*
* Requirements:
* - Subtraction cannot overflow.
*
* _Available since v2.4.0._
*/
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b <= a, errorMessage);
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-contracts/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) {
return div(a, b, "SafeMath: division by zero");
}
/**
* @dev Returns the integer division of two unsigned integers. Reverts with custom message 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.
*
* _Available since v2.4.0._
*/
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
// Solidity only automatically asserts when dividing by 0
require(b > 0, errorMessage);
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) {
return mod(a, b, "SafeMath: modulo by zero");
}
/**
* @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
* Reverts with custom message 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.
*
* _Available since v2.4.0._
*/
function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b != 0, errorMessage);
return a % b;
}
}
// File: openzeppelin-solidity/contracts/token/ERC20/ERC20.sol
/**
* @title ERC20 interface
* @dev see https://github.com/ethereum/EIPs/issues/20
*/
contract ERC20 is ERC20Basic {
function allowance(address owner, address spender) public view returns (uint256);
function transferFrom(address from, address to, uint256 value) public returns (bool);
function approve(address spender, uint256 value) public returns (bool);
event Approval(address indexed owner, address indexed spender, uint256 value);
}
// File: openzeppelin-solidity/contracts/ownership/Ownable.sol
/**
* @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 public 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() public {
owner = msg.sender;
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
require(msg.sender == owner);
_;
}
/**
* @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 {
require(newOwner != address(0));
emit OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
}
// File: openzeppelin-solidity/contracts/lifecycle/Pausable.sol
/**
* @title Pausable
* @dev Base contract which allows children to implement an emergency stop mechanism.
*/
contract Pausable is Ownable {
event Pause();
event Unpause();
bool public paused = false;
/**
* @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() onlyOwner whenNotPaused public {
paused = true;
emit Pause();
}
/**
* @dev called by the owner to unpause, returns to normal state
*/
function unpause() onlyOwner whenPaused public {
paused = false;
emit Unpause();
}
}
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this program. If not, see <https://www.gnu.org/licenses/>.
contract DistibutionContract5 is Pausable {
using SafeMath for uint256;
uint256 constant public decimals = 1 ether;
address[] public tokenOwners ; /* Tracks distributions mapping (iterable) */
uint256 public TGEDate = 0; /* Date From where the distribution starts (TGE) */
uint256 constant public month = 30 days;
uint256 constant public year = 365 days;
uint256 public lastDateDistribution = 0;
mapping(address => DistributionStep[]) public distributions; /* Distribution object */
ERC20 public erc20;
struct DistributionStep {
uint256 amountAllocated;
uint256 currentAllocated;
uint256 unlockDay;
uint256 amountSent;
}
constructor() public{
/* Sale */
setInitialDistribution(0x31363A1Ea107891a0620395c8E8077C0e392eA48, 6250000, 0 /* No Lock */);
/* Marketing */
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 2000000, 0 /* No Lock */);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 1*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 2*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 3*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 4*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 5*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 6*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 7*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 8*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 9*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 10*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 11*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 12*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 13*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 14*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 15*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 16*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 17*month);
setInitialDistribution(0xd9de139e7e3504558B19d2C8a1f41Ca311b07034, 1000000, 18*month);
/* Liquidity Fund */
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 0 /* No Lock */);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 1*month);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 2*month);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 3*month);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 4*month);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 5*month);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 6*month);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 7*month);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 8*month);
setInitialDistribution(0x1b84a9c353F4735853BDcf0A50f383E7aAf2CDFf, 2200000, 9*month);
/* Team & Advisors */
setInitialDistribution(0x2AF1Ca32A2dC0a857cFfbf73f7758FB6501e2C26, 2500000, year);
setInitialDistribution(0x2AF1Ca32A2dC0a857cFfbf73f7758FB6501e2C26, 2500000, year.add(3*month));
setInitialDistribution(0x2AF1Ca32A2dC0a857cFfbf73f7758FB6501e2C26, 2500000, year.add(6*month));
setInitialDistribution(0x2AF1Ca32A2dC0a857cFfbf73f7758FB6501e2C26, 2500000, year.add(9*month));
/* Foundational Reserve */
setInitialDistribution(0xA6e4Cd65E5C02902025475Ab10EdA4153a1C6B7b, 5000000, year);
setInitialDistribution(0xA6e4Cd65E5C02902025475Ab10EdA4153a1C6B7b, 5000000, year.add(3*month));
setInitialDistribution(0xA6e4Cd65E5C02902025475Ab10EdA4153a1C6B7b, 5000000, year.add(6*month));
setInitialDistribution(0xA6e4Cd65E5C02902025475Ab10EdA4153a1C6B7b, 5000000, year.add(9*month));
}
function setTokenAddress(address _tokenAddress) external onlyOwner whenNotPaused {
erc20 = ERC20(_tokenAddress);
}
function safeGuardAllTokens(address _address) external onlyOwner whenPaused { /* In case of needed urgency for the sake of contract bug */
require(erc20.transfer(_address, erc20.balanceOf(address(this))));
}
function setTGEDate(uint256 _time) external onlyOwner whenNotPaused {
TGEDate = _time;
}
/**
* Should allow any address to trigger it, but since the calls are atomic it should do only once per day
*/
function triggerTokenSend() external whenNotPaused {
/* Require TGE Date already been set */
require(TGEDate != 0, "TGE date not set yet");
/* TGE has not started */
require(block.timestamp > TGEDate, "TGE still hasn´t started");
/* Test that the call be only done once per day */
require(block.timestamp.sub(lastDateDistribution) > 1 days, "Can only be called once a day");
lastDateDistribution = block.timestamp;
/* Go thru all tokenOwners */
for(uint i = 0; i < tokenOwners.length; i++) {
/* Get Address Distribution */
DistributionStep[] memory d = distributions[tokenOwners[i]];
/* Go thru all distributions array */
for(uint j = 0; j < d.length; j++){
if( (block.timestamp.sub(TGEDate) > d[j].unlockDay) /* Verify if unlockDay has passed */
&& (d[j].currentAllocated > 0) /* Verify if currentAllocated > 0, so that address has tokens to be sent still */
){
uint256 sendingAmount;
sendingAmount = d[j].currentAllocated;
distributions[tokenOwners[i]][j].currentAllocated = distributions[tokenOwners[i]][j].currentAllocated.sub(sendingAmount);
distributions[tokenOwners[i]][j].amountSent = distributions[tokenOwners[i]][j].amountSent.add(sendingAmount);
require(erc20.transfer(tokenOwners[i], sendingAmount));
}
}
}
}
function setInitialDistribution(address _address, uint256 _tokenAmount, uint256 _unlockDays) internal onlyOwner whenNotPaused {
/* Add tokenOwner to Eachable Mapping */
bool isAddressPresent = false;
/* Verify if tokenOwner was already added */
for(uint i = 0; i < tokenOwners.length; i++) {
if(tokenOwners[i] == _address){
isAddressPresent = true;
}
}
/* Create DistributionStep Object */
DistributionStep memory distributionStep = DistributionStep(_tokenAmount * decimals, _tokenAmount * decimals, _unlockDays, 0);
/* Attach */
distributions[_address].push(distributionStep);
/* If Address not present in array of iterable token owners */
if(!isAddressPresent){
tokenOwners.push(_address);
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":false,"inputs":[{"name":"_tokenAddress","type":"address"}],"name":"setTokenAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"},{"name":"","type":"uint256"}],"name":"distributions","outputs":[{"name":"amountAllocated","type":"uint256"},{"name":"currentAllocated","type":"uint256"},{"name":"unlockDay","type":"uint256"},{"name":"amountSent","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_time","type":"uint256"}],"name":"setTGEDate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"unpause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"paused","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"month","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastDateDistribution","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"erc20","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"triggerTokenSend","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"pause","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_address","type":"address"}],"name":"safeGuardAllTokens","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"TGEDate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"year","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"tokenOwners","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[],"name":"Unpause","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]Contract Creation Code
608060405260008054600160a01b60ff021916815560028190556003553480156200002957600080fd5b50600080546001600160a01b0319163317815562000069907331363a1ea107891a0620395c8e8077c0e392ea4890625f5e109062000732602090811b901c565b6200008f600080516020620015e8833981519152621e848060006200073260201b60201c565b620000ba600080516020620015e8833981519152620f424062278d006001026200073260201b60201c565b620000e5600080516020620015e8833981519152620f424062278d006002026200073260201b60201c565b62000110600080516020620015e8833981519152620f424062278d006003026200073260201b60201c565b6200013b600080516020620015e8833981519152620f424062278d006004026200073260201b60201c565b62000166600080516020620015e8833981519152620f424062278d006005026200073260201b60201c565b62000191600080516020620015e8833981519152620f424062278d006006026200073260201b60201c565b620001bc600080516020620015e8833981519152620f424062278d006007026200073260201b60201c565b620001e7600080516020620015e8833981519152620f424062278d006008026200073260201b60201c565b62000212600080516020620015e8833981519152620f424062278d006009026200073260201b60201c565b6200023d600080516020620015e8833981519152620f424062278d00600a026200073260201b60201c565b62000268600080516020620015e8833981519152620f424062278d00600b026200073260201b60201c565b62000293600080516020620015e8833981519152620f424062278d00600c026200073260201b60201c565b620002be600080516020620015e8833981519152620f424062278d00600d026200073260201b60201c565b620002e9600080516020620015e8833981519152620f424062278d00600e026200073260201b60201c565b62000314600080516020620015e8833981519152620f424062278d00600f026200073260201b60201c565b6200033f600080516020620015e8833981519152620f424062278d006010026200073260201b60201c565b6200036a600080516020620015e8833981519152620f424062278d006011026200073260201b60201c565b62000395600080516020620015e8833981519152620f424062278d006012026200073260201b60201c565b620003bb60008051602062001608833981519152622191c060006200073260201b60201c565b620003e660008051602062001608833981519152622191c062278d006001026200073260201b60201c565b6200041160008051602062001608833981519152622191c062278d006002026200073260201b60201c565b6200043c60008051602062001608833981519152622191c062278d006003026200073260201b60201c565b6200046760008051602062001608833981519152622191c062278d006004026200073260201b60201c565b6200049260008051602062001608833981519152622191c062278d006005026200073260201b60201c565b620004bd60008051602062001608833981519152622191c062278d006006026200073260201b60201c565b620004e860008051602062001608833981519152622191c062278d006007026200073260201b60201c565b6200051360008051602062001608833981519152622191c062278d006008026200073260201b60201c565b6200053e60008051602062001608833981519152622191c062278d006009026200073260201b60201c565b6200056c732af1ca32a2dc0a857cffbf73f7758fb6501e2c26622625a06301e133806200073260201b60201c565b620005b9732af1ca32a2dc0a857cffbf73f7758fb6501e2c26622625a0620005ad62278d006003026301e13380620008a260201b62000b6f1790919060201c565b6200073260201b60201c565b620005fa732af1ca32a2dc0a857cffbf73f7758fb6501e2c26622625a0620005ad62278d006006026301e13380620008a260201b62000b6f1790919060201c565b6200063b732af1ca32a2dc0a857cffbf73f7758fb6501e2c26622625a0620005ad62278d006009026301e13380620008a260201b62000b6f1790919060201c565b6200066973a6e4cd65e5c02902025475ab10eda4153a1c6b7b624c4b406301e133806200073260201b60201c565b620006aa73a6e4cd65e5c02902025475ab10eda4153a1c6b7b624c4b40620005ad62278d006003026301e13380620008a260201b62000b6f1790919060201c565b620006eb73a6e4cd65e5c02902025475ab10eda4153a1c6b7b624c4b40620005ad62278d006006026301e13380620008a260201b62000b6f1790919060201c565b6200072c73a6e4cd65e5c02902025475ab10eda4153a1c6b7b624c4b40620005ad62278d006009026301e13380620008a260201b62000b6f1790919060201c565b62000946565b6000546001600160a01b031633146200074a57600080fd5b60005474010000000000000000000000000000000000000000900460ff16156200077357600080fd5b6000805b600154811015620007c457846001600160a01b0316600182815481106200079a57fe5b6000918252602090912001546001600160a01b03161415620007bb57600191505b60010162000777565b50620007cf6200091e565b5060408051608081018252670de0b6b3a7640000850280825260208083019182528284018681526000606085018181526001600160a01b038b168252600480855296822080546001818101835591845294909220865194909702909601928355925192820192909255905160028201559151600390920191909155816200089b576001805480820182556000919091527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319166001600160a01b0387161790555b5050505050565b6000828201838110156200091757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6040518060800160405280600081526020016000815260200160008152602001600081525090565b610c9280620009566000396000f3fe608060405234801561001057600080fd5b506004361061010b5760003560e01c8063785e9e86116100a2578063b90c72ae11610071578063b90c72ae14610231578063cb12872814610257578063f2fde38b1461025f578063f326971614610285578063f8a14f461461028d5761010b565b8063785e9e86146101f557806383e2ad63146102195780638456cb59146102215780638da5cb5b146102295761010b565b80633f4ba83a116100de5780633f4ba83a146101c15780635c975abb146101c9578063702921f5146101e557806376093957146101ed5761010b565b806326a4e8d2146101105780632d9b4b2514610138578063313ce5671461018a57806332a01103146101a4575b600080fd5b6101366004803603602081101561012657600080fd5b50356001600160a01b03166102aa565b005b6101646004803603604081101561014e57600080fd5b506001600160a01b0381351690602001356102fa565b604080519485526020850193909352838301919091526060830152519081900360800190f35b61019261033d565b60408051918252519081900360200190f35b610136600480360360208110156101ba57600080fd5b5035610349565b61013661037c565b6101d16103e2565b604080519115158252519081900360200190f35b6101926103f2565b6101926103f9565b6101fd6103ff565b604080516001600160a01b039092168252519081900360200190f35b61013661040e565b6101366108c1565b6101fd61092e565b6101366004803603602081101561024757600080fd5b50356001600160a01b031661093d565b610192610a6c565b6101366004803603602081101561027557600080fd5b50356001600160a01b0316610a72565b610192610af7565b6101fd600480360360208110156102a357600080fd5b5035610aff565b6000546001600160a01b031633146102c157600080fd5b600054600160a01b900460ff16156102d857600080fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052816000526040600020818154811061031357fe5b60009182526020909120600490910201805460018201546002830154600390930154919450925084565b670de0b6b3a764000081565b6000546001600160a01b0316331461036057600080fd5b600054600160a01b900460ff161561037757600080fd5b600255565b6000546001600160a01b0316331461039357600080fd5b600054600160a01b900460ff166103a957600080fd5b60008054600160a01b60ff02191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a1565b600054600160a01b900460ff1681565b62278d0081565b60035481565b6005546001600160a01b031681565b600054600160a01b900460ff161561042557600080fd5b60025461047c5760408051600160e51b62461bcd02815260206004820152601460248201527f5447452064617465206e6f742073657420796574000000000000000000000000604482015290519081900360640190fd5b60025442116104d55760408051600160e51b62461bcd02815260206004820152601960248201527f544745207374696c6c206861736ec2b474207374617274656400000000000000604482015290519081900360640190fd5b620151806104ee60035442610b2690919063ffffffff16565b116105435760408051600160e51b62461bcd02815260206004820152601d60248201527f43616e206f6e6c792062652063616c6c6564206f6e6365206120646179000000604482015290519081900360640190fd5b4260035560005b6001548110156108be576060600460006001848154811061056757fe5b60009182526020808320909101546001600160a01b031683528281019390935260409182018120805483518186028101860190945280845292939092919084015b828210156106025783829060005260206000209060040201604051806080016040529081600082015481526020016001820154815260200160028201548152602001600382015481525050815260200190600101906105a8565b509293506000925050505b81518110156108b45781818151811061062257fe5b60200260200101516040015161064360025442610b2690919063ffffffff16565b1180156106675750600082828151811061065957fe5b602002602001015160200151115b156108ac57600082828151811061067a57fe5b60200260200101516020015190506106ed81600460006001888154811061069d57fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190208054859081106106cd57fe5b906000526020600020906004020160010154610b2690919063ffffffff16565b60046000600187815481106106fe57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902080548490811061072e57fe5b9060005260206000209060040201600101819055506107a881600460006001888154811061075857fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902080548590811061078857fe5b906000526020600020906004020160030154610b6f90919063ffffffff16565b60046000600187815481106107b957fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190208054849081106107e957fe5b6000918252602090912060036004909202010155600554600180546001600160a01b039092169163a9059cbb91908790811061082157fe5b60009182526020808320909101546040805163ffffffff861660e01b81526001600160a01b039092166004830152602482018790525160448083019491928390030190829087803b15801561087557600080fd5b505af1158015610889573d6000803e3d6000fd5b505050506040513d602081101561089f57600080fd5b50516108aa57600080fd5b505b60010161060d565b505060010161054a565b50565b6000546001600160a01b031633146108d857600080fd5b600054600160a01b900460ff16156108ef57600080fd5b60008054600160a01b60ff021916600160a01b1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a1565b6000546001600160a01b031681565b6000546001600160a01b0316331461095457600080fd5b600054600160a01b900460ff1661096a57600080fd5b60055460408051600160e01b6370a0823102815230600482015290516001600160a01b039092169163a9059cbb91849184916370a08231916024808301926020929190829003018186803b1580156109c157600080fd5b505afa1580156109d5573d6000803e3d6000fd5b505050506040513d60208110156109eb57600080fd5b50516040805163ffffffff851660e01b81526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b158015610a3757600080fd5b505af1158015610a4b573d6000803e3d6000fd5b505050506040513d6020811015610a6157600080fd5b50516108be57600080fd5b60025481565b6000546001600160a01b03163314610a8957600080fd5b6001600160a01b038116610a9c57600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6301e1338081565b60018181548110610b0c57fe5b6000918252602090912001546001600160a01b0316905081565b6000610b6883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610bcc565b9392505050565b600082820183811015610b685760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008184841115610c5e57604051600160e51b62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c23578181015183820152602001610c0b565b50505050905090810190601f168015610c505780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fea165627a7a7230582099e06fdc2334e51296c7a47e77f649077b85caea26058298656ab180ef181c950029000000000000000000000000d9de139e7e3504558b19d2c8a1f41ca311b070340000000000000000000000001b84a9c353f4735853bdcf0a50f383e7aaf2cdff
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061010b5760003560e01c8063785e9e86116100a2578063b90c72ae11610071578063b90c72ae14610231578063cb12872814610257578063f2fde38b1461025f578063f326971614610285578063f8a14f461461028d5761010b565b8063785e9e86146101f557806383e2ad63146102195780638456cb59146102215780638da5cb5b146102295761010b565b80633f4ba83a116100de5780633f4ba83a146101c15780635c975abb146101c9578063702921f5146101e557806376093957146101ed5761010b565b806326a4e8d2146101105780632d9b4b2514610138578063313ce5671461018a57806332a01103146101a4575b600080fd5b6101366004803603602081101561012657600080fd5b50356001600160a01b03166102aa565b005b6101646004803603604081101561014e57600080fd5b506001600160a01b0381351690602001356102fa565b604080519485526020850193909352838301919091526060830152519081900360800190f35b61019261033d565b60408051918252519081900360200190f35b610136600480360360208110156101ba57600080fd5b5035610349565b61013661037c565b6101d16103e2565b604080519115158252519081900360200190f35b6101926103f2565b6101926103f9565b6101fd6103ff565b604080516001600160a01b039092168252519081900360200190f35b61013661040e565b6101366108c1565b6101fd61092e565b6101366004803603602081101561024757600080fd5b50356001600160a01b031661093d565b610192610a6c565b6101366004803603602081101561027557600080fd5b50356001600160a01b0316610a72565b610192610af7565b6101fd600480360360208110156102a357600080fd5b5035610aff565b6000546001600160a01b031633146102c157600080fd5b600054600160a01b900460ff16156102d857600080fd5b600580546001600160a01b0319166001600160a01b0392909216919091179055565b6004602052816000526040600020818154811061031357fe5b60009182526020909120600490910201805460018201546002830154600390930154919450925084565b670de0b6b3a764000081565b6000546001600160a01b0316331461036057600080fd5b600054600160a01b900460ff161561037757600080fd5b600255565b6000546001600160a01b0316331461039357600080fd5b600054600160a01b900460ff166103a957600080fd5b60008054600160a01b60ff02191681556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b339190a1565b600054600160a01b900460ff1681565b62278d0081565b60035481565b6005546001600160a01b031681565b600054600160a01b900460ff161561042557600080fd5b60025461047c5760408051600160e51b62461bcd02815260206004820152601460248201527f5447452064617465206e6f742073657420796574000000000000000000000000604482015290519081900360640190fd5b60025442116104d55760408051600160e51b62461bcd02815260206004820152601960248201527f544745207374696c6c206861736ec2b474207374617274656400000000000000604482015290519081900360640190fd5b620151806104ee60035442610b2690919063ffffffff16565b116105435760408051600160e51b62461bcd02815260206004820152601d60248201527f43616e206f6e6c792062652063616c6c6564206f6e6365206120646179000000604482015290519081900360640190fd5b4260035560005b6001548110156108be576060600460006001848154811061056757fe5b60009182526020808320909101546001600160a01b031683528281019390935260409182018120805483518186028101860190945280845292939092919084015b828210156106025783829060005260206000209060040201604051806080016040529081600082015481526020016001820154815260200160028201548152602001600382015481525050815260200190600101906105a8565b509293506000925050505b81518110156108b45781818151811061062257fe5b60200260200101516040015161064360025442610b2690919063ffffffff16565b1180156106675750600082828151811061065957fe5b602002602001015160200151115b156108ac57600082828151811061067a57fe5b60200260200101516020015190506106ed81600460006001888154811061069d57fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190208054859081106106cd57fe5b906000526020600020906004020160010154610b2690919063ffffffff16565b60046000600187815481106106fe57fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902080548490811061072e57fe5b9060005260206000209060040201600101819055506107a881600460006001888154811061075857fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902080548590811061078857fe5b906000526020600020906004020160030154610b6f90919063ffffffff16565b60046000600187815481106107b957fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190208054849081106107e957fe5b6000918252602090912060036004909202010155600554600180546001600160a01b039092169163a9059cbb91908790811061082157fe5b60009182526020808320909101546040805163ffffffff861660e01b81526001600160a01b039092166004830152602482018790525160448083019491928390030190829087803b15801561087557600080fd5b505af1158015610889573d6000803e3d6000fd5b505050506040513d602081101561089f57600080fd5b50516108aa57600080fd5b505b60010161060d565b505060010161054a565b50565b6000546001600160a01b031633146108d857600080fd5b600054600160a01b900460ff16156108ef57600080fd5b60008054600160a01b60ff021916600160a01b1781556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff6259190a1565b6000546001600160a01b031681565b6000546001600160a01b0316331461095457600080fd5b600054600160a01b900460ff1661096a57600080fd5b60055460408051600160e01b6370a0823102815230600482015290516001600160a01b039092169163a9059cbb91849184916370a08231916024808301926020929190829003018186803b1580156109c157600080fd5b505afa1580156109d5573d6000803e3d6000fd5b505050506040513d60208110156109eb57600080fd5b50516040805163ffffffff851660e01b81526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b158015610a3757600080fd5b505af1158015610a4b573d6000803e3d6000fd5b505050506040513d6020811015610a6157600080fd5b50516108be57600080fd5b60025481565b6000546001600160a01b03163314610a8957600080fd5b6001600160a01b038116610a9c57600080fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6301e1338081565b60018181548110610b0c57fe5b6000918252602090912001546001600160a01b0316905081565b6000610b6883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610bcc565b9392505050565b600082820183811015610b685760408051600160e51b62461bcd02815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008184841115610c5e57604051600160e51b62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c23578181015183820152602001610c0b565b50505050905090810190601f168015610c505780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50505090039056fea165627a7a7230582099e06fdc2334e51296c7a47e77f649077b85caea26058298656ab180ef181c950029
Deployed Bytecode Sourcemap
9484:7693:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9484:7693:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14123:129;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14123:129:0;-1:-1:-1;;;;;14123:129:0;;:::i;:::-;;9926:59;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9926:59:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9568:42;;;:::i;:::-;;;;;;;;;;;;;;;;14494:103;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14494:103:0;;:::i;8707:105::-;;;:::i;8032:26::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;9784:39;;;:::i;9876:::-;;;:::i;10024:18::-;;;:::i;:::-;;;;-1:-1:-1;;;;;10024:18:0;;;;;;;;;;;;;;14736:1562;;;:::i;8511:103::-;;;:::i;6920:20::-;;;:::i;14264:222::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14264:222:0;-1:-1:-1;;;;;14264:222:0;;:::i;9699:26::-;;;:::i;7569:192::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;7569:192:0;-1:-1:-1;;;;;7569:192:0;;:::i;9830:39::-;;;:::i;9617:28::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9617:28:0;;:::i;14123:129::-;7369:5;;-1:-1:-1;;;;;7369:5:0;7355:10;:19;7347:28;;;;;;8218:6;;-1:-1:-1;;;8218:6:0;;;;8217:7;8209:16;;;;;;14216:5;:28;;-1:-1:-1;;;;;;14216:28:0;-1:-1:-1;;;;;14216:28:0;;;;;;;;;;14123:129::o;9926:59::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9926:59:0;-1:-1:-1;9926:59:0;:::o;9568:42::-;9603:7;9568:42;:::o;14494:103::-;7369:5;;-1:-1:-1;;;;;7369:5:0;7355:10;:19;7347:28;;;;;;8218:6;;-1:-1:-1;;;8218:6:0;;;;8217:7;8209:16;;;;;;14574:7;:15;14494:103::o;8707:105::-;7369:5;;-1:-1:-1;;;;;7369:5:0;7355:10;:19;7347:28;;;;;;8394:6;;-1:-1:-1;;;8394:6:0;;;;8386:15;;;;;;8774:5;8765:14;;-1:-1:-1;;;;;;8765:14:0;;;8795:9;;;;8774:5;8795:9;8707:105::o;8032:26::-;;;-1:-1:-1;;;8032:26:0;;;;;:::o;9784:39::-;9816:7;9784:39;:::o;9876:::-;;;;:::o;10024:18::-;;;-1:-1:-1;;;;;10024:18:0;;:::o;14736:1562::-;8218:6;;-1:-1:-1;;;8218:6:0;;;;8217:7;8209:16;;;;;;14856:7;;14848:45;;;;;-1:-1:-1;;;;;14848:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;14965:7;;14947:15;:25;14939:63;;;;;-1:-1:-1;;;;;14939:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15125:6;15081:41;15101:20;;15081:15;:19;;:41;;;;:::i;:::-;:50;15073:92;;;;;-1:-1:-1;;;;;15073:92:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15199:15;15176:20;:38;15268:6;15264:1024;15284:11;:18;15280:22;;15264:1024;;;15368:27;15398:13;:29;15412:11;15424:1;15412:14;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15412:14:0;15398:29;;;;;;;;;;;;;;;15368:59;;;;;;;;;;;;;;;;;;;15398:29;;15368:59;15412:14;15368:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;15368:59:0;;-1:-1:-1;15497:6:0;;-1:-1:-1;;;15493:784:0;15513:1;:8;15509:1;:12;15493:784;;;15582:1;15584;15582:4;;;;;;;;;;;;;;:14;;;15551:28;15571:7;;15551:15;:19;;:28;;;;:::i;:::-;:45;15550:136;;;;;15684:1;15660;15662;15660:4;;;;;;;;;;;;;;:21;;;:25;15550:136;15546:716;;;15810:21;15870:1;15872;15870:4;;;;;;;;;;;;;;:21;;;15854:37;;15966:68;16020:13;15966;:29;15980:11;15992:1;15980:14;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15980:14:0;15966:29;;;;;;;;;;;;:32;;15996:1;;15966:32;;;;;;;;;;;;;;;;:49;;;:53;;:68;;;;:::i;:::-;15914:13;:29;15928:11;15940:1;15928:14;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15928:14:0;15914:29;;;;;;;;;;;;:32;;15944:1;;15914:32;;;;;;;;;;;;;;;;:49;;:120;;;;16103:62;16151:13;16103;:29;16117:11;16129:1;16117:14;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16117:14:0;16103:29;;;;;;;;;;;;:32;;16133:1;;16103:32;;;;;;;;;;;;;;;;:43;;;:47;;:62;;;;:::i;:::-;16057:13;:29;16071:11;16083:1;16071:14;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;16071:14:0;16057:29;;;;;;;;;;;;:32;;16087:1;;16057:32;;;;;;;;;;;;;;:43;:32;;;;;:43;:108;16196:5;;;16211:14;;-1:-1:-1;;;;;16196:5:0;;;;:14;;:5;16223:1;;16211:14;;;;;;;;;;;;;;;;;;16196:45;;;;;;;;;;-1:-1:-1;;;;;16211:14:0;;;16196:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:2:-1;;;;30:1;27;20:12;5:2;16196:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16196:45:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16196:45:0;16188:54;;;;;;15546:716;;15523:3;;15493:784;;;-1:-1:-1;;15304:3:0;;15264:1024;;;;14736:1562::o;8511:103::-;7369:5;;-1:-1:-1;;;;;7369:5:0;7355:10;:19;7347:28;;;;;;8218:6;;-1:-1:-1;;;8218:6:0;;;;8217:7;8209:16;;;;;;8570:6;:13;;-1:-1:-1;;;;;;8570:13:0;-1:-1:-1;;;8570:13:0;;;8599:7;;;;8570:6;8599:7;8511:103::o;6920:20::-;;;-1:-1:-1;;;;;6920:20:0;;:::o;14264:222::-;7369:5;;-1:-1:-1;;;;;7369:5:0;7355:10;:19;7347:28;;;;;;8394:6;;-1:-1:-1;;;8394:6:0;;;;8386:15;;;;;;14421:5;;14446:30;;;-1:-1:-1;;;;;14446:30:0;;14470:4;14446:30;;;;;;-1:-1:-1;;;;;14421:5:0;;;;:14;;14436:8;;14421:5;;14446:15;;:30;;;;;;;;;;;;;;14421:5;14446:30;;;5:2:-1;;;;30:1;27;20:12;5:2;14446:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14446:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14446:30:0;14421:56;;;;;;;;;;-1:-1:-1;;;;;14421:56:0;;;;;;;;;;;;;;;;;;;;14446:30;;14421:56;;;;;;;-1:-1:-1;14421:56:0;;;;5:2:-1;;;;30:1;27;20:12;5:2;14421:56:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14421:56:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14421:56:0;14413:65;;;;;9699:26;;;;:::o;7569:192::-;7369:5;;-1:-1:-1;;;;;7369:5:0;7355:10;:19;7347:28;;;;;;-1:-1:-1;;;;;7650:22:0;;7642:31;;;;;;7710:5;;;7689:37;;-1:-1:-1;;;;;7689:37:0;;;;7710:5;;;7689:37;;;7737:5;:16;;-1:-1:-1;;;;;;7737:16:0;-1:-1:-1;;;;;7737:16:0;;;;;;;;;;7569:192::o;9830:39::-;9861:8;9830:39;:::o;9617:28::-;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9617:28:0;;-1:-1:-1;9617:28:0;:::o;1967:136::-;2025:7;2052:43;2056:1;2059;2052:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;2045:50;1967:136;-1:-1:-1;;;1967:136:0:o;1511:181::-;1569:7;1601:5;;;1625:6;;;;1617:46;;;;;-1:-1:-1;;;;;1617:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;2440:192;2526:7;2562:12;2554:6;;;;2546:29;;;;-1:-1:-1;;;;;2546:29: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;2546:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;2598:5:0;;;2440:192::o
Swarm Source
bzzr://99e06fdc2334e51296c7a47e77f649077b85caea26058298656ab180ef181c95
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.