Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 79 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim Dividend | 20419831 | 119 days ago | IN | 0 ETH | 0.00072762 | ||||
Claim Dividend | 20402909 | 121 days ago | IN | 0 ETH | 0.00038875 | ||||
Claim Dividend | 20402027 | 121 days ago | IN | 0 ETH | 0.00009379 | ||||
Claim Dividend | 20401382 | 122 days ago | IN | 0 ETH | 0.00034401 | ||||
Claim Dividend | 20400889 | 122 days ago | IN | 0 ETH | 0.00059141 | ||||
Claim Dividend | 20400667 | 122 days ago | IN | 0 ETH | 0.00228458 | ||||
Claim Dividend | 20400009 | 122 days ago | IN | 0 ETH | 0.00043746 | ||||
Claim Dividend | 20399826 | 122 days ago | IN | 0 ETH | 0.00028105 | ||||
Claim Dividend | 20399716 | 122 days ago | IN | 0 ETH | 0.00026079 | ||||
Claim Dividend | 20399650 | 122 days ago | IN | 0 ETH | 0.00041823 | ||||
Claim Dividend | 20399538 | 122 days ago | IN | 0 ETH | 0.00006535 | ||||
Claim Dividend | 20399464 | 122 days ago | IN | 0 ETH | 0.00017059 | ||||
Claim Dividend | 20399215 | 122 days ago | IN | 0 ETH | 0.00109248 | ||||
Claim Dividend | 20399013 | 122 days ago | IN | 0 ETH | 0.00059481 | ||||
Claim Dividend | 20398810 | 122 days ago | IN | 0 ETH | 0.00016113 | ||||
Claim Dividend | 20398723 | 122 days ago | IN | 0 ETH | 0.00015759 | ||||
Claim Dividend | 20398686 | 122 days ago | IN | 0 ETH | 0.00015871 | ||||
Claim Dividend | 20398671 | 122 days ago | IN | 0 ETH | 0.00018681 | ||||
Claim Dividend | 20398590 | 122 days ago | IN | 0 ETH | 0.00051766 | ||||
Claim Dividend | 20398201 | 122 days ago | IN | 0 ETH | 0.00012491 | ||||
Claim Dividend | 20398183 | 122 days ago | IN | 0 ETH | 0.00052483 | ||||
Claim Dividend | 20398096 | 122 days ago | IN | 0 ETH | 0.0001886 | ||||
Claim Dividend | 20397669 | 122 days ago | IN | 0 ETH | 0.00016661 | ||||
Claim Dividend | 20397544 | 122 days ago | IN | 0 ETH | 0.00012874 | ||||
Claim Dividend | 20397457 | 122 days ago | IN | 0 ETH | 0.00005283 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
20888133 | 54 days ago | 0.00875022 ETH | ||||
20888133 | 54 days ago | 0.00875022 ETH | ||||
20489110 | 109 days ago | 0.01040335 ETH | ||||
20489110 | 109 days ago | 0.01040335 ETH | ||||
20404144 | 121 days ago | 0.01293158 ETH | ||||
20404144 | 121 days ago | 0.01293158 ETH | ||||
20402943 | 121 days ago | 0.01419324 ETH | ||||
20402943 | 121 days ago | 0.01419324 ETH | ||||
20400935 | 122 days ago | 0.02167692 ETH | ||||
20400935 | 122 days ago | 0.02167692 ETH | ||||
20400761 | 122 days ago | 0.02700815 ETH | ||||
20400761 | 122 days ago | 0.02700815 ETH | ||||
20400586 | 122 days ago | 0.04111572 ETH | ||||
20400586 | 122 days ago | 0.04111572 ETH | ||||
20400427 | 122 days ago | 0.05193345 ETH | ||||
20400427 | 122 days ago | 0.05193345 ETH | ||||
20400397 | 122 days ago | 0.07614695 ETH | ||||
20400397 | 122 days ago | 0.07614695 ETH | ||||
20400014 | 122 days ago | 0.12598283 ETH | ||||
20400014 | 122 days ago | 0.12598283 ETH | ||||
20399833 | 122 days ago | 0.09454995 ETH | ||||
20399833 | 122 days ago | 0.09454995 ETH | ||||
20399629 | 122 days ago | 0.05894907 ETH | ||||
20399629 | 122 days ago | 0.05894907 ETH | ||||
20399321 | 122 days ago | 0.08096611 ETH |
Loading...
Loading
Contract Name:
WBTCDistributor
Compiler Version
v0.7.4+commit.3f05b770
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-07-27 */ library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, ""); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, ""); } 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) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, ""); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, ""); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } interface IERC20 { function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function name() external view returns (string memory); function getOwner() external view returns (address); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address _owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } abstract contract Auth { address internal owner; mapping (address => bool) internal authorizations; constructor(address _owner) { owner = _owner; authorizations[_owner] = true; } modifier onlyOwner() { require(isOwner(msg.sender), ""); _; } modifier authorized() { require(isAuthorized(msg.sender), ""); _; } function authorize(address adr) public onlyOwner { authorizations[adr] = true; } function unauthorize(address adr) public onlyOwner { authorizations[adr] = false; } function isOwner(address account) private view returns (bool) { return account == owner; } function isAuthorized(address adr) public view returns (bool) { return authorizations[adr]; } function transferOwnership(address payable adr) public onlyOwner { owner = adr; authorizations[adr] = true; emit OwnershipTransferred(adr); } event OwnershipTransferred(address owner); } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface UniRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity(address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH(address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForTokensSupportingFeeOnTransferTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external; function swapExactETHForTokensSupportingFeeOnTransferTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external; } interface IWBTCDistributor { function setDistributionCriteria(uint256 _minPeriod, uint256 _minDistribution) external; function setShare(address shareholder, uint256 amount) external; function deposit() external payable; function process(uint256 gas) external; } contract WBTCDistributor is IWBTCDistributor { using SafeMath for uint256; address _token; struct Share { uint256 amount; uint256 totalExcluded; uint256 totalRealised; } IERC20 RWRD = IERC20(0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599); // WBTC address WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; // WETH UniRouter router; address[] shareholders; mapping (address => uint256) shareholderIndexes; mapping (address => uint256) shareholderClaims; mapping (address => Share) public shares; uint256 public totalShares; uint256 public totalDividends; uint256 public totalDistributed; uint256 public dividendsPerShare; uint256 public dividendsPerShareAccuracyFactor = 10 ** 36; uint256 public minPeriod = 45 * 60; uint256 public minDistribution = 1 * (10 ** 18); uint256 currentIndex; bool initialized; modifier initialization() { require(!initialized); _; initialized = true; } modifier onlyToken() { require(msg.sender == _token); _; } constructor (address _router) { router = _router != address(0) ? UniRouter(_router) : UniRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _token = msg.sender; } function setDistributionCriteria(uint256 _minPeriod, uint256 _minDistribution) external override onlyToken { minPeriod = _minPeriod; minDistribution = _minDistribution; } function setShare(address shareholder, uint256 amount) external override onlyToken { if(shares[shareholder].amount > 0){ distributeDividend(shareholder); } if(amount > 0 && shares[shareholder].amount == 0){ addShareholder(shareholder); }else if(amount == 0 && shares[shareholder].amount > 0){ removeShareholder(shareholder); } totalShares = totalShares.sub(shares[shareholder].amount).add(amount); shares[shareholder].amount = amount; shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount); } function deposit() external payable override onlyToken { uint256 balanceBefore = RWRD.balanceOf(address(this)); address[] memory path = new address[](2); path[0] = WETH; path[1] = address(RWRD); router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: msg.value}(0, path, address(this), block.timestamp); uint256 amount = RWRD.balanceOf(address(this)).sub(balanceBefore); totalDividends = totalDividends.add(amount); dividendsPerShare = dividendsPerShare.add(dividendsPerShareAccuracyFactor.mul(amount).div(totalShares)); } function process(uint256 gas) external override onlyToken { uint256 shareholderCount = shareholders.length; if(shareholderCount == 0) { return; } uint256 gasUsed = 0; uint256 gasLeft = gasleft(); uint256 iterations = 0; while(gasUsed < gas && iterations < shareholderCount) { if(currentIndex >= shareholderCount){ currentIndex = 0; } if(shouldDistribute(shareholders[currentIndex])){ distributeDividend(shareholders[currentIndex]); } gasUsed = gasUsed.add(gasLeft.sub(gasleft())); gasLeft = gasleft(); currentIndex++; iterations++; } } function shouldDistribute(address shareholder) internal view returns (bool) { return shareholderClaims[shareholder] + minPeriod < block.timestamp && getUnpaidEarnings(shareholder) > minDistribution; } function distributeDividend(address shareholder) internal { if(shares[shareholder].amount == 0){ return; } uint256 amount = getUnpaidEarnings(shareholder); if(amount > 0){ totalDistributed = totalDistributed.add(amount); RWRD.transfer(shareholder, amount); shareholderClaims[shareholder] = block.timestamp; shares[shareholder].totalRealised = shares[shareholder].totalRealised.add(amount); shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount); } } function claimDividend() external { distributeDividend(msg.sender); } function getUnpaidEarnings(address shareholder) public view returns (uint256) { if(shares[shareholder].amount == 0){ return 0; } uint256 shareholderTotalDividends = getCumulativeDividends(shares[shareholder].amount); uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded; if(shareholderTotalDividends <= shareholderTotalExcluded){ return 0; } return shareholderTotalDividends.sub(shareholderTotalExcluded); } function getCumulativeDividends(uint256 share) internal view returns (uint256) { return share.mul(dividendsPerShare).div(dividendsPerShareAccuracyFactor); } function addShareholder(address shareholder) internal { shareholderIndexes[shareholder] = shareholders.length; shareholders.push(shareholder); } function removeShareholder(address shareholder) internal { shareholders[shareholderIndexes[shareholder]] = shareholders[shareholders.length-1]; shareholderIndexes[shareholders[shareholders.length-1]] = shareholderIndexes[shareholder]; shareholders.pop(); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_router","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"claimDividend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"dividendsPerShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dividendsPerShareAccuracyFactor","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getUnpaidEarnings","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minDistribution","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minPeriod","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"gas","type":"uint256"}],"name":"process","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_minPeriod","type":"uint256"},{"internalType":"uint256","name":"_minDistribution","type":"uint256"}],"name":"setDistributionCriteria","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setShare","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"shares","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"totalExcluded","type":"uint256"},{"internalType":"uint256","name":"totalRealised","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalDistributed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
6080604052600180546001600160a01b0319908116732260fac5e5542a773aa44fbcfedf7c193bc2c599179091556002805490911673c02aaa39b223fe8d0a0e5c4f27ead9083c756cc21790556ec097ce7bc90715b34b9f1000000000600c55610a8c600d55670de0b6b3a7640000600e5534801561007d57600080fd5b50604051610e1d380380610e1d833981810160405260208110156100a057600080fd5b50516001600160a01b0381166100ca57737a250d5630b4cf539739df2c5dacb4c659f2488d6100cc565b805b600380546001600160a01b03929092166001600160a01b0319928316179055600080549091163317905550610d17806101066000396000f3fe6080604052600436106100dd5760003560e01c8063ce7c2ac21161007f578063efca2eed11610059578063efca2eed14610254578063f0fc6bca14610269578063ffb2c4791461027e578063ffd49c84146102a8576100dd565b8063ce7c2ac2146101e6578063d0e30db014610237578063e2d2e2191461023f576100dd565b80632d48e896116100bb5780632d48e896146101775780633a98ef39146101a75780634fab0ae8146101bc578063997664d7146101d1576100dd565b806311ce023d146100e257806314b6ca961461010957806328fd319814610144575b600080fd5b3480156100ee57600080fd5b506100f76102bd565b60408051918252519081900360200190f35b34801561011557600080fd5b506101426004803603604081101561012c57600080fd5b506001600160a01b0381351690602001356102c3565b005b34801561015057600080fd5b506100f76004803603602081101561016757600080fd5b50356001600160a01b03166103e8565b34801561018357600080fd5b506101426004803603604081101561019a57600080fd5b5080359060200135610474565b3480156101b357600080fd5b506100f7610496565b3480156101c857600080fd5b506100f761049c565b3480156101dd57600080fd5b506100f76104a2565b3480156101f257600080fd5b506102196004803603602081101561020957600080fd5b50356001600160a01b03166104a8565b60408051938452602084019290925282820152519081900360600190f35b6101426104c9565b34801561024b57600080fd5b506100f7610759565b34801561026057600080fd5b506100f761075f565b34801561027557600080fd5b50610142610765565b34801561028a57600080fd5b50610142600480360360208110156102a157600080fd5b5035610770565b3480156102b457600080fd5b506100f7610852565b600c5481565b6000546001600160a01b031633146102da57600080fd5b6001600160a01b038216600090815260076020526040902054156103015761030182610858565b60008111801561032757506001600160a01b038216600090815260076020526040902054155b1561033a5761033582610980565b61036d565b8015801561035f57506001600160a01b03821660009081526007602052604090205415155b1561036d5761036d826109e1565b6001600160a01b03821660009081526007602052604090205460085461039e91839161039891610ace565b90610af3565b6008556001600160a01b03821660009081526007602052604090208190556103c581610b27565b6001600160a01b0390921660009081526007602052604090206001019190915550565b6001600160a01b03811660009081526007602052604081205461040d5750600061046f565b6001600160a01b03821660009081526007602052604081205461042f90610b27565b6001600160a01b0384166000908152600760205260409020600101549091508082116104605760009250505061046f565b61046a8282610ace565b925050505b919050565b6000546001600160a01b0316331461048b57600080fd5b600d91909155600e55565b60085481565b600e5481565b60095481565b60076020526000908152604090208054600182015460029092015490919083565b6000546001600160a01b031633146104e057600080fd5b600154604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561052b57600080fd5b505afa15801561053f573d6000803e3d6000fd5b505050506040513d602081101561055557600080fd5b5051604080516002808252606080830184529394509091602083019080368337505060025482519293506001600160a01b03169183915060009061059557fe5b6001600160a01b03928316602091820292909201015260018054835192169183919081106105bf57fe5b6001600160a01b0392831660209182029290920181019190915260035460405163b6f9de9560e01b815260006004820181815230604484018190524260648501819052608060248601908152895160848701528951969098169763b6f9de9597349795968b969495939460a49091019187810191028083838b5b83811015610651578181015183820152602001610639565b50505050905001955050505050506000604051808303818588803b15801561067857600080fd5b505af115801561068c573d6000803e3d6000fd5b5050600154604080516370a0823160e01b815230600482015290516000955061071794508793506001600160a01b03909216916370a0823191602480820192602092909190829003018186803b1580156106e557600080fd5b505afa1580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b505190610ace565b6009549091506107279082610af3565b600955600854600c5461075191610748916107429085610b44565b90610b8d565b600b5490610af3565b600b55505050565b600b5481565b600a5481565b61076e33610858565b565b6000546001600160a01b0316331461078757600080fd5b60045480610795575061084f565b6000805a905060005b84831080156107ac57508381105b1561084a5783600f54106107c0576000600f555b6107ec6004600f54815481106107d257fe5b6000918252602090912001546001600160a01b0316610ba9565b1561081d5761081d6004600f548154811061080357fe5b6000918252602090912001546001600160a01b0316610858565b61083261082b5a8490610ace565b8490610af3565b92505a600f805460019081019091559092500161079e565b505050505b50565b600d5481565b6001600160a01b03811660009081526007602052604090205461087a5761084f565b6000610885826103e8565b9050801561097c57600a5461089a9082610af3565b600a556001546040805163a9059cbb60e01b81526001600160a01b038581166004830152602482018590529151919092169163a9059cbb9160448083019260209291908290030181600087803b1580156108f357600080fd5b505af1158015610907573d6000803e3d6000fd5b505050506040513d602081101561091d57600080fd5b50506001600160a01b038216600090815260066020908152604080832042905560079091529020600201546109529082610af3565b6001600160a01b03831660009081526007602052604090206002810191909155546103c590610b27565b5050565b600480546001600160a01b039092166000818152600560205260408120849055600184018355919091527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90910180546001600160a01b0319169091179055565b6004805460001981019081106109f357fe5b60009182526020808320909101546001600160a01b0384811684526005909252604090922054600480549290931692918110610a2b57fe5b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559183168152600591829052604081205460048054919392916000198101908110610a7957fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610aa957fe5b600082815260209020810160001990810180546001600160a01b031916905501905550565b6000610aea838360405180602001604052806000815250610be5565b90505b92915050565b600082820183811015610aea576040805162461bcd60e51b8152602060048201526000602482015290519081900360640190fd5b6000610aed600c54610742600b5485610b4490919063ffffffff16565b600082610b5357506000610aed565b82820282848281610b6057fe5b0414610aea576040805162461bcd60e51b8152602060048201526000602482015290519081900360640190fd5b6000610aea838360405180602001604052806000815250610c7c565b600d546001600160a01b0382166000908152600660205260408120549091429101108015610aed5750600e54610bde836103e8565b1192915050565b60008184841115610c745760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c39578181015183820152602001610c21565b50505050905090810190601f168015610c665780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610ccb5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610c39578181015183820152602001610c21565b506000838581610cd757fe5b049594505050505056fea26469706673582212202813fd99ca1a858f8b11249e6f7aaee69c125d9c2b040b23ede8f91d7d32fc1c64736f6c634300070400330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode
0x6080604052600436106100dd5760003560e01c8063ce7c2ac21161007f578063efca2eed11610059578063efca2eed14610254578063f0fc6bca14610269578063ffb2c4791461027e578063ffd49c84146102a8576100dd565b8063ce7c2ac2146101e6578063d0e30db014610237578063e2d2e2191461023f576100dd565b80632d48e896116100bb5780632d48e896146101775780633a98ef39146101a75780634fab0ae8146101bc578063997664d7146101d1576100dd565b806311ce023d146100e257806314b6ca961461010957806328fd319814610144575b600080fd5b3480156100ee57600080fd5b506100f76102bd565b60408051918252519081900360200190f35b34801561011557600080fd5b506101426004803603604081101561012c57600080fd5b506001600160a01b0381351690602001356102c3565b005b34801561015057600080fd5b506100f76004803603602081101561016757600080fd5b50356001600160a01b03166103e8565b34801561018357600080fd5b506101426004803603604081101561019a57600080fd5b5080359060200135610474565b3480156101b357600080fd5b506100f7610496565b3480156101c857600080fd5b506100f761049c565b3480156101dd57600080fd5b506100f76104a2565b3480156101f257600080fd5b506102196004803603602081101561020957600080fd5b50356001600160a01b03166104a8565b60408051938452602084019290925282820152519081900360600190f35b6101426104c9565b34801561024b57600080fd5b506100f7610759565b34801561026057600080fd5b506100f761075f565b34801561027557600080fd5b50610142610765565b34801561028a57600080fd5b50610142600480360360208110156102a157600080fd5b5035610770565b3480156102b457600080fd5b506100f7610852565b600c5481565b6000546001600160a01b031633146102da57600080fd5b6001600160a01b038216600090815260076020526040902054156103015761030182610858565b60008111801561032757506001600160a01b038216600090815260076020526040902054155b1561033a5761033582610980565b61036d565b8015801561035f57506001600160a01b03821660009081526007602052604090205415155b1561036d5761036d826109e1565b6001600160a01b03821660009081526007602052604090205460085461039e91839161039891610ace565b90610af3565b6008556001600160a01b03821660009081526007602052604090208190556103c581610b27565b6001600160a01b0390921660009081526007602052604090206001019190915550565b6001600160a01b03811660009081526007602052604081205461040d5750600061046f565b6001600160a01b03821660009081526007602052604081205461042f90610b27565b6001600160a01b0384166000908152600760205260409020600101549091508082116104605760009250505061046f565b61046a8282610ace565b925050505b919050565b6000546001600160a01b0316331461048b57600080fd5b600d91909155600e55565b60085481565b600e5481565b60095481565b60076020526000908152604090208054600182015460029092015490919083565b6000546001600160a01b031633146104e057600080fd5b600154604080516370a0823160e01b815230600482015290516000926001600160a01b0316916370a08231916024808301926020929190829003018186803b15801561052b57600080fd5b505afa15801561053f573d6000803e3d6000fd5b505050506040513d602081101561055557600080fd5b5051604080516002808252606080830184529394509091602083019080368337505060025482519293506001600160a01b03169183915060009061059557fe5b6001600160a01b03928316602091820292909201015260018054835192169183919081106105bf57fe5b6001600160a01b0392831660209182029290920181019190915260035460405163b6f9de9560e01b815260006004820181815230604484018190524260648501819052608060248601908152895160848701528951969098169763b6f9de9597349795968b969495939460a49091019187810191028083838b5b83811015610651578181015183820152602001610639565b50505050905001955050505050506000604051808303818588803b15801561067857600080fd5b505af115801561068c573d6000803e3d6000fd5b5050600154604080516370a0823160e01b815230600482015290516000955061071794508793506001600160a01b03909216916370a0823191602480820192602092909190829003018186803b1580156106e557600080fd5b505afa1580156106f9573d6000803e3d6000fd5b505050506040513d602081101561070f57600080fd5b505190610ace565b6009549091506107279082610af3565b600955600854600c5461075191610748916107429085610b44565b90610b8d565b600b5490610af3565b600b55505050565b600b5481565b600a5481565b61076e33610858565b565b6000546001600160a01b0316331461078757600080fd5b60045480610795575061084f565b6000805a905060005b84831080156107ac57508381105b1561084a5783600f54106107c0576000600f555b6107ec6004600f54815481106107d257fe5b6000918252602090912001546001600160a01b0316610ba9565b1561081d5761081d6004600f548154811061080357fe5b6000918252602090912001546001600160a01b0316610858565b61083261082b5a8490610ace565b8490610af3565b92505a600f805460019081019091559092500161079e565b505050505b50565b600d5481565b6001600160a01b03811660009081526007602052604090205461087a5761084f565b6000610885826103e8565b9050801561097c57600a5461089a9082610af3565b600a556001546040805163a9059cbb60e01b81526001600160a01b038581166004830152602482018590529151919092169163a9059cbb9160448083019260209291908290030181600087803b1580156108f357600080fd5b505af1158015610907573d6000803e3d6000fd5b505050506040513d602081101561091d57600080fd5b50506001600160a01b038216600090815260066020908152604080832042905560079091529020600201546109529082610af3565b6001600160a01b03831660009081526007602052604090206002810191909155546103c590610b27565b5050565b600480546001600160a01b039092166000818152600560205260408120849055600184018355919091527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90910180546001600160a01b0319169091179055565b6004805460001981019081106109f357fe5b60009182526020808320909101546001600160a01b0384811684526005909252604090922054600480549290931692918110610a2b57fe5b600091825260208083209190910180546001600160a01b0319166001600160a01b039485161790559183168152600591829052604081205460048054919392916000198101908110610a7957fe5b60009182526020808320909101546001600160a01b031683528201929092526040019020556004805480610aa957fe5b600082815260209020810160001990810180546001600160a01b031916905501905550565b6000610aea838360405180602001604052806000815250610be5565b90505b92915050565b600082820183811015610aea576040805162461bcd60e51b8152602060048201526000602482015290519081900360640190fd5b6000610aed600c54610742600b5485610b4490919063ffffffff16565b600082610b5357506000610aed565b82820282848281610b6057fe5b0414610aea576040805162461bcd60e51b8152602060048201526000602482015290519081900360640190fd5b6000610aea838360405180602001604052806000815250610c7c565b600d546001600160a01b0382166000908152600660205260408120549091429101108015610aed5750600e54610bde836103e8565b1192915050565b60008184841115610c745760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c39578181015183820152602001610c21565b50505050905090810190601f168015610c665780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610ccb5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610c39578181015183820152602001610c21565b506000838581610cd757fe5b049594505050505056fea26469706673582212202813fd99ca1a858f8b11249e6f7aaee69c125d9c2b040b23ede8f91d7d32fc1c64736f6c63430007040033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
-----Decoded View---------------
Arg [0] : _router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode Sourcemap
4444:5621:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5173:57;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;5992:644;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;5992:644:0;;;;;;;;:::i;:::-;;8934:479;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8934:479:0;-1:-1:-1;;;;;8934:479:0;;:::i;5791:193::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5791:193:0;;;;;;;:::i;5027:26::-;;;;;;;;;;;;;:::i;5278:47::-;;;;;;;;;;;;;:::i;5060:29::-;;;;;;;;;;;;;:::i;4978:40::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4978:40:0;-1:-1:-1;;;;;4978:40:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;6645:612;;;:::i;5134:32::-;;;;;;;;;;;;;:::i;5096:31::-;;;;;;;;;;;;;:::i;8843:83::-;;;;;;;;;;;;;:::i;7265:751::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;7265:751:0;;:::i;5237:34::-;;;;;;;;;;;;;:::i;5173:57::-;;;;:::o;5992:644::-;5553:6;;-1:-1:-1;;;;;5553:6:0;5539:10;:20;5531:29;;;;;;-1:-1:-1;;;;;6089:19:0;::::1;6118:1;6089:19:::0;;;:6:::1;:19;::::0;;;;:26;:30;6086:92:::1;;6135:31;6154:11;6135:18;:31::i;:::-;6202:1;6193:6;:10;:45;;;;-1:-1:-1::0;;;;;;6207:19:0;::::1;;::::0;;;:6:::1;:19;::::0;;;;:26;:31;6193:45:::1;6190:214;;;6254:27;6269:11;6254:14;:27::i;:::-;6190:214;;;6301:11:::0;;:45;::::1;;;-1:-1:-1::0;;;;;;6316:19:0;::::1;6345:1;6316:19:::0;;;:6:::1;:19;::::0;;;;:26;:30;;6301:45:::1;6298:106;;;6362:30;6380:11;6362:17;:30::i;:::-;-1:-1:-1::0;;;;;6446:19:0;::::1;;::::0;;;:6:::1;:19;::::0;;;;:26;6430:11:::1;::::0;:55:::1;::::0;6478:6;;6430:43:::1;::::0;:15:::1;:43::i;:::-;:47:::0;::::1;:55::i;:::-;6416:11;:69:::0;-1:-1:-1;;;;;6496:19:0;::::1;;::::0;;;:6:::1;:19;::::0;;;;:35;;;6578:50:::1;6525:6:::0;6578:22:::1;:50::i;:::-;-1:-1:-1::0;;;;;6542:19:0;;::::1;;::::0;;;:6:::1;:19;::::0;;;;:33:::1;;:86:::0;;;;-1:-1:-1;5992:644:0:o;8934:479::-;-1:-1:-1;;;;;9026:19:0;;9003:7;9026:19;;;:6;:19;;;;;:26;9023:48;;-1:-1:-1;9067:1:0;9060:8;;9023:48;-1:-1:-1;;;;;9142:19:0;;9083:33;9142:19;;;:6;:19;;;;;:26;9119:50;;:22;:50::i;:::-;-1:-1:-1;;;;;9215:19:0;;9180:32;9215:19;;;:6;:19;;;;;:33;;;9083:86;;-1:-1:-1;9264:53:0;;;9261:70;;9327:1;9320:8;;;;;;9261:70;9350:55;:25;9380:24;9350:29;:55::i;:::-;9343:62;;;;8934:479;;;;:::o;5791:193::-;5553:6;;-1:-1:-1;;;;;5553:6:0;5539:10;:20;5531:29;;;;;;5909:9:::1;:22:::0;;;;5942:15:::1;:34:::0;5791:193::o;5027:26::-;;;;:::o;5278:47::-;;;;:::o;5060:29::-;;;;:::o;4978:40::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6645:612::-;5553:6;;-1:-1:-1;;;;;5553:6:0;5539:10;:20;5531:29;;;;;;6735:4:::1;::::0;:29:::1;::::0;;-1:-1:-1;;;6735:29:0;;6758:4:::1;6735:29;::::0;::::1;::::0;;;6711:21:::1;::::0;-1:-1:-1;;;;;6735:4:0::1;::::0;:14:::1;::::0;:29;;;;;::::1;::::0;;;;;;;;:4;:29;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;6735:29:0;6801:16:::1;::::0;;6815:1:::1;6801:16:::0;;;6777:21:::1;6801:16:::0;;::::1;::::0;;6735:29;;-1:-1:-1;6801:16:0;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;-1:-1:-1::0;;6838:4:0::1;::::0;6828:7;;;;-1:-1:-1;;;;;;6838:4:0::1;::::0;6828:7;;-1:-1:-1;6838:4:0::1;::::0;6828:7:::1;;;;-1:-1:-1::0;;;;;6828:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;6871:4:::1;::::0;;6853:7;;6871:4;::::1;::::0;6853;;6871;6853:7;::::1;;;;;-1:-1:-1::0;;;;;6853:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;6889:6:::1;::::0;:116:::1;::::0;-1:-1:-1;;;6889:116:0;;:6:::1;:116;::::0;::::1;::::0;;;6982:4:::1;6889:116:::0;;;;;;6989:15:::1;6889:116:::0;;;;;;;;;;;;;;;;;;;;;:6;;;::::1;::::0;:57:::1;::::0;6954:9:::1;::::0;6889:6;;6968:4;;6982;;6989:15;;6889:116;;;;;;;::::1;::::0;::::1;::::0;;;:6;:116:::1;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;7033:4:0::1;::::0;:29:::1;::::0;;-1:-1:-1;;;7033:29:0;;7056:4:::1;7033:29;::::0;::::1;::::0;;;7016:14:::1;::::0;-1:-1:-1;7033:48:0::1;::::0;-1:-1:-1;7067:13:0;;-1:-1:-1;;;;;;7033:4:0;;::::1;::::0;:14:::1;::::0;:29;;;;;::::1;::::0;;;;;;;;;:4;:29;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;7033:29:0;;:33:::1;:48::i;:::-;7109:14;::::0;7016:65;;-1:-1:-1;7109:26:0::1;::::0;7016:65;7109:18:::1;:26::i;:::-;7092:14;:43:::0;7236:11:::1;::::0;7188:31:::1;::::0;7166:83:::1;::::0;7188:60:::1;::::0;:43:::1;::::0;7224:6;7188:35:::1;:43::i;:::-;:47:::0;::::1;:60::i;:::-;7166:17;::::0;;:21:::1;:83::i;:::-;7146:17;:103:::0;-1:-1:-1;;;6645:612:0:o;5134:32::-;;;;:::o;5096:31::-;;;;:::o;8843:83::-;8888:30;8907:10;8888:18;:30::i;:::-;8843:83::o;7265:751::-;5553:6;;-1:-1:-1;;;;;5553:6:0;5539:10;:20;5531:29;;;;;;7361:12:::1;:19:::0;7396:21;7393:37:::1;;7421:7;;;7393:37;7442:15;7472::::0;7490:9:::1;7472:27;;7510:18;7545:464;7561:3;7551:7;:13;:46;;;;;7581:16;7568:10;:29;7551:46;7545:464;;;7633:16;7617:12;;:32;7614:87;;7684:1;7669:12;:16:::0;7614:87:::1;7720:44;7737:12;7750;;7737:26;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;7737:26:0::1;7720:16;:44::i;:::-;7717:129;;;7784:46;7803:12;7816;;7803:26;;;;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;-1:-1:-1;;;;;7803:26:0::1;7784:18;:46::i;:::-;7872:35;7884:22;7896:9;7884:7:::0;;:11:::1;:22::i;:::-;7872:7:::0;;:11:::1;:35::i;:::-;7862:45;;7932:9;7956:12;:14:::0;;::::1;::::0;;::::1;::::0;;;7922:19;;-1:-1:-1;7985:12:0::1;7545:464;;;5562:1;;;;;7265:751:::0;:::o;5237:34::-;;;;:::o;8246:589::-;-1:-1:-1;;;;;8318:19:0;;;;;;:6;:19;;;;;:26;8315:46;;8352:7;;8315:46;8373:14;8390:30;8408:11;8390:17;:30::i;:::-;8373:47;-1:-1:-1;8434:10:0;;8431:397;;8479:16;;:28;;8500:6;8479:20;:28::i;:::-;8460:16;:47;8522:4;;:34;;;-1:-1:-1;;;8522:34:0;;-1:-1:-1;;;;;8522:34:0;;;;;;;;;;;;;;;:4;;;;;:13;;:34;;;;;;;;;;;;;;:4;;:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;;8571:30:0;;;;;;:17;8522:34;8571:30;;;;;;;8604:15;8571:48;;8670:6;:19;;;;;:33;;;:45;;8708:6;8670:37;:45::i;:::-;-1:-1:-1;;;;;8634:19:0;;;;;;:6;:19;;;;;:33;;;:81;;;;8789:26;8766:50;;:22;:50::i;8431:397::-;8246:589;;:::o;9599:167::-;9698:12;:19;;-1:-1:-1;;;;;9664:31:0;;;;;;;:18;:31;;;;;:53;;;9728:30;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9728:30:0;;;;;;9599:167::o;9774:288::-;9890:12;9903:19;;-1:-1:-1;;9903:21:0;;;9890:35;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9855:31:0;;;;;:18;:31;;;;;;;;9842:12;:45;;9890:35;;;;;9842:12;:45;;;;;;;;;;;;;;;;;;:83;;-1:-1:-1;;;;;;9842:83:0;-1:-1:-1;;;;;9842:83:0;;;;;;9994:31;;;;;:18;:31;;;;;;;;9955:12;9968:19;;9994:31;;:18;9842:45;-1:-1:-1;;9968:21:0;;;9955:35;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9955:35:0;9936:55;;;;;;;;;;;;:89;10036:12;:18;;;;;;;;;;;;;;;;-1:-1:-1;;10036:18:0;;;;;-1:-1:-1;;;;;;10036:18:0;;;;;;-1:-1:-1;9774:288:0:o;182:106::-;240:7;267:13;271:1;274;267:13;;;;;;;;;;;;:3;:13::i;:::-;260:20;;182:106;;;;;:::o;24:152::-;82:7;114:5;;;138:6;;;;130:19;;;;;-1:-1:-1;;;130:19:0;;;;;;;;;;;;;;;;;;;;;;9421:170;9491:7;9518:65;9551:31;;9518:28;9528:17;;9518:5;:9;;:28;;;;:::i;490:213::-;548:7;572:6;568:47;;-1:-1:-1;602:1:0;595:8;;568:47;637:5;;;641:1;637;:5;:1;661:5;;;;;:10;653:23;;;;;-1:-1:-1;;;653:23:0;;;;;;;;;;;;;;;;;;;;;;709:106;767:7;794:13;798:1;801;794:13;;;;;;;;;;;;:3;:13::i;8024:214::-;8151:9;;-1:-1:-1;;;;;8118:30:0;;8094:4;8118:30;;;:17;:30;;;;;;8094:4;;8163:15;8118:42;;:60;:112;;;;;8215:15;;8182:30;8200:11;8182:17;:30::i;:::-;:48;;8024:214;-1:-1:-1;;8024:214:0:o;294:190::-;380:7;416:12;408:6;;;;400:29;;;;-1:-1:-1;;;400:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;452:5:0;;;294:190::o;821:189::-;907:7;942:12;935:5;927:28;;;;-1:-1:-1;;;927:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;966:9;982:1;978;:5;;;;;;;821:189;-1:-1:-1;;;;;821:189:0:o
Swarm Source
ipfs://2813fd99ca1a858f8b11249e6f7aaee69c125d9c2b040b23ede8f91d7d32fc1c
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $91,871 | 0.0555 | $5,100.93 |
Loading...
Loading
[ Download: CSV Export ]
[ 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.