Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
ETHCMiningPool
Compiler Version
v0.8.26+commit.8a97fa7a
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2024-10-31
*/
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.26;
abstract contract Ownable {
address private _owner;
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
constructor(address owner_) {
_transferOwnership(owner_);
}
modifier onlyOwner() {
_checkOwner();
_;
}
function owner() public view virtual returns (address) {
return _owner;
}
function _checkOwner() internal view virtual {
require(owner() == msg.sender, "Ownable: caller is not the owner");
}
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
function transferOwnership(address newOwner) public virtual onlyOwner {
require(newOwner != address(0), "Ownable: new owner is the zero address");
_transferOwnership(newOwner);
}
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}
interface IETHC {
struct Block {
address[] miners;
address selectedMiner;
uint256 miningReward;
}
function mine(uint256 mineCount) external payable;
function futureMine(uint256 mineCount, uint256 blockCounts) external payable;
function revealSelectedMiner(uint256 targetBlock) external;
function selectedMinerOfBlock(uint256 _blockNumber) external view returns (address);
function minersOfBlockCount(uint256 _blockNumber) external view returns (uint256);
function blockNumber() external view returns (uint256);
function mineCost() external view returns (uint256);
function blocks(uint256 blockNumber) external view returns (Block memory);
function transfer(address to, uint value) external returns (bool);
function balanceOf(address owner) external view returns (uint);
}
contract ETHCMiningPool is Ownable {
IETHC public ETHC;
uint256 contributionDenominator;
mapping(uint256 => uint256) public totalBlockContribution;
mapping(address => mapping(uint256 => uint256)) public minerContributionPerBlock;
mapping(uint256 => uint8) public successfullyMined;
mapping(uint256 => uint256) public miningReward;
uint256 feesPayable;
address feeCollector;
// Fees set to 2% to start
uint256 feeNumerator = 20;
uint256 feeDenominator = 1000;
bool _locked;
modifier Lock {
require(!_locked);
_locked = true;
_;
_locked = false;
}
constructor(
address tokenAddress,
address feeCollector_
) Ownable(msg.sender) {
ETHC = IETHC(tokenAddress);
feeCollector = feeCollector_;
}
function mine(uint256 mineCount) public payable Lock {
uint256 blockNumber = ETHC.blockNumber();
minerContributionPerBlock[msg.sender][blockNumber] += mineCount;
totalBlockContribution[blockNumber] += mineCount;
ETHC.mine{value: msg.value}(mineCount);
}
function futureMine(uint256 mineCount, uint256 blockCounts) external payable Lock {
uint256 blockNumber = ETHC.blockNumber();
for (uint256 i=0; i<blockCounts; i++) {
blockNumber += 1;
minerContributionPerBlock[msg.sender][blockNumber] += mineCount;
totalBlockContribution[blockNumber] += mineCount;
}
ETHC.futureMine{value: msg.value}(mineCount, blockCounts);
}
function resolveBlocks(uint256[] memory blockNumbers) external Lock {
for (uint256 i=0; i<blockNumbers.length; i++) {
uint256 blockNumber = blockNumbers[i];
if (successfullyMined[blockNumber] != 0) {
continue;
}
address selectedMiner = ETHC.selectedMinerOfBlock(blockNumber);
if (selectedMiner == address(0)) {
continue;
} else if (selectedMiner == address(this)) {
successfullyMined[blockNumber] = 1;
IETHC.Block memory blockData = ETHC.blocks(blockNumber);
uint256 fees = blockData.miningReward * feeNumerator / feeDenominator;
feesPayable += fees;
miningReward[blockNumber] = blockData.miningReward - fees;
} else {
successfullyMined[blockNumber] = 2;
}
}
}
function collectBlocksRewards(uint256[] memory blockNumbers) external Lock {
uint256 rewards = 0;
for (uint256 i=0; i<blockNumbers.length; i++) {
uint256 blockNumber = blockNumbers[i];
// Case: succesfully mined unset
if (successfullyMined[blockNumber] == 0) {
address selectedMiner = ETHC.selectedMinerOfBlock(blockNumber);
// Case: Still not mined
if (selectedMiner == address(0)) {
continue;
// Case: mined and the pool was selected
} else if (selectedMiner == address(this)) {
successfullyMined[blockNumber] = 1;
IETHC.Block memory blockData = ETHC.blocks(blockNumber);
uint256 fees = blockData.miningReward * feeNumerator / feeDenominator;
feesPayable += fees;
miningReward[blockNumber] = blockData.miningReward - fees;
// Case: mined and the pool was not selected
} else {
successfullyMined[blockNumber] = 2;
continue;
}
// Case: we have already determined the pool was not selected
} else if (successfullyMined[blockNumber] == 2) {
continue;
}
rewards += miningReward[blockNumber] * minerContributionPerBlock[msg.sender][blockNumber] / totalBlockContribution[blockNumber];
totalBlockContribution[blockNumber] -= minerContributionPerBlock[msg.sender][blockNumber];
delete minerContributionPerBlock[msg.sender][blockNumber];
}
if (rewards > 0) {
ETHC.transfer(msg.sender, rewards);
}
}
function checkRewardsForBlocks(uint256[] memory blockNumbersToCheck) external view returns (uint256 totalRewards) {
for (uint256 i; i<blockNumbersToCheck.length; i++) {
uint256 blockNumber = blockNumbersToCheck[i];
uint256 blockReward = 0;
// Case: succesfully mined unset
if (successfullyMined[blockNumber] == 0) {
address selectedMiner = ETHC.selectedMinerOfBlock(blockNumber);
// Case: Still not mined
if (selectedMiner == address(0)) {
continue;
// Case: mined and the pool was selected
} else if (selectedMiner == address(this)) {
IETHC.Block memory blockData = ETHC.blocks(blockNumber);
uint256 fees = blockData.miningReward * feeNumerator / feeDenominator;
blockReward = blockData.miningReward - fees;
// Case: mined and the pool was not selected
} else {
continue;
}
// Case: we have already determined the pool was not selected
} else if (successfullyMined[blockNumber] == 2) {
continue;
}
totalRewards += blockReward * minerContributionPerBlock[msg.sender][blockNumber] / totalBlockContribution[blockNumber];
}
}
function collectFee(uint256 amount) external onlyOwner {
require(amount <= feesPayable);
if (feesPayable > 0 && feeCollector != address(0)) {
ETHC.transfer(feeCollector, amount == 0 ? feesPayable : amount);
}
}
function setFeeCollector(address newFeeCollector) external onlyOwner {
feeCollector = newFeeCollector;
}
function setFeeNumerator(uint256 newFeeNumerator) external onlyOwner {
require(newFeeNumerator < feeNumerator);
feeNumerator = newFeeNumerator;
}
function rescueRewards(uint256 amount) external onlyOwner {
ETHC.transfer(msg.sender, amount);
}
receive() external payable Lock {
uint256 mineCost = ETHC.mineCost();
uint256 mineCount = msg.value / mineCost;
uint256 totalCost = mineCost * mineCount;
if (totalCost < address(this).balance) {
msg.sender.call{value: address(this).balance - totalCost}("");
}
if (mineCount > 0) {
mine(mineCount);
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"address","name":"feeCollector_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"ETHC","outputs":[{"internalType":"contract IETHC","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"blockNumbersToCheck","type":"uint256[]"}],"name":"checkRewardsForBlocks","outputs":[{"internalType":"uint256","name":"totalRewards","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"blockNumbers","type":"uint256[]"}],"name":"collectBlocksRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"collectFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"mineCount","type":"uint256"},{"internalType":"uint256","name":"blockCounts","type":"uint256"}],"name":"futureMine","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"mineCount","type":"uint256"}],"name":"mine","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"minerContributionPerBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"miningReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rescueRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"blockNumbers","type":"uint256[]"}],"name":"resolveBlocks","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newFeeCollector","type":"address"}],"name":"setFeeCollector","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newFeeNumerator","type":"uint256"}],"name":"setFeeNumerator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"successfullyMined","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"totalBlockContribution","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
608060405260146009556103e8600a5534801561001a575f80fd5b5060405161160d38038061160d833981016040819052610039916100df565b3361004381610075565b50600180546001600160a01b039384166001600160a01b03199182161790915560088054929093169116179055610110565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b03811681146100da575f80fd5b919050565b5f80604083850312156100f0575f80fd5b6100f9836100c4565b9150610107602084016100c4565b90509250929050565b6114f08061011d5f395ff3fe6080604052600436106100fd575f3560e01c80638da5cb5b11610092578063a45db91111610062578063a45db911146103d0578063a969ff0a146103ef578063ca16c5be1461040e578063f2fde38b14610444578063f3c3cf4c14610463575f80fd5b80638da5cb5b1461032a57806394e604b91461034657806399ea64aa14610386578063a42dce80146103b1575f80fd5b80634d474898116100cd5780634d474898146102a157806357396373146102b45780635cb2d86e146102eb578063715018a614610316575f80fd5b80630b9a03591461021c5780632517db411461024e57806338885ac11461026f57806341f77b7314610282575f80fd5b3661021857600b5460ff1615610111575f80fd5b600b805460ff19166001908117909155546040805163e54ad23760e01b815290515f926001600160a01b03169163e54ad2379160048083019260209291908290030181865afa158015610166573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018a9190611127565b90505f6101978234611152565b90505f6101a48284611171565b9050478110156101fb57336101b9824761118e565b6040515f81818185875af1925050503d805f81146101f2576040519150601f19603f3d011682016040523d82523d5f602084013e6101f7565b606091505b5050505b811561020a5761020a82610482565b5050600b805460ff19169055005b5f80fd5b348015610227575f80fd5b5061023b610236366004611232565b6105c9565b6040519081526020015b60405180910390f35b348015610259575f80fd5b5061026d610268366004611232565b6107ce565b005b61026d61027d3660046112c8565b610b1b565b34801561028d575f80fd5b5061026d61029c3660046112e8565b610c8a565b61026d6102af3660046112e8565b610482565b3480156102bf575f80fd5b506001546102d3906001600160a01b031681565b6040516001600160a01b039091168152602001610245565b3480156102f6575f80fd5b5061023b6103053660046112e8565b60036020525f908152604090205481565b348015610321575f80fd5b5061026d610d09565b348015610335575f80fd5b505f546001600160a01b03166102d3565b348015610351575f80fd5b506103746103603660046112e8565b60056020525f908152604090205460ff1681565b60405160ff9091168152602001610245565b348015610391575f80fd5b5061023b6103a03660046112e8565b60066020525f908152604090205481565b3480156103bc575f80fd5b5061026d6103cb366004611313565b610d1c565b3480156103db575f80fd5b5061026d6103ea3660046112e8565b610d46565b3480156103fa575f80fd5b5061026d6104093660046112e8565b610d60565b348015610419575f80fd5b5061023b610428366004611335565b600460209081525f928352604080842090915290825290205481565b34801561044f575f80fd5b5061026d61045e366004611313565b610df3565b34801561046e575f80fd5b5061026d61047d366004611232565b610e6e565b600b5460ff1615610491575f80fd5b600b805460ff1916600190811790915554604080516357e871e760e01b815290515f926001600160a01b0316916357e871e79160048083019260209291908290030181865afa1580156104e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050a9190611127565b335f90815260046020908152604080832084845290915281208054929350849290919061053890849061135f565b90915550505f818152600360205260408120805484929061055a90849061135f565b90915550506001546040516309a8e91360e31b8152600481018490526001600160a01b0390911690634d4748989034906024015f604051808303818588803b1580156105a4575f80fd5b505af11580156105b6573d5f803e3d5ffd5b5050600b805460ff191690555050505050565b5f805b82518110156107c8575f8382815181106105e8576105e8611372565b6020908102919091018101515f8181526005909252604082205490925060ff168103610759576001546040516336dbf5db60e11b8152600481018490525f916001600160a01b031690636db7ebb690602401602060405180830381865afa158015610655573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106799190611396565b90506001600160a01b038116610691575050506107c0565b306001600160a01b0382160361074b5760015460405163f25b3f9960e01b8152600481018590525f916001600160a01b03169063f25b3f99906024015f60405180830381865afa1580156106e7573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261070e91908101906113b1565b90505f600a5460095483604001516107269190611171565b6107309190611152565b9050808260400151610742919061118e565b93505050610753565b5050506107c0565b50610778565b5f8281526005602052604090205460ff166002036107785750506107c0565b5f8281526003602090815260408083205433845260048352818420868552909252909120546107a79083611171565b6107b19190611152565b6107bb908561135f565b935050505b6001016105cc565b50919050565b600b5460ff16156107dd575f80fd5b600b805460ff191660011790555f805b8251811015610a92575f83828151811061080957610809611372565b6020908102919091018101515f8181526005909252604082205490925060ff1690036109cb576001546040516336dbf5db60e11b8152600481018390525f916001600160a01b031690636db7ebb690602401602060405180830381865afa158015610876573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089a9190611396565b90506001600160a01b0381166108b1575050610a8a565b306001600160a01b038216036109a7575f82815260056020526040808220805460ff1916600190811790915554905163f25b3f9960e01b8152600481018590526001600160a01b039091169063f25b3f99906024015f60405180830381865afa158015610920573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261094791908101906113b1565b90505f600a54600954836040015161095f9190611171565b6109699190611152565b90508060075f82825461097c919061135f565b9091555050604082015161099190829061118e565b5f85815260066020526040902055506109c59050565b505f908152600560205260409020805460ff19166002179055610a8a565b506109e9565b5f8181526005602052604090205460ff166002036109e95750610a8a565b5f81815260036020908152604080832054338452600483528184208585528352818420546006909352922054610a1f9190611171565b610a299190611152565b610a33908461135f565b335f9081526004602090815260408083208584528252808320546003909252822080549396509092909190610a6990849061118e565b9091555050335f908152600460209081526040808320938352929052908120555b6001016107ed565b508015610b0d5760015460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb906044016020604051808303815f875af1158015610ae7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0b919061149b565b505b5050600b805460ff19169055565b600b5460ff1615610b2a575f80fd5b600b805460ff1916600190811790915554604080516357e871e760e01b815290515f926001600160a01b0316916357e871e79160048083019260209291908290030181865afa158015610b7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ba39190611127565b90505f5b82811015610c1757610bba60018361135f565b335f908152600460209081526040808320848452909152812080549294508692909190610be890849061135f565b90915550505f8281526003602052604081208054869290610c0a90849061135f565b9091555050600101610ba7565b506001546040516338885ac160e01b815260048101859052602481018490526001600160a01b03909116906338885ac19034906044015f604051808303818588803b158015610c64575f80fd5b505af1158015610c76573d5f803e3d5ffd5b5050600b805460ff19169055505050505050565b610c92611070565b60015460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb906044015b6020604051808303815f875af1158015610ce1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d05919061149b565b5050565b610d11611070565b610d1a5f6110d8565b565b610d24611070565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b610d4e611070565b6009548110610d5b575f80fd5b600955565b610d68611070565b600754811115610d76575f80fd5b5f600754118015610d9157506008546001600160a01b031615155b15610df0576001546008546001600160a01b039182169163a9059cbb91168315610dbb5783610dbf565b6007545b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401610cc5565b50565b610dfb611070565b6001600160a01b038116610e655760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b610df0816110d8565b600b5460ff1615610e7d575f80fd5b600b805460ff191660011790555f5b8151811015610b0d575f828281518110610ea857610ea8611372565b6020908102919091018101515f818152600590925260409091205490915060ff1615610ed45750611068565b6001546040516336dbf5db60e11b8152600481018390525f916001600160a01b031690636db7ebb690602401602060405180830381865afa158015610f1b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f3f9190611396565b90506001600160a01b038116610f56575050611068565b306001600160a01b0382160361104c575f82815260056020526040808220805460ff1916600190811790915554905163f25b3f9960e01b8152600481018590526001600160a01b039091169063f25b3f99906024015f60405180830381865afa158015610fc5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610fec91908101906113b1565b90505f600a5460095483604001516110049190611171565b61100e9190611152565b90508060075f828254611021919061135f565b9091555050604082015161103690829061118e565b5f85815260066020526040902055506110659050565b5f828152600560205260409020805460ff191660021790555b50505b600101610e8c565b336110825f546001600160a01b031690565b6001600160a01b031614610d1a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610e5c565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215611137575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b5f8261116c57634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176111885761118861113e565b92915050565b818103818111156111885761118861113e565b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff811182821017156111d8576111d86111a1565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611207576112076111a1565b604052919050565b5f67ffffffffffffffff821115611228576112286111a1565b5060051b60200190565b5f60208284031215611242575f80fd5b813567ffffffffffffffff811115611258575f80fd5b8201601f81018413611268575f80fd5b803561127b6112768261120f565b6111de565b8082825260208201915060208360051b85010192508683111561129c575f80fd5b6020840193505b828410156112be5783358252602093840193909101906112a3565b9695505050505050565b5f80604083850312156112d9575f80fd5b50508035926020909101359150565b5f602082840312156112f8575f80fd5b5035919050565b6001600160a01b0381168114610df0575f80fd5b5f60208284031215611323575f80fd5b813561132e816112ff565b9392505050565b5f8060408385031215611346575f80fd5b8235611351816112ff565b946020939093013593505050565b808201808211156111885761118861113e565b634e487b7160e01b5f52603260045260245ffd5b8051611391816112ff565b919050565b5f602082840312156113a6575f80fd5b815161132e816112ff565b5f602082840312156113c1575f80fd5b815167ffffffffffffffff8111156113d7575f80fd5b8201606081850312156113e8575f80fd5b6113f06111b5565b815167ffffffffffffffff811115611406575f80fd5b8201601f81018613611416575f80fd5b80516114246112768261120f565b8082825260208201915060208360051b850101925088831115611445575f80fd5b6020840193505b8284101561147057835161145f816112ff565b82526020938401939091019061144c565b84525061148291505060208301611386565b6020820152604091820151918101919091529392505050565b5f602082840312156114ab575f80fd5b8151801515811461132e575f80fdfea26469706673582212202d8ed72dd3bc4775ab86175ff882f3d881c8a421550450e1375debe270ae127c64736f6c634300081a0033000000000000000000000000e957ea0b072910f508dd2009f4acb7238c308e29000000000000000000000000b66050e3eb239e9955aa897dd981e70621b4455f
Deployed Bytecode
0x6080604052600436106100fd575f3560e01c80638da5cb5b11610092578063a45db91111610062578063a45db911146103d0578063a969ff0a146103ef578063ca16c5be1461040e578063f2fde38b14610444578063f3c3cf4c14610463575f80fd5b80638da5cb5b1461032a57806394e604b91461034657806399ea64aa14610386578063a42dce80146103b1575f80fd5b80634d474898116100cd5780634d474898146102a157806357396373146102b45780635cb2d86e146102eb578063715018a614610316575f80fd5b80630b9a03591461021c5780632517db411461024e57806338885ac11461026f57806341f77b7314610282575f80fd5b3661021857600b5460ff1615610111575f80fd5b600b805460ff19166001908117909155546040805163e54ad23760e01b815290515f926001600160a01b03169163e54ad2379160048083019260209291908290030181865afa158015610166573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018a9190611127565b90505f6101978234611152565b90505f6101a48284611171565b9050478110156101fb57336101b9824761118e565b6040515f81818185875af1925050503d805f81146101f2576040519150601f19603f3d011682016040523d82523d5f602084013e6101f7565b606091505b5050505b811561020a5761020a82610482565b5050600b805460ff19169055005b5f80fd5b348015610227575f80fd5b5061023b610236366004611232565b6105c9565b6040519081526020015b60405180910390f35b348015610259575f80fd5b5061026d610268366004611232565b6107ce565b005b61026d61027d3660046112c8565b610b1b565b34801561028d575f80fd5b5061026d61029c3660046112e8565b610c8a565b61026d6102af3660046112e8565b610482565b3480156102bf575f80fd5b506001546102d3906001600160a01b031681565b6040516001600160a01b039091168152602001610245565b3480156102f6575f80fd5b5061023b6103053660046112e8565b60036020525f908152604090205481565b348015610321575f80fd5b5061026d610d09565b348015610335575f80fd5b505f546001600160a01b03166102d3565b348015610351575f80fd5b506103746103603660046112e8565b60056020525f908152604090205460ff1681565b60405160ff9091168152602001610245565b348015610391575f80fd5b5061023b6103a03660046112e8565b60066020525f908152604090205481565b3480156103bc575f80fd5b5061026d6103cb366004611313565b610d1c565b3480156103db575f80fd5b5061026d6103ea3660046112e8565b610d46565b3480156103fa575f80fd5b5061026d6104093660046112e8565b610d60565b348015610419575f80fd5b5061023b610428366004611335565b600460209081525f928352604080842090915290825290205481565b34801561044f575f80fd5b5061026d61045e366004611313565b610df3565b34801561046e575f80fd5b5061026d61047d366004611232565b610e6e565b600b5460ff1615610491575f80fd5b600b805460ff1916600190811790915554604080516357e871e760e01b815290515f926001600160a01b0316916357e871e79160048083019260209291908290030181865afa1580156104e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050a9190611127565b335f90815260046020908152604080832084845290915281208054929350849290919061053890849061135f565b90915550505f818152600360205260408120805484929061055a90849061135f565b90915550506001546040516309a8e91360e31b8152600481018490526001600160a01b0390911690634d4748989034906024015f604051808303818588803b1580156105a4575f80fd5b505af11580156105b6573d5f803e3d5ffd5b5050600b805460ff191690555050505050565b5f805b82518110156107c8575f8382815181106105e8576105e8611372565b6020908102919091018101515f8181526005909252604082205490925060ff168103610759576001546040516336dbf5db60e11b8152600481018490525f916001600160a01b031690636db7ebb690602401602060405180830381865afa158015610655573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106799190611396565b90506001600160a01b038116610691575050506107c0565b306001600160a01b0382160361074b5760015460405163f25b3f9960e01b8152600481018590525f916001600160a01b03169063f25b3f99906024015f60405180830381865afa1580156106e7573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261070e91908101906113b1565b90505f600a5460095483604001516107269190611171565b6107309190611152565b9050808260400151610742919061118e565b93505050610753565b5050506107c0565b50610778565b5f8281526005602052604090205460ff166002036107785750506107c0565b5f8281526003602090815260408083205433845260048352818420868552909252909120546107a79083611171565b6107b19190611152565b6107bb908561135f565b935050505b6001016105cc565b50919050565b600b5460ff16156107dd575f80fd5b600b805460ff191660011790555f805b8251811015610a92575f83828151811061080957610809611372565b6020908102919091018101515f8181526005909252604082205490925060ff1690036109cb576001546040516336dbf5db60e11b8152600481018390525f916001600160a01b031690636db7ebb690602401602060405180830381865afa158015610876573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089a9190611396565b90506001600160a01b0381166108b1575050610a8a565b306001600160a01b038216036109a7575f82815260056020526040808220805460ff1916600190811790915554905163f25b3f9960e01b8152600481018590526001600160a01b039091169063f25b3f99906024015f60405180830381865afa158015610920573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261094791908101906113b1565b90505f600a54600954836040015161095f9190611171565b6109699190611152565b90508060075f82825461097c919061135f565b9091555050604082015161099190829061118e565b5f85815260066020526040902055506109c59050565b505f908152600560205260409020805460ff19166002179055610a8a565b506109e9565b5f8181526005602052604090205460ff166002036109e95750610a8a565b5f81815260036020908152604080832054338452600483528184208585528352818420546006909352922054610a1f9190611171565b610a299190611152565b610a33908461135f565b335f9081526004602090815260408083208584528252808320546003909252822080549396509092909190610a6990849061118e565b9091555050335f908152600460209081526040808320938352929052908120555b6001016107ed565b508015610b0d5760015460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb906044016020604051808303815f875af1158015610ae7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b0b919061149b565b505b5050600b805460ff19169055565b600b5460ff1615610b2a575f80fd5b600b805460ff1916600190811790915554604080516357e871e760e01b815290515f926001600160a01b0316916357e871e79160048083019260209291908290030181865afa158015610b7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ba39190611127565b90505f5b82811015610c1757610bba60018361135f565b335f908152600460209081526040808320848452909152812080549294508692909190610be890849061135f565b90915550505f8281526003602052604081208054869290610c0a90849061135f565b9091555050600101610ba7565b506001546040516338885ac160e01b815260048101859052602481018490526001600160a01b03909116906338885ac19034906044015f604051808303818588803b158015610c64575f80fd5b505af1158015610c76573d5f803e3d5ffd5b5050600b805460ff19169055505050505050565b610c92611070565b60015460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb906044015b6020604051808303815f875af1158015610ce1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d05919061149b565b5050565b610d11611070565b610d1a5f6110d8565b565b610d24611070565b600880546001600160a01b0319166001600160a01b0392909216919091179055565b610d4e611070565b6009548110610d5b575f80fd5b600955565b610d68611070565b600754811115610d76575f80fd5b5f600754118015610d9157506008546001600160a01b031615155b15610df0576001546008546001600160a01b039182169163a9059cbb91168315610dbb5783610dbf565b6007545b6040516001600160e01b031960e085901b1681526001600160a01b0390921660048301526024820152604401610cc5565b50565b610dfb611070565b6001600160a01b038116610e655760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b610df0816110d8565b600b5460ff1615610e7d575f80fd5b600b805460ff191660011790555f5b8151811015610b0d575f828281518110610ea857610ea8611372565b6020908102919091018101515f818152600590925260409091205490915060ff1615610ed45750611068565b6001546040516336dbf5db60e11b8152600481018390525f916001600160a01b031690636db7ebb690602401602060405180830381865afa158015610f1b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f3f9190611396565b90506001600160a01b038116610f56575050611068565b306001600160a01b0382160361104c575f82815260056020526040808220805460ff1916600190811790915554905163f25b3f9960e01b8152600481018590526001600160a01b039091169063f25b3f99906024015f60405180830381865afa158015610fc5573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610fec91908101906113b1565b90505f600a5460095483604001516110049190611171565b61100e9190611152565b90508060075f828254611021919061135f565b9091555050604082015161103690829061118e565b5f85815260066020526040902055506110659050565b5f828152600560205260409020805460ff191660021790555b50505b600101610e8c565b336110825f546001600160a01b031690565b6001600160a01b031614610d1a5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610e5c565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f60208284031215611137575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b5f8261116c57634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176111885761118861113e565b92915050565b818103818111156111885761118861113e565b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff811182821017156111d8576111d86111a1565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611207576112076111a1565b604052919050565b5f67ffffffffffffffff821115611228576112286111a1565b5060051b60200190565b5f60208284031215611242575f80fd5b813567ffffffffffffffff811115611258575f80fd5b8201601f81018413611268575f80fd5b803561127b6112768261120f565b6111de565b8082825260208201915060208360051b85010192508683111561129c575f80fd5b6020840193505b828410156112be5783358252602093840193909101906112a3565b9695505050505050565b5f80604083850312156112d9575f80fd5b50508035926020909101359150565b5f602082840312156112f8575f80fd5b5035919050565b6001600160a01b0381168114610df0575f80fd5b5f60208284031215611323575f80fd5b813561132e816112ff565b9392505050565b5f8060408385031215611346575f80fd5b8235611351816112ff565b946020939093013593505050565b808201808211156111885761118861113e565b634e487b7160e01b5f52603260045260245ffd5b8051611391816112ff565b919050565b5f602082840312156113a6575f80fd5b815161132e816112ff565b5f602082840312156113c1575f80fd5b815167ffffffffffffffff8111156113d7575f80fd5b8201606081850312156113e8575f80fd5b6113f06111b5565b815167ffffffffffffffff811115611406575f80fd5b8201601f81018613611416575f80fd5b80516114246112768261120f565b8082825260208201915060208360051b850101925088831115611445575f80fd5b6020840193505b8284101561147057835161145f816112ff565b82526020938401939091019061144c565b84525061148291505060208301611386565b6020820152604091820151918101919091529392505050565b5f602082840312156114ab575f80fd5b8151801515811461132e575f80fdfea26469706673582212202d8ed72dd3bc4775ab86175ff882f3d881c8a421550450e1375debe270ae127c64736f6c634300081a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000e957ea0b072910f508dd2009f4acb7238c308e29000000000000000000000000b66050e3eb239e9955aa897dd981e70621b4455f
-----Decoded View---------------
Arg [0] : tokenAddress (address): 0xE957ea0b072910f508dD2009F4acB7238C308E29
Arg [1] : feeCollector_ (address): 0xB66050E3eb239e9955AA897dd981e70621B4455f
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000e957ea0b072910f508dd2009f4acb7238c308e29
Arg [1] : 000000000000000000000000b66050e3eb239e9955aa897dd981e70621b4455f
Deployed Bytecode Sourcemap
2002:6877:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2592:7;;;;2591:8;2583:17;;;;;;2611:7;:14;;-1:-1:-1;;2611:14:0;2621:4;2611:14;;;;;;8541:4;:15:::1;::::0;;-1:-1:-1;;;8541:15:0;;;;2611:7;;-1:-1:-1;;;;;8541:4:0::1;::::0;:13:::1;::::0;:15:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:4;:15:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8522:34:::0;-1:-1:-1;8567:17:0::1;8587:20;8522:34:::0;8587:9:::1;:20;:::i;:::-;8567:40:::0;-1:-1:-1;8618:17:0::1;8638:20;8567:40:::0;8638:8;:20:::1;:::i;:::-;8618:40;;8685:21;8673:9;:33;8669:127;;;8723:10;8746:33;8770:9:::0;8746:21:::1;:33;:::i;:::-;8723:61;::::0;::::1;::::0;;;;;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8669:127;8812:13:::0;;8808:61:::1;;8842:15;8847:9;8842:4;:15::i;:::-;-1:-1:-1::0;;2648:7:0;:15;;-1:-1:-1;;2648:15:0;;;-1:-1:-1;2002:6877:0;;;;6373:1415;;;;;;;;;;-1:-1:-1;6373:1415:0;;;;;:::i;:::-;;:::i;:::-;;;3068:25:1;;;3056:2;3041:18;6373:1415:0;;;;;;;;4558:1807;;;;;;;;;;-1:-1:-1;4558:1807:0;;;;;:::i;:::-;;:::i;:::-;;3175:441;;;;;;:::i;:::-;;:::i;8361:110::-;;;;;;;;;;-1:-1:-1;8361:110:0;;;;;:::i;:::-;;:::i;2873:294::-;;;;;;:::i;:::-;;:::i;2050:17::-;;;;;;;;;;-1:-1:-1;2050:17:0;;;;-1:-1:-1;;;;;2050:17:0;;;;;;-1:-1:-1;;;;;3863:32:1;;;3845:51;;3833:2;3818:18;2050:17:0;3686:216:1;2112:57:0;;;;;;;;;;-1:-1:-1;2112:57:0;;;;;:::i;:::-;;;;;;;;;;;;;;613:103;;;;;;;;;;;;;:::i;380:87::-;;;;;;;;;;-1:-1:-1;426:7:0;453:6;-1:-1:-1;;;;;453:6:0;380:87;;2263:50;;;;;;;;;;-1:-1:-1;2263:50:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4287:4:1;4275:17;;;4257:36;;4245:2;4230:18;2263:50:0;4115:184:1;2320:47:0;;;;;;;;;;-1:-1:-1;2320:47:0;;;;;:::i;:::-;;;;;;;;;;;;;;8059:118;;;;;;;;;;-1:-1:-1;8059:118:0;;;;;:::i;:::-;;:::i;8185:168::-;;;;;;;;;;-1:-1:-1;8185:168:0;;;;;:::i;:::-;;:::i;7796:255::-;;;;;;;;;;-1:-1:-1;7796:255:0;;;;;:::i;:::-;;:::i;2176:80::-;;;;;;;;;;-1:-1:-1;2176:80:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;724:201;;;;;;;;;;-1:-1:-1;724:201:0;;;;;:::i;:::-;;:::i;3624:926::-;;;;;;;;;;-1:-1:-1;3624:926:0;;;;;:::i;:::-;;:::i;2873:294::-;2592:7;;;;2591:8;2583:17;;;;;;2611:7;:14;;-1:-1:-1;;2611:14:0;2621:4;2611:14;;;;;;2959:4;:18:::1;::::0;;-1:-1:-1;;;2959:18:0;;;;2611:7;;-1:-1:-1;;;;;2959:4:0::1;::::0;:16:::1;::::0;:18:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:4;:18:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3014:10;2988:37;::::0;;;:25:::1;:37;::::0;;;;;;;:50;;;;;;;;:63;;2937:40;;-1:-1:-1;3042:9:0;;2988:50;;:37;:63:::1;::::0;3042:9;;2988:63:::1;:::i;:::-;::::0;;;-1:-1:-1;;3062:35:0::1;::::0;;;:22:::1;:35;::::0;;;;:48;;3101:9;;3062:35;:48:::1;::::0;3101:9;;3062:48:::1;:::i;:::-;::::0;;;-1:-1:-1;;3121:4:0::1;::::0;:38:::1;::::0;-1:-1:-1;;;3121:38:0;;::::1;::::0;::::1;3068:25:1::0;;;-1:-1:-1;;;;;3121:4:0;;::::1;::::0;:9:::1;::::0;3138::::1;::::0;3041:18:1;;3121:38:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;2648:7:0;:15;;-1:-1:-1;;2648:15:0;;;-1:-1:-1;;;;;2873:294:0:o;6373:1415::-;6465:20;6503:9;6498:1283;6516:19;:26;6514:1;:28;6498:1283;;;6564:19;6586;6606:1;6586:22;;;;;;;;:::i;:::-;;;;;;;;;;;;6623:19;6713:30;;;:17;:30;;;;;;;6586:22;;-1:-1:-1;6713:30:0;;:35;;6709:926;;6793:4;;:38;;-1:-1:-1;;;6793:38:0;;;;;3068:25:1;;;6769:21:0;;-1:-1:-1;;;;;6793:4:0;;:25;;3041:18:1;;6793:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6769:62;-1:-1:-1;;;;;;6898:27:0;;6894:561;;6950:8;;;;;6894:561;7073:4;-1:-1:-1;;;;;7048:30:0;;;7044:411;;7134:4;;:24;;-1:-1:-1;;;7134:24:0;;;;;3068:25:1;;;7103:28:0;;-1:-1:-1;;;;;7134:4:0;;:11;;3041:18:1;;7134:24:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;7134:24:0;;;;;;;;;;;;:::i;:::-;7103:55;;7181:12;7236:14;;7221:12;;7196:9;:22;;;:37;;;;:::i;:::-;:54;;;;:::i;:::-;7181:69;;7312:4;7287:9;:22;;;:29;;;;:::i;:::-;7273:43;;7080:318;;7044:411;;;7427:8;;;;;7044:411;6750:795;6709:926;;;7555:30;;;;:17;:30;;;;;;;;7589:1;7555:35;7551:84;;7611:8;;;;7551:84;7734:35;;;;:22;:35;;;;;;;;;7707:10;7681:37;;:25;:37;;;;;:50;;;;;;;;;;7667:64;;:11;:64;:::i;:::-;:102;;;;:::i;:::-;7651:118;;;;:::i;:::-;;;6549:1232;;6498:1283;6544:3;;6498:1283;;;;6373:1415;;;:::o;4558:1807::-;2592:7;;;;2591:8;2583:17;;;;;;2611:7;:14;;-1:-1:-1;;2611:14:0;2621:4;2611:14;;;:7;;4678:1590:::1;4698:12;:19;4696:1;:21;4678:1590;;;4739:19;4761:12;4774:1;4761:15;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;4841:30:::1;::::0;;;:17:::1;:30:::0;;;;;;;4761:15;;-1:-1:-1;4841:30:0::1;;:35:::0;;4837:1100:::1;;4921:4;::::0;:38:::1;::::0;-1:-1:-1;;;4921:38:0;;::::1;::::0;::::1;3068:25:1::0;;;4897:21:0::1;::::0;-1:-1:-1;;;;;4921:4:0::1;::::0;:25:::1;::::0;3041:18:1;;4921:38:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;4897:62:::0;-1:-1:-1;;;;;;5026:27:0;::::1;5022:733;;5078:8;;;;5022:733;5201:4;-1:-1:-1::0;;;;;5176:30:0;::::1;::::0;5172:583:::1;;5231:30;::::0;;;:17:::1;:30;::::0;;;;;:34;;-1:-1:-1;;5231:34:0::1;5264:1;5231:34:::0;;::::1;::::0;;;5319:4;:24;;-1:-1:-1;;;5319:24:0;;::::1;::::0;::::1;3068:25:1::0;;;-1:-1:-1;;;;;5319:4:0;;::::1;::::0;:11:::1;::::0;3041:18:1;;5319:24:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;5319:24:0::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;5288:55;;5366:12;5421:14;;5406:12;;5381:9;:22;;;:37;;;;:::i;:::-;:54;;;;:::i;:::-;5366:69;;5473:4;5458:11;;:19;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;5528:22:0::1;::::0;::::1;::::0;:29:::1;::::0;5553:4;;5528:29:::1;:::i;:::-;5500:25;::::0;;;:12:::1;:25;::::0;;;;:57;-1:-1:-1;5172:583:0::1;::::0;-1:-1:-1;5172:583:0::1;;-1:-1:-1::0;5670:30:0::1;::::0;;;:17:::1;:30;::::0;;;;:34;;-1:-1:-1;;5670:34:0::1;5703:1;5670:34;::::0;;5727:8:::1;;5172:583;4878:969;4837:1100;;;5857:30;::::0;;;:17:::1;:30;::::0;;;;;::::1;;5891:1;5857:35:::0;5853:84:::1;;5913:8;;;5853:84;6045:35;::::0;;;:22:::1;:35;::::0;;;;;;;;6018:10:::1;5992:37:::0;;:25:::1;:37:::0;;;;;:50;;;;;;;;;5964:12:::1;:25:::0;;;;;;:78:::1;::::0;5992:50;5964:78:::1;:::i;:::-;:116;;;;:::i;:::-;5953:127;::::0;;::::1;:::i;:::-;6160:10;6134:37;::::0;;;:25:::1;:37;::::0;;;;;;;:50;;;;;;;;;6095:22:::1;:35:::0;;;;;:89;;5953:127;;-1:-1:-1;6134:50:0;;6095:35;;6134:37;6095:89:::1;::::0;6134:50;;6095:89:::1;:::i;:::-;::::0;;;-1:-1:-1;;6232:10:0::1;6206:37;::::0;;;:25:::1;:37;::::0;;;;;;;:50;;;;;;;;;6199:57;4678:1590:::1;4719:3;;4678:1590;;;-1:-1:-1::0;6284:11:0;;6280:78:::1;;6312:4;::::0;:34:::1;::::0;-1:-1:-1;;;6312:34:0;;6326:10:::1;6312:34;::::0;::::1;7296:51:1::0;7363:18;;;7356:34;;;-1:-1:-1;;;;;6312:4:0;;::::1;::::0;:13:::1;::::0;7269:18:1;;6312:34:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;6280:78;-1:-1:-1::0;;2648:7:0;:15;;-1:-1:-1;;2648:15:0;;;4558:1807::o;3175:441::-;2592:7;;;;2591:8;2583:17;;;;;;2611:7;:14;;-1:-1:-1;;2611:14:0;2621:4;2611:14;;;;;;3290:4;:18:::1;::::0;;-1:-1:-1;;;3290:18:0;;;;2611:7;;-1:-1:-1;;;;;3290:4:0::1;::::0;:16:::1;::::0;:18:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:4;:18:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3268:40;;3324:9;3319:222;3339:11;3337:1;:13;3319:222;;;3372:16;3387:1;3372:16:::0;::::1;:::i;:::-;3429:10;3403:37;::::0;;;:25:::1;:37;::::0;;;;;;;:50;;;;;;;;:63;;3372:16;;-1:-1:-1;3457:9:0;;3403:50;;:37;:63:::1;::::0;3457:9;;3403:63:::1;:::i;:::-;::::0;;;-1:-1:-1;;3481:35:0::1;::::0;;;:22:::1;:35;::::0;;;;:48;;3520:9;;3481:35;:48:::1;::::0;3520:9;;3481:48:::1;:::i;:::-;::::0;;;-1:-1:-1;;3352:3:0::1;;3319:222;;;-1:-1:-1::0;3551:4:0::1;::::0;:57:::1;::::0;-1:-1:-1;;;3551:57:0;;::::1;::::0;::::1;7857:25:1::0;;;7898:18;;;7891:34;;;-1:-1:-1;;;;;3551:4:0;;::::1;::::0;:15:::1;::::0;3574:9:::1;::::0;7830:18:1;;3551:57:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;2648:7:0;:15;;-1:-1:-1;;2648:15:0;;;-1:-1:-1;;;;;;3175:441:0:o;8361:110::-;339:13;:11;:13::i;:::-;8430:4:::1;::::0;:33:::1;::::0;-1:-1:-1;;;8430:33:0;;8444:10:::1;8430:33;::::0;::::1;7296:51:1::0;7363:18;;;7356:34;;;-1:-1:-1;;;;;8430:4:0;;::::1;::::0;:13:::1;::::0;7269:18:1;;8430:33:0::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8361:110:::0;:::o;613:103::-;339:13;:11;:13::i;:::-;678:30:::1;705:1;678:18;:30::i;:::-;613:103::o:0;8059:118::-;339:13;:11;:13::i;:::-;8139:12:::1;:30:::0;;-1:-1:-1;;;;;;8139:30:0::1;-1:-1:-1::0;;;;;8139:30:0;;;::::1;::::0;;;::::1;::::0;;8059:118::o;8185:168::-;339:13;:11;:13::i;:::-;8291:12:::1;;8273:15;:30;8265:39;;;::::0;::::1;;8315:12;:30:::0;8185:168::o;7796:255::-;339:13;:11;:13::i;:::-;7880:11:::1;;7870:6;:21;;7862:30;;;::::0;::::1;;7921:1;7907:11;;:15;:45;;;;-1:-1:-1::0;7926:12:0::1;::::0;-1:-1:-1;;;;;7926:12:0::1;:26:::0;::::1;7907:45;7903:141;;;7969:4;::::0;7983:12:::1;::::0;-1:-1:-1;;;;;7969:4:0;;::::1;::::0;:13:::1;::::0;7983:12:::1;7997:11:::0;;:34:::1;;8025:6;7997:34;;;8011:11;;7997:34;7969:63;::::0;-1:-1:-1;;;;;;7969:63:0::1;::::0;;;;;;-1:-1:-1;;;;;7314:32:1;;;7969:63:0::1;::::0;::::1;7296:51:1::0;7363:18;;;7356:34;7269:18;;7969:63:0::1;7122:274:1::0;7903:141:0::1;7796:255:::0;:::o;724:201::-;339:13;:11;:13::i;:::-;-1:-1:-1;;;;;813:22:0;::::1;805:73;;;::::0;-1:-1:-1;;;805:73:0;;8138:2:1;805:73:0::1;::::0;::::1;8120:21:1::0;8177:2;8157:18;;;8150:30;8216:34;8196:18;;;8189:62;-1:-1:-1;;;8267:18:1;;;8260:36;8313:19;;805:73:0::1;;;;;;;;;889:28;908:8;889:18;:28::i;3624:926::-:0;2592:7;;;;2591:8;2583:17;;;;;;2611:7;:14;;-1:-1:-1;;2611:14:0;2621:4;2611:14;;;:7;3703:840:::1;3723:12;:19;3721:1;:21;3703:840;;;3764:19;3786:12;3799:1;3786:15;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;3820:30:::1;::::0;;;:17:::1;:30:::0;;;;;;;;3786:15;;-1:-1:-1;3820:30:0::1;;:35:::0;3816:85:::1;;3877:8;;;3816:85;3941:4;::::0;:38:::1;::::0;-1:-1:-1;;;3941:38:0;;::::1;::::0;::::1;3068:25:1::0;;;3917:21:0::1;::::0;-1:-1:-1;;;;;3941:4:0::1;::::0;:25:::1;::::0;3041:18:1;;3941:38:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;3917:62:::0;-1:-1:-1;;;;;;3998:27:0;::::1;3994:538;;4046:8;;;;3994:538;4105:4;-1:-1:-1::0;;;;;4080:30:0;::::1;::::0;4076:456:::1;;4131:30;::::0;;;:17:::1;:30;::::0;;;;;:34;;-1:-1:-1;;4131:34:0::1;4164:1;4131:34:::0;;::::1;::::0;;;4215:4;:24;;-1:-1:-1;;;4215:24:0;;::::1;::::0;::::1;3068:25:1::0;;;-1:-1:-1;;;;;4215:4:0;;::::1;::::0;:11:::1;::::0;3041:18:1;;4215:24:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;::::0;;::::1;-1:-1:-1::0;;4215:24:0::1;::::0;::::1;;::::0;::::1;::::0;;;::::1;::::0;::::1;:::i;:::-;4184:55;;4258:12;4313:14;;4298:12;;4273:9;:22;;;:37;;;;:::i;:::-;:54;;;;:::i;:::-;4258:69;;4361:4;4346:11;;:19;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;4412:22:0::1;::::0;::::1;::::0;:29:::1;::::0;4437:4;;4412:29:::1;:::i;:::-;4384:25;::::0;;;:12:::1;:25;::::0;;;;:57;-1:-1:-1;4076:456:0::1;::::0;-1:-1:-1;4076:456:0::1;;4482:30;::::0;;;:17:::1;:30;::::0;;;;:34;;-1:-1:-1;;4482:34:0::1;4515:1;4482:34;::::0;;4076:456:::1;3749:794;;3703:840;3744:3;;3703:840;;475:130:::0;550:10;539:7;426;453:6;-1:-1:-1;;;;;453:6:0;;380:87;539:7;-1:-1:-1;;;;;539:21:0;;531:66;;;;-1:-1:-1;;;531:66:0;;8545:2:1;531:66:0;;;8527:21:1;;;8564:18;;;8557:30;8623:34;8603:18;;;8596:62;8675:18;;531:66:0;8343:356:1;933:191:0;1007:16;1026:6;;-1:-1:-1;;;;;1043:17:0;;;-1:-1:-1;;;;;;1043:17:0;;;;;;1076:40;;1026:6;;;;;;;1076:40;;1007:16;1076:40;996:128;933:191;:::o;14:230:1:-;84:6;137:2;125:9;116:7;112:23;108:32;105:52;;;153:1;150;143:12;105:52;-1:-1:-1;198:16:1;;14:230;-1:-1:-1;14:230:1:o;249:127::-;310:10;305:3;301:20;298:1;291:31;341:4;338:1;331:15;365:4;362:1;355:15;381:217;421:1;447;437:132;;491:10;486:3;482:20;479:1;472:31;526:4;523:1;516:15;554:4;551:1;544:15;437:132;-1:-1:-1;583:9:1;;381:217::o;603:168::-;676:9;;;707;;724:15;;;718:22;;704:37;694:71;;745:18;;:::i;:::-;603:168;;;;:::o;776:128::-;843:9;;;864:11;;;861:37;;;878:18;;:::i;1119:127::-;1180:10;1175:3;1171:20;1168:1;1161:31;1211:4;1208:1;1201:15;1235:4;1232:1;1225:15;1251:253;1323:2;1317:9;1365:4;1353:17;;1400:18;1385:34;;1421:22;;;1382:62;1379:88;;;1447:18;;:::i;:::-;1483:2;1476:22;1251:253;:::o;1509:275::-;1580:2;1574:9;1645:2;1626:13;;-1:-1:-1;;1622:27:1;1610:40;;1680:18;1665:34;;1701:22;;;1662:62;1659:88;;;1727:18;;:::i;:::-;1763:2;1756:22;1509:275;;-1:-1:-1;1509:275:1:o;1789:183::-;1849:4;1882:18;1874:6;1871:30;1868:56;;;1904:18;;:::i;:::-;-1:-1:-1;1949:1:1;1945:14;1961:4;1941:25;;1789:183::o;1977:940::-;2061:6;2114:2;2102:9;2093:7;2089:23;2085:32;2082:52;;;2130:1;2127;2120:12;2082:52;2170:9;2157:23;2203:18;2195:6;2192:30;2189:50;;;2235:1;2232;2225:12;2189:50;2258:22;;2311:4;2303:13;;2299:27;-1:-1:-1;2289:55:1;;2340:1;2337;2330:12;2289:55;2380:2;2367:16;2403:64;2419:47;2459:6;2419:47;:::i;:::-;2403:64;:::i;:::-;2489:3;2513:6;2508:3;2501:19;2545:2;2540:3;2536:12;2529:19;;2600:2;2590:6;2587:1;2583:14;2579:2;2575:23;2571:32;2557:46;;2626:7;2618:6;2615:19;2612:39;;;2647:1;2644;2637:12;2612:39;2679:2;2675;2671:11;2660:22;;2691:196;2707:6;2702:3;2699:15;2691:196;;;2797:17;;2827:18;;2874:2;2724:12;;;;2865;;;;2691:196;;;2906:5;1977:940;-1:-1:-1;;;;;;1977:940:1:o;3104:346::-;3172:6;3180;3233:2;3221:9;3212:7;3208:23;3204:32;3201:52;;;3249:1;3246;3239:12;3201:52;-1:-1:-1;;3294:23:1;;;3414:2;3399:18;;;3386:32;;-1:-1:-1;3104:346:1:o;3455:226::-;3514:6;3567:2;3555:9;3546:7;3542:23;3538:32;3535:52;;;3583:1;3580;3573:12;3535:52;-1:-1:-1;3628:23:1;;3455:226;-1:-1:-1;3455:226:1:o;4304:131::-;-1:-1:-1;;;;;4379:31:1;;4369:42;;4359:70;;4425:1;4422;4415:12;4440:247;4499:6;4552:2;4540:9;4531:7;4527:23;4523:32;4520:52;;;4568:1;4565;4558:12;4520:52;4607:9;4594:23;4626:31;4651:5;4626:31;:::i;:::-;4676:5;4440:247;-1:-1:-1;;;4440:247:1:o;4692:367::-;4760:6;4768;4821:2;4809:9;4800:7;4796:23;4792:32;4789:52;;;4837:1;4834;4827:12;4789:52;4876:9;4863:23;4895:31;4920:5;4895:31;:::i;:::-;4945:5;5023:2;5008:18;;;;4995:32;;-1:-1:-1;;;4692:367:1:o;5064:125::-;5129:9;;;5150:10;;;5147:36;;;5163:18;;:::i;5194:127::-;5255:10;5250:3;5246:20;5243:1;5236:31;5286:4;5283:1;5276:15;5310:4;5307:1;5300:15;5326:138;5405:13;;5427:31;5405:13;5427:31;:::i;:::-;5326:138;;;:::o;5469:251::-;5539:6;5592:2;5580:9;5571:7;5567:23;5563:32;5560:52;;;5608:1;5605;5598:12;5560:52;5640:9;5634:16;5659:31;5684:5;5659:31;:::i;5725:1392::-;5817:6;5870:2;5858:9;5849:7;5845:23;5841:32;5838:52;;;5886:1;5883;5876:12;5838:52;5919:9;5913:16;5952:18;5944:6;5941:30;5938:50;;;5984:1;5981;5974:12;5938:50;6007:22;;6063:4;6045:16;;;6041:27;6038:47;;;6081:1;6078;6071:12;6038:47;6107:22;;:::i;:::-;6160:2;6154:9;6188:18;6178:8;6175:32;6172:52;;;6220:1;6217;6210:12;6172:52;6243:17;;6291:4;6283:13;;6279:27;-1:-1:-1;6269:55:1;;6320:1;6317;6310:12;6269:55;6353:2;6347:9;6376:64;6392:47;6432:6;6392:47;:::i;6376:64::-;6462:3;6486:6;6481:3;6474:19;6518:2;6513:3;6509:12;6502:19;;6573:2;6563:6;6560:1;6556:14;6552:2;6548:23;6544:32;6530:46;;6599:7;6591:6;6588:19;6585:39;;;6620:1;6617;6610:12;6585:39;6652:2;6648;6644:11;6633:22;;6664:216;6680:6;6675:3;6672:15;6664:216;;;6755:3;6749:10;6772:33;6797:7;6772:33;:::i;:::-;6818:20;;6867:2;6697:12;;;;6858;;;;6664:216;;;6889:20;;-1:-1:-1;6941:42:1;;-1:-1:-1;;6979:2:1;6971:11;;6941:42;:::i;:::-;6936:2;6925:14;;6918:66;7043:2;7035:11;;;7029:18;7063:14;;;7056:31;;;;6929:5;5725:1392;-1:-1:-1;;;5725:1392:1:o;7401:277::-;7468:6;7521:2;7509:9;7500:7;7496:23;7492:32;7489:52;;;7537:1;7534;7527:12;7489:52;7569:9;7563:16;7622:5;7615:13;7608:21;7601:5;7598:32;7588:60;;7644:1;7641;7634:12
Swarm Source
ipfs://2d8ed72dd3bc4775ab86175ff882f3d881c8a421550450e1375debe270ae127c
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
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.