Polygon Sponsored slots available. Book your slot here!
Source Code
Latest 25 from a total of 740 transactions
| Transaction Hash |
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Claim Divs | 81840857 | 27 hrs ago | IN | 0 POL | 0.00764261 | ||||
| Claim Divs | 81251994 | 14 days ago | IN | 0 POL | 0.36216618 | ||||
| Claim Divs | 80303419 | 36 days ago | IN | 0 POL | 0.00233784 | ||||
| Claim Divs | 80286355 | 37 days ago | IN | 0 POL | 0.00245064 | ||||
| Claim Divs | 80192348 | 39 days ago | IN | 0 POL | 0.00290443 | ||||
| Claim Divs | 80122227 | 41 days ago | IN | 0 POL | 0.00268661 | ||||
| Claim Divs | 80087084 | 41 days ago | IN | 0 POL | 0.00211968 | ||||
| Claim Divs | 80049737 | 42 days ago | IN | 0 POL | 0.01411308 | ||||
| Claim Divs | 79986413 | 44 days ago | IN | 0 POL | 0.00214269 | ||||
| Claim Divs | 79985169 | 44 days ago | IN | 0 POL | 0.00220247 | ||||
| Claim Divs | 79959175 | 44 days ago | IN | 0 POL | 0.00199822 | ||||
| Claim Divs | 79959151 | 44 days ago | IN | 0 POL | 0.00220247 | ||||
| Claim Divs | 79952466 | 45 days ago | IN | 0 POL | 0.00298052 | ||||
| Claim Divs | 79899065 | 46 days ago | IN | 0 POL | 0.00289284 | ||||
| Claim Divs | 79853793 | 47 days ago | IN | 0 POL | 0.00289356 | ||||
| Claim Divs | 79835180 | 47 days ago | IN | 0 POL | 0.00705826 | ||||
| Claim Divs | 79834412 | 47 days ago | IN | 0 POL | 0.00993018 | ||||
| Claim Divs | 79792824 | 48 days ago | IN | 0 POL | 0.01061192 | ||||
| Claim Divs | 79792810 | 48 days ago | IN | 0 POL | 0.01084503 | ||||
| Claim Divs | 79786225 | 48 days ago | IN | 0 POL | 0.00390658 | ||||
| Claim Divs | 79775078 | 49 days ago | IN | 0 POL | 0.00359393 | ||||
| Registration Ext | 79744806 | 49 days ago | IN | 4 POL | 0.2980896 | ||||
| Claim Divs | 79744353 | 49 days ago | IN | 0 POL | 0.02862641 | ||||
| Claim Divs | 79731566 | 50 days ago | IN | 0 POL | 0.00381592 | ||||
| Claim Divs | 79730596 | 50 days ago | IN | 0 POL | 0.00473048 |
Latest 25 internal transactions (View All)
| Parent Transaction Hash | Block | From | To | |||
|---|---|---|---|---|---|---|
| 81840857 | 27 hrs ago | 0.01035123 POL | ||||
| 81251994 | 14 days ago | 60.57844402 POL | ||||
| 80303419 | 36 days ago | 0.26075752 POL | ||||
| 80286355 | 37 days ago | 0.0073869 POL | ||||
| 80192348 | 39 days ago | 0.23807844 POL | ||||
| 80122227 | 41 days ago | 0.1138636 POL | ||||
| 80087084 | 41 days ago | 0.33854685 POL | ||||
| 80049737 | 42 days ago | 0.55870808 POL | ||||
| 79986413 | 44 days ago | 0.05751152 POL | ||||
| 79985169 | 44 days ago | 0.46537475 POL | ||||
| 79959175 | 44 days ago | 4.26569041 POL | ||||
| 79959151 | 44 days ago | 4.26569041 POL | ||||
| 79952466 | 45 days ago | 0.00442804 POL | ||||
| 79899065 | 46 days ago | 0.11080351 POL | ||||
| 79853793 | 47 days ago | 0.00295066 POL | ||||
| 79835180 | 47 days ago | 0.00147465 POL | ||||
| 79834412 | 47 days ago | 0.0147738 POL | ||||
| 79792824 | 48 days ago | 0.65212792 POL | ||||
| 79792810 | 48 days ago | 0.16989871 POL | ||||
| 79786225 | 48 days ago | 0.1138636 POL | ||||
| 79775078 | 49 days ago | 0.00147465 POL | ||||
| 79744806 | 49 days ago | 1.2 POL | ||||
| 79744806 | 49 days ago | 1.2 POL | ||||
| 79744353 | 49 days ago | 0.00147601 POL | ||||
| 79731566 | 50 days ago | 0.05756457 POL |
Cross-Chain Transactions
Loading...
Loading
Contract Name:
PolPower
Compiler Version
v0.5.17+commit.d19bba13
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
/**
*Submitted for verification at polygonscan.com on 2025-04-03
*/
/**
Website : https://pol-power.net/
*/
pragma solidity >=0.4.23 <0.6.0;
interface IERC20 {
function balanceOf(address account) external view returns (uint256);
function transfer(address recipient, uint256 amount) external returns (bool);
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
}
contract PolPower {
struct User {
uint id;
address referrer;
uint partnersCount;
mapping(uint8 => bool) activeX3Levels;
mapping(uint8 => bool) activeX6Levels;
mapping(uint8 => X3) x3Matrix;
mapping(uint8 => X6) x6Matrix;
mapping(uint8 => uint) x3MatrixEarnings;
mapping(uint8 => uint) x6MatrixEarnings;
uint divClaimMark;
uint totalPlayerDivPoints;
uint divsClaimed;
}
struct X3 {
address currentReferrer;
address[] referrals;
bool blocked;
uint reinvestCount;
}
struct X6 {
address currentReferrer;
address[] firstLevelReferrals;
address[] secondLevelReferrals;
bool blocked;
uint reinvestCount;
address closedPart;
}
uint8 public constant LAST_LEVEL = 12;
uint16 public constant DIV_PERCENT = 400; // == 40.00%
uint16 internal constant DIV_DIVISOR = 1000;
IERC20 public myToken = IERC20(0x7A4f192d4Cf41A2db5eDBc48D5d0fEDafA8B723B);
mapping(address => User) public users;
mapping(uint => address) public idToAddress;
bool public gameOpen = true;
uint public divPot;
uint public totalDividendPoints;
uint public totalDivs;
uint internal calcDivs;
uint constant pointMultiplier = 1e18;
uint public lastUserId = 2;
address public owner;
address internal admin;
mapping(uint8 => uint) public levelPrice;
event Registration(address indexed user, address indexed referrer, uint indexed userId, uint referrerId);
event Reinvest(address indexed user, address indexed currentReferrer, address indexed caller, uint8 matrix, uint8 level);
event Upgrade(address indexed user, address indexed referrer, uint8 matrix, uint8 level);
event NewUserPlace(address indexed user, address indexed referrer, uint8 matrix, uint8 level, uint8 place);
event MissedEthReceive(address indexed receiver, address indexed from, uint8 matrix, uint8 level);
event SentExtraEthDividends(address indexed from, address indexed receiver, uint8 matrix, uint8 level);
constructor(address ownerAddress) public {
admin = msg.sender;
levelPrice[1] = 2000000000000000000;
for (uint8 i = 2; i <= LAST_LEVEL; i++) {
levelPrice[i] = levelPrice[i-1] * 2;
}
owner = ownerAddress;
User memory user = User({
id: 1,
referrer: address(0),
partnersCount: uint(0),
divClaimMark: 0,
totalPlayerDivPoints: 0,
divsClaimed: 0
});
users[ownerAddress] = user;
idToAddress[1] = ownerAddress;
for (uint8 i = 1; i <= LAST_LEVEL; i++) {
users[ownerAddress].activeX3Levels[i] = true;
users[ownerAddress].activeX6Levels[i] = true;
}
}
function updateGameOpen(bool _gameOpen) public {
require(msg.sender == admin, "Only Admin");
gameOpen = _gameOpen;
}
function() external payable {
if(msg.data.length == 0) {
return registration(msg.sender, owner);
}
registration(msg.sender, bytesToAddress(msg.data));
}
function registrationExt(address referrerAddress) external payable {
require(gameOpen == true, "Game not yet open!");
registration(msg.sender, referrerAddress);
}
function buyNewLevel(uint8 matrix, uint8 level) external payable {
require(gameOpen == true, "Game not yet open!");
require(isUserExists(msg.sender), "user is not exists. Register first.");
require(matrix == 1 || matrix == 2, "invalid matrix");
require(msg.value == levelPrice[level], "invalid price");
require(level > 1 && level <= LAST_LEVEL, "invalid level");
if(viewDivs(msg.sender) > 0){
sendDivs(msg.sender);
} else {
users[msg.sender].divClaimMark = totalDividendPoints;
}
users[msg.sender].totalPlayerDivPoints += msg.value * DIV_PERCENT / DIV_DIVISOR;
divPot += (msg.value * DIV_PERCENT / DIV_DIVISOR);
totalDivs += (msg.value * DIV_PERCENT / DIV_DIVISOR);
if (matrix == 1) {
require(!users[msg.sender].activeX3Levels[level], "level already activated");
if (users[msg.sender].x3Matrix[level-1].blocked) {
users[msg.sender].x3Matrix[level-1].blocked = false;
}
address freeX3Referrer = findFreeX3Referrer(msg.sender, level);
// Short-circuits to save Energy
if(freeX3Referrer == owner){
if(viewDivs(owner) > 0){
sendDivs(owner);
} else {
users[owner].divClaimMark = totalDividendPoints;
}
users[owner].totalPlayerDivPoints += msg.value * DIV_PERCENT / DIV_DIVISOR;
calcDivs += msg.value * DIV_PERCENT / DIV_DIVISOR * 2;
totalDividendPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR) * pointMultiplier / calcDivs;
} else {
calcDivs += (msg.value * DIV_PERCENT / DIV_DIVISOR);
totalDividendPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR) * pointMultiplier / calcDivs;
}
users[msg.sender].x3Matrix[level].currentReferrer = freeX3Referrer;
users[msg.sender].activeX3Levels[level] = true;
updateX3Referrer(msg.sender, freeX3Referrer, level);
emit Upgrade(msg.sender, freeX3Referrer, 1, level);
} else {
require(!users[msg.sender].activeX6Levels[level], "level already activated");
if (users[msg.sender].x6Matrix[level-1].blocked) {
users[msg.sender].x6Matrix[level-1].blocked = false;
}
address freeX6Referrer = findFreeX6Referrer(msg.sender, level);
// Short-circuits to save Energy
if(freeX6Referrer == owner){
if(viewDivs(owner) > 0){
sendDivs(owner);
} else {
users[owner].divClaimMark = totalDividendPoints;
}
users[owner].totalPlayerDivPoints += msg.value * DIV_PERCENT / DIV_DIVISOR;
calcDivs += msg.value * DIV_PERCENT / DIV_DIVISOR * 2;
totalDividendPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR) * pointMultiplier / calcDivs;
} else {
calcDivs += (msg.value * DIV_PERCENT / DIV_DIVISOR);
totalDividendPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR) * pointMultiplier / calcDivs;
}
users[msg.sender].activeX6Levels[level] = true;
updateX6Referrer(msg.sender, freeX6Referrer, level);
emit Upgrade(msg.sender, freeX6Referrer, 2, level);
}
}
function registration(address userAddress, address referrerAddress) private {
require(msg.value == 4000000000000000000, "registration cost 4 POL");
require(!isUserExists(userAddress), "user exists");
require(isUserExists(referrerAddress), "referrer not exists");
uint32 size;
assembly {
size := extcodesize(userAddress)
}
require(size == 0, "cannot be a contract");
User memory user = User({
id: lastUserId,
referrer: referrerAddress,
partnersCount: 0,
divClaimMark: totalDividendPoints,
totalPlayerDivPoints: 0,
divsClaimed: 0
});
users[userAddress] = user;
idToAddress[lastUserId] = userAddress;
users[userAddress].referrer = referrerAddress;
users[userAddress].activeX3Levels[1] = true;
users[userAddress].activeX6Levels[1] = true;
users[userAddress].totalPlayerDivPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR);
divPot += msg.value * DIV_PERCENT / DIV_DIVISOR;
totalDivs += (msg.value * DIV_PERCENT / DIV_DIVISOR);
lastUserId++;
users[referrerAddress].partnersCount++;
address freeX3Referrer = findFreeX3Referrer(userAddress, 1);
address freeX6Ref = findFreeX6Referrer(userAddress, 1);
// Short-circuits to save Energy
if(freeX3Referrer == owner || freeX6Ref == owner){
if(viewDivs(owner) > 0){
sendDivs(owner);
} else {
users[owner].divClaimMark = totalDividendPoints;
}
users[owner].totalPlayerDivPoints += msg.value * DIV_PERCENT / DIV_DIVISOR;
calcDivs += msg.value * DIV_PERCENT / DIV_DIVISOR * 2;
totalDividendPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR) * pointMultiplier / calcDivs;
} else {
calcDivs += (msg.value * DIV_PERCENT / DIV_DIVISOR);
totalDividendPoints += (msg.value * DIV_PERCENT / DIV_DIVISOR) * pointMultiplier / calcDivs;
}
users[userAddress].x3Matrix[1].currentReferrer = freeX3Referrer;
updateX3Referrer(userAddress, freeX3Referrer, 1);
updateX6Referrer(userAddress, freeX6Ref, 1);
emit Registration(userAddress, referrerAddress, users[userAddress].id, users[referrerAddress].id);
}
function claimDivs() public returns(bool) {
uint _divAmount = viewDivs(msg.sender);
require(_divAmount > 0, "No divs available");
sendDivs(msg.sender);
}
function sendDivs(address _user) internal returns(bool) {
uint _divAmount = viewDivs(_user);
divPot -= _divAmount;
users[_user].divClaimMark = totalDividendPoints;
users[_user].divsClaimed += _divAmount;
return address(uint160(_user)).send(_divAmount);
}
function viewDivsPercent(address _player) public view returns(uint divsPercent) {
return users[_player].totalPlayerDivPoints * 100 / calcDivs;
}
function viewDivs(address _player) public view returns(uint divsAvailable) {
uint newDividendPoints = totalDividendPoints - users[_player].divClaimMark;
return (users[_player].totalPlayerDivPoints * newDividendPoints) / pointMultiplier;
}
function updateX3Referrer(address userAddress, address referrerAddress, uint8 level) private {
users[referrerAddress].x3Matrix[level].referrals.push(userAddress);
if (users[referrerAddress].x3Matrix[level].referrals.length < 3) {
emit NewUserPlace(userAddress, referrerAddress, 1, level, uint8(users[referrerAddress].x3Matrix[level].referrals.length));
return sendPartnerTRX(referrerAddress, userAddress, 1, level);
}
emit NewUserPlace(userAddress, referrerAddress, 1, level, 3);
users[referrerAddress].x3Matrix[level].referrals = new address[](0);
if (!users[referrerAddress].activeX3Levels[level+1] && level != LAST_LEVEL) {
users[referrerAddress].x3Matrix[level].blocked = true;
}
// Short-circuits to save Energy
if (referrerAddress != owner) {
address freeReferrerAddress = findFreeX3Referrer(referrerAddress, level);
if (users[referrerAddress].x3Matrix[level].currentReferrer != freeReferrerAddress) {
users[referrerAddress].x3Matrix[level].currentReferrer = freeReferrerAddress;
}
users[referrerAddress].x3Matrix[level].reinvestCount++;
emit Reinvest(referrerAddress, freeReferrerAddress, userAddress, 1, level);
updateX3Referrer(referrerAddress, freeReferrerAddress, level);
} else {
sendPartnerTRX(owner, userAddress, 1, level);
users[owner].x3Matrix[level].reinvestCount++;
emit Reinvest(owner, address(0), userAddress, 1, level);
}
}
function updateX6Referrer(address userAddress, address referrerAddress, uint8 level) private {
require(users[referrerAddress].activeX6Levels[level], "500. Referrer level is inactive");
if (users[referrerAddress].x6Matrix[level].firstLevelReferrals.length < 2) {
users[referrerAddress].x6Matrix[level].firstLevelReferrals.push(userAddress);
emit NewUserPlace(userAddress, referrerAddress, 2, level, uint8(users[referrerAddress].x6Matrix[level].firstLevelReferrals.length));
users[userAddress].x6Matrix[level].currentReferrer = referrerAddress;
// Short-circuits to save Energy
if (referrerAddress == owner) {
return sendPartnerTRX(referrerAddress, userAddress, 2, level);
}
address ref = users[referrerAddress].x6Matrix[level].currentReferrer;
users[ref].x6Matrix[level].secondLevelReferrals.push(userAddress);
uint len = users[ref].x6Matrix[level].firstLevelReferrals.length;
if ((len == 2) &&
(users[ref].x6Matrix[level].firstLevelReferrals[0] == referrerAddress) &&
(users[ref].x6Matrix[level].firstLevelReferrals[1] == referrerAddress)) {
if (users[referrerAddress].x6Matrix[level].firstLevelReferrals.length == 1) {
emit NewUserPlace(userAddress, ref, 2, level, 5);
} else {
emit NewUserPlace(userAddress, ref, 2, level, 6);
}
} else if ((len == 1 || len == 2) &&
users[ref].x6Matrix[level].firstLevelReferrals[0] == referrerAddress) {
if (users[referrerAddress].x6Matrix[level].firstLevelReferrals.length == 1) {
emit NewUserPlace(userAddress, ref, 2, level, 3);
} else {
emit NewUserPlace(userAddress, ref, 2, level, 4);
}
} else if (len == 2 && users[ref].x6Matrix[level].firstLevelReferrals[1] == referrerAddress) {
if (users[referrerAddress].x6Matrix[level].firstLevelReferrals.length == 1) {
emit NewUserPlace(userAddress, ref, 2, level, 5);
} else {
emit NewUserPlace(userAddress, ref, 2, level, 6);
}
}
return updateX6ReferrerSecondLevel(userAddress, ref, level);
}
users[referrerAddress].x6Matrix[level].secondLevelReferrals.push(userAddress);
if (users[referrerAddress].x6Matrix[level].closedPart != address(0)) {
if ((users[referrerAddress].x6Matrix[level].firstLevelReferrals[0] ==
users[referrerAddress].x6Matrix[level].firstLevelReferrals[1]) &&
(users[referrerAddress].x6Matrix[level].firstLevelReferrals[0] ==
users[referrerAddress].x6Matrix[level].closedPart)) {
updateX6(userAddress, referrerAddress, level, true);
return updateX6ReferrerSecondLevel(userAddress, referrerAddress, level);
} else if (users[referrerAddress].x6Matrix[level].firstLevelReferrals[0] ==
users[referrerAddress].x6Matrix[level].closedPart) {
updateX6(userAddress, referrerAddress, level, true);
return updateX6ReferrerSecondLevel(userAddress, referrerAddress, level);
} else {
updateX6(userAddress, referrerAddress, level, false);
return updateX6ReferrerSecondLevel(userAddress, referrerAddress, level);
}
}
if (users[referrerAddress].x6Matrix[level].firstLevelReferrals[1] == userAddress) {
updateX6(userAddress, referrerAddress, level, false);
return updateX6ReferrerSecondLevel(userAddress, referrerAddress, level);
} else if (users[referrerAddress].x6Matrix[level].firstLevelReferrals[0] == userAddress) {
updateX6(userAddress, referrerAddress, level, true);
return updateX6ReferrerSecondLevel(userAddress, referrerAddress, level);
}
if (users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[0]].x6Matrix[level].firstLevelReferrals.length <=
users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[1]].x6Matrix[level].firstLevelReferrals.length) {
updateX6(userAddress, referrerAddress, level, false);
} else {
updateX6(userAddress, referrerAddress, level, true);
}
updateX6ReferrerSecondLevel(userAddress, referrerAddress, level);
}
function updateX6(address userAddress, address referrerAddress, uint8 level, bool x2) private {
if (!x2) {
users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[0]].x6Matrix[level].firstLevelReferrals.push(userAddress);
emit NewUserPlace(userAddress, users[referrerAddress].x6Matrix[level].firstLevelReferrals[0], 2, level, uint8(users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[0]].x6Matrix[level].firstLevelReferrals.length));
emit NewUserPlace(userAddress, referrerAddress, 2, level, 2 + uint8(users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[0]].x6Matrix[level].firstLevelReferrals.length));
users[userAddress].x6Matrix[level].currentReferrer = users[referrerAddress].x6Matrix[level].firstLevelReferrals[0];
} else {
users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[1]].x6Matrix[level].firstLevelReferrals.push(userAddress);
emit NewUserPlace(userAddress, users[referrerAddress].x6Matrix[level].firstLevelReferrals[1], 2, level, uint8(users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[1]].x6Matrix[level].firstLevelReferrals.length));
emit NewUserPlace(userAddress, referrerAddress, 2, level, 4 + uint8(users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[1]].x6Matrix[level].firstLevelReferrals.length));
users[userAddress].x6Matrix[level].currentReferrer = users[referrerAddress].x6Matrix[level].firstLevelReferrals[1];
}
}
function updateX6ReferrerSecondLevel(address userAddress, address referrerAddress, uint8 level) private {
if (users[referrerAddress].x6Matrix[level].secondLevelReferrals.length < 4) {
return sendPartnerTRX(referrerAddress, userAddress, 2, level);
}
address[] memory x6 = users[users[referrerAddress].x6Matrix[level].currentReferrer].x6Matrix[level].firstLevelReferrals;
if (x6.length == 2) {
if (x6[0] == referrerAddress ||
x6[1] == referrerAddress) {
users[users[referrerAddress].x6Matrix[level].currentReferrer].x6Matrix[level].closedPart = referrerAddress;
} else if (x6.length == 1) {
if (x6[0] == referrerAddress) {
users[users[referrerAddress].x6Matrix[level].currentReferrer].x6Matrix[level].closedPart = referrerAddress;
}
}
}
users[referrerAddress].x6Matrix[level].firstLevelReferrals = new address[](0);
users[referrerAddress].x6Matrix[level].secondLevelReferrals = new address[](0);
users[referrerAddress].x6Matrix[level].closedPart = address(0);
if (!users[referrerAddress].activeX6Levels[level+1] && level != LAST_LEVEL) {
users[referrerAddress].x6Matrix[level].blocked = true;
}
users[referrerAddress].x6Matrix[level].reinvestCount++;
// Short-circuits to save Energy
if (referrerAddress != owner) {
address freeReferrerAddress = findFreeX6Referrer(referrerAddress, level);
emit Reinvest(referrerAddress, freeReferrerAddress, userAddress, 2, level);
updateX6Referrer(referrerAddress, freeReferrerAddress, level);
} else {
emit Reinvest(owner, address(0), userAddress, 2, level);
sendPartnerTRX(owner, userAddress, 2, level);
}
}
function findFreeX3Referrer(address userAddress, uint8 level) public view returns(address) {
while (true) {
if (users[users[userAddress].referrer].activeX3Levels[level]) {
return users[userAddress].referrer;
}
userAddress = users[userAddress].referrer;
}
}
function findFreeX6Referrer(address userAddress, uint8 level) public view returns(address) {
while (true) {
if (users[users[userAddress].referrer].activeX6Levels[level]) {
return users[userAddress].referrer;
}
userAddress = users[userAddress].referrer;
}
}
function usersActiveLevelsAll(address userAddress) public view returns(bool[13] memory x3LevelsActive, bool[13] memory x6LevelsActive) {
for(uint8 c=1; c< 13; c++){
x3LevelsActive[c] = users[userAddress].activeX3Levels[c];
x6LevelsActive[c] = users[userAddress].activeX6Levels[c];
}
}
function usersHighestLevels(address userAddress) public view returns(uint8 x3HighestLevel, uint8 x6HighestLevel) {
for(uint8 c=1; c< 13; c++){
if(users[userAddress].activeX3Levels[c])
x3HighestLevel = c;
if(users[userAddress].activeX6Levels[c])
x6HighestLevel = c;
}
}
function usersActiveX6Levels(address userAddress, uint8 level) public view returns(bool) {
return users[userAddress].activeX6Levels[level];
}
function userEarnings(address userAddress, uint8 level) public view returns(uint x3MatrixEarnings, uint x6MatrixEarnings) {
x3MatrixEarnings = users[userAddress].x3MatrixEarnings[level];
x6MatrixEarnings = users[userAddress].x6MatrixEarnings[level];
}
function userEarningsAll(address userAddress) public view returns(uint[13] memory x3MatrixEarnings, uint[13] memory x6MatrixEarnings){
for(uint8 c=1; c< 13; c++){
x3MatrixEarnings[c] = users[userAddress].x3MatrixEarnings[c];
x6MatrixEarnings[c] = users[userAddress].x6MatrixEarnings[c];
}
}
function usersX3Matrix(address userAddress, uint8 level) public view returns(address, address[] memory, bool) {
return (users[userAddress].x3Matrix[level].currentReferrer,
users[userAddress].x3Matrix[level].referrals,
users[userAddress].x3Matrix[level].blocked);
}
function usersX6Matrix(address userAddress, uint8 level) public view returns(address, address[] memory, address[] memory, bool, address) {
return (users[userAddress].x6Matrix[level].currentReferrer,
users[userAddress].x6Matrix[level].firstLevelReferrals,
users[userAddress].x6Matrix[level].secondLevelReferrals,
users[userAddress].x6Matrix[level].blocked,
users[userAddress].x6Matrix[level].closedPart);
}
function isUserExists(address user) public view returns (bool) {
return (users[user].id != 0);
}
function findTRXReceiver(address userAddress, address _from, uint8 matrix, uint8 level) private returns(address, bool) {
address receiver = userAddress;
bool isExtraDividends;
if (matrix == 1) {
while (true) {
if (users[receiver].x3Matrix[level].blocked) {
emit MissedEthReceive(receiver, _from, 1, level);
isExtraDividends = true;
receiver = users[receiver].x3Matrix[level].currentReferrer;
} else {
return (receiver, isExtraDividends);
}
}
} else {
while (true) {
if (users[receiver].x6Matrix[level].blocked) {
emit MissedEthReceive(receiver, _from, 2, level);
isExtraDividends = true;
receiver = users[receiver].x6Matrix[level].currentReferrer;
} else {
return (receiver, isExtraDividends);
}
}
}
}
function SetMyToken(address _token) public {
require(msg.sender == admin, "Only Admin");
myToken = IERC20(_token);
}
function sendPartnerTRX(address userAddress, address _from, uint8 matrix, uint8 level) private {
(address receiver, bool isExtraDividends) = findTRXReceiver(userAddress, _from, matrix, level);
uint deductedPrice = levelPrice[level] - (levelPrice[level] * DIV_PERCENT / DIV_DIVISOR);
address(uint160(receiver)).transfer(deductedPrice);
myToken.transfer(receiver, deductedPrice * 1);
if(matrix == 1)
users[receiver].x3MatrixEarnings[level] += deductedPrice;
else
users[receiver].x6MatrixEarnings[level] += deductedPrice;
if (isExtraDividends) {
emit SentExtraEthDividends(_from, receiver, matrix, level);
}
}
function bytesToAddress(bytes memory bys) private pure returns (address addr) {
assembly {
addr := mload(add(bys, 20))
}
}
}{
"optimizer": {
"enabled": true,
"runs": 200
},
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"ownerAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint8","name":"matrix","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"level","type":"uint8"}],"name":"MissedEthReceive","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"referrer","type":"address"},{"indexed":false,"internalType":"uint8","name":"matrix","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"level","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"place","type":"uint8"}],"name":"NewUserPlace","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"referrer","type":"address"},{"indexed":true,"internalType":"uint256","name":"userId","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"referrerId","type":"uint256"}],"name":"Registration","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"currentReferrer","type":"address"},{"indexed":true,"internalType":"address","name":"caller","type":"address"},{"indexed":false,"internalType":"uint8","name":"matrix","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"level","type":"uint8"}],"name":"Reinvest","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"receiver","type":"address"},{"indexed":false,"internalType":"uint8","name":"matrix","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"level","type":"uint8"}],"name":"SentExtraEthDividends","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"referrer","type":"address"},{"indexed":false,"internalType":"uint8","name":"matrix","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"level","type":"uint8"}],"name":"Upgrade","type":"event"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"constant":true,"inputs":[],"name":"DIV_PERCENT","outputs":[{"internalType":"uint16","name":"","type":"uint16"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"LAST_LEVEL","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"SetMyToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint8","name":"matrix","type":"uint8"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"buyNewLevel","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[],"name":"claimDivs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"divPot","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"findFreeX3Referrer","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"findFreeX6Referrer","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"gameOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"idToAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"isUserExists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lastUserId","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint8","name":"","type":"uint8"}],"name":"levelPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"myToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"referrerAddress","type":"address"}],"name":"registrationExt","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[],"name":"totalDividendPoints","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalDivs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"bool","name":"_gameOpen","type":"bool"}],"name":"updateGameOpen","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"userEarnings","outputs":[{"internalType":"uint256","name":"x3MatrixEarnings","type":"uint256"},{"internalType":"uint256","name":"x6MatrixEarnings","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"userEarningsAll","outputs":[{"internalType":"uint256[13]","name":"x3MatrixEarnings","type":"uint256[13]"},{"internalType":"uint256[13]","name":"x6MatrixEarnings","type":"uint256[13]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"users","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"address","name":"referrer","type":"address"},{"internalType":"uint256","name":"partnersCount","type":"uint256"},{"internalType":"uint256","name":"divClaimMark","type":"uint256"},{"internalType":"uint256","name":"totalPlayerDivPoints","type":"uint256"},{"internalType":"uint256","name":"divsClaimed","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"usersActiveLevelsAll","outputs":[{"internalType":"bool[13]","name":"x3LevelsActive","type":"bool[13]"},{"internalType":"bool[13]","name":"x6LevelsActive","type":"bool[13]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"usersActiveX6Levels","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"usersHighestLevels","outputs":[{"internalType":"uint8","name":"x3HighestLevel","type":"uint8"},{"internalType":"uint8","name":"x6HighestLevel","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"usersX3Matrix","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"usersX6Matrix","outputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"address[]","name":"","type":"address[]"},{"internalType":"bool","name":"","type":"bool"},{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"viewDivs","outputs":[{"internalType":"uint256","name":"divsAvailable","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"_player","type":"address"}],"name":"viewDivsPercent","outputs":[{"internalType":"uint256","name":"divsPercent","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]Contract Creation Code
6080604052600080546001600160a01b031916737a4f192d4cf41a2db5edbc48d5d0fedafa8b723b1790556003805460ff1916600117905560026008553480156200004957600080fd5b5060405162003b6f38038062003b6f833981810160405260208110156200006f57600080fd5b5051600a80546001600160a01b031916331790556001600052600b602052671bc16d674ec800007f72c6bfb7988af3a1efa6568f02a999bc52252641c659d85961ca3d372b57d5cf5560025b600c60ff821611620000f75760ff600019820181166000908152600b6020526040808220549284168252902060029091029055600101620000bb565b50600980546001600160a01b0319166001600160a01b0383161790556200011d62000244565b506040805160c081018252600180825260006020808401828152848601838152606086018481526080870185815260a088018681526001600160a01b038b81168089528988529a88208a5181559551868a018054919092166001600160a01b0319918216179091559351600280870191909155925160098601559051600a85015551600b909301929092559284905290527fe90b7bceb6e7df5418fb78d8ee546e97c83a08bbccc01a0644d599ccd2a7c2e08054909116909317909255905b600c60ff8216116200023b576001600160a01b038316600090815260016020818152604080842060ff86168552600381018352818520805460ff19908116861790915560049091019092529092208054909216811790915501620001dc565b50505062000283565b6040518060c001604052806000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b6138dc80620002936000396000f3fe6080604052600436106101c25760003560e01c80637bffe9d8116100f7578063be389d5711610095578063e06e8dbd11610064578063e06e8dbd14610889578063ecabdf79146108c5578063fa45323d146108f2578063fe10c4191461092e576101c2565b8063be389d57146107a6578063c8d6b7f7146107ce578063cd96f22214610801578063db58c62614610856576101c2565b80639cc102fc116100d15780639cc102fc146105ee578063a87430ba146106e7578063b2f7543a14610755578063b8fcf93714610791576101c2565b80637bffe9d81461051b57806383ba31b2146105305780638da5cb5b146105d9576101c2565b80632ae34dc611610164578063509222cd1161013e578063509222cd146103f7578063570354c51461042a578063689493721461045d578063797eee24146104f5576101c2565b80632ae34dc6146103a1578063348d4487146103cd5780633cca779b146103e2576101c2565b80632113342d116101a05780632113342d146102b657806327d205ab146102dd57806329c70400146103305780632a2d0c471461035b576101c2565b80630388b4a31461022e5780630e3d0d351461026157806319aa70e71461028d575b366101e3576009546101de9033906001600160a01b0316610943565b61022c565b61022c336102276000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610d9e92505050565b610943565b005b34801561023a57600080fd5b5061022c6004803603602081101561025157600080fd5b50356001600160a01b0316610da5565b34801561026d57600080fd5b50610276610e13565b6040805161ffff9092168252519081900360200190f35b34801561029957600080fd5b506102a2610e19565b604080519115158252519081900360200190f35b3480156102c257600080fd5b506102cb610e7e565b60408051918252519081900360200190f35b3480156102e957600080fd5b506103106004803603602081101561030057600080fd5b50356001600160a01b0316610e84565b6040805160ff938416815291909216602082015281519081900390910190f35b34801561033c57600080fd5b50610345610f14565b6040805160ff9092168252519081900360200190f35b34801561036757600080fd5b506103856004803603602081101561037e57600080fd5b5035610f19565b604080516001600160a01b039092168252519081900360200190f35b3480156103ad57600080fd5b5061022c600480360360208110156103c457600080fd5b50351515610f34565b3480156103d957600080fd5b506102cb610f93565b3480156103ee57600080fd5b506102a2610f99565b34801561040357600080fd5b506102a26004803603602081101561041a57600080fd5b50356001600160a01b0316610fa2565b34801561043657600080fd5b506102cb6004803603602081101561044d57600080fd5b50356001600160a01b0316610fbf565b34801561046957600080fd5b506104906004803603602081101561048057600080fd5b50356001600160a01b0316610ff8565b60405180836101a080838360005b838110156104b657818101518382015260200161049e565b5050505090500182600d60200280838360005b838110156104e15781810151838201526020016104c9565b505050509050019250505060405180910390f35b61022c6004803603602081101561050b57600080fd5b50356001600160a01b03166110ad565b34801561052757600080fd5b506102cb61110b565b34801561053c57600080fd5b5061056c6004803603604081101561055357600080fd5b5080356001600160a01b0316906020013560ff16611111565b604080516001600160a01b0385168152821515918101919091526060602080830182815285519284019290925284516080840191868101910280838360005b838110156105c35781810151838201526020016105ab565b5050505090500194505050505060405180910390f35b3480156105e557600080fd5b506103856111bb565b3480156105fa57600080fd5b5061062a6004803603604081101561061157600080fd5b5080356001600160a01b0316906020013560ff166111ca565b604080516001600160a01b03808816825284151560608301528316608082015260a060208083018281528851928401929092528751929391929184019160c0850191898101910280838360005b8381101561068f578181015183820152602001610677565b50505050905001838103825286818151815260200191508051906020019060200280838360005b838110156106ce5781810151838201526020016106b6565b5050505090500197505050505050505060405180910390f35b3480156106f357600080fd5b5061071a6004803603602081101561070a57600080fd5b50356001600160a01b03166112e7565b604080519687526001600160a01b039095166020870152858501939093526060850191909152608084015260a0830152519081900360c00190f35b34801561076157600080fd5b506102a26004803603604081101561077857600080fd5b5080356001600160a01b0316906020013560ff16611327565b34801561079d57600080fd5b5061038561135d565b61022c600480360360408110156107bc57600080fd5b5060ff8135811691602001351661136c565b3480156107da57600080fd5b50610490600480360360208110156107f157600080fd5b50356001600160a01b0316611a7a565b34801561080d57600080fd5b5061083d6004803603604081101561082457600080fd5b5080356001600160a01b0316906020013560ff16611b25565b6040805192835260208301919091528051918290030190f35b34801561086257600080fd5b506102cb6004803603602081101561087957600080fd5b50356001600160a01b0316611b62565b34801561089557600080fd5b50610385600480360360408110156108ac57600080fd5b5080356001600160a01b0316906020013560ff16611b95565b3480156108d157600080fd5b506102cb600480360360208110156108e857600080fd5b503560ff16611c24565b3480156108fe57600080fd5b506103856004803603604081101561091557600080fd5b5080356001600160a01b0316906020013560ff16611c36565b34801561093a57600080fd5b506102cb611cc5565b34673782dace9d9000001461099f576040805162461bcd60e51b815260206004820152601760248201527f726567697374726174696f6e20636f7374203420504f4c000000000000000000604482015290519081900360640190fd5b6109a882610fa2565b156109e8576040805162461bcd60e51b815260206004820152600b60248201526a757365722065786973747360a81b604482015290519081900360640190fd5b6109f181610fa2565b610a38576040805162461bcd60e51b81526020600482015260136024820152727265666572726572206e6f742065786973747360681b604482015290519081900360640190fd5b813b63ffffffff811615610a8a576040805162461bcd60e51b815260206004820152601460248201527318d85b9b9bdd08189948184818dbdb9d1c9858dd60621b604482015290519081900360640190fd5b610a9261375a565b506040805160c0810182526008805482526001600160a01b0385811660208085018281526000868801818152600554606089019081526080890183815260a08a018481528e891680865260018089528d87208d5181559751888201805491909c166001600160a01b0319918216178c5595516002808a0191909155945160098901559251600a88019081559151600b8801558a5486528388528c862080548616909117905588549093168717909755868352600384018552898320805460ff199081168917909155600494850186528a84208054909116881790559386905280546103e83461019002049081019091558254810190925560068054909201909155845484019094559083529382209093018054840190559091610bb6908690611c36565b90506000610bc5866001611b95565b6009549091506001600160a01b0383811691161480610bf157506009546001600160a01b038281169116145b15610caf57600954600090610c0e906001600160a01b0316610fbf565b1115610c2f57600954610c29906001600160a01b0316611ccb565b50610c50565b600554600980546001600160a01b0316600090815260016020526040902001555b6009546001600160a01b03166000908152600160205260409020600a0180546103e86101903402049081019091556007805460028302019081905590670de0b6b3a76400000281610c9d57fe5b60058054929091049091019055610ce2565b600780546103e861019034020490810191829055670de0b6b3a76400000281610cd457fe5b600580549290910490910190555b6001600160a01b03868116600090815260016020818152604080842083855260050190915290912080546001600160a01b03191692851692909217909155610d2d9087908490611d31565b610d39868260016120a0565b6001600160a01b03808716600081815260016020908152604080832054948a168084529281902054815190815290519293927f309bb360e8b69c23937ccc5fb01f9aeeead1c95a99604e175113ff82f2b1723a929181900390910190a4505050505050565b6014015190565b600a546001600160a01b03163314610df1576040805162461bcd60e51b815260206004820152600a60248201526927b7363c9020b236b4b760b11b604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b61019081565b600080610e2533610fbf565b905060008111610e70576040805162461bcd60e51b81526020600482015260116024820152704e6f206469767320617661696c61626c6560781b604482015290519081900360640190fd5b610e7933611ccb565b505090565b60055481565b60008060015b600d8160ff161015610f0e576001600160a01b038416600090815260016020908152604080832060ff80861685526003909101909252909120541615610ece578092505b6001600160a01b038416600090815260016020908152604080832060ff80861685526004909101909252909120541615610f06578091505b600101610e8a565b50915091565b600c81565b6002602052600090815260409020546001600160a01b031681565b600a546001600160a01b03163314610f80576040805162461bcd60e51b815260206004820152600a60248201526927b7363c9020b236b4b760b11b604482015290519081900360640190fd5b6003805460ff1916911515919091179055565b60085481565b60035460ff1681565b6001600160a01b0316600090815260016020526040902054151590565b6001600160a01b031660009081526001602052604090206009810154600554600a90920154670de0b6b3a7640000919092039091020490565b611000613799565b611008613799565b60015b600d8160ff161015610f0e576001600160a01b038416600090815260016020908152604080832060ff808616808652600390920190935292205416908490600d811061105357fe5b911515602092830291909101526001600160a01b038516600090815260018252604080822060ff8086168085526004909201909452912054909116908390600d811061109b57fe5b9115156020909202015260010161100b565b60035460ff1615156001146110fe576040805162461bcd60e51b815260206004820152601260248201527147616d65206e6f7420796574206f70656e2160701b604482015290519081900360640190fd5b6111083382610943565b50565b60065481565b6001600160a01b03828116600090815260016020818152604080842060ff8781168652600590910183528185208054600282015491909501805484518187028101870190955280855296976060978997909116959194929093169284918301828280156111a757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611189575b505050505091509250925092509250925092565b6009546001600160a01b031681565b6001600160a01b03828116600090815260016020818152604080842060ff878116865260069091018352818520805460038201546005830154968301805486518189028101890190975280875298996060998a998c998a9996841698949760020196959094169492169286919083018282801561127057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611252575b50505050509350828054806020026020016040519081016040528092919081815260200182805480156112cc57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116112ae575b50505050509250945094509450945094509295509295909350565b600160208190526000918252604090912080549181015460028201546009830154600a840154600b909401546001600160a01b0390931693919290919086565b6001600160a01b038216600090815260016020908152604080832060ff8086168552600490910190925290912054165b92915050565b6000546001600160a01b031681565b60035460ff1615156001146113bd576040805162461bcd60e51b815260206004820152601260248201527147616d65206e6f7420796574206f70656e2160701b604482015290519081900360640190fd5b6113c633610fa2565b6114015760405162461bcd60e51b81526004018080602001828103825260238152602001806138856023913960400191505060405180910390fd5b8160ff166001148061141657508160ff166002145b611458576040805162461bcd60e51b815260206004820152600e60248201526d0d2dcecc2d8d2c840dac2e8e4d2f60931b604482015290519081900360640190fd5b60ff81166000908152600b602052604090205434146114ae576040805162461bcd60e51b815260206004820152600d60248201526c696e76616c696420707269636560981b604482015290519081900360640190fd5b60018160ff161180156114c55750600c60ff821611155b611506576040805162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081b195d995b609a1b604482015290519081900360640190fd5b600061151133610fbf565b11156115265761152033611ccb565b5061153d565b600554336000908152600160205260409020600901555b336000908152600160208190526040909120600a0180546103e8610190340204908101909155600480548201905560068054909101905560ff8316141561180d5733600090815260016020908152604080832060ff808616855260039091019092529091205416156115f0576040805162461bcd60e51b81526020600482015260176024820152761b195d995b08185b1c9958591e481858dd1a5d985d1959604a1b604482015290519081900360640190fd5b33600090815260016020908152604080832060ff60001986018116855260059091019092529091206002015416156116525733600090815260016020908152604080832060ff60001986011684526005019091529020600201805460ff191690555b600061165e3383611c36565b6009549091506001600160a01b03808316911614156117305760095460009061168f906001600160a01b0316610fbf565b11156116b0576009546116aa906001600160a01b0316611ccb565b506116d1565b600554600980546001600160a01b0316600090815260016020526040902001555b6009546001600160a01b03166000908152600160205260409020600a0180546103e86101903402049081019091556007805460028302019081905590670de0b6b3a7640000028161171e57fe5b60058054929091049091019055611763565b600780546103e861019034020490810191829055670de0b6b3a7640000028161175557fe5b600580549290910490910190555b33600081815260016020818152604080842060ff8816855260058101835281852080546001600160a01b0319166001600160a01b038916179055600301909152909120805460ff191690911790556117bc908284611d31565b604080516001815260ff8416602082015281516001600160a01b0384169233927f18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119929081900390910190a350611a76565b33600090815260016020908152604080832060ff8086168552600490910190925290912054161561187f576040805162461bcd60e51b81526020600482015260176024820152761b195d995b08185b1c9958591e481858dd1a5d985d1959604a1b604482015290519081900360640190fd5b33600090815260016020908152604080832060ff60001986018116855260069091019092529091206003015416156118e15733600090815260016020908152604080832060ff60001986011684526006019091529020600301805460ff191690555b60006118ed3383611b95565b6009549091506001600160a01b03808316911614156119bf5760095460009061191e906001600160a01b0316610fbf565b111561193f57600954611939906001600160a01b0316611ccb565b50611960565b600554600980546001600160a01b0316600090815260016020526040902001555b6009546001600160a01b03166000908152600160205260409020600a0180546103e86101903402049081019091556007805460028302019081905590670de0b6b3a764000002816119ad57fe5b600580549290910490910190556119f2565b600780546103e861019034020490810191829055670de0b6b3a764000002816119e457fe5b600580549290910490910190555b33600081815260016020818152604080842060ff88168552600401909152909120805460ff19169091179055611a299082846120a0565b604080516002815260ff8416602082015281516001600160a01b0384169233927f18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119929081900390910190a3505b5050565b611a82613799565b611a8a613799565b60015b600d8160ff161015610f0e576001600160a01b038416600090815260016020908152604080832060ff8516808552600790910190925290912054908490600d8110611ad457fe5b602090810291909101919091526001600160a01b038516600090815260018252604080822060ff85168084526008909101909352902054908390600d8110611b1857fe5b6020020152600101611a8d565b6001600160a01b0391909116600090815260016020908152604080832060ff90941683526007840182528083205460089094019091529020549091565b6007546001600160a01b0382166000908152600160205260408120600a015490919060640281611b8e57fe5b0492915050565b60005b6001600160a01b03808416600090815260016020818152604080842090920154909316825280822060ff808716845260049091019093529020541615611bfd57506001600160a01b038083166000908152600160208190526040909120015416611357565b6001600160a01b039283166000908152600160208190526040909120015490921691611b98565b600b6020526000908152604090205481565b60005b6001600160a01b03808416600090815260016020818152604080842090920154909316825280822060ff808716845260039091019093529020541615611c9e57506001600160a01b038083166000908152600160208190526040909120015416611357565b6001600160a01b039283166000908152600160208190526040909120015490921691611c39565b60045481565b600080611cd783610fbf565b6004805482900390556005546001600160a01b0385166000818152600160205260408082206009810194909455600b90930180548501905591519293509183156108fc0291849190818181858888f1979650505050505050565b6001600160a01b03828116600090815260016020818152604080842060ff87168086526005909101835290842083018054938401815580855291842090920180546001600160a01b0319169488169490941790935590525460031115611e03576001600160a01b03808316600081815260016020818152604080842060ff8089168087526005909201845294829020840154825194855292840152921681830152905191928616916000805160206138458339815191529181900360600190a3611dfe8284600184612a35565b61209b565b604080516001815260ff8316602082015260038183015290516001600160a01b0380851692908616916000805160206138458339815191529181900360600190a360408051600080825260208083018085526001600160a01b0387168352600180835285842060ff88168552600501909252939091209151611e8a939290910191906137b8565b506001600160a01b038216600090815260016020818152604080842060ff938601841685526003019091529091205416158015611ecb575060ff8116600c14155b15611f09576001600160a01b038216600090815260016020818152604080842060ff86168552600501909152909120600201805460ff191690911790555b6009546001600160a01b03838116911614612016576000611f2a8383611c36565b6001600160a01b03848116600090815260016020908152604080832060ff88168452600501909152902054919250828116911614611fa2576001600160a01b03838116600090815260016020908152604080832060ff87168452600501909152902080546001600160a01b0319169183169190911790555b6001600160a01b03808416600081815260016020818152604080842060ff8916808652600590910183529381902060030180548401905580519283529082019290925281518885169486169392600080516020613865833981519152928290030190a4612010838284611d31565b5061209b565b60095461202f906001600160a01b031684600184612a35565b600980546001600160a01b03908116600090815260016020818152604080842060ff881680865260059091018352818520600301805485019055955481519384529183019590955284518885169593949190911692600080516020613865833981519152928290030190a45b505050565b6001600160a01b038216600090815260016020908152604080832060ff808616855260049091019092529091205416612120576040805162461bcd60e51b815260206004820152601f60248201527f3530302e205265666572726572206c6576656c20697320696e61637469766500604482015290519081900360640190fd5b6001600160a01b038216600090815260016020818152604080842060ff86168552600601909152909120015460021115612686576001600160a01b03828116600081815260016020818152604080842060ff8881168087526006909201845282862085018054958601815580875284872090950180546001600160a01b031916988c16988917905594819052925481516002815292830193909352919092168282015251919291600080516020613845833981519152916060908290030190a36001600160a01b03838116600090815260016020908152604080832060ff86168452600601909152902080546001600160a01b031916848316908117909155600954909116141561223857611dfe8284600284612a35565b6001600160a01b03828116600090815260016020818152604080842060ff871680865260069182018452828620548716808752858552838720828852909201845291852060028082018054808801825590885294872090940180546001600160a01b031916978b1697909717909655935292015490918114801561230857506001600160a01b03828116600090815260016020818152604080842060ff891685526006019091528220018054928716929091906122f157fe5b6000918252602090912001546001600160a01b0316145b801561236457506001600160a01b03828116600090815260016020818152604080842060ff891685526006019091529091208101805492871692909190811061234d57fe5b6000918252602090912001546001600160a01b0316145b15612429576001600160a01b038416600090815260016020818152604080842060ff8816855260060190915290912081015414156123e257604080516002815260ff8516602082015260058183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a3612424565b604080516002815260ff8516602082015260068183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a35b612674565b80600114806124385750806002145b801561249057506001600160a01b03828116600090815260016020818152604080842060ff8916855260060190915282200180549287169290919061247957fe5b6000918252602090912001546001600160a01b0316145b15612554576001600160a01b038416600090815260016020818152604080842060ff88168552600601909152909120810154141561250e57604080516002815260ff8516602082015260038183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a3612424565b604080516002815260ff8516602082015260048183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a3612674565b8060021480156125b457506001600160a01b03828116600090815260016020818152604080842060ff891685526006019091529091208101805492871692909190811061259d57fe5b6000918252602090912001546001600160a01b0316145b15612674576001600160a01b038416600090815260016020818152604080842060ff88168552600601909152909120810154141561263257604080516002815260ff8516602082015260058183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a3612674565b604080516002815260ff8516602082015260068183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a35b61267f858385612bf3565b505061209b565b6001600160a01b03828116600090815260016020818152604080842060ff8716808652600690910183529084206002810180549485018155855291842090920180546001600160a01b0319168886161790559152600501541615612869576001600160a01b038216600090815260016020818152604080842060ff8616855260060190915290912081018054909190811061271d57fe5b60009182526020808320909101546001600160a01b0385811684526001808452604080862060ff8816875260060190945292842090920180549290911692909161276357fe5b6000918252602090912001546001600160a01b03161480156127d757506001600160a01b03828116600090815260016020818152604080842060ff871685526006019091528220600581015491018054919093169291906127c057fe5b6000918252602090912001546001600160a01b0316145b156127f4576127e98383836001613053565b611dfe838383612bf3565b6001600160a01b03828116600090815260016020818152604080842060ff8716855260060190915282206005810154910180549190931692919061283457fe5b6000918252602090912001546001600160a01b0316141561285c576127e98383836001613053565b6127e98383836000613053565b6001600160a01b03828116600090815260016020818152604080842060ff87168552600601909152909120810180549286169290919081106128a757fe5b6000918252602090912001546001600160a01b031614156128cf576127e98383836000613053565b6001600160a01b03828116600090815260016020818152604080842060ff8716855260060190915282200180549286169290919061290957fe5b6000918252602090912001546001600160a01b03161415612931576127e98383836001613053565b6001600160a01b038216600090815260016020818152604080842060ff861685526006019091528220810180549192918390811061296b57fe5b60009182526020808320909101546001600160a01b039081168452838201949094526040928301822060ff861680845260069182018352848420600190810154968916855280845285852091855291019091529181208201805482906129cd57fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff8616825260060190925290206001015411612a1d57612a188383836000613053565b612a2a565b612a2a8383836001613053565b61209b838383612bf3565b600080612a44868686866135ba565b60ff85166000908152600b60205260408082205490519395509193506103e8610190830204909103916001600160a01b038516916108fc841502918491818181858888f19350505050158015612a9e573d6000803e3d6000fd5b50600080546040805163a9059cbb60e01b81526001600160a01b038781166004830152602482018690529151919092169263a9059cbb92604480820193602093909283900390910190829087803b158015612af857600080fd5b505af1158015612b0c573d6000803e3d6000fd5b505050506040513d6020811015612b2257600080fd5b5050600160ff86161415612b64576001600160a01b038316600090815260016020908152604080832060ff881684526007019091529020805482019055612b94565b6001600160a01b038316600090815260016020908152604080832060ff8816845260080190915290208054820190555b8115612bea576040805160ff80881682528616602082015281516001600160a01b0380871693908a16927ff0ddc65c0d411f042f723dcfa1b7d13e85a35b7b70761d447c6500411cacf328929081900390910190a35b50505050505050565b6001600160a01b038216600090815260016020908152604080832060ff8516845260060190915290206002015460041115612c3557611dfe8284600284612a35565b6001600160a01b03808316600090815260016020818152604080842060ff8716808652600691820184528286205490961685528383528185209585529490940181529183902001805483518184028101840190945280845260609392830182828015612cca57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612cac575b50505050509050805160021415612e2b57826001600160a01b031681600081518110612cf257fe5b60200260200101516001600160a01b03161480612d345750826001600160a01b031681600181518110612d2157fe5b60200260200101516001600160a01b0316145b15612d98576001600160a01b03808416600081815260016020818152604080842060ff8916808652600691820184528286205490971685529282528084209584529490910190529190912060050180546001600160a01b0319169091179055612e2b565b805160011415612e2b57826001600160a01b031681600081518110612db957fe5b60200260200101516001600160a01b03161415612e2b576001600160a01b03808416600081815260016020818152604080842060ff8916808652600691820184528286205490971685529282528084209584529490910190529190912060050180546001600160a01b03191690911790555b60408051600080825260208083018085526001600160a01b0388168352600180835285842060ff89168552600601909252939091209151612e71939290910191906137b8565b5060408051600080825260208083018085526001600160a01b03881683526001825284832060ff881684526006019091529290209051612eb792600290920191906137b8565b506001600160a01b038316600090815260016020818152604080842060ff808816865260068201845282862060050180546001600160a01b0319169055938701841685526004019091529091205416158015612f17575060ff8216600c14155b15612f55576001600160a01b038316600090815260016020818152604080842060ff87168552600601909152909120600301805460ff191690911790555b6001600160a01b03808416600081815260016020818152604080842060ff891685526006019091529091206004018054909101905560095490911614612ff3576000612fa18484611b95565b604080516002815260ff8616602082015281519293506001600160a01b0380891693818616939189169260008051602061386583398151915292908290030190a4612fed8482856120a0565b5061304d565b600954604080516002815260ff8516602082015281516001600160a01b0380891694600094911692600080516020613865833981519152929081900390910190a460095461304d906001600160a01b031685600285612a35565b50505050565b80613304576001600160a01b038316600090815260016020818152604080842060ff87168552600601909152822081018054919291829061309057fe5b6000918252602080832091909101546001600160a01b039081168452838201949094526040928301822060ff8716808452600691820183528484206001908101805480830182559086528486200180546001600160a01b0319168c89161790559589168452858352848420908452019052908120909101805490919061311257fe5b60009182526020808320909101546001600160a01b0386811684526001808452604080862060ff891687526006019094529284208301805492821694918916936000805160206138458339815191529360029389939091829061317157fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff808c1683526006909101845290829020600101548251958216865293811692850192909252911682820152519081900360600190a36001600160a01b03808416600081815260016020818152604080842060ff8916855260060190915282208101805493948916936000805160206138458339815191529360029389939092829061322157fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff808c168352600690910184529082902060010154825195821686529381169285019290925260029092011682820152519081900360600190a36001600160a01b038316600090815260016020818152604080842060ff8716855260060190915282200180549091906132b857fe5b60009182526020808320909101546001600160a01b03878116845260018352604080852060ff881686526006019093529190922080546001600160a01b0319169190921617905561304d565b6001600160a01b038316600090815260016020818152604080842060ff871685526006019091528220810180549192918390811061333e57fe5b6000918252602080832091909101546001600160a01b039081168452838201949094526040928301822060ff8716808452600691820183528484206001908101805480830182559086528486200180546001600160a01b0319168c89161790559589168452858352848420908452019052208101805490919081106133bf57fe5b60009182526020808320909101546001600160a01b0386811684526001808452604080862060ff8916875260060190945292842083018054928216949189169360008051602061384583398151915293600293899390918390811061342057fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff808c1683526006909101845290829020600101548251958216865293811692850192909252911682820152519081900360600190a36001600160a01b03808416600081815260016020818152604080842060ff8916855260060190915282208101805493948916936000805160206138458339815191529360029389939092839081106134d257fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff808c168352600690910184529082902060010154825195821686529381169285019290925260049092011682820152519081900360600190a36001600160a01b038316600090815260016020818152604080842060ff8716855260060190915290912081018054909190811061356d57fe5b60009182526020808320909101546001600160a01b03878116845260018352604080852060ff881686526006019093529190922080546001600160a01b0319169190921617905550505050565b6000808581600160ff87161415613696575b6001600160a01b038216600090815260016020908152604080832060ff808a168552600590910190925290912060020154161561368757604080516001815260ff8716602082015281516001600160a01b03808b1693908616927ffc0cb63f8dbd6b20ceb84a3c5358a41576a1479e6ecd040b4b985525dc09a709929081900390910190a3506001600160a01b03908116600090815260016020818152604080842060ff891685526005019091529091205490911690613691565b9092509050613751565b6135cc565b6001600160a01b038216600090815260016020908152604080832060ff808a168552600690910190925290912060030154161561368757604080516002815260ff8716602082015281516001600160a01b03808b1693908616927ffc0cb63f8dbd6b20ceb84a3c5358a41576a1479e6ecd040b4b985525dc09a709929081900390910190a3506001600160a01b03908116600090815260016020818152604080842060ff891685526006019091529091205490911690613696565b94509492505050565b6040518060c001604052806000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b604051806101a00160405280600d906020820280388339509192915050565b82805482825590600052602060002090810192821561380d579160200282015b8281111561380d57825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906137d8565b5061381992915061381d565b5090565b61384191905b808211156138195780546001600160a01b0319168155600101613823565b9056fe68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d82a00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a675736572206973206e6f74206578697374732e2052656769737465722066697273742ea265627a7a72315820a666d96804defea3d146a91ceb2e9ae80f8c14b044001b268276e09b344fae0464736f6c6343000511003200000000000000000000000018442258126f1868f94ea422d4d45f756ca2e04a
Deployed Bytecode
0x6080604052600436106101c25760003560e01c80637bffe9d8116100f7578063be389d5711610095578063e06e8dbd11610064578063e06e8dbd14610889578063ecabdf79146108c5578063fa45323d146108f2578063fe10c4191461092e576101c2565b8063be389d57146107a6578063c8d6b7f7146107ce578063cd96f22214610801578063db58c62614610856576101c2565b80639cc102fc116100d15780639cc102fc146105ee578063a87430ba146106e7578063b2f7543a14610755578063b8fcf93714610791576101c2565b80637bffe9d81461051b57806383ba31b2146105305780638da5cb5b146105d9576101c2565b80632ae34dc611610164578063509222cd1161013e578063509222cd146103f7578063570354c51461042a578063689493721461045d578063797eee24146104f5576101c2565b80632ae34dc6146103a1578063348d4487146103cd5780633cca779b146103e2576101c2565b80632113342d116101a05780632113342d146102b657806327d205ab146102dd57806329c70400146103305780632a2d0c471461035b576101c2565b80630388b4a31461022e5780630e3d0d351461026157806319aa70e71461028d575b366101e3576009546101de9033906001600160a01b0316610943565b61022c565b61022c336102276000368080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250610d9e92505050565b610943565b005b34801561023a57600080fd5b5061022c6004803603602081101561025157600080fd5b50356001600160a01b0316610da5565b34801561026d57600080fd5b50610276610e13565b6040805161ffff9092168252519081900360200190f35b34801561029957600080fd5b506102a2610e19565b604080519115158252519081900360200190f35b3480156102c257600080fd5b506102cb610e7e565b60408051918252519081900360200190f35b3480156102e957600080fd5b506103106004803603602081101561030057600080fd5b50356001600160a01b0316610e84565b6040805160ff938416815291909216602082015281519081900390910190f35b34801561033c57600080fd5b50610345610f14565b6040805160ff9092168252519081900360200190f35b34801561036757600080fd5b506103856004803603602081101561037e57600080fd5b5035610f19565b604080516001600160a01b039092168252519081900360200190f35b3480156103ad57600080fd5b5061022c600480360360208110156103c457600080fd5b50351515610f34565b3480156103d957600080fd5b506102cb610f93565b3480156103ee57600080fd5b506102a2610f99565b34801561040357600080fd5b506102a26004803603602081101561041a57600080fd5b50356001600160a01b0316610fa2565b34801561043657600080fd5b506102cb6004803603602081101561044d57600080fd5b50356001600160a01b0316610fbf565b34801561046957600080fd5b506104906004803603602081101561048057600080fd5b50356001600160a01b0316610ff8565b60405180836101a080838360005b838110156104b657818101518382015260200161049e565b5050505090500182600d60200280838360005b838110156104e15781810151838201526020016104c9565b505050509050019250505060405180910390f35b61022c6004803603602081101561050b57600080fd5b50356001600160a01b03166110ad565b34801561052757600080fd5b506102cb61110b565b34801561053c57600080fd5b5061056c6004803603604081101561055357600080fd5b5080356001600160a01b0316906020013560ff16611111565b604080516001600160a01b0385168152821515918101919091526060602080830182815285519284019290925284516080840191868101910280838360005b838110156105c35781810151838201526020016105ab565b5050505090500194505050505060405180910390f35b3480156105e557600080fd5b506103856111bb565b3480156105fa57600080fd5b5061062a6004803603604081101561061157600080fd5b5080356001600160a01b0316906020013560ff166111ca565b604080516001600160a01b03808816825284151560608301528316608082015260a060208083018281528851928401929092528751929391929184019160c0850191898101910280838360005b8381101561068f578181015183820152602001610677565b50505050905001838103825286818151815260200191508051906020019060200280838360005b838110156106ce5781810151838201526020016106b6565b5050505090500197505050505050505060405180910390f35b3480156106f357600080fd5b5061071a6004803603602081101561070a57600080fd5b50356001600160a01b03166112e7565b604080519687526001600160a01b039095166020870152858501939093526060850191909152608084015260a0830152519081900360c00190f35b34801561076157600080fd5b506102a26004803603604081101561077857600080fd5b5080356001600160a01b0316906020013560ff16611327565b34801561079d57600080fd5b5061038561135d565b61022c600480360360408110156107bc57600080fd5b5060ff8135811691602001351661136c565b3480156107da57600080fd5b50610490600480360360208110156107f157600080fd5b50356001600160a01b0316611a7a565b34801561080d57600080fd5b5061083d6004803603604081101561082457600080fd5b5080356001600160a01b0316906020013560ff16611b25565b6040805192835260208301919091528051918290030190f35b34801561086257600080fd5b506102cb6004803603602081101561087957600080fd5b50356001600160a01b0316611b62565b34801561089557600080fd5b50610385600480360360408110156108ac57600080fd5b5080356001600160a01b0316906020013560ff16611b95565b3480156108d157600080fd5b506102cb600480360360208110156108e857600080fd5b503560ff16611c24565b3480156108fe57600080fd5b506103856004803603604081101561091557600080fd5b5080356001600160a01b0316906020013560ff16611c36565b34801561093a57600080fd5b506102cb611cc5565b34673782dace9d9000001461099f576040805162461bcd60e51b815260206004820152601760248201527f726567697374726174696f6e20636f7374203420504f4c000000000000000000604482015290519081900360640190fd5b6109a882610fa2565b156109e8576040805162461bcd60e51b815260206004820152600b60248201526a757365722065786973747360a81b604482015290519081900360640190fd5b6109f181610fa2565b610a38576040805162461bcd60e51b81526020600482015260136024820152727265666572726572206e6f742065786973747360681b604482015290519081900360640190fd5b813b63ffffffff811615610a8a576040805162461bcd60e51b815260206004820152601460248201527318d85b9b9bdd08189948184818dbdb9d1c9858dd60621b604482015290519081900360640190fd5b610a9261375a565b506040805160c0810182526008805482526001600160a01b0385811660208085018281526000868801818152600554606089019081526080890183815260a08a018481528e891680865260018089528d87208d5181559751888201805491909c166001600160a01b0319918216178c5595516002808a0191909155945160098901559251600a88019081559151600b8801558a5486528388528c862080548616909117905588549093168717909755868352600384018552898320805460ff199081168917909155600494850186528a84208054909116881790559386905280546103e83461019002049081019091558254810190925560068054909201909155845484019094559083529382209093018054840190559091610bb6908690611c36565b90506000610bc5866001611b95565b6009549091506001600160a01b0383811691161480610bf157506009546001600160a01b038281169116145b15610caf57600954600090610c0e906001600160a01b0316610fbf565b1115610c2f57600954610c29906001600160a01b0316611ccb565b50610c50565b600554600980546001600160a01b0316600090815260016020526040902001555b6009546001600160a01b03166000908152600160205260409020600a0180546103e86101903402049081019091556007805460028302019081905590670de0b6b3a76400000281610c9d57fe5b60058054929091049091019055610ce2565b600780546103e861019034020490810191829055670de0b6b3a76400000281610cd457fe5b600580549290910490910190555b6001600160a01b03868116600090815260016020818152604080842083855260050190915290912080546001600160a01b03191692851692909217909155610d2d9087908490611d31565b610d39868260016120a0565b6001600160a01b03808716600081815260016020908152604080832054948a168084529281902054815190815290519293927f309bb360e8b69c23937ccc5fb01f9aeeead1c95a99604e175113ff82f2b1723a929181900390910190a4505050505050565b6014015190565b600a546001600160a01b03163314610df1576040805162461bcd60e51b815260206004820152600a60248201526927b7363c9020b236b4b760b11b604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b0392909216919091179055565b61019081565b600080610e2533610fbf565b905060008111610e70576040805162461bcd60e51b81526020600482015260116024820152704e6f206469767320617661696c61626c6560781b604482015290519081900360640190fd5b610e7933611ccb565b505090565b60055481565b60008060015b600d8160ff161015610f0e576001600160a01b038416600090815260016020908152604080832060ff80861685526003909101909252909120541615610ece578092505b6001600160a01b038416600090815260016020908152604080832060ff80861685526004909101909252909120541615610f06578091505b600101610e8a565b50915091565b600c81565b6002602052600090815260409020546001600160a01b031681565b600a546001600160a01b03163314610f80576040805162461bcd60e51b815260206004820152600a60248201526927b7363c9020b236b4b760b11b604482015290519081900360640190fd5b6003805460ff1916911515919091179055565b60085481565b60035460ff1681565b6001600160a01b0316600090815260016020526040902054151590565b6001600160a01b031660009081526001602052604090206009810154600554600a90920154670de0b6b3a7640000919092039091020490565b611000613799565b611008613799565b60015b600d8160ff161015610f0e576001600160a01b038416600090815260016020908152604080832060ff808616808652600390920190935292205416908490600d811061105357fe5b911515602092830291909101526001600160a01b038516600090815260018252604080822060ff8086168085526004909201909452912054909116908390600d811061109b57fe5b9115156020909202015260010161100b565b60035460ff1615156001146110fe576040805162461bcd60e51b815260206004820152601260248201527147616d65206e6f7420796574206f70656e2160701b604482015290519081900360640190fd5b6111083382610943565b50565b60065481565b6001600160a01b03828116600090815260016020818152604080842060ff8781168652600590910183528185208054600282015491909501805484518187028101870190955280855296976060978997909116959194929093169284918301828280156111a757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611189575b505050505091509250925092509250925092565b6009546001600160a01b031681565b6001600160a01b03828116600090815260016020818152604080842060ff878116865260069091018352818520805460038201546005830154968301805486518189028101890190975280875298996060998a998c998a9996841698949760020196959094169492169286919083018282801561127057602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311611252575b50505050509350828054806020026020016040519081016040528092919081815260200182805480156112cc57602002820191906000526020600020905b81546001600160a01b031681526001909101906020018083116112ae575b50505050509250945094509450945094509295509295909350565b600160208190526000918252604090912080549181015460028201546009830154600a840154600b909401546001600160a01b0390931693919290919086565b6001600160a01b038216600090815260016020908152604080832060ff8086168552600490910190925290912054165b92915050565b6000546001600160a01b031681565b60035460ff1615156001146113bd576040805162461bcd60e51b815260206004820152601260248201527147616d65206e6f7420796574206f70656e2160701b604482015290519081900360640190fd5b6113c633610fa2565b6114015760405162461bcd60e51b81526004018080602001828103825260238152602001806138856023913960400191505060405180910390fd5b8160ff166001148061141657508160ff166002145b611458576040805162461bcd60e51b815260206004820152600e60248201526d0d2dcecc2d8d2c840dac2e8e4d2f60931b604482015290519081900360640190fd5b60ff81166000908152600b602052604090205434146114ae576040805162461bcd60e51b815260206004820152600d60248201526c696e76616c696420707269636560981b604482015290519081900360640190fd5b60018160ff161180156114c55750600c60ff821611155b611506576040805162461bcd60e51b815260206004820152600d60248201526c1a5b9d985b1a59081b195d995b609a1b604482015290519081900360640190fd5b600061151133610fbf565b11156115265761152033611ccb565b5061153d565b600554336000908152600160205260409020600901555b336000908152600160208190526040909120600a0180546103e8610190340204908101909155600480548201905560068054909101905560ff8316141561180d5733600090815260016020908152604080832060ff808616855260039091019092529091205416156115f0576040805162461bcd60e51b81526020600482015260176024820152761b195d995b08185b1c9958591e481858dd1a5d985d1959604a1b604482015290519081900360640190fd5b33600090815260016020908152604080832060ff60001986018116855260059091019092529091206002015416156116525733600090815260016020908152604080832060ff60001986011684526005019091529020600201805460ff191690555b600061165e3383611c36565b6009549091506001600160a01b03808316911614156117305760095460009061168f906001600160a01b0316610fbf565b11156116b0576009546116aa906001600160a01b0316611ccb565b506116d1565b600554600980546001600160a01b0316600090815260016020526040902001555b6009546001600160a01b03166000908152600160205260409020600a0180546103e86101903402049081019091556007805460028302019081905590670de0b6b3a7640000028161171e57fe5b60058054929091049091019055611763565b600780546103e861019034020490810191829055670de0b6b3a7640000028161175557fe5b600580549290910490910190555b33600081815260016020818152604080842060ff8816855260058101835281852080546001600160a01b0319166001600160a01b038916179055600301909152909120805460ff191690911790556117bc908284611d31565b604080516001815260ff8416602082015281516001600160a01b0384169233927f18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119929081900390910190a350611a76565b33600090815260016020908152604080832060ff8086168552600490910190925290912054161561187f576040805162461bcd60e51b81526020600482015260176024820152761b195d995b08185b1c9958591e481858dd1a5d985d1959604a1b604482015290519081900360640190fd5b33600090815260016020908152604080832060ff60001986018116855260069091019092529091206003015416156118e15733600090815260016020908152604080832060ff60001986011684526006019091529020600301805460ff191690555b60006118ed3383611b95565b6009549091506001600160a01b03808316911614156119bf5760095460009061191e906001600160a01b0316610fbf565b111561193f57600954611939906001600160a01b0316611ccb565b50611960565b600554600980546001600160a01b0316600090815260016020526040902001555b6009546001600160a01b03166000908152600160205260409020600a0180546103e86101903402049081019091556007805460028302019081905590670de0b6b3a764000002816119ad57fe5b600580549290910490910190556119f2565b600780546103e861019034020490810191829055670de0b6b3a764000002816119e457fe5b600580549290910490910190555b33600081815260016020818152604080842060ff88168552600401909152909120805460ff19169091179055611a299082846120a0565b604080516002815260ff8416602082015281516001600160a01b0384169233927f18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119929081900390910190a3505b5050565b611a82613799565b611a8a613799565b60015b600d8160ff161015610f0e576001600160a01b038416600090815260016020908152604080832060ff8516808552600790910190925290912054908490600d8110611ad457fe5b602090810291909101919091526001600160a01b038516600090815260018252604080822060ff85168084526008909101909352902054908390600d8110611b1857fe5b6020020152600101611a8d565b6001600160a01b0391909116600090815260016020908152604080832060ff90941683526007840182528083205460089094019091529020549091565b6007546001600160a01b0382166000908152600160205260408120600a015490919060640281611b8e57fe5b0492915050565b60005b6001600160a01b03808416600090815260016020818152604080842090920154909316825280822060ff808716845260049091019093529020541615611bfd57506001600160a01b038083166000908152600160208190526040909120015416611357565b6001600160a01b039283166000908152600160208190526040909120015490921691611b98565b600b6020526000908152604090205481565b60005b6001600160a01b03808416600090815260016020818152604080842090920154909316825280822060ff808716845260039091019093529020541615611c9e57506001600160a01b038083166000908152600160208190526040909120015416611357565b6001600160a01b039283166000908152600160208190526040909120015490921691611c39565b60045481565b600080611cd783610fbf565b6004805482900390556005546001600160a01b0385166000818152600160205260408082206009810194909455600b90930180548501905591519293509183156108fc0291849190818181858888f1979650505050505050565b6001600160a01b03828116600090815260016020818152604080842060ff87168086526005909101835290842083018054938401815580855291842090920180546001600160a01b0319169488169490941790935590525460031115611e03576001600160a01b03808316600081815260016020818152604080842060ff8089168087526005909201845294829020840154825194855292840152921681830152905191928616916000805160206138458339815191529181900360600190a3611dfe8284600184612a35565b61209b565b604080516001815260ff8316602082015260038183015290516001600160a01b0380851692908616916000805160206138458339815191529181900360600190a360408051600080825260208083018085526001600160a01b0387168352600180835285842060ff88168552600501909252939091209151611e8a939290910191906137b8565b506001600160a01b038216600090815260016020818152604080842060ff938601841685526003019091529091205416158015611ecb575060ff8116600c14155b15611f09576001600160a01b038216600090815260016020818152604080842060ff86168552600501909152909120600201805460ff191690911790555b6009546001600160a01b03838116911614612016576000611f2a8383611c36565b6001600160a01b03848116600090815260016020908152604080832060ff88168452600501909152902054919250828116911614611fa2576001600160a01b03838116600090815260016020908152604080832060ff87168452600501909152902080546001600160a01b0319169183169190911790555b6001600160a01b03808416600081815260016020818152604080842060ff8916808652600590910183529381902060030180548401905580519283529082019290925281518885169486169392600080516020613865833981519152928290030190a4612010838284611d31565b5061209b565b60095461202f906001600160a01b031684600184612a35565b600980546001600160a01b03908116600090815260016020818152604080842060ff881680865260059091018352818520600301805485019055955481519384529183019590955284518885169593949190911692600080516020613865833981519152928290030190a45b505050565b6001600160a01b038216600090815260016020908152604080832060ff808616855260049091019092529091205416612120576040805162461bcd60e51b815260206004820152601f60248201527f3530302e205265666572726572206c6576656c20697320696e61637469766500604482015290519081900360640190fd5b6001600160a01b038216600090815260016020818152604080842060ff86168552600601909152909120015460021115612686576001600160a01b03828116600081815260016020818152604080842060ff8881168087526006909201845282862085018054958601815580875284872090950180546001600160a01b031916988c16988917905594819052925481516002815292830193909352919092168282015251919291600080516020613845833981519152916060908290030190a36001600160a01b03838116600090815260016020908152604080832060ff86168452600601909152902080546001600160a01b031916848316908117909155600954909116141561223857611dfe8284600284612a35565b6001600160a01b03828116600090815260016020818152604080842060ff871680865260069182018452828620548716808752858552838720828852909201845291852060028082018054808801825590885294872090940180546001600160a01b031916978b1697909717909655935292015490918114801561230857506001600160a01b03828116600090815260016020818152604080842060ff891685526006019091528220018054928716929091906122f157fe5b6000918252602090912001546001600160a01b0316145b801561236457506001600160a01b03828116600090815260016020818152604080842060ff891685526006019091529091208101805492871692909190811061234d57fe5b6000918252602090912001546001600160a01b0316145b15612429576001600160a01b038416600090815260016020818152604080842060ff8816855260060190915290912081015414156123e257604080516002815260ff8516602082015260058183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a3612424565b604080516002815260ff8516602082015260068183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a35b612674565b80600114806124385750806002145b801561249057506001600160a01b03828116600090815260016020818152604080842060ff8916855260060190915282200180549287169290919061247957fe5b6000918252602090912001546001600160a01b0316145b15612554576001600160a01b038416600090815260016020818152604080842060ff88168552600601909152909120810154141561250e57604080516002815260ff8516602082015260038183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a3612424565b604080516002815260ff8516602082015260048183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a3612674565b8060021480156125b457506001600160a01b03828116600090815260016020818152604080842060ff891685526006019091529091208101805492871692909190811061259d57fe5b6000918252602090912001546001600160a01b0316145b15612674576001600160a01b038416600090815260016020818152604080842060ff88168552600601909152909120810154141561263257604080516002815260ff8516602082015260058183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a3612674565b604080516002815260ff8516602082015260068183015290516001600160a01b0380851692908816916000805160206138458339815191529181900360600190a35b61267f858385612bf3565b505061209b565b6001600160a01b03828116600090815260016020818152604080842060ff8716808652600690910183529084206002810180549485018155855291842090920180546001600160a01b0319168886161790559152600501541615612869576001600160a01b038216600090815260016020818152604080842060ff8616855260060190915290912081018054909190811061271d57fe5b60009182526020808320909101546001600160a01b0385811684526001808452604080862060ff8816875260060190945292842090920180549290911692909161276357fe5b6000918252602090912001546001600160a01b03161480156127d757506001600160a01b03828116600090815260016020818152604080842060ff871685526006019091528220600581015491018054919093169291906127c057fe5b6000918252602090912001546001600160a01b0316145b156127f4576127e98383836001613053565b611dfe838383612bf3565b6001600160a01b03828116600090815260016020818152604080842060ff8716855260060190915282206005810154910180549190931692919061283457fe5b6000918252602090912001546001600160a01b0316141561285c576127e98383836001613053565b6127e98383836000613053565b6001600160a01b03828116600090815260016020818152604080842060ff87168552600601909152909120810180549286169290919081106128a757fe5b6000918252602090912001546001600160a01b031614156128cf576127e98383836000613053565b6001600160a01b03828116600090815260016020818152604080842060ff8716855260060190915282200180549286169290919061290957fe5b6000918252602090912001546001600160a01b03161415612931576127e98383836001613053565b6001600160a01b038216600090815260016020818152604080842060ff861685526006019091528220810180549192918390811061296b57fe5b60009182526020808320909101546001600160a01b039081168452838201949094526040928301822060ff861680845260069182018352848420600190810154968916855280845285852091855291019091529181208201805482906129cd57fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff8616825260060190925290206001015411612a1d57612a188383836000613053565b612a2a565b612a2a8383836001613053565b61209b838383612bf3565b600080612a44868686866135ba565b60ff85166000908152600b60205260408082205490519395509193506103e8610190830204909103916001600160a01b038516916108fc841502918491818181858888f19350505050158015612a9e573d6000803e3d6000fd5b50600080546040805163a9059cbb60e01b81526001600160a01b038781166004830152602482018690529151919092169263a9059cbb92604480820193602093909283900390910190829087803b158015612af857600080fd5b505af1158015612b0c573d6000803e3d6000fd5b505050506040513d6020811015612b2257600080fd5b5050600160ff86161415612b64576001600160a01b038316600090815260016020908152604080832060ff881684526007019091529020805482019055612b94565b6001600160a01b038316600090815260016020908152604080832060ff8816845260080190915290208054820190555b8115612bea576040805160ff80881682528616602082015281516001600160a01b0380871693908a16927ff0ddc65c0d411f042f723dcfa1b7d13e85a35b7b70761d447c6500411cacf328929081900390910190a35b50505050505050565b6001600160a01b038216600090815260016020908152604080832060ff8516845260060190915290206002015460041115612c3557611dfe8284600284612a35565b6001600160a01b03808316600090815260016020818152604080842060ff8716808652600691820184528286205490961685528383528185209585529490940181529183902001805483518184028101840190945280845260609392830182828015612cca57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311612cac575b50505050509050805160021415612e2b57826001600160a01b031681600081518110612cf257fe5b60200260200101516001600160a01b03161480612d345750826001600160a01b031681600181518110612d2157fe5b60200260200101516001600160a01b0316145b15612d98576001600160a01b03808416600081815260016020818152604080842060ff8916808652600691820184528286205490971685529282528084209584529490910190529190912060050180546001600160a01b0319169091179055612e2b565b805160011415612e2b57826001600160a01b031681600081518110612db957fe5b60200260200101516001600160a01b03161415612e2b576001600160a01b03808416600081815260016020818152604080842060ff8916808652600691820184528286205490971685529282528084209584529490910190529190912060050180546001600160a01b03191690911790555b60408051600080825260208083018085526001600160a01b0388168352600180835285842060ff89168552600601909252939091209151612e71939290910191906137b8565b5060408051600080825260208083018085526001600160a01b03881683526001825284832060ff881684526006019091529290209051612eb792600290920191906137b8565b506001600160a01b038316600090815260016020818152604080842060ff808816865260068201845282862060050180546001600160a01b0319169055938701841685526004019091529091205416158015612f17575060ff8216600c14155b15612f55576001600160a01b038316600090815260016020818152604080842060ff87168552600601909152909120600301805460ff191690911790555b6001600160a01b03808416600081815260016020818152604080842060ff891685526006019091529091206004018054909101905560095490911614612ff3576000612fa18484611b95565b604080516002815260ff8616602082015281519293506001600160a01b0380891693818616939189169260008051602061386583398151915292908290030190a4612fed8482856120a0565b5061304d565b600954604080516002815260ff8516602082015281516001600160a01b0380891694600094911692600080516020613865833981519152929081900390910190a460095461304d906001600160a01b031685600285612a35565b50505050565b80613304576001600160a01b038316600090815260016020818152604080842060ff87168552600601909152822081018054919291829061309057fe5b6000918252602080832091909101546001600160a01b039081168452838201949094526040928301822060ff8716808452600691820183528484206001908101805480830182559086528486200180546001600160a01b0319168c89161790559589168452858352848420908452019052908120909101805490919061311257fe5b60009182526020808320909101546001600160a01b0386811684526001808452604080862060ff891687526006019094529284208301805492821694918916936000805160206138458339815191529360029389939091829061317157fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff808c1683526006909101845290829020600101548251958216865293811692850192909252911682820152519081900360600190a36001600160a01b03808416600081815260016020818152604080842060ff8916855260060190915282208101805493948916936000805160206138458339815191529360029389939092829061322157fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff808c168352600690910184529082902060010154825195821686529381169285019290925260029092011682820152519081900360600190a36001600160a01b038316600090815260016020818152604080842060ff8716855260060190915282200180549091906132b857fe5b60009182526020808320909101546001600160a01b03878116845260018352604080852060ff881686526006019093529190922080546001600160a01b0319169190921617905561304d565b6001600160a01b038316600090815260016020818152604080842060ff871685526006019091528220810180549192918390811061333e57fe5b6000918252602080832091909101546001600160a01b039081168452838201949094526040928301822060ff8716808452600691820183528484206001908101805480830182559086528486200180546001600160a01b0319168c89161790559589168452858352848420908452019052208101805490919081106133bf57fe5b60009182526020808320909101546001600160a01b0386811684526001808452604080862060ff8916875260060190945292842083018054928216949189169360008051602061384583398151915293600293899390918390811061342057fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff808c1683526006909101845290829020600101548251958216865293811692850192909252911682820152519081900360600190a36001600160a01b03808416600081815260016020818152604080842060ff8916855260060190915282208101805493948916936000805160206138458339815191529360029389939092839081106134d257fe5b60009182526020808320909101546001600160a01b03168352828101939093526040918201812060ff808c168352600690910184529082902060010154825195821686529381169285019290925260049092011682820152519081900360600190a36001600160a01b038316600090815260016020818152604080842060ff8716855260060190915290912081018054909190811061356d57fe5b60009182526020808320909101546001600160a01b03878116845260018352604080852060ff881686526006019093529190922080546001600160a01b0319169190921617905550505050565b6000808581600160ff87161415613696575b6001600160a01b038216600090815260016020908152604080832060ff808a168552600590910190925290912060020154161561368757604080516001815260ff8716602082015281516001600160a01b03808b1693908616927ffc0cb63f8dbd6b20ceb84a3c5358a41576a1479e6ecd040b4b985525dc09a709929081900390910190a3506001600160a01b03908116600090815260016020818152604080842060ff891685526005019091529091205490911690613691565b9092509050613751565b6135cc565b6001600160a01b038216600090815260016020908152604080832060ff808a168552600690910190925290912060030154161561368757604080516002815260ff8716602082015281516001600160a01b03808b1693908616927ffc0cb63f8dbd6b20ceb84a3c5358a41576a1479e6ecd040b4b985525dc09a709929081900390910190a3506001600160a01b03908116600090815260016020818152604080842060ff891685526006019091529091205490911690613696565b94509492505050565b6040518060c001604052806000815260200160006001600160a01b03168152602001600081526020016000815260200160008152602001600081525090565b604051806101a00160405280600d906020820280388339509192915050565b82805482825590600052602060002090810192821561380d579160200282015b8281111561380d57825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906137d8565b5061381992915061381d565b5090565b61384191905b808211156138195780546001600160a01b0319168155600101613823565b9056fe68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d82a00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a675736572206973206e6f74206578697374732e2052656769737465722066697273742ea265627a7a72315820a666d96804defea3d146a91ceb2e9ae80f8c14b044001b268276e09b344fae0464736f6c63430005110032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000018442258126f1868f94ea422d4d45f756ca2e04a
-----Decoded View---------------
Arg [0] : ownerAddress (address): 0x18442258126f1868f94Ea422d4D45f756CA2E04a
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 00000000000000000000000018442258126f1868f94ea422d4d45f756ca2e04a
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$34.24
Net Worth in POL
Token Allocations
POL
100.00%
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|---|---|---|---|---|
| POL | 100.00% | $0.131502 | 260.3812 | $34.24 |
Loading...
Loading
Loading...
Loading
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.