Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 1,820 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 24416681 | 13 days ago | IN | 0 ETH | 0.00000325 | ||||
| Approve | 24400999 | 15 days ago | IN | 0 ETH | 0.00000733 | ||||
| Approve | 24353132 | 22 days ago | IN | 0 ETH | 0.00000387 | ||||
| Approve | 24267927 | 34 days ago | IN | 0 ETH | 0.000002 | ||||
| Approve | 24258454 | 35 days ago | IN | 0 ETH | 0.00000107 | ||||
| Approve | 24143437 | 51 days ago | IN | 0 ETH | 0.00000205 | ||||
| Approve | 24143436 | 51 days ago | IN | 0 ETH | 0.00000228 | ||||
| Approve | 24074977 | 60 days ago | IN | 0 ETH | 0.00000138 | ||||
| Approve | 24012205 | 69 days ago | IN | 0 ETH | 0.00003282 | ||||
| Approve | 23809739 | 98 days ago | IN | 0 ETH | 0.00000464 | ||||
| Approve | 23700826 | 113 days ago | IN | 0 ETH | 0.00000696 | ||||
| Approve | 23375630 | 158 days ago | IN | 0 ETH | 0.00006463 | ||||
| Approve | 22957410 | 217 days ago | IN | 0 ETH | 0.00001438 | ||||
| Approve | 22957399 | 217 days ago | IN | 0 ETH | 0.00001319 | ||||
| Approve | 22908108 | 224 days ago | IN | 0 ETH | 0.0000579 | ||||
| Approve | 22205778 | 322 days ago | IN | 0 ETH | 0.00002554 | ||||
| Transfer | 22205139 | 322 days ago | IN | 0 ETH | 0.00001646 | ||||
| Transfer | 22205137 | 322 days ago | IN | 0 ETH | 0.00001485 | ||||
| Transfer | 22205136 | 322 days ago | IN | 0 ETH | 0.00001594 | ||||
| Transfer | 22205134 | 322 days ago | IN | 0 ETH | 0.00001494 | ||||
| Transfer | 22205132 | 322 days ago | IN | 0 ETH | 0.00002332 | ||||
| Approve | 22175051 | 326 days ago | IN | 0 ETH | 0.00006042 | ||||
| Approve | 21852387 | 371 days ago | IN | 0 ETH | 0.00008514 | ||||
| Approve | 21822839 | 375 days ago | IN | 0 ETH | 0.00009779 | ||||
| Approve | 21583999 | 409 days ago | IN | 0 ETH | 0.00023992 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
Memefund
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2021-06-24
*/
// SPDX-License-Identifier: MIT
pragma solidity >=0.6.0 <0.8.0;
library SafeMaths {
/**
* @dev Returns the addition of two unsigned integers, reverting on
* 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).
*/
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.
*/
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
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.
*/
function div(uint256 a, uint256 b) internal pure returns (uint256) {
require(b > 0, "SafeMath: division by zero");
uint256 c = a / b;
return c;
}
}
contract Memefund {
using SafeMaths for uint256;
address public rebaseOracle; // Used for authentication
address public owner; // Used for authentication
address public newOwner;
uint8 public decimals;
uint256 public totalSupply;
string public name;
string public symbol;
uint256 private constant MAX_UINT256 = ~uint256(0); // (2^256) - 1
uint256 private constant MAXSUPPLY = ~uint128(0); // (2^128) - 1
uint256 private totalAtoms;
uint256 private atomsPerMolecule;
mapping (address => uint256) private atomBalances;
mapping (address => mapping (address => uint256)) private allowedMolecules;
event Transfer(address indexed _from, address indexed _to, uint256 _value);
event Approval(address indexed _owner, address indexed _spender, uint256 _value);
event LogRebase(uint256 _totalSupply);
event LogNewRebaseOracle(address _rebaseOracle);
event OwnershipTransferred(address indexed _from, address indexed _to);
constructor() public
{
decimals = 9; // decimals
totalSupply = 100000000*10**9; // initialSupply
name = "Memefund"; // Set the name for display purposes
symbol = "MFUND"; // Set the symbol for display purposes
owner = msg.sender;
totalAtoms = MAX_UINT256 - (MAX_UINT256 % totalSupply); // totalAtoms is a multiple of totalSupply so that atomsPerMolecule is an integer.
atomBalances[msg.sender] = totalAtoms;
atomsPerMolecule = totalAtoms.div(totalSupply);
emit Transfer(address(0), msg.sender, totalSupply);
}
/**
* @param newRebaseOracle The address of the new oracle for rebasement (used for authentication).
*/
function setRebaseOracle(address newRebaseOracle) external {
require(msg.sender == owner, "Can only be executed by owner.");
rebaseOracle = newRebaseOracle;
emit LogNewRebaseOracle(rebaseOracle);
}
/**
* @dev Propose a new owner.
* @param _newOwner The address of the new owner.
*/
function transferOwnership(address _newOwner) public
{
require(msg.sender == owner, "Can only be executed by owner.");
require(_newOwner != address(0), "0x00 address not allowed.");
newOwner = _newOwner;
}
/**
* @dev Accept new owner.
*/
function acceptOwnership() public
{
require(msg.sender == newOwner, "Sender not authorized.");
emit OwnershipTransferred(owner, newOwner);
owner = newOwner;
newOwner = address(0);
}
/**
* @dev Notifies Benchmark contract about a new rebase cycle.
* @param supplyDelta The number of new molecule tokens to add into or remove from circulation.
* @param increaseSupply Whether to increase or decrease the total supply.
* @return The total number of molecules after the supply adjustment.
*/
function rebase(uint256 supplyDelta, bool increaseSupply) external returns (uint256) {
require(msg.sender == rebaseOracle, "Can only be executed by rebaseOracle.");
if (supplyDelta == 0) {
emit LogRebase(totalSupply);
return totalSupply;
}
if (increaseSupply == true) {
totalSupply = totalSupply.add(supplyDelta);
} else {
totalSupply = totalSupply.sub(supplyDelta);
}
if (totalSupply > MAXSUPPLY) {
totalSupply = MAXSUPPLY;
}
atomsPerMolecule = totalAtoms.div(totalSupply);
emit LogRebase(totalSupply);
return totalSupply;
}
/**
* @param who The address to query.
* @return The balance of the specified address.
*/
function balanceOf(address who) public view returns (uint256) {
return atomBalances[who].div(atomsPerMolecule);
}
/**
* @dev Transfer tokens to a specified address.
* @param to The address to transfer to.
* @param value The amount to be transferred.
* @return True on success, false otherwise.
*/
function transfer(address to, uint256 value) public returns (bool) {
require(to != address(0),"Invalid address.");
require(to != address(this),"Molecules contract can't receive MARK.");
uint256 atomValue = value.mul(atomsPerMolecule);
atomBalances[msg.sender] = atomBalances[msg.sender].sub(atomValue);
atomBalances[to] = atomBalances[to].add(atomValue);
emit Transfer(msg.sender, to, value);
return true;
}
/**
* @dev Function to check the amount of tokens that an owner has allowed to a spender.
* @param owner_ The address which owns the funds.
* @param spender The address which will spend the funds.
* @return The number of tokens still available for the spender.
*/
function allowance(address owner_, address spender) public view returns (uint256) {
return allowedMolecules[owner_][spender];
}
/**
* @dev Transfer tokens from one address to another.
* @param from The address you want to send tokens from.
* @param to The address you want to transfer to.
* @param value The amount of tokens to be transferred.
*/
function transferFrom(address from, address to, uint256 value) public returns (bool) {
require(to != address(0),"Invalid address.");
require(to != address(this),"Molecules contract can't receive MARK.");
allowedMolecules[from][msg.sender] = allowedMolecules[from][msg.sender].sub(value);
uint256 atomValue = value.mul(atomsPerMolecule);
atomBalances[from] = atomBalances[from].sub(atomValue);
atomBalances[to] = atomBalances[to].add(atomValue);
emit Transfer(from, to, value);
return true;
}
/**
* @dev Approve the passed address to spend the specified amount of tokens on behalf of
* msg.sender. This method is included for ERC20 compatibility.
* IncreaseAllowance and decreaseAllowance should be used instead.
* @param spender The address which will spend the funds.
* @param value The amount of tokens to be spent.
*/
function approve(address spender, uint256 value) public returns (bool) {
allowedMolecules[msg.sender][spender] = value;
emit Approval(msg.sender, spender, value);
return true;
}
/**
* @dev Increase the amount of tokens that an owner has allowed to a spender.
* This method should be used instead of approve() to avoid the double approval vulnerability.
* @param spender The address which will spend the funds.
* @param addedValue The amount of tokens to increase the allowance by.
*/
function increaseAllowance(address spender, uint256 addedValue) public returns (bool) {
allowedMolecules[msg.sender][spender] = allowedMolecules[msg.sender][spender].add(addedValue);
emit Approval(msg.sender, spender, allowedMolecules[msg.sender][spender]);
return true;
}
/**
* @dev Decrease the amount of tokens that an owner has allowed to a spender.
* @param spender The address which will spend the funds.
* @param subtractedValue The amount of tokens to decrease the allowance by.
*/
function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) {
uint256 oldValue = allowedMolecules[msg.sender][spender];
if (subtractedValue >= oldValue) {
allowedMolecules[msg.sender][spender] = 0;
} else {
allowedMolecules[msg.sender][spender] = oldValue.sub(subtractedValue);
}
emit Approval(msg.sender, spender, allowedMolecules[msg.sender][spender]);
return true;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_owner","type":"address"},{"indexed":true,"internalType":"address","name":"_spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_rebaseOracle","type":"address"}],"name":"LogNewRebaseOracle","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_totalSupply","type":"uint256"}],"name":"LogRebase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"},{"indexed":false,"internalType":"uint256","name":"_value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"acceptOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner_","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"newOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"supplyDelta","type":"uint256"},{"internalType":"bool","name":"increaseSupply","type":"bool"}],"name":"rebase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rebaseOracle","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newRebaseOracle","type":"address"}],"name":"setRebaseOracle","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
60806040523480156200001157600080fd5b506009600260146101000a81548160ff021916908360ff16021790555067016345785d8a00006003819055506040518060400160405280600881526020017f4d656d6566756e64000000000000000000000000000000000000000000000000815250600490805190602001906200008a9291906200029c565b506040518060400160405280600581526020017f4d46554e4400000000000000000000000000000000000000000000000000000081525060059080519060200190620000d89291906200029c565b5033600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600354600019816200012857fe5b0660001903600681905550600654600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001976003546006546200020b60201b62001cac1790919060201c565b6007819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6003546040518082815260200191505060405180910390a362000342565b600080821162000283576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b60008284816200028f57fe5b0490508091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620002df57805160ff191683800117855562000310565b8280016001018555821562000310579182015b828111156200030f578251825591602001919060010190620002f2565b5b5090506200031f919062000323565b5090565b5b808211156200033e57600081600090555060010162000324565b5090565b611f7480620003526000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80638da5cb5b116100a2578063d4ee1d9011610071578063d4ee1d901461054e578063dd07a2a314610582578063dd62ed3e146105d0578063f2fde38b14610648578063f905448d1461068c57610116565b80638da5cb5b146103cf57806395d89b4114610403578063a457c2d714610486578063a9059cbb146104ea57610116565b8063313ce567116100e9578063313ce567146102a457806339509351146102c5578063644c156b1461032957806370a082311461036d57806379ba5097146103c557610116565b806306fdde031461011b578063095ea7b31461019e57806318160ddd1461020257806323b872dd14610220575b600080fd5b6101236106c0565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610163578082015181840152602081019050610148565b50505050905090810190601f1680156101905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101ea600480360360408110156101b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061075e565b60405180821515815260200191505060405180910390f35b61020a610850565b6040518082815260200191505060405180910390f35b61028c6004803603606081101561023657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610856565b60405180821515815260200191505060405180910390f35b6102ac610c42565b604051808260ff16815260200191505060405180910390f35b610311600480360360408110156102db57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c55565b60405180821515815260200191505060405180910390f35b61036b6004803603602081101561033f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e51565b005b6103af6004803603602081101561038357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fc4565b6040518082815260200191505060405180910390f35b6103cd611021565b005b6103d7611229565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61040b61124f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561044b578082015181840152602081019050610430565b50505050905090810190601f1680156104785780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104d26004803603604081101561049c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506112ed565b60405180821515815260200191505060405180910390f35b6105366004803603604081101561050057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061157d565b60405180821515815260200191505060405180910390f35b610556611859565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105ba6004803603604081101561059857600080fd5b810190808035906020019092919080351515906020019092919050505061187f565b6040518082815260200191505060405180910390f35b610632600480360360408110156105e657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a57565b6040518082815260200191505060405180910390f35b61068a6004803603602081101561065e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ade565b005b610694611c88565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107565780601f1061072b57610100808354040283529160200191610756565b820191906000526020600020905b81548152906001019060200180831161073957829003601f168201915b505050505081565b600081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60035481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f496e76616c696420616464726573732e0000000000000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561097f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611ef86026913960400191505060405180910390fd5b610a0e82600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d3b90919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610aa560075484611dc490919063ffffffff16565b9050610af981600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d3b90919063ffffffff16565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b8e81600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e4a90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600260149054906101000a900460ff1681565b6000610ce682600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e4a90919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f14576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f43616e206f6e6c79206265206578656375746564206279206f776e65722e000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f22b25066c51ea7127ee35cd450c8903c071037ac478564ba60a09d01958c922660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b600061101a600754600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cac90919063ffffffff16565b9050919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f53656e646572206e6f7420617574686f72697a65642e0000000000000000000081525060200191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112e55780601f106112ba576101008083540402835291602001916112e5565b820191906000526020600020905b8154815290600101906020018083116112c857829003601f168201915b505050505081565b600080600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083106113fd576000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611491565b6114108382611d3b90919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611621576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f496e76616c696420616464726573732e0000000000000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156116a6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611ef86026913960400191505060405180910390fd5b60006116bd60075484611dc490919063ffffffff16565b905061171181600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d3b90919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117a681600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e4a90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611926576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611ed36025913960400191505060405180910390fd5b6000831415611972577f60633057fb2c2558942a126acc1dc7c639b6fdee660a0171f7500e2ac5918b2e6003546040518082815260200191505060405180910390a16003549050611a51565b60011515821515141561199f5761199483600354611e4a90919063ffffffff16565b6003819055506119bb565b6119b483600354611d3b90919063ffffffff16565b6003819055505b6000196fffffffffffffffffffffffffffffffff1660035411156119f5576000196fffffffffffffffffffffffffffffffff166003819055505b611a0c600354600654611cac90919063ffffffff16565b6007819055507f60633057fb2c2558942a126acc1dc7c639b6fdee660a0171f7500e2ac5918b2e6003546040518082815260200191505060405180910390a160035490505b92915050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611ba1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f43616e206f6e6c79206265206578656375746564206279206f776e65722e000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611c44576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f307830302061646472657373206e6f7420616c6c6f7765642e0000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000808211611d23576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b6000828481611d2e57fe5b0490508091505092915050565b600082821115611db3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b600080831415611dd75760009050611e44565b6000828402905082848281611de857fe5b0414611e3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611f1e6021913960400191505060405180910390fd5b809150505b92915050565b600080828401905083811015611ec8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b809150509291505056fe43616e206f6e6c79206265206578656375746564206279207265626173654f7261636c652e4d6f6c6563756c657320636f6e74726163742063616e27742072656365697665204d41524b2e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122083aa968bece01e9e664a042bfdc067ca789bd72ed6fb18a15be667a007c7fca964736f6c634300060c0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101165760003560e01c80638da5cb5b116100a2578063d4ee1d9011610071578063d4ee1d901461054e578063dd07a2a314610582578063dd62ed3e146105d0578063f2fde38b14610648578063f905448d1461068c57610116565b80638da5cb5b146103cf57806395d89b4114610403578063a457c2d714610486578063a9059cbb146104ea57610116565b8063313ce567116100e9578063313ce567146102a457806339509351146102c5578063644c156b1461032957806370a082311461036d57806379ba5097146103c557610116565b806306fdde031461011b578063095ea7b31461019e57806318160ddd1461020257806323b872dd14610220575b600080fd5b6101236106c0565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610163578082015181840152602081019050610148565b50505050905090810190601f1680156101905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101ea600480360360408110156101b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061075e565b60405180821515815260200191505060405180910390f35b61020a610850565b6040518082815260200191505060405180910390f35b61028c6004803603606081101561023657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610856565b60405180821515815260200191505060405180910390f35b6102ac610c42565b604051808260ff16815260200191505060405180910390f35b610311600480360360408110156102db57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c55565b60405180821515815260200191505060405180910390f35b61036b6004803603602081101561033f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e51565b005b6103af6004803603602081101561038357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fc4565b6040518082815260200191505060405180910390f35b6103cd611021565b005b6103d7611229565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61040b61124f565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561044b578082015181840152602081019050610430565b50505050905090810190601f1680156104785780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6104d26004803603604081101561049c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506112ed565b60405180821515815260200191505060405180910390f35b6105366004803603604081101561050057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061157d565b60405180821515815260200191505060405180910390f35b610556611859565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105ba6004803603604081101561059857600080fd5b810190808035906020019092919080351515906020019092919050505061187f565b6040518082815260200191505060405180910390f35b610632600480360360408110156105e657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a57565b6040518082815260200191505060405180910390f35b61068a6004803603602081101561065e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611ade565b005b610694611c88565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b60048054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107565780601f1061072b57610100808354040283529160200191610756565b820191906000526020600020905b81548152906001019060200180831161073957829003601f168201915b505050505081565b600081600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b60035481565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156108fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f496e76616c696420616464726573732e0000000000000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561097f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611ef86026913960400191505060405180910390fd5b610a0e82600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d3b90919063ffffffff16565b600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000610aa560075484611dc490919063ffffffff16565b9050610af981600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d3b90919063ffffffff16565b600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610b8e81600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e4a90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a360019150509392505050565b600260149054906101000a900460ff1681565b6000610ce682600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e4a90919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610f14576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f43616e206f6e6c79206265206578656375746564206279206f776e65722e000081525060200191505060405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f22b25066c51ea7127ee35cd450c8903c071037ac478564ba60a09d01958c922660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390a150565b600061101a600754600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611cac90919063ffffffff16565b9050919050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146110e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f53656e646572206e6f7420617574686f72697a65642e0000000000000000000081525060200191505060405180910390fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156112e55780601f106112ba576101008083540402835291602001916112e5565b820191906000526020600020905b8154815290600101906020018083116112c857829003601f168201915b505050505081565b600080600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083106113fd576000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611491565b6114108382611d3b90919063ffffffff16565b600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611621576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f496e76616c696420616464726573732e0000000000000000000000000000000081525060200191505060405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156116a6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611ef86026913960400191505060405180910390fd5b60006116bd60075484611dc490919063ffffffff16565b905061171181600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611d3b90919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117a681600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611e4a90919063ffffffff16565b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a3600191505092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611926576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611ed36025913960400191505060405180910390fd5b6000831415611972577f60633057fb2c2558942a126acc1dc7c639b6fdee660a0171f7500e2ac5918b2e6003546040518082815260200191505060405180910390a16003549050611a51565b60011515821515141561199f5761199483600354611e4a90919063ffffffff16565b6003819055506119bb565b6119b483600354611d3b90919063ffffffff16565b6003819055505b6000196fffffffffffffffffffffffffffffffff1660035411156119f5576000196fffffffffffffffffffffffffffffffff166003819055505b611a0c600354600654611cac90919063ffffffff16565b6007819055507f60633057fb2c2558942a126acc1dc7c639b6fdee660a0171f7500e2ac5918b2e6003546040518082815260200191505060405180910390a160035490505b92915050565b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611ba1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f43616e206f6e6c79206265206578656375746564206279206f776e65722e000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611c44576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f307830302061646472657373206e6f7420616c6c6f7765642e0000000000000081525060200191505060405180910390fd5b80600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000808211611d23576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b6000828481611d2e57fe5b0490508091505092915050565b600082821115611db3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b600080831415611dd75760009050611e44565b6000828402905082848281611de857fe5b0414611e3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611f1e6021913960400191505060405180910390fd5b809150505b92915050565b600080828401905083811015611ec8576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b809150509291505056fe43616e206f6e6c79206265206578656375746564206279207265626173654f7261636c652e4d6f6c6563756c657320636f6e74726163742063616e27742072656365697665204d41524b2e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122083aa968bece01e9e664a042bfdc067ca789bd72ed6fb18a15be667a007c7fca964736f6c634300060c0033
Deployed Bytecode Sourcemap
1447:8050:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1737:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7889:211;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1704:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6929:582;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1676:21;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;8449:306;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;3331:231;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;5385:127;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3976:227;;;:::i;:::-;;1577:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1762;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9009:485;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;5738:481;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1644:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;4552:712;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6526:141;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3677:242;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;1510:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;1737:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7889:211::-;7954:4;8011:5;7971:16;:28;7988:10;7971:28;;;;;;;;;;;;;;;:37;8000:7;7971:37;;;;;;;;;;;;;;;:45;;;;8055:7;8034:36;;8043:10;8034:36;;;8064:5;8034:36;;;;;;;;;;;;;;;;;;8088:4;8081:11;;7889:211;;;;:::o;1704:26::-;;;;:::o;6929:582::-;7008:4;7047:1;7033:16;;:2;:16;;;;7025:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7102:4;7088:19;;:2;:19;;;;7080:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7199:45;7238:5;7199:16;:22;7216:4;7199:22;;;;;;;;;;;;;;;:34;7222:10;7199:34;;;;;;;;;;;;;;;;:38;;:45;;;;:::i;:::-;7162:16;:22;7179:4;7162:22;;;;;;;;;;;;;;;:34;7185:10;7162:34;;;;;;;;;;;;;;;:82;;;;7257:17;7277:27;7287:16;;7277:5;:9;;:27;;;;:::i;:::-;7257:47;;7336:33;7359:9;7336:12;:18;7349:4;7336:18;;;;;;;;;;;;;;;;:22;;:33;;;;:::i;:::-;7315:12;:18;7328:4;7315:18;;;;;;;;;;;;;;;:54;;;;7399:31;7420:9;7399:12;:16;7412:2;7399:16;;;;;;;;;;;;;;;;:20;;:31;;;;:::i;:::-;7380:12;:16;7393:2;7380:16;;;;;;;;;;;;;;;:50;;;;7471:2;7456:25;;7465:4;7456:25;;;7475:5;7456:25;;;;;;;;;;;;;;;;;;7499:4;7492:11;;;6929:582;;;;;:::o;1676:21::-;;;;;;;;;;;;;:::o;8449:306::-;8529:4;8586:53;8628:10;8586:16;:28;8603:10;8586:28;;;;;;;;;;;;;;;:37;8615:7;8586:37;;;;;;;;;;;;;;;;:41;;:53;;;;:::i;:::-;8546:16;:28;8563:10;8546:28;;;;;;;;;;;;;;;:37;8575:7;8546:37;;;;;;;;;;;;;;;:93;;;;8678:7;8657:68;;8666:10;8657:68;;;8687:16;:28;8704:10;8687:28;;;;;;;;;;;;;;;:37;8716:7;8687:37;;;;;;;;;;;;;;;;8657:68;;;;;;;;;;;;;;;;;;8743:4;8736:11;;8449:306;;;;:::o;3331:231::-;3423:5;;;;;;;;;;;3409:19;;:10;:19;;;3401:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3489:15;3474:12;;:30;;;;;;;;;;;;;;;;;;3522:32;3541:12;;;;;;;;;;3522:32;;;;;;;;;;;;;;;;;;;;3331:231;:::o;5385:127::-;5438:7;5465:39;5487:16;;5465:12;:17;5478:3;5465:17;;;;;;;;;;;;;;;;:21;;:39;;;;:::i;:::-;5458:46;;5385:127;;;:::o;3976:227::-;4048:8;;;;;;;;;;;4034:22;;:10;:22;;;4026:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4127:8;;;;;;;;;;;4099:37;;4120:5;;;;;;;;;;;4099:37;;;;;;;;;;;;4155:8;;;;;;;;;;;4147:5;;:16;;;;;;;;;;;;;;;;;;4193:1;4174:8;;:21;;;;;;;;;;;;;;;;;;3976:227::o;1577:20::-;;;;;;;;;;;;;:::o;1762:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9009:485::-;9094:4;9111:16;9130;:28;9147:10;9130:28;;;;;;;;;;;;;;;:37;9159:7;9130:37;;;;;;;;;;;;;;;;9111:56;;9201:8;9182:15;:27;9178:203;;9266:1;9226:16;:28;9243:10;9226:28;;;;;;;;;;;;;;;:37;9255:7;9226:37;;;;;;;;;;;;;;;:41;;;;9178:203;;;9340:29;9353:15;9340:8;:12;;:29;;;;:::i;:::-;9300:16;:28;9317:10;9300:28;;;;;;;;;;;;;;;:37;9329:7;9300:37;;;;;;;;;;;;;;;:69;;;;9178:203;9417:7;9396:68;;9405:10;9396:68;;;9426:16;:28;9443:10;9426:28;;;;;;;;;;;;;;;:37;9455:7;9426:37;;;;;;;;;;;;;;;;9396:68;;;;;;;;;;;;;;;;;;9482:4;9475:11;;;9009:485;;;;:::o;5738:481::-;5799:4;5838:1;5824:16;;:2;:16;;;;5816:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5893:4;5879:19;;:2;:19;;;;5871:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5953:17;5973:27;5983:16;;5973:5;:9;;:27;;;;:::i;:::-;5953:47;;6040:39;6069:9;6040:12;:24;6053:10;6040:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;6013:12;:24;6026:10;6013:24;;;;;;;;;;;;;;;:66;;;;6109:31;6130:9;6109:12;:16;6122:2;6109:16;;;;;;;;;;;;;;;;:20;;:31;;;;:::i;:::-;6090:12;:16;6103:2;6090:16;;;;;;;;;;;;;;;:50;;;;6179:2;6158:31;;6167:10;6158:31;;;6183:5;6158:31;;;;;;;;;;;;;;;;;;6207:4;6200:11;;;5738:481;;;;:::o;1644:23::-;;;;;;;;;;;;;:::o;4552:712::-;4628:7;4670:12;;;;;;;;;;;4656:26;;:10;:26;;;4648:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4764:1;4749:11;:16;4745:109;;;4787:22;4797:11;;4787:22;;;;;;;;;;;;;;;;;;4831:11;;4824:18;;;;4745:109;4888:4;4870:22;;:14;:22;;;4866:172;;;4923:28;4939:11;4923;;:15;;:28;;;;:::i;:::-;4909:11;:42;;;;4866:172;;;4998:28;5014:11;4998;;:15;;:28;;;;:::i;:::-;4984:11;:42;;;;4866:172;1911:1;1902:11;5068:9;;5054:11;;:23;5050:79;;;1911:1;1902:11;5108:9;;5094:11;:23;;;;5050:79;5160:27;5175:11;;5160:10;;:14;;:27;;;;:::i;:::-;5141:16;:46;;;;5205:22;5215:11;;5205:22;;;;;;;;;;;;;;;;;;5245:11;;5238:18;;4552:712;;;;;:::o;6526:141::-;6599:7;6626:16;:24;6643:6;6626:24;;;;;;;;;;;;;;;:33;6651:7;6626:33;;;;;;;;;;;;;;;;6619:40;;6526:141;;;;:::o;3677:242::-;3768:5;;;;;;;;;;;3754:19;;:10;:19;;;3746:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3848:1;3827:23;;:9;:23;;;;3819:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3902:9;3891:8;;:20;;;;;;;;;;;;;;;;;;3677:242;:::o;1510:27::-;;;;;;;;;;;;:::o;1259:179::-;1317:7;1349:1;1345;:5;1337:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1392:9;1408:1;1404;:5;;;;;;1392:17;;1429:1;1422:8;;;1259:179;;;;:::o;535:184::-;593:7;626:1;621;:6;;613:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;673:9;689:1;685;:5;673:17;;710:1;703:8;;;535:184;;;;:::o;842:250::-;900:7;929:1;924;:6;920:47;;;954:1;947:8;;;;920:47;979:9;995:1;991;:5;979:17;;1024:1;1019;1015;:5;;;;;;:10;1007:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1083:1;1076:8;;;842:250;;;;;:::o;204:181::-;262:7;282:9;298:1;294;:5;282:17;;323:1;318;:6;;310:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;376:1;369:8;;;204:181;;;;:::o
Swarm Source
ipfs://83aa968bece01e9e664a042bfdc067ca789bd72ed6fb18a15be667a007c7fca9
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.