Source Code
Latest 25 from a total of 268 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Withdraw Token | 20864602 | 515 days ago | IN | 0 ETH | 0.00222199 | ||||
| Withdraw Token | 20654369 | 544 days ago | IN | 0 ETH | 0.00010356 | ||||
| Withdraw Token | 20622592 | 549 days ago | IN | 0 ETH | 0.00020321 | ||||
| Unstake | 20541474 | 560 days ago | IN | 0 ETH | 0.000765 | ||||
| Unstake | 20537101 | 561 days ago | IN | 0 ETH | 0.00145125 | ||||
| Harvest | 20513865 | 564 days ago | IN | 0 ETH | 0.00097464 | ||||
| Harvest | 20513863 | 564 days ago | IN | 0 ETH | 0.00097452 | ||||
| Withdraw Token | 20457995 | 572 days ago | IN | 0 ETH | 0.0001573 | ||||
| Stake | 20446945 | 573 days ago | IN | 0 ETH | 0.00023958 | ||||
| Unstake | 20438680 | 575 days ago | IN | 0 ETH | 0.00025518 | ||||
| Harvest | 20438678 | 575 days ago | IN | 0 ETH | 0.00051503 | ||||
| Stake | 20438065 | 575 days ago | IN | 0 ETH | 0.00031533 | ||||
| Unstake | 20431779 | 576 days ago | IN | 0 ETH | 0.00098354 | ||||
| Unstake | 20413882 | 578 days ago | IN | 0 ETH | 0.00041341 | ||||
| Unstake | 20413881 | 578 days ago | IN | 0 ETH | 0.00049536 | ||||
| Harvest | 20413880 | 578 days ago | IN | 0 ETH | 0.00054654 | ||||
| Harvest | 20413879 | 578 days ago | IN | 0 ETH | 0.00052793 | ||||
| Unstake | 20404884 | 579 days ago | IN | 0 ETH | 0.00026686 | ||||
| Harvest | 20404824 | 579 days ago | IN | 0 ETH | 0.00029933 | ||||
| Harvest | 20398991 | 580 days ago | IN | 0 ETH | 0.0014346 | ||||
| Harvest | 20396672 | 580 days ago | IN | 0 ETH | 0.00029392 | ||||
| Unstake | 20396479 | 580 days ago | IN | 0 ETH | 0.00028681 | ||||
| Harvest | 20396476 | 580 days ago | IN | 0 ETH | 0.00046388 | ||||
| Harvest | 20394741 | 581 days ago | IN | 0 ETH | 0.00049693 | ||||
| Harvest | 20394740 | 581 days ago | IN | 0 ETH | 0.00037321 |
Advanced mode: Intended for advanced users or developers and will display all Internal Transactions including zero value transfers.
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
|||
|---|---|---|---|---|---|---|---|---|
| Transfer | 20864602 | 515 days ago | 0 ETH | |||||
| Transfer | 20654369 | 544 days ago | 0 ETH | |||||
| Transfer | 20622592 | 549 days ago | 0 ETH | |||||
| Transfer | 20541474 | 560 days ago | 0 ETH | |||||
| Transfer | 20541474 | 560 days ago | 0 ETH | |||||
| Transfer | 20537101 | 561 days ago | 0 ETH | |||||
| Transfer | 20537101 | 561 days ago | 0 ETH | |||||
| Transfer | 20513865 | 564 days ago | 0 ETH | |||||
| Transfer | 20513863 | 564 days ago | 0 ETH | |||||
| Transfer | 20457995 | 572 days ago | 0 ETH | |||||
| Transfer From | 20446945 | 573 days ago | 0 ETH | |||||
| Balance Of | 20446945 | 573 days ago | 0 ETH | |||||
| Balance Of | 20446945 | 573 days ago | 0 ETH | |||||
| Balance Of | 20446945 | 573 days ago | 0 ETH | |||||
| Balance Of | 20446945 | 573 days ago | 0 ETH | |||||
| Transfer | 20438680 | 575 days ago | 0 ETH | |||||
| Transfer | 20438678 | 575 days ago | 0 ETH | |||||
| Transfer From | 20438065 | 575 days ago | 0 ETH | |||||
| Balance Of | 20438065 | 575 days ago | 0 ETH | |||||
| Balance Of | 20438065 | 575 days ago | 0 ETH | |||||
| Balance Of | 20438065 | 575 days ago | 0 ETH | |||||
| Balance Of | 20438065 | 575 days ago | 0 ETH | |||||
| Transfer | 20431779 | 576 days ago | 0 ETH | |||||
| Transfer | 20431779 | 576 days ago | 0 ETH | |||||
| Transfer | 20413882 | 578 days ago | 0 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
ZDAIStake
Compiler Version
v0.8.25+commit.b61c2a91
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2024-05-17
*/
// SPDX-License-Identifier: Unlicensed
pragma solidity ^0.8.6;
interface IERC20 {
event Approval(
address indexed owner,
address indexed spender,
uint256 value
);
event Transfer(address indexed from, address indexed to, uint256 value);
function name() external view returns (string memory);
function symbol() external view returns (string memory);
function decimals() external view returns (uint8);
function totalSupply() external view returns (uint256);
function balanceOf(address owner) external view returns (uint256);
function allowance(address owner, address spender)
external
view
returns (uint256);
function approve(address spender, uint256 value) external;
function transfer(address to, uint256 value) external;
function transferFrom(
address from,
address to,
uint256 value
) external;
}
contract ZDAIStake {
using SafeMath for uint256;
IERC20 public stakeToken;
IERC20 public rewardToken;
IERC20 public token3;
address payable public owner;
uint256 public maxStakeableToken;
uint256 public minimumStakeToken;
uint256 public totalUnStakedToken;
uint256 public totalStakedToken;
uint256 public totalClaimedRewardToken;
uint256 public totalStakers;
uint256 public percentDivider;
uint256 public totalFee;
//STAKING DURATION
uint256[4] public Duration = [14 days, 30 days, 60 days, 90 days];
//APY BONUS IN PERCENTAGE
uint256[4] public Bonus = [1, 4, 13, 22];
struct Stake {
uint256 unstaketime;
uint256 staketime;
uint256 amount;
uint256 rewardTokenAmount;
uint256 reward;
uint256 lastharvesttime;
uint256 remainingreward;
uint256 harvestreward;
uint256 persecondreward;
bool withdrawan;
bool unstaked;
}
struct User {
uint256 totalStakedTokenUser;
uint256 totalUnstakedTokenUser;
uint256 totalClaimedRewardTokenUser;
uint256 stakeCount;
bool alreadyExists;
}
mapping(address => User) public Stakers;
mapping(uint256 => address) public StakersID;
mapping(address => mapping(uint256 => Stake)) public stakersRecord;
event STAKE(address Staker, uint256 amount);
event HARVEST(address Staker, uint256 amount);
event UNSTAKE(address Staker, uint256 amount);
modifier onlyowner() {
require(owner == msg.sender, "only owner");
_;
}
constructor(address payable _owner, address token1, address token2) {
owner = _owner;
stakeToken = IERC20(token1);
rewardToken = IERC20(token2);
totalFee = 0;
maxStakeableToken = 1000000000000000;
percentDivider = 1000;
minimumStakeToken = 1000000000000;
}
function stake(uint256 amount1, uint256 timeperiod) public {
require(timeperiod >= 0 && timeperiod <= 3, "Invalid Time Period");
require(amount1 >= minimumStakeToken, "stake more than minimum amount");
uint256 ZDAIVAL = getPriceinUSD();
uint256 amount = amount1.sub((amount1.mul(totalFee)).div(percentDivider));
uint256 rewardtokenPrice = (amount.mul(ZDAIVAL)).div(1e9);
if (!Stakers[msg.sender].alreadyExists) {
Stakers[msg.sender].alreadyExists = true;
StakersID[totalStakers] = msg.sender;
totalStakers++;
}
stakeToken.transferFrom(msg.sender, address(this), amount1);
uint256 index = Stakers[msg.sender].stakeCount;
Stakers[msg.sender].totalStakedTokenUser = Stakers[msg.sender]
.totalStakedTokenUser
.add(amount);
totalStakedToken = totalStakedToken.add(amount);
stakersRecord[msg.sender][index].unstaketime = block.timestamp.add(
Duration[timeperiod]
);
stakersRecord[msg.sender][index].staketime = block.timestamp;
stakersRecord[msg.sender][index].amount = amount;
stakersRecord[msg.sender][index].reward = rewardtokenPrice
.mul(Bonus[timeperiod])
.div(percentDivider);
stakersRecord[msg.sender][index].persecondreward = stakersRecord[
msg.sender
][index].reward.div(Duration[timeperiod]);
stakersRecord[msg.sender][index].rewardTokenAmount = rewardtokenPrice;
stakersRecord[msg.sender][index].lastharvesttime = 0;
stakersRecord[msg.sender][index].remainingreward = stakersRecord[msg.sender][index].reward;
stakersRecord[msg.sender][index].harvestreward = 0;
Stakers[msg.sender].stakeCount++;
emit STAKE(msg.sender, amount);
}
function unstake(uint256 index) public {
require(!stakersRecord[msg.sender][index].unstaked, "already unstaked");
require(
stakersRecord[msg.sender][index].unstaketime < block.timestamp,
"cannot unstake after before duration"
);
if(!stakersRecord[msg.sender][index].withdrawan){
harvest(index);
}
stakersRecord[msg.sender][index].unstaked = true;
stakeToken.transfer(
msg.sender,
stakersRecord[msg.sender][index].amount
);
totalUnStakedToken = totalUnStakedToken.add(
stakersRecord[msg.sender][index].amount
);
Stakers[msg.sender].totalUnstakedTokenUser = Stakers[msg.sender]
.totalUnstakedTokenUser
.add(stakersRecord[msg.sender][index].amount);
emit UNSTAKE(
msg.sender,
stakersRecord[msg.sender][index].amount
);
}
function harvest(uint256 index) public {
require(
!stakersRecord[msg.sender][index].withdrawan,
"already withdrawan"
);
require(!stakersRecord[msg.sender][index].unstaked, "already unstaked");
uint256 rewardTillNow;
uint256 commontimestamp;
(rewardTillNow,commontimestamp) = realtimeRewardPerBlock(msg.sender , index);
stakersRecord[msg.sender][index].lastharvesttime = commontimestamp;
rewardToken.transfer(
msg.sender,
rewardTillNow
);
totalClaimedRewardToken = totalClaimedRewardToken.add(
rewardTillNow
);
stakersRecord[msg.sender][index].remainingreward = stakersRecord[msg.sender][index].remainingreward.sub(rewardTillNow);
stakersRecord[msg.sender][index].harvestreward = stakersRecord[msg.sender][index].harvestreward.add(rewardTillNow);
Stakers[msg.sender].totalClaimedRewardTokenUser = Stakers[msg.sender]
.totalClaimedRewardTokenUser
.add(rewardTillNow);
if(stakersRecord[msg.sender][index].harvestreward == stakersRecord[msg.sender][index].reward){
stakersRecord[msg.sender][index].withdrawan = true;
}
emit HARVEST(
msg.sender,
rewardTillNow
);
}
function getPriceinUSD() public view returns (uint256){
IERC20 ZDAITOKEN = IERC20(0x8B683C400457ef31F3c27c90ACB6AB69304D1B77); // Token address (Token Stake)
IERC20 BUSDTOKEN = IERC20(0x8B683C400457ef31F3c27c90ACB6AB69304D1B77); // USDT Token address (Token Reward)
IERC20 WETHTOKEN = IERC20(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2); // Wrapped Native Token
address ZDAI_WETH = 0x4fADefE2A5Eb1BF9e1D3DC4a9fc85DaA5c5c660b; // ZDAI_WETH pool address
address BUSD_WETH = 0x4fADefE2A5Eb1BF9e1D3DC4a9fc85DaA5c5c660b; //BUSD_WETH pool address
uint256 BUSDSUPPLYINBUSD_WETH = BUSDTOKEN.balanceOf(BUSD_WETH);
uint256 WETHSUPPLYINBUSD_WETH = WETHTOKEN.balanceOf(BUSD_WETH);
uint256 ETHPRICE = (BUSDSUPPLYINBUSD_WETH.mul(1e9)).div(WETHSUPPLYINBUSD_WETH);
uint256 WETHSUPPLYINZDAI_WETH =(WETHTOKEN.balanceOf(ZDAI_WETH));
uint256 ZDAISUPPLYINZDAI_WETH = (ZDAITOKEN.balanceOf(ZDAI_WETH));
uint256 ZDAIUSDVAL = (((WETHSUPPLYINZDAI_WETH.mul(1e18)).div((ZDAISUPPLYINZDAI_WETH))).mul(ETHPRICE)).div(1e18);
return ZDAIUSDVAL;
}
function realtimeRewardPerBlock(address user, uint256 blockno) public view returns (uint256,uint256) {
uint256 ret;
uint256 commontimestamp;
if (
!stakersRecord[user][blockno].withdrawan &&
!stakersRecord[user][blockno].unstaked
) {
uint256 val;
uint256 tempharvesttime = stakersRecord[user][blockno].lastharvesttime;
commontimestamp = block.timestamp;
if(tempharvesttime == 0){
tempharvesttime = stakersRecord[user][blockno].staketime;
}
val = commontimestamp - tempharvesttime;
val = val.mul(stakersRecord[user][blockno].persecondreward);
if (val < stakersRecord[user][blockno].remainingreward) {
ret += val;
} else {
ret += stakersRecord[user][blockno].remainingreward;
}
}
return (ret,commontimestamp);
}
function realtimeReward(address user) public view returns (uint256) {
uint256 ret;
for (uint256 i; i < Stakers[user].stakeCount; i++) {
if (
!stakersRecord[user][i].withdrawan &&
!stakersRecord[user][i].unstaked
) {
uint256 val;
val = block.timestamp - stakersRecord[user][i].staketime;
val = val.mul(stakersRecord[user][i].persecondreward);
if (val < stakersRecord[user][i].reward) {
ret += val;
} else {
ret += stakersRecord[user][i].reward;
}
}
}
return ret;
}
function SetStakeLimits(uint256 _min, uint256 _max) external onlyowner {
minimumStakeToken = _min;
maxStakeableToken = _max;
}
function SetTotalFees(uint256 _fee) external onlyowner {
totalFee = _fee;
}
function SetStakeDuration(
uint256 first,
uint256 second,
uint256 third,
uint256 fourth
) external onlyowner {
Duration[0] = first;
Duration[1] = second;
Duration[2] = third;
Duration[3] = fourth;
}
function SetStakeBonus(
uint256 first,
uint256 second,
uint256 third,
uint256 fourth
) external onlyowner {
Bonus[0] = first;
Bonus[1] = second;
Bonus[2] = third;
Bonus[3] = fourth;
}
function withdrawETH() public onlyowner {
uint256 balance = address(this).balance;
require(balance > 0, "does not have any balance");
payable(msg.sender).transfer(balance);
}
function initToken(address addr) public onlyowner{
token3 = IERC20(addr);
}
function withdrawToken(uint256 amount) public onlyowner {
token3.transfer(msg.sender
, amount);
}
}
library SafeMath {
function add(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a + b;
require(c >= a, "SafeMath: addition overflow");
return c;
}
function sub(uint256 a, uint256 b) internal pure returns (uint256) {
return sub(a, b, "SafeMath: subtraction overflow");
}
function sub(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
// Gas optimization: this is cheaper than requiring 'a' not being zero, but the
// benefit is lost if 'b' is also tested.
// See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
function div(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b > 0, errorMessage);
uint256 c = a / b;
// assert(a == b * c + a % b); // There is no case in which this doesn't hold
return c;
}
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
return mod(a, b, "SafeMath: modulo by zero");
}
function mod(
uint256 a,
uint256 b,
string memory errorMessage
) internal pure returns (uint256) {
require(b != 0, errorMessage);
return a % b;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address payable","name":"_owner","type":"address"},{"internalType":"address","name":"token1","type":"address"},{"internalType":"address","name":"token2","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"Staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"HARVEST","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"Staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"STAKE","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"Staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"UNSTAKE","type":"event"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"Bonus","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"Duration","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"first","type":"uint256"},{"internalType":"uint256","name":"second","type":"uint256"},{"internalType":"uint256","name":"third","type":"uint256"},{"internalType":"uint256","name":"fourth","type":"uint256"}],"name":"SetStakeBonus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"first","type":"uint256"},{"internalType":"uint256","name":"second","type":"uint256"},{"internalType":"uint256","name":"third","type":"uint256"},{"internalType":"uint256","name":"fourth","type":"uint256"}],"name":"SetStakeDuration","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_min","type":"uint256"},{"internalType":"uint256","name":"_max","type":"uint256"}],"name":"SetStakeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_fee","type":"uint256"}],"name":"SetTotalFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"Stakers","outputs":[{"internalType":"uint256","name":"totalStakedTokenUser","type":"uint256"},{"internalType":"uint256","name":"totalUnstakedTokenUser","type":"uint256"},{"internalType":"uint256","name":"totalClaimedRewardTokenUser","type":"uint256"},{"internalType":"uint256","name":"stakeCount","type":"uint256"},{"internalType":"bool","name":"alreadyExists","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"StakersID","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPriceinUSD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"harvest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"initToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxStakeableToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minimumStakeToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"percentDivider","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"realtimeReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"blockno","type":"uint256"}],"name":"realtimeRewardPerBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount1","type":"uint256"},{"internalType":"uint256","name":"timeperiod","type":"uint256"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stakeToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"stakersRecord","outputs":[{"internalType":"uint256","name":"unstaketime","type":"uint256"},{"internalType":"uint256","name":"staketime","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"rewardTokenAmount","type":"uint256"},{"internalType":"uint256","name":"reward","type":"uint256"},{"internalType":"uint256","name":"lastharvesttime","type":"uint256"},{"internalType":"uint256","name":"remainingreward","type":"uint256"},{"internalType":"uint256","name":"harvestreward","type":"uint256"},{"internalType":"uint256","name":"persecondreward","type":"uint256"},{"internalType":"bool","name":"withdrawan","type":"bool"},{"internalType":"bool","name":"unstaked","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"token3","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalClaimedRewardToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalStakedToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalStakers","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalUnStakedToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"unstake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawToken","outputs":[],"stateMutability":"nonpayable","type":"function"}]Contract Creation Code
61010060405262127500608090815262278d0060a052624f1a0060c0526276a70060e05261003190600c9060046100ef565b506040805160808101825260018152600460208201819052600d92820192909252601660608201526100669160109190610134565b50348015610072575f80fd5b50604051611ad8380380611ad883398101604081905261009191610192565b600380546001600160a01b039485166001600160a01b0319918216179091555f80549385169382169390931783556001805492909416911617909155600b5566038d7ea4c680006004556103e8600a5564e8d4a510006005556101dc565b8260048101928215610124579160200282015b82811115610124578251829062ffffff16905591602001919060010190610102565b50610130929150610167565b5090565b8260048101928215610124579160200282015b82811115610124578251829060ff16905591602001919060010190610147565b5b80821115610130575f8155600101610168565b6001600160a01b038116811461018f575f80fd5b50565b5f805f606084860312156101a4575f80fd5b83516101af8161017b565b60208501519093506101c08161017b565b60408501519092506101d18161017b565b809150509250925092565b6118ef806101e95f395ff3fe608060405234801561000f575f80fd5b50600436106101d1575f3560e01c8063b067354d116100fe578063ddc632621161009e578063ef14101e1161006e578063ef14101e146104b7578063f7c618c1146104ca578063f8eb741a146104dd578063fe6f1b0514610505575f80fd5b8063ddc6326214610420578063df4d17dc14610433578063e086e5ec14610446578063ede85eb71461044e575f80fd5b8063c73174bf116100d9578063c73174bf146103e8578063cb6d8ee6146103fb578063d287de4e14610404578063da04197e1461040d575f80fd5b8063b067354d146103c3578063b6cfb9aa146103cc578063c0372838146103df575f80fd5b80636356cdac11610174578063869890381161014457806386989038146102d25780638da5cb5b146102db5780639502ddfd146102ee5780639845db70146102f7575f80fd5b80636356cdac1461027157806364949357146102845780637a6346e7146102ac5780637b0472f0146102bf575f80fd5b80634543a17c116101af5780634543a17c1461021957806350baa6221461022c57806351ed6a301461023f5780635faf30ad14610269575f80fd5b80630db192e8146101d55780631df4ccfc146101fb5780632e17de7814610204575b5f80fd5b6101e86101e3366004611706565b61050e565b6040519081526020015b60405180910390f35b6101e8600b5481565b61021761021236600461171f565b610683565b005b610217610227366004611736565b6108de565b61021761023a36600461171f565b610913565b5f54610251906001600160a01b031681565b6040516001600160a01b0390911681526020016101f2565b6101e861099f565b6101e861027f36600461171f565b610bde565b61025161029236600461171f565b60156020525f90815260409020546001600160a01b031681565b6102176102ba366004611756565b610bf4565b6102176102cd366004611736565b610c3a565b6101e860095481565b600354610251906001600160a01b031681565b6101e860055481565b61036c610305366004611785565b601660209081525f928352604080842090915290825290208054600182015460028301546003840154600485015460058601546006870154600788015460088901546009909901549798969795969495939492939192909160ff808216916101009004168b565b604080519b8c5260208c019a909a52988a01979097526060890195909552608088019390935260a087019190915260c086015260e085015261010084015215156101208301521515610140820152610160016101f2565b6101e860045481565b6102176103da36600461171f565b610f96565b6101e860085481565b6102176103f6366004611756565b610fc5565b6101e860075481565b6101e860065481565b6101e861041b36600461171f565b611007565b61021761042e36600461171f565b611016565b610217610441366004611706565b6112a9565b6102176112f5565b61048d61045c366004611706565b60146020525f9081526040902080546001820154600283015460038401546004909401549293919290919060ff1685565b6040805195865260208601949094529284019190915260608301521515608082015260a0016101f2565b600254610251906001600160a01b031681565b600154610251906001600160a01b031681565b6104f06104eb366004611785565b61139b565b604080519283526020830191909152016101f2565b6101e8600a5481565b5f805f5b6001600160a01b0384165f9081526014602052604090206003015481101561067c576001600160a01b0384165f90815260166020908152604080832084845290915290206009015460ff1615801561059557506001600160a01b0384165f908152601660209081526040808320848452909152902060090154610100900460ff16155b15610674576001600160a01b0384165f9081526016602090815260408083208484529091528120600101546105ca90426117c1565b6001600160a01b0386165f9081526016602090815260408083208684529091529020600801549091506105fe908290611520565b6001600160a01b0386165f90815260166020908152604080832086845290915290206004015490915081101561063f5761063881846117d4565b9250610672565b6001600160a01b0385165f90815260166020908152604080832085845290915290206004015461066f90846117d4565b92505b505b600101610512565b5092915050565b335f908152601660209081526040808320848452909152902060090154610100900460ff16156106ed5760405162461bcd60e51b815260206004820152601060248201526f185b1c9958591e481d5b9cdd185ad95960821b60448201526064015b60405180910390fd5b335f90815260166020908152604080832084845290915290205442116107615760405162461bcd60e51b8152602060048201526024808201527f63616e6e6f7420756e7374616b65206166746572206265666f726520647572616044820152633a34b7b760e11b60648201526084016106e4565b335f90815260166020908152604080832084845290915290206009015460ff1661078e5761078e81611016565b335f81815260166020908152604080832085845290915280822060098101805461ff0019166101001790559154600290920154905163a9059cbb60e01b8152600481019390935260248301526001600160a01b03169063a9059cbb906044015f604051808303815f87803b158015610804575f80fd5b505af1158015610816573d5f803e3d5ffd5b5050335f908152601660209081526040808320868452909152902060020154600654610844935091506115a7565b600655335f818152601660209081526040808320858452825280832060020154938352601490915290206001015461087b916115a7565b335f8181526014602090815260408083206001019490945560168152838220858352815290839020600201548351928352908201527fdd932dbf4936c18597ed8cf0290c4866ee0974179a6a475acd677b06bec81c60910160405180910390a150565b6003546001600160a01b031633146109085760405162461bcd60e51b81526004016106e4906117e7565b600591909155600455565b6003546001600160a01b0316331461093d5760405162461bcd60e51b81526004016106e4906117e7565b60025460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb906044015f604051808303815f87803b158015610986575f80fd5b505af1158015610998573d5f803e3d5ffd5b5050505050565b6040516370a0823160e01b8152734fadefe2a5eb1bf9e1d3dc4a9fc85daa5c5c660b600482018190525f91738b683c400457ef31f3c27c90acb6ab69304d1b7791829173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc291908190869085906370a0823190602401602060405180830381865afa158015610a23573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a47919061180b565b6040516370a0823160e01b81526001600160a01b0384811660048301529192505f918616906370a0823190602401602060405180830381865afa158015610a90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ab4919061180b565b90505f610acf82610ac985633b9aca00611520565b90611605565b6040516370a0823160e01b81526001600160a01b0387811660048301529192505f918816906370a0823190602401602060405180830381865afa158015610b18573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b3c919061180b565b6040516370a0823160e01b81526001600160a01b0388811660048301529192505f918b16906370a0823190602401602060405180830381865afa158015610b85573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ba9919061180b565b90505f610bce670de0b6b3a7640000610ac986610bc886838986611520565b90611520565b9c9b505050505050505050505050565b60108160048110610bed575f80fd5b0154905081565b6003546001600160a01b03163314610c1e5760405162461bcd60e51b81526004016106e4906117e7565b600c848155600d849055600e839055819060035b015550505050565b6003811115610c815760405162461bcd60e51b8152602060048201526013602482015272125b9d985b1a5908151a5b594814195c9a5bd9606a1b60448201526064016106e4565b600554821015610cd35760405162461bcd60e51b815260206004820152601e60248201527f7374616b65206d6f7265207468616e206d696e696d756d20616d6f756e74000060448201526064016106e4565b5f610cdc61099f565b90505f610d04610cfd600a54610ac9600b548861152090919063ffffffff16565b8590611646565b90505f610d19633b9aca00610ac98486611520565b335f9081526014602052604090206004015490915060ff16610d8657335f818152601460209081526040808320600401805460ff191660011790556009805484526015909252822080546001600160a01b03191690931790925581549190610d8083611836565b91905055505b5f546040516323b872dd60e01b8152336004820152306024820152604481018790526001600160a01b03909116906323b872dd906064015f604051808303815f87803b158015610dd4575f80fd5b505af1158015610de6573d5f803e3d5ffd5b5050335f90815260146020526040902060038101549054909250610e0b9150846115a7565b335f90815260146020526040902055600754610e2790846115a7565b600755610e49600c8660048110610e4057610e40611822565b015442906115a7565b335f9081526016602090815260408083208584529091529020908155426001820155600201839055600a54610e9790610ac960108860048110610e8e57610e8e611822565b01548590611520565b335f9081526016602090815260408083208584529091529020600490810191909155610ef590600c9087908110610ed057610ed0611822565b0154335f90815260166020908152604080832086845290915290206004015490611605565b335f8181526016602090815260408083208684528252808320600881019590955560038086018890556005860184905560048601546006870155600790950183905592825260149052908120909101805491610f5083611836565b909155505060408051338152602081018590527fa4e109bb7f03a3cbe671105ffecfc362319eaa88ecaf35997a4d3a2328d66d6c910160405180910390a1505050505050565b6003546001600160a01b03163314610fc05760405162461bcd60e51b81526004016106e4906117e7565b600b55565b6003546001600160a01b03163314610fef5760405162461bcd60e51b81526004016106e4906117e7565b60108481556011849055601283905581906003610c32565b600c8160048110610bed575f80fd5b335f90815260166020908152604080832084845290915290206009015460ff16156110785760405162461bcd60e51b815260206004820152601260248201527130b63932b0b23c903bb4ba34323930bbb0b760711b60448201526064016106e4565b335f908152601660209081526040808320848452909152902060090154610100900460ff16156110dd5760405162461bcd60e51b815260206004820152601060248201526f185b1c9958591e481d5b9cdd185ad95960821b60448201526064016106e4565b5f806110e9338461139b565b335f81815260166020908152604080832089845290915290819020600501839055600154905163a9059cbb60e01b81526004810192909252602482018490529294509092506001600160a01b039091169063a9059cbb906044015f604051808303815f87803b15801561115a575f80fd5b505af115801561116c573d5f803e3d5ffd5b505060085461117e92509050836115a7565b600855335f9081526016602090815260408083208684529091529020600601546111a89083611646565b335f90815260166020908152604080832087845290915290206006810191909155600701546111d790836115a7565b335f8181526016602090815260408083208884528252808320600701949094559181526014909152206002015461120e90836115a7565b335f908152601460209081526040808320600201939093556016815282822086835290522060048101546007909101540361126b57335f9081526016602090815260408083208684529091529020600901805460ff191660011790555b60408051338152602081018490527ffb9432fa1fa7e0db773769fb77b5f241e9eb4987776725d22c900b3949b38e97910160405180910390a1505050565b6003546001600160a01b031633146112d35760405162461bcd60e51b81526004016106e4906117e7565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6003546001600160a01b0316331461131f5760405162461bcd60e51b81526004016106e4906117e7565b478061136d5760405162461bcd60e51b815260206004820152601960248201527f646f6573206e6f74206861766520616e792062616c616e63650000000000000060448201526064016106e4565b604051339082156108fc029083905f818181858888f19350505050158015611397573d5f803e3d5ffd5b5050565b6001600160a01b0382165f90815260166020908152604080832084845290915281206009015481908190819060ff1615801561140257506001600160a01b0386165f908152601660209081526040808320888452909152902060090154610100900460ff16155b1561151557506001600160a01b0385165f90815260166020908152604080832087845290915281206005015442919080820361146057506001600160a01b0387165f9081526016602090815260408083208984529091529020600101545b61146a81846117c1565b6001600160a01b0389165f9081526016602090815260408083208b845290915290206008015490925061149e908390611520565b6001600160a01b0389165f9081526016602090815260408083208b84529091529020600601549092508210156114df576114d882856117d4565b9350611512565b6001600160a01b0388165f9081526016602090815260408083208a845290915290206006015461150f90856117d4565b93505b50505b909590945092505050565b5f825f0361152f57505f6115a1565b5f61153a838561184e565b9050826115478583611865565b1461159e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106e4565b90505b92915050565b5f806115b383856117d4565b90508381101561159e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106e4565b5f61159e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611687565b5f61159e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506116bc565b5f81836116a75760405162461bcd60e51b81526004016106e49190611884565b505f6116b38486611865565b95945050505050565b5f81848411156116df5760405162461bcd60e51b81526004016106e49190611884565b505f6116b384866117c1565b80356001600160a01b0381168114611701575f80fd5b919050565b5f60208284031215611716575f80fd5b61159e826116eb565b5f6020828403121561172f575f80fd5b5035919050565b5f8060408385031215611747575f80fd5b50508035926020909101359150565b5f805f8060808587031215611769575f80fd5b5050823594602084013594506040840135936060013592509050565b5f8060408385031215611796575f80fd5b61179f836116eb565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156115a1576115a16117ad565b808201808211156115a1576115a16117ad565b6020808252600a908201526937b7363c9037bbb732b960b11b604082015260600190565b5f6020828403121561181b575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611847576118476117ad565b5060010190565b80820281158282048414176115a1576115a16117ad565b5f8261187f57634e487b7160e01b5f52601260045260245ffd5b500490565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f8301168401019150509291505056fea2646970667358221220bab63e8f8f9ebf3febc88a23f5bbbad738a2ab1bc7580512d38d401203e91a5264736f6c634300081900330000000000000000000000003109b185fa40d6dd5ddd6c2dbdfecf655b5043600000000000000000000000008b683c400457ef31f3c27c90acb6ab69304d1b770000000000000000000000008b683c400457ef31f3c27c90acb6ab69304d1b77
Deployed Bytecode
0x608060405234801561000f575f80fd5b50600436106101d1575f3560e01c8063b067354d116100fe578063ddc632621161009e578063ef14101e1161006e578063ef14101e146104b7578063f7c618c1146104ca578063f8eb741a146104dd578063fe6f1b0514610505575f80fd5b8063ddc6326214610420578063df4d17dc14610433578063e086e5ec14610446578063ede85eb71461044e575f80fd5b8063c73174bf116100d9578063c73174bf146103e8578063cb6d8ee6146103fb578063d287de4e14610404578063da04197e1461040d575f80fd5b8063b067354d146103c3578063b6cfb9aa146103cc578063c0372838146103df575f80fd5b80636356cdac11610174578063869890381161014457806386989038146102d25780638da5cb5b146102db5780639502ddfd146102ee5780639845db70146102f7575f80fd5b80636356cdac1461027157806364949357146102845780637a6346e7146102ac5780637b0472f0146102bf575f80fd5b80634543a17c116101af5780634543a17c1461021957806350baa6221461022c57806351ed6a301461023f5780635faf30ad14610269575f80fd5b80630db192e8146101d55780631df4ccfc146101fb5780632e17de7814610204575b5f80fd5b6101e86101e3366004611706565b61050e565b6040519081526020015b60405180910390f35b6101e8600b5481565b61021761021236600461171f565b610683565b005b610217610227366004611736565b6108de565b61021761023a36600461171f565b610913565b5f54610251906001600160a01b031681565b6040516001600160a01b0390911681526020016101f2565b6101e861099f565b6101e861027f36600461171f565b610bde565b61025161029236600461171f565b60156020525f90815260409020546001600160a01b031681565b6102176102ba366004611756565b610bf4565b6102176102cd366004611736565b610c3a565b6101e860095481565b600354610251906001600160a01b031681565b6101e860055481565b61036c610305366004611785565b601660209081525f928352604080842090915290825290208054600182015460028301546003840154600485015460058601546006870154600788015460088901546009909901549798969795969495939492939192909160ff808216916101009004168b565b604080519b8c5260208c019a909a52988a01979097526060890195909552608088019390935260a087019190915260c086015260e085015261010084015215156101208301521515610140820152610160016101f2565b6101e860045481565b6102176103da36600461171f565b610f96565b6101e860085481565b6102176103f6366004611756565b610fc5565b6101e860075481565b6101e860065481565b6101e861041b36600461171f565b611007565b61021761042e36600461171f565b611016565b610217610441366004611706565b6112a9565b6102176112f5565b61048d61045c366004611706565b60146020525f9081526040902080546001820154600283015460038401546004909401549293919290919060ff1685565b6040805195865260208601949094529284019190915260608301521515608082015260a0016101f2565b600254610251906001600160a01b031681565b600154610251906001600160a01b031681565b6104f06104eb366004611785565b61139b565b604080519283526020830191909152016101f2565b6101e8600a5481565b5f805f5b6001600160a01b0384165f9081526014602052604090206003015481101561067c576001600160a01b0384165f90815260166020908152604080832084845290915290206009015460ff1615801561059557506001600160a01b0384165f908152601660209081526040808320848452909152902060090154610100900460ff16155b15610674576001600160a01b0384165f9081526016602090815260408083208484529091528120600101546105ca90426117c1565b6001600160a01b0386165f9081526016602090815260408083208684529091529020600801549091506105fe908290611520565b6001600160a01b0386165f90815260166020908152604080832086845290915290206004015490915081101561063f5761063881846117d4565b9250610672565b6001600160a01b0385165f90815260166020908152604080832085845290915290206004015461066f90846117d4565b92505b505b600101610512565b5092915050565b335f908152601660209081526040808320848452909152902060090154610100900460ff16156106ed5760405162461bcd60e51b815260206004820152601060248201526f185b1c9958591e481d5b9cdd185ad95960821b60448201526064015b60405180910390fd5b335f90815260166020908152604080832084845290915290205442116107615760405162461bcd60e51b8152602060048201526024808201527f63616e6e6f7420756e7374616b65206166746572206265666f726520647572616044820152633a34b7b760e11b60648201526084016106e4565b335f90815260166020908152604080832084845290915290206009015460ff1661078e5761078e81611016565b335f81815260166020908152604080832085845290915280822060098101805461ff0019166101001790559154600290920154905163a9059cbb60e01b8152600481019390935260248301526001600160a01b03169063a9059cbb906044015f604051808303815f87803b158015610804575f80fd5b505af1158015610816573d5f803e3d5ffd5b5050335f908152601660209081526040808320868452909152902060020154600654610844935091506115a7565b600655335f818152601660209081526040808320858452825280832060020154938352601490915290206001015461087b916115a7565b335f8181526014602090815260408083206001019490945560168152838220858352815290839020600201548351928352908201527fdd932dbf4936c18597ed8cf0290c4866ee0974179a6a475acd677b06bec81c60910160405180910390a150565b6003546001600160a01b031633146109085760405162461bcd60e51b81526004016106e4906117e7565b600591909155600455565b6003546001600160a01b0316331461093d5760405162461bcd60e51b81526004016106e4906117e7565b60025460405163a9059cbb60e01b8152336004820152602481018390526001600160a01b039091169063a9059cbb906044015f604051808303815f87803b158015610986575f80fd5b505af1158015610998573d5f803e3d5ffd5b5050505050565b6040516370a0823160e01b8152734fadefe2a5eb1bf9e1d3dc4a9fc85daa5c5c660b600482018190525f91738b683c400457ef31f3c27c90acb6ab69304d1b7791829173c02aaa39b223fe8d0a0e5c4f27ead9083c756cc291908190869085906370a0823190602401602060405180830381865afa158015610a23573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a47919061180b565b6040516370a0823160e01b81526001600160a01b0384811660048301529192505f918616906370a0823190602401602060405180830381865afa158015610a90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ab4919061180b565b90505f610acf82610ac985633b9aca00611520565b90611605565b6040516370a0823160e01b81526001600160a01b0387811660048301529192505f918816906370a0823190602401602060405180830381865afa158015610b18573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b3c919061180b565b6040516370a0823160e01b81526001600160a01b0388811660048301529192505f918b16906370a0823190602401602060405180830381865afa158015610b85573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ba9919061180b565b90505f610bce670de0b6b3a7640000610ac986610bc886838986611520565b90611520565b9c9b505050505050505050505050565b60108160048110610bed575f80fd5b0154905081565b6003546001600160a01b03163314610c1e5760405162461bcd60e51b81526004016106e4906117e7565b600c848155600d849055600e839055819060035b015550505050565b6003811115610c815760405162461bcd60e51b8152602060048201526013602482015272125b9d985b1a5908151a5b594814195c9a5bd9606a1b60448201526064016106e4565b600554821015610cd35760405162461bcd60e51b815260206004820152601e60248201527f7374616b65206d6f7265207468616e206d696e696d756d20616d6f756e74000060448201526064016106e4565b5f610cdc61099f565b90505f610d04610cfd600a54610ac9600b548861152090919063ffffffff16565b8590611646565b90505f610d19633b9aca00610ac98486611520565b335f9081526014602052604090206004015490915060ff16610d8657335f818152601460209081526040808320600401805460ff191660011790556009805484526015909252822080546001600160a01b03191690931790925581549190610d8083611836565b91905055505b5f546040516323b872dd60e01b8152336004820152306024820152604481018790526001600160a01b03909116906323b872dd906064015f604051808303815f87803b158015610dd4575f80fd5b505af1158015610de6573d5f803e3d5ffd5b5050335f90815260146020526040902060038101549054909250610e0b9150846115a7565b335f90815260146020526040902055600754610e2790846115a7565b600755610e49600c8660048110610e4057610e40611822565b015442906115a7565b335f9081526016602090815260408083208584529091529020908155426001820155600201839055600a54610e9790610ac960108860048110610e8e57610e8e611822565b01548590611520565b335f9081526016602090815260408083208584529091529020600490810191909155610ef590600c9087908110610ed057610ed0611822565b0154335f90815260166020908152604080832086845290915290206004015490611605565b335f8181526016602090815260408083208684528252808320600881019590955560038086018890556005860184905560048601546006870155600790950183905592825260149052908120909101805491610f5083611836565b909155505060408051338152602081018590527fa4e109bb7f03a3cbe671105ffecfc362319eaa88ecaf35997a4d3a2328d66d6c910160405180910390a1505050505050565b6003546001600160a01b03163314610fc05760405162461bcd60e51b81526004016106e4906117e7565b600b55565b6003546001600160a01b03163314610fef5760405162461bcd60e51b81526004016106e4906117e7565b60108481556011849055601283905581906003610c32565b600c8160048110610bed575f80fd5b335f90815260166020908152604080832084845290915290206009015460ff16156110785760405162461bcd60e51b815260206004820152601260248201527130b63932b0b23c903bb4ba34323930bbb0b760711b60448201526064016106e4565b335f908152601660209081526040808320848452909152902060090154610100900460ff16156110dd5760405162461bcd60e51b815260206004820152601060248201526f185b1c9958591e481d5b9cdd185ad95960821b60448201526064016106e4565b5f806110e9338461139b565b335f81815260166020908152604080832089845290915290819020600501839055600154905163a9059cbb60e01b81526004810192909252602482018490529294509092506001600160a01b039091169063a9059cbb906044015f604051808303815f87803b15801561115a575f80fd5b505af115801561116c573d5f803e3d5ffd5b505060085461117e92509050836115a7565b600855335f9081526016602090815260408083208684529091529020600601546111a89083611646565b335f90815260166020908152604080832087845290915290206006810191909155600701546111d790836115a7565b335f8181526016602090815260408083208884528252808320600701949094559181526014909152206002015461120e90836115a7565b335f908152601460209081526040808320600201939093556016815282822086835290522060048101546007909101540361126b57335f9081526016602090815260408083208684529091529020600901805460ff191660011790555b60408051338152602081018490527ffb9432fa1fa7e0db773769fb77b5f241e9eb4987776725d22c900b3949b38e97910160405180910390a1505050565b6003546001600160a01b031633146112d35760405162461bcd60e51b81526004016106e4906117e7565b600280546001600160a01b0319166001600160a01b0392909216919091179055565b6003546001600160a01b0316331461131f5760405162461bcd60e51b81526004016106e4906117e7565b478061136d5760405162461bcd60e51b815260206004820152601960248201527f646f6573206e6f74206861766520616e792062616c616e63650000000000000060448201526064016106e4565b604051339082156108fc029083905f818181858888f19350505050158015611397573d5f803e3d5ffd5b5050565b6001600160a01b0382165f90815260166020908152604080832084845290915281206009015481908190819060ff1615801561140257506001600160a01b0386165f908152601660209081526040808320888452909152902060090154610100900460ff16155b1561151557506001600160a01b0385165f90815260166020908152604080832087845290915281206005015442919080820361146057506001600160a01b0387165f9081526016602090815260408083208984529091529020600101545b61146a81846117c1565b6001600160a01b0389165f9081526016602090815260408083208b845290915290206008015490925061149e908390611520565b6001600160a01b0389165f9081526016602090815260408083208b84529091529020600601549092508210156114df576114d882856117d4565b9350611512565b6001600160a01b0388165f9081526016602090815260408083208a845290915290206006015461150f90856117d4565b93505b50505b909590945092505050565b5f825f0361152f57505f6115a1565b5f61153a838561184e565b9050826115478583611865565b1461159e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016106e4565b90505b92915050565b5f806115b383856117d4565b90508381101561159e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016106e4565b5f61159e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611687565b5f61159e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506116bc565b5f81836116a75760405162461bcd60e51b81526004016106e49190611884565b505f6116b38486611865565b95945050505050565b5f81848411156116df5760405162461bcd60e51b81526004016106e49190611884565b505f6116b384866117c1565b80356001600160a01b0381168114611701575f80fd5b919050565b5f60208284031215611716575f80fd5b61159e826116eb565b5f6020828403121561172f575f80fd5b5035919050565b5f8060408385031215611747575f80fd5b50508035926020909101359150565b5f805f8060808587031215611769575f80fd5b5050823594602084013594506040840135936060013592509050565b5f8060408385031215611796575f80fd5b61179f836116eb565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156115a1576115a16117ad565b808201808211156115a1576115a16117ad565b6020808252600a908201526937b7363c9037bbb732b960b11b604082015260600190565b5f6020828403121561181b575f80fd5b5051919050565b634e487b7160e01b5f52603260045260245ffd5b5f60018201611847576118476117ad565b5060010190565b80820281158282048414176115a1576115a16117ad565b5f8261187f57634e487b7160e01b5f52601260045260245ffd5b500490565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f8301168401019150509291505056fea2646970667358221220bab63e8f8f9ebf3febc88a23f5bbbad738a2ab1bc7580512d38d401203e91a5264736f6c63430008190033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000003109b185fa40d6dd5ddd6c2dbdfecf655b5043600000000000000000000000008b683c400457ef31f3c27c90acb6ab69304d1b770000000000000000000000008b683c400457ef31f3c27c90acb6ab69304d1b77
-----Decoded View---------------
Arg [0] : _owner (address): 0x3109B185Fa40d6DD5Ddd6c2dBdFEcf655b504360
Arg [1] : token1 (address): 0x8B683C400457ef31F3c27c90ACB6AB69304D1B77
Arg [2] : token2 (address): 0x8B683C400457ef31F3c27c90ACB6AB69304D1B77
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000003109b185fa40d6dd5ddd6c2dbdfecf655b504360
Arg [1] : 0000000000000000000000008b683c400457ef31f3c27c90acb6ab69304d1b77
Arg [2] : 0000000000000000000000008b683c400457ef31f3c27c90acb6ab69304d1b77
Deployed Bytecode Sourcemap
973:10433:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9424:721;;;;;;:::i;:::-;;:::i;:::-;;;529:25:1;;;517:2;502:18;9424:721:0;;;;;;;;1432:23;;;;;;4863:985;;;;;;:::i;:::-;;:::i;:::-;;10155:149;;;;;;:::i;:::-;;:::i;11283:120::-;;;;;;:::i;:::-;;:::i;1032:24::-;;;;;-1:-1:-1;;;;;1032:24:0;;;;;;-1:-1:-1;;;;;1180:32:1;;;1162:51;;1150:2;1135:18;1032:24:0;1003:216:1;7227:1135:0;;;:::i;1594:40::-;;;;;;:::i;:::-;;:::i;2258:44::-;;;;;;:::i;:::-;;;;;;;;;;;;-1:-1:-1;;;;;2258:44:0;;;10411:280;;;;;;:::i;:::-;;:::i;2976:1879::-;;;;;;:::i;:::-;;:::i;1362:27::-;;;;;;1124:28;;;;;-1:-1:-1;;;;;1124:28:0;;;1200:32;;;;;;2309:66;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2721:25:1;;;2777:2;2762:18;;2755:34;;;;2805:18;;;2798:34;;;;2863:2;2848:18;;2841:34;;;;2906:3;2891:19;;2884:35;;;;2950:3;2935:19;;2928:35;;;;2994:3;2979:19;;2972:35;3038:3;3023:19;;3016:35;3082:3;3067:19;;3060:35;3139:14;3132:22;3126:3;3111:19;;3104:51;3199:15;3192:23;3186:3;3171:19;;3164:52;2708:3;2693:19;2309:66:0;2305:917:1;1161:32:0;;;;;;10312:89;;;;;;:::i;:::-;;:::i;1317:38::-;;;;;;10699:265;;;;;;:::i;:::-;;:::i;1279:31::-;;;;;;1239:33;;;;;;1488:65;;;;;;:::i;:::-;;:::i;5856:1363::-;;;;;;:::i;:::-;;:::i;11188:89::-;;;;;;:::i;:::-;;:::i;10974:206::-;;;:::i;2212:39::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3480:25:1;;;3536:2;3521:18;;3514:34;;;;3564:18;;;3557:34;;;;3622:2;3607:18;;3600:34;3678:14;3671:22;3665:3;3650:19;;3643:51;3467:3;3452:19;2212:39:0;3227:473:1;1095:20:0;;;;;-1:-1:-1;;;;;1095:20:0;;;1063:25;;;;;-1:-1:-1;;;;;1063:25:0;;;8370:1046;;;;;;:::i;:::-;;:::i;:::-;;;;3879:25:1;;;3935:2;3920:18;;3913:34;;;;3852:18;8370:1046:0;3705:248:1;1396:29:0;;;;;;9424:721;9483:7;9503:11;9530:9;9525:592;-1:-1:-1;;;;;9545:13:0;;;;;;:7;:13;;;;;:24;;;9541:28;;9525:592;;;-1:-1:-1;;;;;9614:19:0;;;;;;:13;:19;;;;;;;;:22;;;;;;;;:33;;;;;9613:34;:87;;;;-1:-1:-1;;;;;;9669:19:0;;;;;;:13;:19;;;;;;;;:22;;;;;;;;:31;;;;;;;;9668:32;9613:87;9591:515;;;-1:-1:-1;;;;;9789:19:0;;9735:11;9789:19;;;:13;:19;;;;;;;;:22;;;;;;;;:32;;;9771:50;;:15;:50;:::i;:::-;-1:-1:-1;;;;;9854:19:0;;;;;;:13;:19;;;;;;;;:22;;;;;;;;:38;;;9765:56;;-1:-1:-1;9846:47:0;;9765:56;;9846:7;:47::i;:::-;-1:-1:-1;;;;;9922:19:0;;;;;;:13;:19;;;;;;;;:22;;;;;;;;:29;;;9840:53;;-1:-1:-1;9916:35:0;;9912:179;;;9976:10;9983:3;9976:10;;:::i;:::-;;;9912:179;;;-1:-1:-1;;;;;10042:19:0;;;;;;:13;:19;;;;;;;;:22;;;;;;;;:29;;;10035:36;;;;:::i;:::-;;;9912:179;9716:390;9591:515;9571:3;;9525:592;;;-1:-1:-1;10134:3:0;9424:721;-1:-1:-1;;9424:721:0:o;4863:985::-;4936:10;4922:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:41;;;;;;;;4921:42;4913:71;;;;-1:-1:-1;;;4913:71:0;;4555:2:1;4913:71:0;;;4537:21:1;4594:2;4574:18;;;4567:30;-1:-1:-1;;;4613:18:1;;;4606:46;4669:18;;4913:71:0;;;;;;;;;5031:10;5017:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:44;5064:15;-1:-1:-1;4995:148:0;;;;-1:-1:-1;;;4995:148:0;;4900:2:1;4995:148:0;;;4882:21:1;4939:2;4919:18;;;4912:30;4978:34;4958:18;;;4951:62;-1:-1:-1;;;5029:18:1;;;5022:34;5073:19;;4995:148:0;4698:400:1;4995:148:0;5174:10;5160:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:43;;;;;5156:89;;5219:14;5227:5;5219:7;:14::i;:::-;5269:10;5255:25;;;;:13;:25;;;;;;;;:32;;;;;;;;;:41;;;:48;;-1:-1:-1;;5255:48:0;;;;;5316:10;;5375:39;;;;;5316:109;;-1:-1:-1;;;5316:109:0;;;;;5277:51:1;;;;5344:18;;;5337:34;-1:-1:-1;;;;;5316:10:0;;:19;;5250:18:1;;5316:109:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;5518:10:0;5504:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:39;;;5467:18;;:87;;-1:-1:-1;5467:18:0;-1:-1:-1;5467:22:0;:87::i;:::-;5446:18;:108;5699:10;5685:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:39;;;5610:19;;;:7;:19;;;;;:56;;;:115;;:74;:115::i;:::-;5573:10;5565:19;;;;:7;:19;;;;;;;;:42;;:160;;;;5790:13;:25;;;;;:32;;;;;;;;;:39;;;5743:97;;5277:51:1;;;5344:18;;;5337:34;5743:97:0;;5250:18:1;5743:97:0;;;;;;;4863:985;:::o;10155:149::-;2582:5;;-1:-1:-1;;;;;2582:5:0;2591:10;2582:19;2574:42;;;;-1:-1:-1;;;2574:42:0;;;;;;;:::i;:::-;10237:17:::1;:24:::0;;;;10272:17:::1;:24:::0;10155:149::o;11283:120::-;2582:5;;-1:-1:-1;;;;;2582:5:0;2591:10;2582:19;2574:42;;;;-1:-1:-1;;;2574:42:0;;;;;;;:::i;:::-;11350:6:::1;::::0;:45:::1;::::0;-1:-1:-1;;;11350:45:0;;11366:10:::1;11350:45;::::0;::::1;5277:51:1::0;5344:18;;;5337:34;;;-1:-1:-1;;;;;11350:6:0;;::::1;::::0;:15:::1;::::0;5250:18:1;;11350:45:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11283:120:::0;:::o;7227:1135::-;7863:30;;-1:-1:-1;;;7863:30:0;;7654:42;7863:30;;;1162:51:1;;;7273:7:0;;7328:42;;;;7556;;7654;;;7273:7;;7328:42;;7863:19;;1135:18:1;;7863:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7936;;-1:-1:-1;;;7936:30:0;;-1:-1:-1;;;;;1180:32:1;;;7936:30:0;;;1162:51:1;7831:62:0;;-1:-1:-1;7904:29:0;;7936:19;;;;;1135:18:1;;7936:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7904:62;-1:-1:-1;7977:16:0;7996:59;7904:62;7997:30;:21;8023:3;7997:25;:30::i;:::-;7996:36;;:59::i;:::-;8098:30;;-1:-1:-1;;;8098:30:0;;-1:-1:-1;;;;;1180:32:1;;;8098:30:0;;;1162:51:1;7977:78:0;;-1:-1:-1;8066:29:0;;8098:19;;;;;1135:18:1;;8098:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8173;;-1:-1:-1;;;8173:30:0;;-1:-1:-1;;;;;1180:32:1;;;8173:30:0;;;1162:51:1;8066:63:0;;-1:-1:-1;8140:29:0;;8173:19;;;;;1135:18:1;;8173:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8140:64;-1:-1:-1;8215:18:0;8236:90;8321:4;8237:78;8306:8;8238:62;8140:64;8237:78;8239:21;8321:4;8239:25;:31::i;8238:62::-;8237:68;;:78::i;8236:90::-;8215:111;7227:1135;-1:-1:-1;;;;;;;;;;;;7227:1135:0:o;1594:40::-;;;;;;;;;;;;;;;-1:-1:-1;1594:40:0;:::o;10411:280::-;2582:5;;-1:-1:-1;;;;;2582:5:0;2591:10;2582:19;2574:42;;;;-1:-1:-1;;;2574:42:0;;;;;;;:::i;:::-;10572:8:::1;:19:::0;;;10602:11;:20;;;10633:11;:19;;;10677:6;;10672:1:::1;10663:11;;:20:::0;-1:-1:-1;;;;10411:280:0:o;2976:1879::-;3087:1;3073:10;:15;;3046:66;;;;-1:-1:-1;;;3046:66:0;;6244:2:1;3046:66:0;;;6226:21:1;6283:2;6263:18;;;6256:30;-1:-1:-1;;;6302:18:1;;;6295:49;6361:18;;3046:66:0;6042:343:1;3046:66:0;3142:17;;3131:7;:28;;3123:71;;;;-1:-1:-1;;;3123:71:0;;6592:2:1;3123:71:0;;;6574:21:1;6631:2;6611:18;;;6604:30;6670:32;6650:18;;;6643:60;6720:18;;3123:71:0;6390:354:1;3123:71:0;3205:15;3223;:13;:15::i;:::-;3205:33;;3249:14;3266:56;3278:43;3306:14;;3279:21;3291:8;;3279:7;:11;;:21;;;;:::i;3278:43::-;3266:7;;:11;:56::i;:::-;3249:73;-1:-1:-1;3333:24:0;3360:30;3386:3;3361:19;3249:73;3372:7;3361:10;:19::i;3360:30::-;3414:10;3406:19;;;;:7;:19;;;;;:33;;;3333:57;;-1:-1:-1;3406:33:0;;3401:187;;3464:10;3456:19;;;;:7;:19;;;;;;;;:33;;:40;;-1:-1:-1;;3456:40:0;3492:4;3456:40;;;3521:12;;;3511:23;;:9;:23;;;;;:36;;-1:-1:-1;;;;;;3511:36:0;;;;;;;3562:14;;;3521:12;3562:14;;;:::i;:::-;;;;;;3401:187;3600:10;;:59;;-1:-1:-1;;;3600:59:0;;3624:10;3600:59;;;7129:34:1;3644:4:0;7179:18:1;;;7172:43;7231:18;;;7224:34;;;-1:-1:-1;;;;;3600:10:0;;;;:23;;7064:18:1;;3600:59:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;3696:10:0;3672:13;3688:19;;;:7;:19;;;;;:30;;;;3772:54;;3688:30;;-1:-1:-1;3772:80:0;;-1:-1:-1;3845:6:0;3772:72;:80::i;:::-;3737:10;3729:19;;;;:7;:19;;;;;:123;3882:16;;:28;;3903:6;3882:20;:28::i;:::-;3863:16;:47;3968:65;4002:8;4011:10;4002:20;;;;;;;:::i;:::-;;;3968:15;;:19;:65::i;:::-;3935:10;3921:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:112;;;4089:15;4044:42;;;:60;4115:39;;:48;;;4288:14;;4216:87;;:53;4251:5;4257:10;4251:17;;;;;;;:::i;:::-;;;4216:16;;:34;:53::i;:87::-;4188:10;4174:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:39;;;;:129;;;;4365:89;;4433:8;;4442:10;;4433:20;;;;;;:::i;:::-;;;4393:10;4365:49;;;;:13;:49;;;;;;;;:56;;;;;;;;:63;;;;:67;:89::i;:::-;4328:10;4314:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:48;;;:140;;;;4467:50;;;;:69;;;-1:-1:-1;4547:48:0;;:52;;;4661:39;;;;4610:48;;;:90;4711:46;;;;:50;;;4772:19;;;:7;:19;;;;;:30;;;:32;;;;;;:::i;:::-;;;;-1:-1:-1;;4822:25:0;;;4828:10;5277:51:1;;5359:2;5344:18;;5337:34;;;4822:25:0;;5250:18:1;4822:25:0;;;;;;;3035:1820;;;;2976:1879;;:::o;10312:89::-;2582:5;;-1:-1:-1;;;;;2582:5:0;2591:10;2582:19;2574:42;;;;-1:-1:-1;;;2574:42:0;;;;;;;:::i;:::-;10378:8:::1;:15:::0;10312:89::o;10699:265::-;2582:5;;-1:-1:-1;;;;;2582:5:0;2591:10;2582:19;2574:42;;;;-1:-1:-1;;;2574:42:0;;;;;;;:::i;:::-;10857:5:::1;:16:::0;;;10884:8;:17;;;10912:8;:16;;;10950:6;;10945:1:::1;10939:8;::::0;1488:65;;;;;;;;;;;5856:1363;5943:10;5929:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:43;;;;;5928:44;5906:112;;;;-1:-1:-1;;;5906:112:0;;7471:2:1;5906:112:0;;;7453:21:1;7510:2;7490:18;;;7483:30;-1:-1:-1;;;7529:18:1;;;7522:48;7587:18;;5906:112:0;7269:342:1;5906:112:0;6052:10;6038:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:41;;;;;;;;6037:42;6029:71;;;;-1:-1:-1;;;6029:71:0;;4555:2:1;6029:71:0;;;4537:21:1;4594:2;4574:18;;;4567:30;-1:-1:-1;;;4613:18:1;;;4606:46;4669:18;;6029:71:0;4353:340:1;6029:71:0;6111:21;6143:23;6211:42;6234:10;6247:5;6211:22;:42::i;:::-;6278:10;6264:25;;;;:13;:25;;;;;;;;:32;;;;;;;;;;:48;;:67;;;6342:11;;:84;;-1:-1:-1;;;6342:84:0;;;;;5277:51:1;;;;5344:18;;;5337:34;;;6177:76:0;;-1:-1:-1;6264:67:0;;-1:-1:-1;;;;;;6342:11:0;;;;:20;;5250:18:1;;6342:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6463:23:0;;:66;;-1:-1:-1;6463:23:0;-1:-1:-1;6505:13:0;6463:27;:66::i;:::-;6437:23;:92;6605:10;6591:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:48;;;:67;;6644:13;6591:52;:67::i;:::-;6554:10;6540:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:48;;;:118;;;;6718:46;;;:65;;6769:13;6718:50;:65::i;:::-;6683:10;6669:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:46;;:114;;;;6844:19;;;:7;:19;;;;:61;;;:94;;6924:13;6844:79;:94::i;:::-;6802:10;6794:19;;;;:7;:19;;;;;;;;:47;;:144;;;;7004:13;:25;;;;;:32;;;;;;:39;;;;6954:46;;;;;:89;6951:172;;7073:10;7059:25;;;;:13;:25;;;;;;;;:32;;;;;;;;:43;;:50;;-1:-1:-1;;7059:50:0;7105:4;7059:50;;;6951:172;7140:71;;;7162:10;5277:51:1;;5359:2;5344:18;;5337:34;;;7140:71:0;;5250:18:1;7140:71:0;;;;;;;5895:1324;;5856:1363;:::o;11188:89::-;2582:5;;-1:-1:-1;;;;;2582:5:0;2591:10;2582:19;2574:42;;;;-1:-1:-1;;;2574:42:0;;;;;;;:::i;:::-;11248:6:::1;:21:::0;;-1:-1:-1;;;;;;11248:21:0::1;-1:-1:-1::0;;;;;11248:21:0;;;::::1;::::0;;;::::1;::::0;;11188:89::o;10974:206::-;2582:5;;-1:-1:-1;;;;;2582:5:0;2591:10;2582:19;2574:42;;;;-1:-1:-1;;;2574:42:0;;;;;;;:::i;:::-;11043:21:::1;11083:11:::0;11075:49:::1;;;::::0;-1:-1:-1;;;11075:49:0;;7818:2:1;11075:49:0::1;::::0;::::1;7800:21:1::0;7857:2;7837:18;;;7830:30;7896:27;7876:18;;;7869:55;7941:18;;11075:49:0::1;7616:349:1::0;11075:49:0::1;11135:37;::::0;11143:10:::1;::::0;11135:37;::::1;;;::::0;11164:7;;11135:37:::1;::::0;;;11164:7;11143:10;11135:37;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;11014:166;10974:206::o:0;8370:1046::-;-1:-1:-1;;;;;8565:19:0;;8454:7;8565:19;;;:13;:19;;;;;;;;:28;;;;;;;;:39;;;8454:7;;;;;;8565:39;;8564:40;:99;;;;-1:-1:-1;;;;;;8626:19:0;;;;;;:13;:19;;;;;;;;:28;;;;;;;;:37;;;;;;;;8625:38;8564:99;8542:828;;;-1:-1:-1;;;;;;8754:19:0;;8698:11;8754:19;;;:13;:19;;;;;;;;:28;;;;;;;;:44;;;8835:15;;8698:11;8872:20;;;8869:123;;-1:-1:-1;;;;;;8934:19:0;;;;;;:13;:19;;;;;;;;:28;;;;;;;;:38;;;8869:123;9016:33;9034:15;9016;:33;:::i;:::-;-1:-1:-1;;;;;9082:19:0;;;;;;:13;:19;;;;;;;;:28;;;;;;;;:44;;;9010:39;;-1:-1:-1;9074:53:0;;9010:39;;9074:7;:53::i;:::-;-1:-1:-1;;;;;9156:19:0;;;;;;:13;:19;;;;;;;;:28;;;;;;;;:44;;;9068:59;;-1:-1:-1;9150:50:0;;9146:209;;;9225:10;9232:3;9225:10;;:::i;:::-;;;9146:209;;;-1:-1:-1;;;;;9291:19:0;;;;;;:13;:19;;;;;;;;:28;;;;;;;;:44;;;9284:51;;;;:::i;:::-;;;9146:209;8679:691;;8542:828;9388:3;;;;-1:-1:-1;8370:1046:0;-1:-1:-1;;;8370:1046:0:o;12001:471::-;12059:7;12304:1;12309;12304:6;12300:47;;-1:-1:-1;12334:1:0;12327:8;;12300:47;12359:9;12371:5;12375:1;12371;:5;:::i;:::-;12359:17;-1:-1:-1;12404:1:0;12395:5;12399:1;12359:17;12395:5;:::i;:::-;:10;12387:56;;;;-1:-1:-1;;;12387:56:0;;8567:2:1;12387:56:0;;;8549:21:1;8606:2;8586:18;;;8579:30;8645:34;8625:18;;;8618:62;-1:-1:-1;;;8696:18:1;;;8689:31;8737:19;;12387:56:0;8365:397:1;12387:56:0;12463:1;-1:-1:-1;12001:471:0;;;;;:::o;11434:181::-;11492:7;;11524:5;11528:1;11524;:5;:::i;:::-;11512:17;;11553:1;11548;:6;;11540:46;;;;-1:-1:-1;;;11540:46:0;;8969:2:1;11540:46:0;;;8951:21:1;9008:2;8988:18;;;8981:30;9047:29;9027:18;;;9020:57;9094:18;;11540:46:0;8767:351:1;12480:132:0;12538:7;12565:39;12569:1;12572;12565:39;;;;;;;;;;;;;;;;;:3;:39::i;11623:136::-;11681:7;11708:43;11712:1;11715;11708:43;;;;;;;;;;;;;;;;;:3;:43::i;12620:312::-;12740:7;12775:12;12768:5;12760:28;;;;-1:-1:-1;;;12760:28:0;;;;;;;;:::i;:::-;-1:-1:-1;12799:9:0;12811:5;12815:1;12811;:5;:::i;:::-;12799:17;12620:312;-1:-1:-1;;;;;12620:312:0:o;11767:226::-;11887:7;11923:12;11915:6;;;;11907:29;;;;-1:-1:-1;;;11907:29:0;;;;;;;;:::i;:::-;-1:-1:-1;11947:9:0;11959:5;11963:1;11959;:5;:::i;14:173:1:-;82:20;;-1:-1:-1;;;;;131:31:1;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;565:180::-;624:6;677:2;665:9;656:7;652:23;648:32;645:52;;;693:1;690;683:12;645:52;-1:-1:-1;716:23:1;;565:180;-1:-1:-1;565:180:1:o;750:248::-;818:6;826;879:2;867:9;858:7;854:23;850:32;847:52;;;895:1;892;885:12;847:52;-1:-1:-1;;918:23:1;;;988:2;973:18;;;960:32;;-1:-1:-1;750:248:1:o;1432:385::-;1518:6;1526;1534;1542;1595:3;1583:9;1574:7;1570:23;1566:33;1563:53;;;1612:1;1609;1602:12;1563:53;-1:-1:-1;;1635:23:1;;;1705:2;1690:18;;1677:32;;-1:-1:-1;1756:2:1;1741:18;;1728:32;;1807:2;1792:18;1779:32;;-1:-1:-1;1432:385:1;-1:-1:-1;1432:385:1:o;2046:254::-;2114:6;2122;2175:2;2163:9;2154:7;2150:23;2146:32;2143:52;;;2191:1;2188;2181:12;2143:52;2214:29;2233:9;2214:29;:::i;:::-;2204:39;2290:2;2275:18;;;;2262:32;;-1:-1:-1;;;2046:254:1:o;3958:127::-;4019:10;4014:3;4010:20;4007:1;4000:31;4050:4;4047:1;4040:15;4074:4;4071:1;4064:15;4090:128;4157:9;;;4178:11;;;4175:37;;;4192:18;;:::i;4223:125::-;4288:9;;;4309:10;;;4306:36;;;4322:18;;:::i;5382:334::-;5584:2;5566:21;;;5623:2;5603:18;;;5596:30;-1:-1:-1;;;5657:2:1;5642:18;;5635:40;5707:2;5692:18;;5382:334::o;5721:184::-;5791:6;5844:2;5832:9;5823:7;5819:23;5815:32;5812:52;;;5860:1;5857;5850:12;5812:52;-1:-1:-1;5883:16:1;;5721:184;-1:-1:-1;5721:184:1:o;5910:127::-;5971:10;5966:3;5962:20;5959:1;5952:31;6002:4;5999:1;5992:15;6026:4;6023:1;6016:15;6749:135;6788:3;6809:17;;;6806:43;;6829:18;;:::i;:::-;-1:-1:-1;6876:1:1;6865:13;;6749:135::o;7970:168::-;8043:9;;;8074;;8091:15;;;8085:22;;8071:37;8061:71;;8112:18;;:::i;8143:217::-;8183:1;8209;8199:132;;8253:10;8248:3;8244:20;8241:1;8234:31;8288:4;8285:1;8278:15;8316:4;8313:1;8306:15;8199:132;-1:-1:-1;8345:9:1;;8143:217::o;9123:418::-;9272:2;9261:9;9254:21;9235:4;9304:6;9298:13;9347:6;9342:2;9331:9;9327:18;9320:34;9406:6;9401:2;9393:6;9389:15;9384:2;9373:9;9369:18;9363:50;9462:1;9457:2;9448:6;9437:9;9433:22;9429:31;9422:42;9532:2;9525;9521:7;9516:2;9508:6;9504:15;9500:29;9489:9;9485:45;9481:54;9473:62;;;9123:418;;;;:::o
Swarm Source
ipfs://bab63e8f8f9ebf3febc88a23f5bbbad738a2ab1bc7580512d38d401203e91a52
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.