Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
Latest 25 from a total of 178 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Reg User | 11065429 | 1970 days ago | IN | 0.05 ETH | 0.01913814 | ||||
| Reg User | 10819384 | 2008 days ago | IN | 0.05 ETH | 0.0253945 | ||||
| Purchase Level | 10814192 | 2008 days ago | IN | 0.2 ETH | 0.01523226 | ||||
| Purchase Level | 10814187 | 2008 days ago | IN | 0.2 ETH | 0.01163268 | ||||
| Purchase Level | 10813768 | 2008 days ago | IN | 0.1 ETH | 0.01632356 | ||||
| Purchase Level | 10813676 | 2008 days ago | IN | 0.05 ETH | 0.01589957 | ||||
| Purchase Level | 10813644 | 2008 days ago | IN | 0.1 ETH | 0.01139528 | ||||
| Purchase Level | 10811781 | 2009 days ago | IN | 0 ETH | 0.01024267 | ||||
| Purchase Level | 10807893 | 2009 days ago | IN | 0.05 ETH | 0.01356039 | ||||
| Reg User | 10807877 | 2009 days ago | IN | 0.05 ETH | 0.03732578 | ||||
| Purchase Level | 10807606 | 2009 days ago | IN | 0.05 ETH | 0.01116738 | ||||
| Purchase Level | 10807561 | 2009 days ago | IN | 0.05 ETH | 0.01169121 | ||||
| Purchase Level | 10807559 | 2009 days ago | IN | 0.2 ETH | 0.01539608 | ||||
| Purchase Level | 10807545 | 2009 days ago | IN | 0.1 ETH | 0.01429817 | ||||
| Purchase Level | 10807538 | 2009 days ago | IN | 0.05 ETH | 0.01306735 | ||||
| Reg User | 10807525 | 2009 days ago | IN | 0.05 ETH | 0.03235916 | ||||
| Purchase Level | 10805022 | 2010 days ago | IN | 0.1 ETH | 0.02396334 | ||||
| Reg User | 10755774 | 2017 days ago | IN | 0.05 ETH | 0.02106031 | ||||
| Reg User | 10749677 | 2018 days ago | IN | 0.05 ETH | 0.00216359 | ||||
| Reg User | 10749677 | 2018 days ago | IN | 0.05 ETH | 0.00214058 | ||||
| Reg User | 10749677 | 2018 days ago | IN | 0.05 ETH | 0.00214058 | ||||
| Reg User | 10749677 | 2018 days ago | IN | 0.05 ETH | 0.00216359 | ||||
| Reg User | 10749677 | 2018 days ago | IN | 0.05 ETH | 0.00216359 | ||||
| Reg User | 10749677 | 2018 days ago | IN | 0.05 ETH | 0.00214058 | ||||
| Reg User | 10749677 | 2018 days ago | IN | 0.05 ETH | 0.00214058 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Method | Block |
From
|
|
To
|
||
|---|---|---|---|---|---|---|---|
| - | 11065429 | 1970 days ago | 0.025 ETH | ||||
| - | 11065429 | 1970 days ago | 0.025 ETH | ||||
| - | 10819384 | 2008 days ago | 0.025 ETH | ||||
| - | 10819384 | 2008 days ago | 0.025 ETH | ||||
| - | 10814192 | 2008 days ago | 0.2 ETH | ||||
| - | 10814187 | 2008 days ago | 0.2 ETH | ||||
| - | 10813768 | 2008 days ago | 0.1 ETH | ||||
| - | 10813676 | 2008 days ago | 0.05 ETH | ||||
| - | 10813644 | 2008 days ago | 0.1 ETH | ||||
| - | 10807893 | 2009 days ago | 0.05 ETH | ||||
| - | 10807877 | 2009 days ago | 0.025 ETH | ||||
| - | 10807877 | 2009 days ago | 0.025 ETH | ||||
| - | 10807606 | 2009 days ago | 0.05 ETH | ||||
| - | 10807561 | 2009 days ago | 0.05 ETH | ||||
| - | 10807559 | 2009 days ago | 0.2 ETH | ||||
| - | 10807545 | 2009 days ago | 0.1 ETH | ||||
| - | 10807538 | 2009 days ago | 0.05 ETH | ||||
| - | 10807525 | 2009 days ago | 0.025 ETH | ||||
| - | 10807525 | 2009 days ago | 0.025 ETH | ||||
| - | 10805022 | 2010 days ago | 0.1 ETH | ||||
| - | 10755774 | 2017 days ago | 0.025 ETH | ||||
| - | 10755774 | 2017 days ago | 0.025 ETH | ||||
| - | 10744233 | 2019 days ago | 0.05 ETH | ||||
| - | 10744018 | 2019 days ago | 0.05 ETH | ||||
| - | 10734960 | 2020 days ago | 0.1 ETH |
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
ZoomTenX
Compiler Version
v0.5.17+commit.d19bba13
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2020-08-21
*/
pragma solidity >=0.4.23 <0.6.0;
contract ZoomTenX {
struct UserAccount {
uint id;
address referrer;
uint partnersCount;
mapping(uint8 => bool) activeX3Levels;
mapping(uint8 => bool) activeX6Levels;
mapping(uint8 => XXX) x3Matrix;
mapping(uint8 => XXXX) x6Matrix;
}
struct XXX {
address currentReferrer;
address[] referrals;
bool blocked;
uint reinvestCount;
}
struct XXXX{
address currentReferrer;
address[] firstLevelReferrals;
address[] secondLevelReferrals;
bool blocked;
uint reinvestCount;
address closedPart;
}
uint8 public constant LAST_LEVEL = 12;
mapping(address => UserAccount) public users;
mapping(uint => address) public idToAddress;
mapping(uint => address) public userIds;
uint public lastUserId = 2;
address payable public owner;
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 UserIncome(address indexed user,address indexed from,uint256 value,uint8 matrix, uint8 level,uint8 logType);
constructor(address payable ownerAddress) public {
levelPrice[1] = 0.025 ether;
for (uint8 i = 2; i <= LAST_LEVEL; i++) {
levelPrice[i] = levelPrice[i-1] * 2;
}
owner = ownerAddress;
UserAccount memory user ;
user= UserAccount({
id: 1,
referrer: address(0),
partnersCount: uint(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;
}
userIds[1] = ownerAddress;
}
function regUser(address referrerAddress,uint8 _type) external payable {
registration(msg.sender, referrerAddress,_type);
}
function purchaseLevel(uint8 matrix, uint8 level,uint8 _type) external payable {
if(_type==0){
require(users[msg.sender].id <=6,"You not have this prev." );
}
else{
require(msg.value == levelPrice[level] ,"invalid price");
}
require(isUserExists(msg.sender), "user is not exists. Register first.");
require(matrix == 1 || matrix == 2, "invalid matrix");
require(level > 1 && level <= LAST_LEVEL, "invalid level");
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 = getFreeXXXReferrer(msg.sender, level);
users[msg.sender].x3Matrix[level].currentReferrer = freeX3Referrer;
users[msg.sender].activeX3Levels[level] = true;
updateXXXReferrer(msg.sender, freeX3Referrer, level,_type);
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 = getFreeXXXXReferrer(msg.sender, level);
users[msg.sender].activeX6Levels[level] = true;
updateXXXXReferrer(msg.sender, freeX6Referrer, level,_type);
emit Upgrade(msg.sender, freeX6Referrer, 2, level);
}
}
function registration(address userAddress, address referrerAddress,uint8 _type) private {
if(_type==0){
require(lastUserId <=6,"You not have this prev." );
}else{
require(msg.value == 0.05 ether, "Invalid Cost");
}
require(!isUserExists(userAddress), "user exists");
require(isUserExists(referrerAddress), "referrer not exists");
uint32 size;
assembly {
size := extcodesize(userAddress)
}
require(size == 0, "cc");
UserAccount memory user = UserAccount({
id: lastUserId,
referrer: referrerAddress,
partnersCount: 0
});
users[userAddress] = user;
idToAddress[lastUserId] = userAddress;
users[userAddress].referrer = referrerAddress;
users[userAddress].activeX3Levels[1] = true;
users[userAddress].activeX6Levels[1] = true;
userIds[lastUserId] = userAddress;
lastUserId++;
users[referrerAddress].partnersCount++;
address freeX3Referrer = getFreeXXXReferrer(userAddress, 1);
users[userAddress].x3Matrix[1].currentReferrer = freeX3Referrer;
updateXXXReferrer(userAddress, freeX3Referrer, 1,_type);
updateXXXXReferrer(userAddress, getFreeXXXXReferrer(userAddress, 1), 1,_type);
emit Registration(userAddress, referrerAddress, users[userAddress].id, users[referrerAddress].id);
}
function updateXXXReferrer(address userAddress, address referrerAddress, uint8 level,uint8 _type) 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 sendETHDividends(referrerAddress, userAddress, 1, level,_type);
}
emit NewUserPlace(userAddress, referrerAddress, 1, level, 3);
//close matrix
users[referrerAddress].x3Matrix[level].referrals = new address[](0);
if (!users[referrerAddress].activeX3Levels[level+1] && level != LAST_LEVEL) {
users[referrerAddress].x3Matrix[level].blocked = true;
}
if (referrerAddress != owner) {
address freeReferrerAddress = getFreeXXXReferrer(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);
updateXXXReferrer(referrerAddress, freeReferrerAddress, level,_type);
} else {
sendETHDividends(owner, userAddress, 1, level,_type);
users[owner].x3Matrix[level].reinvestCount++;
emit Reinvest(owner, address(0), userAddress, 1, level);
}
}
function updateXXXXReferrer(address userAddress, address referrerAddress, uint8 level,uint8 _type) private {
require(users[referrerAddress].activeX6Levels[level], "500");
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;
if (referrerAddress == owner) {
return sendETHDividends(referrerAddress, userAddress, 2, level,_type);
}
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 updateXXXXReferrerSecondLevel(userAddress, ref, level,_type);
}
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)) {
updateXXXX(userAddress, referrerAddress, level, true);
return updateXXXXReferrerSecondLevel(userAddress, referrerAddress, level,_type);
} else if (users[referrerAddress].x6Matrix[level].firstLevelReferrals[0] ==
users[referrerAddress].x6Matrix[level].closedPart) {
updateXXXX(userAddress, referrerAddress, level, true);
return updateXXXXReferrerSecondLevel(userAddress, referrerAddress, level,_type);
} else {
updateXXXX(userAddress, referrerAddress, level, false);
return updateXXXXReferrerSecondLevel(userAddress, referrerAddress, level,_type);
}
}
if (users[referrerAddress].x6Matrix[level].firstLevelReferrals[1] == userAddress) {
updateXXXX(userAddress, referrerAddress, level, false);
return updateXXXXReferrerSecondLevel(userAddress, referrerAddress, level,_type);
} else if (users[referrerAddress].x6Matrix[level].firstLevelReferrals[0] == userAddress) {
updateXXXX(userAddress, referrerAddress, level, true);
return updateXXXXReferrerSecondLevel(userAddress, referrerAddress, level,_type);
}
if (users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[0]].x6Matrix[level].firstLevelReferrals.length <=
users[users[referrerAddress].x6Matrix[level].firstLevelReferrals[1]].x6Matrix[level].firstLevelReferrals.length) {
updateXXXX(userAddress, referrerAddress, level, false);
} else {
updateXXXX(userAddress, referrerAddress, level, true);
}
updateXXXXReferrerSecondLevel(userAddress, referrerAddress, level,_type);
}
function updateXXXX(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));
//set current level
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));
//set current level
users[userAddress].x6Matrix[level].currentReferrer = users[referrerAddress].x6Matrix[level].firstLevelReferrals[1];
}
}
function updateXXXXReferrerSecondLevel(address userAddress, address referrerAddress, uint8 level , uint8 _type) private {
if (users[referrerAddress].x6Matrix[level].secondLevelReferrals.length < 4) {
return sendETHDividends(referrerAddress, userAddress, 2, level,_type);
}
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++;
if (referrerAddress != owner) {
address freeReferrerAddress = getFreeXXXXReferrer(referrerAddress, level);
emit Reinvest(referrerAddress, freeReferrerAddress, userAddress, 2, level);
updateXXXXReferrer(referrerAddress, freeReferrerAddress, level,_type);
} else {
emit Reinvest(owner, address(0), userAddress, 2, level);
sendETHDividends(owner, userAddress, 2, level,_type);
}
}
function getFreeXXXReferrer(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 getFreeXXXXReferrer(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 usersActiveXXXLevels(address userAddress, uint8 level) public view returns(bool) {
return users[userAddress].activeX3Levels[level];
}
function usersActiveXXXXLevels(address userAddress, uint8 level) public view returns(bool) {
return users[userAddress].activeX6Levels[level];
}
function usersXXXMatrix(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 usersXXXXMatrix(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 getEthReceiver(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) {
isExtraDividends = true;
receiver = users[receiver].x3Matrix[level].currentReferrer;
} else {
return (receiver, isExtraDividends);
}
}
} else {
while (true) {
if (users[receiver].x6Matrix[level].blocked) {
isExtraDividends = true;
receiver = users[receiver].x6Matrix[level].currentReferrer;
} else {
return (receiver, isExtraDividends);
}
}
}
}
function sendETHDividends(address userAddress, address _from, uint8 matrix, uint8 level,uint8 _type) private {
if(_type==1){
(address receiver, bool isExtraDividends) = getEthReceiver(userAddress, _from, matrix, level);
if (!address(uint160(receiver)).send(levelPrice[level])) {
emit UserIncome(receiver,_from,address(this).balance, matrix,level,0);
return address(uint160(receiver)).transfer(address(this).balance);
}
emit UserIncome(receiver,_from,levelPrice[level],matrix,level,1);
}else{
emit UserIncome(userAddress,_from,levelPrice[level],matrix,level,1);
}
}
function bytesToAddress(bytes memory bys) private pure returns (address addr) {
assembly {
addr := mload(add(bys, 20))
}
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address payable","name":"ownerAddress","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"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":"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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"uint8","name":"matrix","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"level","type":"uint8"},{"indexed":false,"internalType":"uint8","name":"logType","type":"uint8"}],"name":"UserIncome","type":"event"},{"constant":true,"inputs":[],"name":"LAST_LEVEL","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"getFreeXXXReferrer","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":"getFreeXXXXReferrer","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint8","name":"matrix","type":"uint8"},{"internalType":"uint8","name":"level","type":"uint8"},{"internalType":"uint8","name":"_type","type":"uint8"}],"name":"purchaseLevel","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"referrerAddress","type":"address"},{"internalType":"uint8","name":"_type","type":"uint8"}],"name":"regUser","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"userIds","outputs":[{"internalType":"address","name":"","type":"address"}],"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"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"userAddress","type":"address"},{"internalType":"uint8","name":"level","type":"uint8"}],"name":"usersActiveXXXLevels","outputs":[{"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":"usersActiveXXXXLevels","outputs":[{"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":"usersXXXMatrix","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":"usersXXXXMatrix","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"}]Contract Creation Code
608060405260026003553480156200001657600080fd5b50604051620063d1380380620063d1833981810160405260208110156200003c57600080fd5b81019080805190602001909291905050506658d15e1762800060056000600160ff168152602001908152602001600020819055506000600290505b600c60ff168160ff1611620000d1576002600560006001840360ff1660ff1681526020019081526020016000205402600560008360ff1660ff16815260200190815260200160002081905550808060010191505062000077565b5080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200011d620003a5565b604051806060016040528060018152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160008152509050806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040820151816002015590505081600160006001815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600190505b600c60ff168160ff1611620003495760016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008360ff1660ff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806001019150506200024a565b5081600260006001815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050620003dc565b604051806060016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b615fe580620003ec6000396000f3fe6080604052600436106100f35760003560e01c80638109f1031161008a578063a87430ba11610059578063a87430ba146106c4578063dabfa58114610763578063e16f2cf214610854578063ecabdf79146108ca576100f3565b80638109f10314610533578063823fecc61461057e5780638da5cb5b146105cf5780639bd5ddfb14610626576100f3565b80634400739b116100c65780634400739b1461026d5780634635fd68146103d9578063509222cd14610454578063783f8cad146104bd576100f3565b8063236b619e146100f857806329c70400146101965780632a2d0c47146101c7578063348d448714610242575b600080fd5b34801561010457600080fd5b506101546004803603604081101561011b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061091c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a257600080fd5b506101ab610acb565b604051808260ff1660ff16815260200191505060405180910390f35b3480156101d357600080fd5b50610200600480360360208110156101ea57600080fd5b8101908080359060200190929190505050610ad0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024e57600080fd5b50610257610b03565b6040518082815260200191505060405180910390f35b34801561027957600080fd5b506102c96004803603604081101561029057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050610b09565b604051808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838103835287818151815260200191508051906020019060200280838360005b8381101561037e578082015181840152602081019050610363565b50505050905001838103825286818151815260200191508051906020019060200280838360005b838110156103c05780820151818401526020810190506103a5565b5050505090500197505050505050505060405180910390f35b3480156103e557600080fd5b50610412600480360360208110156103fc57600080fd5b8101908080359060200190929190505050610e4c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561046057600080fd5b506104a36004803603602081101561047757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e7f565b604051808215151515815260200191505060405180910390f35b3480156104c957600080fd5b50610519600480360360408110156104e057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050610ecd565b604051808215151515815260200191505060405180910390f35b61057c6004803603606081101561054957600080fd5b81019080803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190505050610f3d565b005b6105cd6004803603604081101561059457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611841565b005b3480156105db57600080fd5b506105e4611850565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561063257600080fd5b506106826004803603604081101561064957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611876565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106d057600080fd5b50610713600480360360208110156106e757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a25565b604051808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390f35b34801561076f57600080fd5b506107bf6004803603604081101561078657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611a6f565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019060200280838360005b8381101561083e578082015181840152602081019050610823565b5050505090500194505050505060405180910390f35b34801561086057600080fd5b506108b06004803603604081101561087757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611c4a565b604051808215151515815260200191505060405180910390f35b3480156108d657600080fd5b50610906600480360360208110156108ed57600080fd5b81019080803560ff169060200190929190505050611cba565b6040518082815260200191505060405180910390f35b60005b600115610ac4576000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff1615610a5b576000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050610ac5565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16925061091f565b5b92915050565b600c81565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b60006060806000806000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008760ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff1681526020019081526020016000206001016000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008960ff1660ff1681526020019081526020016000206002016000808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff16815260200190815260200160002060030160009054906101000a900460ff166000808c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008b60ff1660ff16815260200190815260200160002060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683805480602002602001604051908101604052809291908181526020018280548015610da957602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610d5f575b5050505050935082805480602002602001604051908101604052809291908181526020018280548015610e3157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610de7575b50505050509250945094509450945094509295509295909350565b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015414159050919050565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60008160ff1614156110065760066000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541115611001576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f596f75206e6f742068617665207468697320707265762e00000000000000000081525060200191505060405180910390fd5b611095565b600560008360ff1660ff168152602001908152602001600020543414611094576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e76616c69642070726963650000000000000000000000000000000000000081525060200191505060405180910390fd5b5b61109e33610e7f565b6110f3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180615f8e6023913960400191505060405180910390fd5b60018360ff161480611108575060028360ff16145b61117a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f696e76616c6964206d617472697800000000000000000000000000000000000081525060200191505060405180910390fd5b60018260ff161180156111945750600c60ff168260ff1611155b611206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e76616c6964206c6576656c0000000000000000000000000000000000000081525060200191505060405180910390fd5b60018360ff161415611576576000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff16156112eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f6c6576656c20616c72656164792061637469766174656400000000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006001840360ff1660ff16815260200190815260200160002060020160009054906101000a900460ff16156113d45760008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006001850360ff1660ff16815260200190815260200160002060020160006101000a81548160ff0219169083151502179055505b60006113e03384611876565b9050806000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008560ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008560ff1660ff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506114f933828585611cd2565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119600186604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a35061183c565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff161561164f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f6c6576656c20616c72656164792061637469766174656400000000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160006001840360ff1660ff16815260200190815260200160002060030160009054906101000a900460ff16156117385760008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160006001850360ff1660ff16815260200190815260200160002060030160006101000a81548160ff0219169083151502179055505b6000611744338461091c565b905060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008560ff1660ff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506117c333828585612535565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119600286604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a3505b505050565b61184c338383613bf9565b5050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60005b600115611a1e576000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff16156119b5576000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050611a1f565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169250611879565b5b92915050565b60006020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154905083565b6000606060008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008560ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008660ff1660ff1681526020019081526020016000206001016000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008760ff1660ff16815260200190815260200160002060020160009054906101000a900460ff1681805480602002602001604051908101604052809291908181526020018280548015611c3657602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611bec575b505050505091509250925092509250925092565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60056020528060005260406000206000915090505481565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008360ff1660ff1681526020019081526020016000206001018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008460ff1660ff168152602001908152602001600020600101805490501015611eee578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826001856000808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008860ff1660ff16815260200190815260200160002060010180549050604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a3611ee9838560018585614378565b61252f565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826001856003604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a36000604051908082528060200260200182016040528015611fa15781602001602082028038833980820191505090505b506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008460ff1660ff1681526020019081526020016000206001019080519060200190612010929190615e89565b506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160006001840160ff1660ff16815260200190815260200160002060009054906101000a900460ff1615801561208e5750600c60ff168260ff1614155b156121085760016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008460ff1660ff16815260200190815260200160002060020160006101000a81548160ff0219169083151502179055505b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146123bf5760006121698484611876565b90508073ffffffffffffffffffffffffffffffffffffffff166000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008560ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122b457806000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008560ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008460ff1660ff168152602001908152602001600020600301600081548092919060010191905055508473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fa00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a6600187604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a46123b984828585611cd2565b5061252e565b6123ef600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168560018585614378565b600080600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008360ff1660ff168152602001908152602001600020600301600081548092919060010191905055508373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fa00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a6600186604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a45b5b50505050565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff1661260d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260038152602001807f353030000000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60026000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010180549050101561327a576000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206001018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a3826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561291957612914838560028585614378565b613bf3565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff1681526020019081526020016000206002018590806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff168152602001908152602001600020600101805490509050600281148015612b8757508473ffffffffffffffffffffffffffffffffffffffff166000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101600081548110612b4457fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b8015612c4f57508473ffffffffffffffffffffffffffffffffffffffff166000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101600181548110612c0c57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15612dcc5760016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101805490501415612d43578173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876005604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a3612dc7565b8173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876006604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a35b613267565b6001811480612ddb5750600281145b8015612ea357508473ffffffffffffffffffffffffffffffffffffffff166000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101600081548110612e6057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156130205760016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101805490501415612f97578173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876003604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a361301b565b8173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876004604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a35b613266565b6002811480156130ec57508473ffffffffffffffffffffffffffffffffffffffff166000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff1681526020019081526020016000206001016001815481106130a957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156132655760016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff1681526020019081526020016000206001018054905014156131e0578173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876005604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a3613264565b8173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876006604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a35b5b5b5b61327386838686614620565b5050613bf3565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206002018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600073ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461381b576000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060010160018154811061344f57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff1681526020019081526020016000206001016000815481106134f757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614801561367c57506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010160008154811061363957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561369f5761368e8484846001615044565b61369a84848484614620565b613bf3565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010160008154811061379857fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156137fd576137ec8484846001615044565b6137f884848484614620565b613bf3565b61380a8484846000615044565b61381684848484614620565b613bf3565b8373ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010160018154811061389957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156138fe576138ed8484846000615044565b6138f984848484614620565b613bf3565b8373ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010160008154811061397c57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156139e1576139d08484846001615044565b6139dc84848484614620565b613bf3565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff168152602001908152602001600020600101600181548110613a4b57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff168152602001908152602001600020600101805490506000808060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101600081548110613b3b57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff1681526020019081526020016000206001018054905011613bd857613bd38484846000615044565b613be6565b613be58484846001615044565b5b613bf284848484614620565b5b50505050565b60008160ff161415613c835760066003541115613c7e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f596f75206e6f742068617665207468697320707265762e00000000000000000081525060200191505060405180910390fd5b613d00565b66b1a2bc2ec500003414613cff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f496e76616c696420436f7374000000000000000000000000000000000000000081525060200191505060405180910390fd5b5b613d0983610e7f565b15613d7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f757365722065786973747300000000000000000000000000000000000000000081525060200191505060405180910390fd5b613d8582610e7f565b613df7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f7265666572726572206e6f74206578697374730000000000000000000000000081525060200191505060405180910390fd5b6000833b905060008163ffffffff1614613e79576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260028152602001807f636300000000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b613e81615f13565b604051806060016040528060035481526020018573ffffffffffffffffffffffffffffffffffffffff16815260200160008152509050806000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604082015181600201559050508460016000600354815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003016000600160ff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000600160ff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508460026000600354815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506003600081548092919060010191905055506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000815480929190600101919050555060006141ca866001611876565b9050806000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206005016000600160ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506142718682600187611cd2565b6142888661428088600161091c565b600187612535565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001548573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f309bb360e8b69c23937ccc5fb01f9aeeead1c95a99604e175113ff82f2b1723a6000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546040518082815260200191505060405180910390a4505050505050565b60018160ff1614156145715760008061439387878787615c43565b915091508173ffffffffffffffffffffffffffffffffffffffff166108fc600560008760ff1660ff168152602001908152602001600020549081150290604051600060405180830381858888f193505050506144c4578573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fc49a43029f7a5081f25c42ed054858ba33024bb737d162eeb4eea7e8923098774788886000604051808581526020018460ff1660ff1681526020018360ff1660ff1681526020018260ff16815260200194505050505060405180910390a38173ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156144bc573d6000803e3d6000fd5b505050614619565b8573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fc49a43029f7a5081f25c42ed054858ba33024bb737d162eeb4eea7e892309877600560008860ff1660ff1681526020019081526020016000205488886001604051808581526020018460ff1660ff1681526020018360ff1660ff1681526020018260ff16815260200194505050505060405180910390a35050614618565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fc49a43029f7a5081f25c42ed054858ba33024bb737d162eeb4eea7e892309877600560008660ff1660ff1681526020019081526020016000205486866001604051808581526020018460ff1660ff1681526020018360ff1660ff1681526020018260ff16815260200194505050505060405180910390a35b5b5050505050565b60046000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060020180549050101561469a57614695838560028585614378565b61503e565b60606000808060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff1681526020019081526020016000206001018054806020026020016040519081016040528092919081815260200182805480156147f257602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116147a8575b50505050509050600281511415614b1a578373ffffffffffffffffffffffffffffffffffffffff168160008151811061482757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16148061489057508373ffffffffffffffffffffffffffffffffffffffff168160018151811061487057fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16145b156149af57836000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008760ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff16815260200190815260200160002060050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550614b19565b600181511415614b18578373ffffffffffffffffffffffffffffffffffffffff16816000815181106149dd57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff161415614b1757836000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008760ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff16815260200190815260200160002060050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b5b5b6000604051908082528060200260200182016040528015614b4a5781602001602082028038833980820191505090505b506000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff1681526020019081526020016000206001019080519060200190614bb9929190615e89565b506000604051908082528060200260200182016040528015614bea5781602001602082028038833980820191505090505b506000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff1681526020019081526020016000206002019080519060200190614c59929190615e89565b5060008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff16815260200190815260200160002060050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160006001850160ff1660ff16815260200190815260200160002060009054906101000a900460ff16158015614d725750600c60ff168360ff1614155b15614dec5760016000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff16815260200190815260200160002060030160006101000a81548160ff0219169083151502179055505b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060040160008154809291906001019190505550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614614f5a576000614eb8858561091c565b90508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fa00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a6600288604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a4614f5485828686612535565b5061503c565b8473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fa00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a6600287604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a461503b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168660028686614378565b5b505b50505050565b80615645576000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff1681526020019081526020016000206001016000815481106150b357fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206001018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060010160008154811061520057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff1681526020019081526020016000206001016000815481106152e657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a38273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff16815260200190815260200160002060010160008154811061545a57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050600201604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a36000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060010160008154811061557c57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550615c3d565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff1681526020019081526020016000206001016001815481106156af57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206001018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206001016001815481106157fc57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff1681526020019081526020016000206001016001815481106158e257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a38273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff168152602001908152602001600020600101600181548110615a5657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050600401604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a36000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff168152602001908152602001600020600101600181548110615b7857fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50505050565b6000806000869050600060018660ff161415615d6d575b600115615d68576000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008660ff1660ff16815260200190815260200160002060020160009054906101000a900460ff1615615d5657600190506000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008660ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150615d63565b8181935093505050615e80565b615c5a565b615e7d565b5b600115615e7c576000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff16815260200190815260200160002060030160009054906101000a900460ff1615615e6a57600190506000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150615e77565b8181935093505050615e80565b615d6e565b5b50505b94509492505050565b828054828255906000526020600020908101928215615f02579160200282015b82811115615f015782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190615ea9565b5b509050615f0f9190615f4a565b5090565b604051806060016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b615f8a91905b80821115615f8657600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101615f50565b5090565b9056fe75736572206973206e6f74206578697374732e2052656769737465722066697273742ea265627a7a72315820af9dc1981b35f6b51eed586bcc415db180133d09b9f5652383f93827ad1ad87164736f6c634300051100320000000000000000000000006787aa160ce8f512dbf2b7ed47d389cf0edf818d
Deployed Bytecode
0x6080604052600436106100f35760003560e01c80638109f1031161008a578063a87430ba11610059578063a87430ba146106c4578063dabfa58114610763578063e16f2cf214610854578063ecabdf79146108ca576100f3565b80638109f10314610533578063823fecc61461057e5780638da5cb5b146105cf5780639bd5ddfb14610626576100f3565b80634400739b116100c65780634400739b1461026d5780634635fd68146103d9578063509222cd14610454578063783f8cad146104bd576100f3565b8063236b619e146100f857806329c70400146101965780632a2d0c47146101c7578063348d448714610242575b600080fd5b34801561010457600080fd5b506101546004803603604081101561011b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff16906020019092919050505061091c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101a257600080fd5b506101ab610acb565b604051808260ff1660ff16815260200191505060405180910390f35b3480156101d357600080fd5b50610200600480360360208110156101ea57600080fd5b8101908080359060200190929190505050610ad0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561024e57600080fd5b50610257610b03565b6040518082815260200191505060405180910390f35b34801561027957600080fd5b506102c96004803603604081101561029057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050610b09565b604051808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200180602001851515151581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838103835287818151815260200191508051906020019060200280838360005b8381101561037e578082015181840152602081019050610363565b50505050905001838103825286818151815260200191508051906020019060200280838360005b838110156103c05780820151818401526020810190506103a5565b5050505090500197505050505050505060405180910390f35b3480156103e557600080fd5b50610412600480360360208110156103fc57600080fd5b8101908080359060200190929190505050610e4c565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561046057600080fd5b506104a36004803603602081101561047757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610e7f565b604051808215151515815260200191505060405180910390f35b3480156104c957600080fd5b50610519600480360360408110156104e057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050610ecd565b604051808215151515815260200191505060405180910390f35b61057c6004803603606081101561054957600080fd5b81019080803560ff169060200190929190803560ff169060200190929190803560ff169060200190929190505050610f3d565b005b6105cd6004803603604081101561059457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611841565b005b3480156105db57600080fd5b506105e4611850565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561063257600080fd5b506106826004803603604081101561064957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611876565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156106d057600080fd5b50610713600480360360208110156106e757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a25565b604051808481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001828152602001935050505060405180910390f35b34801561076f57600080fd5b506107bf6004803603604081101561078657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611a6f565b604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018060200183151515158152602001828103825284818151815260200191508051906020019060200280838360005b8381101561083e578082015181840152602081019050610823565b5050505090500194505050505060405180910390f35b34801561086057600080fd5b506108b06004803603604081101561087757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803560ff169060200190929190505050611c4a565b604051808215151515815260200191505060405180910390f35b3480156108d657600080fd5b50610906600480360360208110156108ed57600080fd5b81019080803560ff169060200190929190505050611cba565b6040518082815260200191505060405180910390f35b60005b600115610ac4576000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff1615610a5b576000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050610ac5565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16925061091f565b5b92915050565b600c81565b60016020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60035481565b60006060806000806000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008760ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff1681526020019081526020016000206001016000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008960ff1660ff1681526020019081526020016000206002016000808b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff16815260200190815260200160002060030160009054906101000a900460ff166000808c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008b60ff1660ff16815260200190815260200160002060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683805480602002602001604051908101604052809291908181526020018280548015610da957602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610d5f575b5050505050935082805480602002602001604051908101604052809291908181526020018280548015610e3157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311610de7575b50505050509250945094509450945094509295509295909350565b60026020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015414159050919050565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60008160ff1614156110065760066000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541115611001576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f596f75206e6f742068617665207468697320707265762e00000000000000000081525060200191505060405180910390fd5b611095565b600560008360ff1660ff168152602001908152602001600020543414611094576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e76616c69642070726963650000000000000000000000000000000000000081525060200191505060405180910390fd5b5b61109e33610e7f565b6110f3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180615f8e6023913960400191505060405180910390fd5b60018360ff161480611108575060028360ff16145b61117a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f696e76616c6964206d617472697800000000000000000000000000000000000081525060200191505060405180910390fd5b60018260ff161180156111945750600c60ff168260ff1611155b611206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600d8152602001807f696e76616c6964206c6576656c0000000000000000000000000000000000000081525060200191505060405180910390fd5b60018360ff161415611576576000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff16156112eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f6c6576656c20616c72656164792061637469766174656400000000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006001840360ff1660ff16815260200190815260200160002060020160009054906101000a900460ff16156113d45760008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006001850360ff1660ff16815260200190815260200160002060020160006101000a81548160ff0219169083151502179055505b60006113e03384611876565b9050806000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008560ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008560ff1660ff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506114f933828585611cd2565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119600186604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a35061183c565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff161561164f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f6c6576656c20616c72656164792061637469766174656400000000000000000081525060200191505060405180910390fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160006001840360ff1660ff16815260200190815260200160002060030160009054906101000a900460ff16156117385760008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160006001850360ff1660ff16815260200190815260200160002060030160006101000a81548160ff0219169083151502179055505b6000611744338461091c565b905060016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008560ff1660ff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506117c333828585612535565b8073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f18a92df19fd94d6cfff209966673a5ca05a1c8e2bb68e097fce2bdc2ed811119600286604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a3505b505050565b61184c338383613bf9565b5050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60005b600115611a1e576000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff16156119b5576000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050611a1f565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169250611879565b5b92915050565b60006020528060005260406000206000915090508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154905083565b6000606060008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008560ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008660ff1660ff1681526020019081526020016000206001016000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008760ff1660ff16815260200190815260200160002060020160009054906101000a900460ff1681805480602002602001604051908101604052809291908181526020018280548015611c3657602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611bec575b505050505091509250925092509250925092565b60008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff16905092915050565b60056020528060005260406000206000915090505481565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008360ff1660ff1681526020019081526020016000206001018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060036000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008460ff1660ff168152602001908152602001600020600101805490501015611eee578273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826001856000808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008860ff1660ff16815260200190815260200160002060010180549050604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a3611ee9838560018585614378565b61252f565b8273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826001856003604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a36000604051908082528060200260200182016040528015611fa15781602001602082028038833980820191505090505b506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008460ff1660ff1681526020019081526020016000206001019080519060200190612010929190615e89565b506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160006001840160ff1660ff16815260200190815260200160002060009054906101000a900460ff1615801561208e5750600c60ff168260ff1614155b156121085760016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008460ff1660ff16815260200190815260200160002060020160006101000a81548160ff0219169083151502179055505b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16146123bf5760006121698484611876565b90508073ffffffffffffffffffffffffffffffffffffffff166000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008560ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122b457806000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008560ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008460ff1660ff168152602001908152602001600020600301600081548092919060010191905055508473ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fa00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a6600187604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a46123b984828585611cd2565b5061252e565b6123ef600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168560018585614378565b600080600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008360ff1660ff168152602001908152602001600020600301600081548092919060010191905055508373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fa00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a6600186604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a45b5b50505050565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008360ff1660ff16815260200190815260200160002060009054906101000a900460ff1661260d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260038152602001807f353030000000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60026000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010180549050101561327a576000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206001018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a3826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561291957612914838560028585614378565b613bf3565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff1681526020019081526020016000206002018590806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505060008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff168152602001908152602001600020600101805490509050600281148015612b8757508473ffffffffffffffffffffffffffffffffffffffff166000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101600081548110612b4457fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b8015612c4f57508473ffffffffffffffffffffffffffffffffffffffff166000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101600181548110612c0c57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b15612dcc5760016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101805490501415612d43578173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876005604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a3612dc7565b8173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876006604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a35b613267565b6001811480612ddb5750600281145b8015612ea357508473ffffffffffffffffffffffffffffffffffffffff166000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101600081548110612e6057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156130205760016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101805490501415612f97578173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876003604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a361301b565b8173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876004604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a35b613266565b6002811480156130ec57508473ffffffffffffffffffffffffffffffffffffffff166000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff1681526020019081526020016000206001016001815481106130a957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b156132655760016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff1681526020019081526020016000206001018054905014156131e0578173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876005604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a3613264565b8173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002876006604051808460ff1681526020018360ff1660ff1681526020018260ff168152602001935050505060405180910390a35b5b5b5b61327386838686614620565b5050613bf3565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206002018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050600073ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461381b576000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060010160018154811061344f57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff1681526020019081526020016000206001016000815481106134f757fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614801561367c57506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010160008154811061363957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16145b1561369f5761368e8484846001615044565b61369a84848484614620565b613bf3565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010160008154811061379857fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156137fd576137ec8484846001615044565b6137f884848484614620565b613bf3565b61380a8484846000615044565b61381684848484614620565b613bf3565b8373ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010160018154811061389957fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156138fe576138ed8484846000615044565b6138f984848484614620565b613bf3565b8373ffffffffffffffffffffffffffffffffffffffff166000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060010160008154811061397c57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614156139e1576139d08484846001615044565b6139dc84848484614620565b613bf3565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff168152602001908152602001600020600101600181548110613a4b57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff168152602001908152602001600020600101805490506000808060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff168152602001908152602001600020600101600081548110613b3b57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff1681526020019081526020016000206001018054905011613bd857613bd38484846000615044565b613be6565b613be58484846001615044565b5b613bf284848484614620565b5b50505050565b60008160ff161415613c835760066003541115613c7e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f596f75206e6f742068617665207468697320707265762e00000000000000000081525060200191505060405180910390fd5b613d00565b66b1a2bc2ec500003414613cff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f496e76616c696420436f7374000000000000000000000000000000000000000081525060200191505060405180910390fd5b5b613d0983610e7f565b15613d7c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f757365722065786973747300000000000000000000000000000000000000000081525060200191505060405180910390fd5b613d8582610e7f565b613df7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f7265666572726572206e6f74206578697374730000000000000000000000000081525060200191505060405180910390fd5b6000833b905060008163ffffffff1614613e79576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260028152602001807f636300000000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b613e81615f13565b604051806060016040528060035481526020018573ffffffffffffffffffffffffffffffffffffffff16815260200160008152509050806000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550604082015181600201559050508460016000600354815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003016000600160ff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000600160ff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508460026000600354815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506003600081548092919060010191905055506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000815480929190600101919050555060006141ca866001611876565b9050806000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206005016000600160ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506142718682600187611cd2565b6142888661428088600161091c565b600187612535565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001548573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f309bb360e8b69c23937ccc5fb01f9aeeead1c95a99604e175113ff82f2b1723a6000808a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001546040518082815260200191505060405180910390a4505050505050565b60018160ff1614156145715760008061439387878787615c43565b915091508173ffffffffffffffffffffffffffffffffffffffff166108fc600560008760ff1660ff168152602001908152602001600020549081150290604051600060405180830381858888f193505050506144c4578573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fc49a43029f7a5081f25c42ed054858ba33024bb737d162eeb4eea7e8923098774788886000604051808581526020018460ff1660ff1681526020018360ff1660ff1681526020018260ff16815260200194505050505060405180910390a38173ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f193505050501580156144bc573d6000803e3d6000fd5b505050614619565b8573ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fc49a43029f7a5081f25c42ed054858ba33024bb737d162eeb4eea7e892309877600560008860ff1660ff1681526020019081526020016000205488886001604051808581526020018460ff1660ff1681526020018360ff1660ff1681526020018260ff16815260200194505050505060405180910390a35050614618565b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fc49a43029f7a5081f25c42ed054858ba33024bb737d162eeb4eea7e892309877600560008660ff1660ff1681526020019081526020016000205486866001604051808581526020018460ff1660ff1681526020018360ff1660ff1681526020018260ff16815260200194505050505060405180910390a35b5b5050505050565b60046000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060020180549050101561469a57614695838560028585614378565b61503e565b60606000808060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff1681526020019081526020016000206001018054806020026020016040519081016040528092919081815260200182805480156147f257602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116147a8575b50505050509050600281511415614b1a578373ffffffffffffffffffffffffffffffffffffffff168160008151811061482757fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16148061489057508373ffffffffffffffffffffffffffffffffffffffff168160018151811061487057fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16145b156149af57836000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008760ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff16815260200190815260200160002060050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550614b19565b600181511415614b18578373ffffffffffffffffffffffffffffffffffffffff16816000815181106149dd57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff161415614b1757836000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008760ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff16815260200190815260200160002060050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b5b5b6000604051908082528060200260200182016040528015614b4a5781602001602082028038833980820191505090505b506000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff1681526020019081526020016000206001019080519060200190614bb9929190615e89565b506000604051908082528060200260200182016040528015614bea5781602001602082028038833980820191505090505b506000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff1681526020019081526020016000206002019080519060200190614c59929190615e89565b5060008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff16815260200190815260200160002060050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160006001850160ff1660ff16815260200190815260200160002060009054906101000a900460ff16158015614d725750600c60ff168360ff1614155b15614dec5760016000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff16815260200190815260200160002060030160006101000a81548160ff0219169083151502179055505b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060040160008154809291906001019190505550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614614f5a576000614eb8858561091c565b90508573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fa00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a6600288604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a4614f5485828686612535565b5061503c565b8473ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fa00c953eff38ec1b71e7fe060b2ab8df0bbe5354319fbdde4fbdafd6324386a6600287604051808360ff1681526020018260ff1660ff1681526020019250505060405180910390a461503b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168660028686614378565b5b505b50505050565b80615645576000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff1681526020019081526020016000206001016000815481106150b357fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206001018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060010160008154811061520057fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff1681526020019081526020016000206001016000815481106152e657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a38273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff16815260200190815260200160002060010160008154811061545a57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050600201604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a36000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff16815260200190815260200160002060010160008154811061557c57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550615c3d565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008560ff1660ff1681526020019081526020016000206001016001815481106156af57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206001018490806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff1681526020019081526020016000206001016001815481106157fc57fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff1681526020019081526020016000206001016001815481106158e257fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a38273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167f68062c5925c4317adf3a7095478d28b33fd8b41458bc7620b61bc46bf1b24d826002856000808060008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008a60ff1660ff168152602001908152602001600020600101600181548110615a5657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008860ff1660ff16815260200190815260200160002060010180549050600401604051808460ff1681526020018360ff1660ff1681526020018260ff1660ff168152602001935050505060405180910390a36000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008360ff1660ff168152602001908152602001600020600101600181548110615b7857fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008460ff1660ff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50505050565b6000806000869050600060018660ff161415615d6d575b600115615d68576000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008660ff1660ff16815260200190815260200160002060020160009054906101000a900460ff1615615d5657600190506000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160008660ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150615d63565b8181935093505050615e80565b615c5a565b615e7d565b5b600115615e7c576000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff16815260200190815260200160002060030160009054906101000a900460ff1615615e6a57600190506000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160008660ff1660ff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150615e77565b8181935093505050615e80565b615d6e565b5b50505b94509492505050565b828054828255906000526020600020908101928215615f02579160200282015b82811115615f015782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190615ea9565b5b509050615f0f9190615f4a565b5090565b604051806060016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600081525090565b615f8a91905b80821115615f8657600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905550600101615f50565b5090565b9056fe75736572206973206e6f74206578697374732e2052656769737465722066697273742ea265627a7a72315820af9dc1981b35f6b51eed586bcc415db180133d09b9f5652383f93827ad1ad87164736f6c63430005110032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000006787aa160ce8f512dbf2b7ed47d389cf0edf818d
-----Decoded View---------------
Arg [0] : ownerAddress (address): 0x6787Aa160CE8f512DBf2B7Ed47D389cF0eDF818d
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000006787aa160ce8f512dbf2b7ed47d389cf0edf818d
Deployed Bytecode Sourcemap
36:19765:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16319:350;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16319:350:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16319:350:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;750:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;750:37:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;851:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;851:43:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;851:43:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;952:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;952:26:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17335:489;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17335:489:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17335:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;17335:489:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;17335:489:0;;;;;;;;;;;;;;;;;;;;;;901:39;;8:9:-1;5:2;;;30:1;27;20:12;5:2;901:39:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;901:39:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;17836:110;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17836:110:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17836:110:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;16849:157;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16849:157:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16849:157:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;2525:1773;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2525:1773:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;2376:137;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2376:137:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;985:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;985:29:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15952:349;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15952:349:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15952:349:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;800:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;800:44:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;800:44:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17014:313;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17014:313:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17014:313:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;17014:313:0;;;;;;;;;;;;;;;;;;;16685:156;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16685:156:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16685:156:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;1024:40;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1024:40:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1024:40:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16319:350;16402:7;16422:240;16429:4;16422:240;;;16454:5;:34;16460:5;:18;16466:11;16460:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;16454:34;;;;;;;;;;;;;;;:49;;:56;16504:5;16454:56;;;;;;;;;;;;;;;;;;;;;;;;;16450:131;;;16538:5;:18;16544:11;16538:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;16531:34;;;;16450:131;16623:5;:18;16629:11;16623:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;16609:41;;16422:240;;;16319:350;;;;;:::o;750:37::-;785:2;750:37;:::o;851:43::-;;;;;;;;;;;;;;;;;;;;;;:::o;952:26::-;;;;:::o;17335:489::-;17414:7;17423:16;17441;17459:4;17465:7;17493:5;:18;17499:11;17493:18;;;;;;;;;;;;;;;:27;;:34;17521:5;17493:34;;;;;;;;;;;;;;;:50;;;;;;;;;;;;17562:5;:18;17568:11;17562:18;;;;;;;;;;;;;;;:27;;:34;17590:5;17562:34;;;;;;;;;;;;;;;:54;;17635:5;:18;17641:11;17635:18;;;;;;;;;;;;;;;:27;;:34;17663:5;17635:34;;;;;;;;;;;;;;;:55;;17709:5;:18;17715:11;17709:18;;;;;;;;;;;;;;;:27;;:34;17737:5;17709:34;;;;;;;;;;;;;;;:42;;;;;;;;;;;;17770:5;:18;17776:11;17770:18;;;;;;;;;;;;;;;:27;;:34;17798:5;17770:34;;;;;;;;;;;;;;;:45;;;;;;;;;;;;17485:331;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17335:489;;;;;;;;:::o;901:39::-;;;;;;;;;;;;;;;;;;;;;;:::o;17836:110::-;17893:4;17936:1;17918:5;:11;17924:4;17918:11;;;;;;;;;;;;;;;:14;;;:19;;17910:28;;17836:110;;;:::o;16849:157::-;16934:4;16958:5;:18;16964:11;16958:18;;;;;;;;;;;;;;;:33;;:40;16992:5;16958:40;;;;;;;;;;;;;;;;;;;;;;;;;16951:47;;16849:157;;;;:::o;2525:1773::-;2625:1;2618:5;:8;;;2615:198;;;2674:1;2651:5;:17;2657:10;2651:17;;;;;;;;;;;;;;;:20;;;:24;;2643:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2615:198;;;2766:10;:17;2777:5;2766:17;;;;;;;;;;;;;;;;2753:9;:30;2745:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2615:198;2839:24;2852:10;2839:12;:24::i;:::-;2831:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2932:1;2922:6;:11;;;:26;;;;2947:1;2937:6;:11;;;2922:26;2914:53;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3010:1;3002:5;:9;;;:32;;;;;785:2;3015:19;;:5;:19;;;;3002:32;2994:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3086:1;3076:6;:11;;;3072:1219;;;3113:5;:17;3119:10;3113:17;;;;;;;;;;;;;;;:32;;:39;3146:5;3113:39;;;;;;;;;;;;;;;;;;;;;;;;;3112:40;3104:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3201:5;:17;3207:10;3201:17;;;;;;;;;;;;;;;:26;;:35;3234:1;3228:5;:7;3201:35;;;;;;;;;;;;;;;:43;;;;;;;;;;;;3197:135;;;3311:5;3265;:17;3271:10;3265:17;;;;;;;;;;;;;;;:26;;:35;3298:1;3292:5;:7;3265:35;;;;;;;;;;;;;;;:43;;;:51;;;;;;;;;;;;;;;;;;3197:135;3352:22;3377:37;3396:10;3408:5;3377:18;:37::i;:::-;3352:62;;3481:14;3429:5;:17;3435:10;3429:17;;;;;;;;;;;;;;;:26;;:33;3456:5;3429:33;;;;;;;;;;;;;;;:49;;;:66;;;;;;;;;;;;;;;;;;3552:4;3510:5;:17;3516:10;3510:17;;;;;;;;;;;;;;;:32;;:39;3543:5;3510:39;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;3571:58;3589:10;3601:14;3617:5;3623;3571:17;:58::i;:::-;3683:14;3663:45;;3671:10;3663:45;;;3699:1;3702:5;3663:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3072:1219;;;;3752:5;:17;3758:10;3752:17;;;;;;;;;;;;;;;:32;;:39;3785:5;3752:39;;;;;;;;;;;;;;;;;;;;;;;;;3751:40;3743:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3841:5;:17;3847:10;3841:17;;;;;;;;;;;;;;;:26;;:35;3874:1;3868:5;:7;3841:35;;;;;;;;;;;;;;;:43;;;;;;;;;;;;3837:135;;;3951:5;3905;:17;3911:10;3905:17;;;;;;;;;;;;;;;:26;;:35;3938:1;3932:5;:7;3905:35;;;;;;;;;;;;;;;:43;;;:51;;;;;;;;;;;;;;;;;;3837:135;3988:22;4013:38;4033:10;4045:5;4013:19;:38::i;:::-;3988:63;;4122:4;4080:5;:17;4086:10;4080:17;;;;;;;;;;;;;;;:32;;:39;4113:5;4080:39;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;4141:59;4160:10;4172:14;4188:5;4194;4141:18;:59::i;:::-;4254:14;4234:45;;4242:10;4234:45;;;4270:1;4273:5;4234:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3072:1219;;2525:1773;;;:::o;2376:137::-;2458:47;2471:10;2483:15;2499:5;2458:12;:47::i;:::-;2376:137;;:::o;985:29::-;;;;;;;;;;;;;:::o;15952:349::-;16034:7;16054:240;16061:4;16054:240;;;16086:5;:34;16092:5;:18;16098:11;16092:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;16086:34;;;;;;;;;;;;;;;:49;;:56;16136:5;16086:56;;;;;;;;;;;;;;;;;;;;;;;;;16082:131;;;16170:5;:18;16176:11;16170:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;16163:34;;;;16082:131;16255:5;:18;16261:11;16255:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;16241:41;;16054:240;;;15952:349;;;;;:::o;800:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;17014:313::-;17092:7;17101:16;17119:4;17144:5;:18;17150:11;17144:18;;;;;;;;;;;;;;;:27;;:34;17172:5;17144:34;;;;;;;;;;;;;;;:50;;;;;;;;;;;;17213:5;:18;17219:11;17213:18;;;;;;;;;;;;;;;:27;;:34;17241:5;17213:34;;;;;;;;;;;;;;;:44;;17276:5;:18;17282:11;17276:18;;;;;;;;;;;;;;;:27;;:34;17304:5;17276:34;;;;;;;;;;;;;;;:42;;;;;;;;;;;;17136:183;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17014:313;;;;;:::o;16685:156::-;16769:4;16793:5;:18;16799:11;16793:18;;;;;;;;;;;;;;;:33;;:40;16827:5;16793:40;;;;;;;;;;;;;;;;;;;;;;;;;16786:47;;16685:156;;;;:::o;1024:40::-;;;;;;;;;;;;;;;;;:::o;5891:1689::-;6008:5;:22;6014:15;6008:22;;;;;;;;;;;;;;;:31;;:38;6040:5;6008:38;;;;;;;;;;;;;;;:48;;6062:11;6008:66;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;6008:66:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6149:1;6091:5;:22;6097:15;6091:22;;;;;;;;;;;;;;;:31;;:38;6123:5;6091:38;;;;;;;;;;;;;;;:48;;:55;;;;:59;6087:297;;;6198:15;6172:116;;6185:11;6172:116;;;6215:1;6218:5;6231;:22;6237:15;6231:22;;;;;;;;;;;;;;;:31;;:38;6263:5;6231:38;;;;;;;;;;;;;;;:48;;:55;;;;6172:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6310:62;6327:15;6344:11;6357:1;6360:5;6366;6310:16;:62::i;:::-;6303:69;;6087:297;6435:15;6409:55;;6422:11;6409:55;;;6452:1;6455:5;6462:1;6409:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6564:1;6550:16;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;148:4;140:6;136:17;126:27;;0:157;6550:16:0;;;;6499:5;:22;6505:15;6499:22;;;;;;;;;;;;;;;:31;;:38;6531:5;6499:38;;;;;;;;;;;;;;;:48;;:67;;;;;;;;;;;;:::i;:::-;;6582:5;:22;6588:15;6582:22;;;;;;;;;;;;;;;:37;;:46;6626:1;6620:5;:7;6582:46;;;;;;;;;;;;;;;;;;;;;;;;;6581:47;:70;;;;;785:2;6632:19;;:5;:19;;;;6581:70;6577:156;;;6717:4;6668:5;:22;6674:15;6668:22;;;;;;;;;;;;;;;:31;;:38;6700:5;6668:38;;;;;;;;;;;;;;;:46;;;:53;;;;;;;;;;;;;;;;;;6577:156;6777:5;;;;;;;;;;;6758:24;;:15;:24;;;6754:819;;6812:27;6842:42;6861:15;6878:5;6842:18;:42::i;:::-;6812:72;;6961:19;6903:77;;:5;:22;6909:15;6903:22;;;;;;;;;;;;;;;:31;;:38;6935:5;6903:38;;;;;;;;;;;;;;;:54;;;;;;;;;;;;:77;;;6899:194;;7058:19;7001:5;:22;7007:15;7001:22;;;;;;;;;;;;;;;:31;;:38;7033:5;7001:38;;;;;;;;;;;;;;;:54;;;:76;;;;;;;;;;;;;;;;;;6899:194;7121:5;:22;7127:15;7121:22;;;;;;;;;;;;;;;:31;;:38;7153:5;7121:38;;;;;;;;;;;;;;;:52;;;:54;;;;;;;;;;;;;7242:11;7195:69;;7221:19;7195:69;;7204:15;7195:69;;;7255:1;7258:5;7195:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7279:68;7297:15;7314:19;7335:5;7341;7279:17;:68::i;:::-;6754:819;;;;7380:52;7397:5;;;;;;;;;;;7404:11;7417:1;7420:5;7426;7380:16;:52::i;:::-;7447:5;:12;7453:5;;;;;;;;;;;7447:12;;;;;;;;;;;;;;;:21;;:28;7469:5;7447:28;;;;;;;;;;;;;;;:42;;;:44;;;;;;;;;;;;;7539:11;7511:50;;7535:1;7511:50;;7520:5;;;;;;;;;;;7511:50;;;7552:1;7555:5;7511:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6754:819;5891:1689;;;;;:::o;7588:4767::-;7714:5;:22;7720:15;7714:22;;;;;;;;;;;;;;;:37;;:44;7752:5;7714:44;;;;;;;;;;;;;;;;;;;;;;;;;7706:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7859:1;7791:5;:22;7797:15;7791:22;;;;;;;;;;;;;;;:31;;:38;7823:5;7791:38;;;;;;;;;;;;;;;:58;;:65;;;;:69;7787:2286;;;7877:5;:22;7883:15;7877:22;;;;;;;;;;;;;;;:31;;:38;7909:5;7877:38;;;;;;;;;;;;;;;:58;;7941:11;7877:76;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;7877:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7999:15;7973:126;;7986:11;7973:126;;;8016:1;8019:5;8032;:22;8038:15;8032:22;;;;;;;;;;;;;;;:31;;:38;8064:5;8032:38;;;;;;;;;;;;;;;:58;;:65;;;;7973:126;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8188:15;8135:5;:18;8141:11;8135:18;;;;;;;;;;;;;;;:27;;:34;8163:5;8135:34;;;;;;;;;;;;;;;:50;;;:68;;;;;;;;;;;;;;;;;;8243:5;;;;;;;;;;;8224:24;;:15;:24;;;8220:134;;;8276:62;8293:15;8310:11;8323:1;8326:5;8332;8276:16;:62::i;:::-;8269:69;;8220:134;8382:11;8396:5;:22;8402:15;8396:22;;;;;;;;;;;;;;;:31;;:38;8428:5;8396:38;;;;;;;;;;;;;;;:54;;;;;;;;;;;;8382:68;;8477:5;:10;8483:3;8477:10;;;;;;;;;;;;;;;:19;;:26;8497:5;8477:26;;;;;;;;;;;;;;;:47;;8530:11;8477:65;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;8477:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8572:8;8583:5;:10;8589:3;8583:10;;;;;;;;;;;;;;;:19;;:26;8603:5;8583:26;;;;;;;;;;;;;;;:46;;:53;;;;8572:64;;8677:1;8670:3;:8;8669:102;;;;;8755:15;8702:68;;:5;:10;8708:3;8702:10;;;;;;;;;;;;;;;:19;;:26;8722:5;8702:26;;;;;;;;;;;;;;;:46;;8749:1;8702:49;;;;;;;;;;;;;;;;;;;;;;;;;:68;;;8669:102;:193;;;;;8846:15;8793:68;;:5;:10;8799:3;8793:10;;;;;;;;;;;;;;;:19;;:26;8813:5;8793:26;;;;;;;;;;;;;;;:46;;8840:1;8793:49;;;;;;;;;;;;;;;;;;;;;;;;;:68;;;8669:193;8665:1313;;;8956:1;8887:5;:22;8893:15;8887:22;;;;;;;;;;;;;;;:31;;:38;8919:5;8887:38;;;;;;;;;;;;;;;:58;;:65;;;;:70;8883:264;;;9013:3;8987:43;;9000:11;8987:43;;;9018:1;9021:5;9028:1;8987:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8883:264;;;9110:3;9084:43;;9097:11;9084:43;;;9115:1;9118:5;9125:1;9084:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8883:264;8665:1313;;;9181:1;9174:3;:8;:20;;;;9193:1;9186:3;:8;9174:20;9173:115;;;;;9273:15;9220:68;;:5;:10;9226:3;9220:10;;;;;;;;;;;;;;;:19;;:26;9240:5;9220:26;;;;;;;;;;;;;;;:46;;9267:1;9220:49;;;;;;;;;;;;;;;;;;;;;;;;;:68;;;9173:115;9169:809;;;9382:1;9313:5;:22;9319:15;9313:22;;;;;;;;;;;;;;;:31;;:38;9345:5;9313:38;;;;;;;;;;;;;;;:58;;:65;;;;:70;9309:264;;;9439:3;9413:43;;9426:11;9413:43;;;9444:1;9447:5;9454:1;9413:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9309:264;;;9536:3;9510:43;;9523:11;9510:43;;;9541:1;9544:5;9551:1;9510:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9309:264;9169:809;;;9605:1;9598:3;:8;:80;;;;;9663:15;9610:68;;:5;:10;9616:3;9610:10;;;;;;;;;;;;;;;:19;;:26;9630:5;9610:26;;;;;;;;;;;;;;;:46;;9657:1;9610:49;;;;;;;;;;;;;;;;;;;;;;;;;:68;;;9598:80;9594:384;;;9772:1;9703:5;:22;9709:15;9703:22;;;;;;;;;;;;;;;:31;;:38;9735:5;9703:38;;;;;;;;;;;;;;;:58;;:65;;;;:70;9699:264;;;9829:3;9803:43;;9816:11;9803:43;;;9834:1;9837:5;9844:1;9803:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9699:264;;;9926:3;9900:43;;9913:11;9900:43;;;9931:1;9934:5;9941:1;9900:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9699:264;9594:384;9169:809;8665:1313;10001:60;10031:11;10044:3;10049:5;10055;10001:29;:60::i;:::-;9994:67;;;;7787:2286;10093:5;:22;10099:15;10093:22;;;;;;;;;;;;;;;:31;;:38;10125:5;10093:38;;;;;;;;;;;;;;;:59;;10158:11;10093:77;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;10093:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10248:1;10187:63;;:5;:22;10193:15;10187:22;;;;;;;;;;;;;;;:31;;:38;10219:5;10187:38;;;;;;;;;;;;;;;:49;;;;;;;;;;;;:63;;;10183:1108;;10355:5;:22;10361:15;10355:22;;;;;;;;;;;;;;;:31;;:38;10387:5;10355:38;;;;;;;;;;;;;;;:58;;10414:1;10355:61;;;;;;;;;;;;;;;;;;;;;;;;;10272:144;;:5;:22;10278:15;10272:22;;;;;;;;;;;;;;;:31;;:38;10304:5;10272:38;;;;;;;;;;;;;;;:58;;10331:1;10272:61;;;;;;;;;;;;;;;;;;;;;;;;;:144;;;10271:300;;;;;10521:5;:22;10527:15;10521:22;;;;;;;;;;;;;;;:31;;:38;10553:5;10521:38;;;;;;;;;;;;;;;:49;;;;;;;;;;;;10439:131;;:5;:22;10445:15;10439:22;;;;;;;;;;;;;;;:31;;:38;10471:5;10439:38;;;;;;;;;;;;;;;:58;;10498:1;10439:61;;;;;;;;;;;;;;;;;;;;;;;;;:131;;;10271:300;10267:1013;;;10594:53;10605:11;10618:15;10635:5;10642:4;10594:10;:53::i;:::-;10673:72;10703:11;10716:15;10733:5;10739;10673:29;:72::i;:::-;10666:79;;10267:1013;10854:5;:22;10860:15;10854:22;;;;;;;;;;;;;;;:31;;:38;10886:5;10854:38;;;;;;;;;;;;;;;:49;;;;;;;;;;;;10771:132;;:5;:22;10777:15;10771:22;;;;;;;;;;;;;;;:31;;:38;10803:5;10771:38;;;;;;;;;;;;;;;:58;;10830:1;10771:61;;;;;;;;;;;;;;;;;;;;;;;;;:132;;;10767:513;;;10920:53;10931:11;10944:15;10961:5;10968:4;10920:10;:53::i;:::-;10999:72;11029:11;11042:15;11059:5;11065;10999:29;:72::i;:::-;10992:79;;10767:513;11112:54;11123:11;11136:15;11153:5;11160;11112:10;:54::i;:::-;11192:72;11222:11;11235:15;11252:5;11258;11192:29;:72::i;:::-;11185:79;;10183:1108;11372:11;11307:76;;:5;:22;11313:15;11307:22;;;;;;;;;;;;;;;:31;;:38;11339:5;11307:38;;;;;;;;;;;;;;;:58;;11366:1;11307:61;;;;;;;;;;;;;;;;;;;;;;;;;:76;;;11303:519;;;11400:54;11411:11;11424:15;11441:5;11448;11400:10;:54::i;:::-;11476:72;11506:11;11519:15;11536:5;11542;11476:29;:72::i;:::-;11469:79;;11303:519;11635:11;11570:76;;:5;:22;11576:15;11570:22;;;;;;;;;;;;;;;:31;;:38;11602:5;11570:38;;;;;;;;;;;;;;;:58;;11629:1;11570:61;;;;;;;;;;;;;;;;;;;;;;;;;:76;;;11566:256;;;11663:53;11674:11;11687:15;11704:5;11711:4;11663:10;:53::i;:::-;11738:72;11768:11;11781:15;11798:5;11804;11738:29;:72::i;:::-;11731:79;;11566:256;11975:5;:68;11981:5;:22;11987:15;11981:22;;;;;;;;;;;;;;;:31;;:38;12013:5;11981:38;;;;;;;;;;;;;;;:58;;12040:1;11981:61;;;;;;;;;;;;;;;;;;;;;;;;;11975:68;;;;;;;;;;;;;;;:77;;:84;12053:5;11975:84;;;;;;;;;;;;;;;:104;;:111;;;;11846:5;:68;11852:5;:22;11858:15;11852:22;;;;;;;;;;;;;;;:31;;:38;11884:5;11852:38;;;;;;;;;;;;;;;:58;;11911:1;11852:61;;;;;;;;;;;;;;;;;;;;;;;;;11846:68;;;;;;;;;;;;;;;:77;;:84;11924:5;11846:84;;;;;;;;;;;;;;;:104;;:111;;;;:240;11842:413;;12103:54;12114:11;12127:15;12144:5;12151;12103:10;:54::i;:::-;11842:413;;;12190:53;12201:11;12214:15;12231:5;12238:4;12190:10;:53::i;:::-;11842:413;12275:72;12305:11;12318:15;12335:5;12341;12275:29;:72::i;:::-;7588:4767;;;;;:::o;4314:1565::-;4421:1;4414:5;:8;;;4411:163;;;4459:1;4446:10;;:14;;4438:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4411:163;;;4536:10;4523:9;:23;4515:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4411:163;4602:25;4615:11;4602:12;:25::i;:::-;4601:26;4593:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4662:29;4675:15;4662:12;:29::i;:::-;4654:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4732:11;4798;4786:24;4778:32;;4847:1;4839:4;:9;;;4831:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4876:23;;:::i;:::-;4902:124;;;;;;;;4933:10;;4902:124;;;;4968:15;4902:124;;;;;;5013:1;4902:124;;;4876:150;;5068:4;5047:5;:18;5053:11;5047:18;;;;;;;;;;;;;;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5109:11;5083;:23;5095:10;;5083:23;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;5171:15;5141:5;:18;5147:11;5141:18;;;;;;;;;;;;;;;:27;;;:45;;;;;;;;;;;;;;;;;;5246:4;5207:5;:18;5213:11;5207:18;;;;;;;;;;;;;;;:33;;:36;5241:1;5207:36;;;;;;;;;;;;;;:43;;;;;;;;;;;;;;;;;;5301:4;5262:5;:18;5268:11;5262:18;;;;;;;;;;;;;;;:33;;:36;5296:1;5262:36;;;;;;;;;;;;;;:43;;;;;;;;;;;;;;;;;;5358:11;5336:7;:19;5344:10;;5336:19;;;;;;;;;;;;:33;;;;;;;;;;;;;;;;;;5380:10;;:12;;;;;;;;;;;;;5413:5;:22;5419:15;5413:22;;;;;;;;;;;;;;;:36;;;:38;;;;;;;;;;;;;5464:22;5489:34;5508:11;5521:1;5489:18;:34::i;:::-;5464:59;;5583:14;5534:5;:18;5540:11;5534:18;;;;;;;;;;;;;;;:27;;:30;5562:1;5534:30;;;;;;;;;;;;;:46;;;:63;;;;;;;;;;;;;;;;;;5608:55;5626:11;5639:14;5655:1;5657:5;5608:17;:55::i;:::-;5676:77;5695:11;5708:35;5728:11;5741:1;5708:19;:35::i;:::-;5745:1;5747:5;5676:18;:77::i;:::-;5822:5;:18;5828:11;5822:18;;;;;;;;;;;;;;;:21;;;5805:15;5779:92;;5792:11;5779:92;;;5845:5;:22;5851:15;5845:22;;;;;;;;;;;;;;;:25;;;5779:92;;;;;;;;;;;;;;;;;;4314:1565;;;;;;:::o;18927:701::-;19057:1;19050:5;:8;;;19047:574;;;19071:16;19089:21;19114:49;19129:11;19142:5;19149:6;19157:5;19114:14;:49::i;:::-;19070:93;;;;19214:8;19198:31;;:50;19230:10;:17;19241:5;19230:17;;;;;;;;;;;;;;;;19198:50;;;;;;;;;;;;;;;;;;;;;;;19193:235;;19292:5;19272:64;;19283:8;19272:64;;;19298:21;19321:6;19328:5;19334:1;19272:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19374:8;19358:35;;:58;19394:21;19358:58;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19358:58:0;19351:65;;;;19193:235;19465:5;19445:59;;19456:8;19445:59;;;19471:10;:17;19482:5;19471:17;;;;;;;;;;;;;;;;19489:6;19496:5;19502:1;19445:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19047:574;;;;;19570:5;19547:62;;19558:11;19547:62;;;19576:10;:17;19587:5;19576:17;;;;;;;;;;;;;;;;19594:6;19601:5;19607:1;19547:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19047:574;18927:701;;;;;;:::o;13994:1946::-;14198:1;14129:5;:22;14135:15;14129:22;;;;;;;;;;;;;;;:31;;:38;14161:5;14129:38;;;;;;;;;;;;;;;:59;;:66;;;;:70;14125:172;;;14223:62;14240:15;14257:11;14270:1;14273:5;14279;14223:16;:62::i;:::-;14216:69;;14125:172;14317:19;14339:5;:61;14345:5;:22;14351:15;14345:22;;;;;;;;;;;;;;;:31;;:38;14377:5;14345:38;;;;;;;;;;;;;;;:54;;;;;;;;;;;;14339:61;;;;;;;;;;;;;;;:70;;:77;14410:5;14339:77;;;;;;;;;;;;;;;:97;;14317:119;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14474:1;14461:2;:9;:14;14457:501;;;14505:15;14496:24;;:2;14499:1;14496:5;;;;;;;;;;;;;;:24;;;:69;;;;14550:15;14541:24;;:2;14544:1;14541:5;;;;;;;;;;;;;;:24;;;14496:69;14492:455;;;14677:15;14586:5;:61;14592:5;:22;14598:15;14592:22;;;;;;;;;;;;;;;:31;;:38;14624:5;14592:38;;;;;;;;;;;;;;;:54;;;;;;;;;;;;14586:61;;;;;;;;;;;;;;;:70;;:77;14657:5;14586:77;;;;;;;;;;;;;;;:88;;;:106;;;;;;;;;;;;;;;;;;14492:455;;;14731:1;14718:2;:9;:14;14714:233;;;14766:15;14757:24;;:2;14760:1;14757:5;;;;;;;;;;;;;;:24;;;14753:179;;;14897:15;14806:5;:61;14812:5;:22;14818:15;14812:22;;;;;;;;;;;;;;;:31;;:38;14844:5;14812:38;;;;;;;;;;;;;;;:54;;;;;;;;;;;;14806:61;;;;;;;;;;;;;;;:70;;:77;14877:5;14806:77;;;;;;;;;;;;;;;:88;;;:106;;;;;;;;;;;;;;;;;;14753:179;14714:233;14492:455;14457:501;15053:1;15039:16;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;148:4;140:6;136:17;126:27;;0:157;15039:16:0;;;;14978:5;:22;14984:15;14978:22;;;;;;;;;;;;;;;:31;;:38;15010:5;14978:38;;;;;;;;;;;;;;;:58;;:77;;;;;;;;;;;;:::i;:::-;;15142:1;15128:16;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;148:4;140:6;136:17;126:27;;0:157;15128:16:0;;;;15066:5;:22;15072:15;15066:22;;;;;;;;;;;;;;;:31;;:38;15098:5;15066:38;;;;;;;;;;;;;;;:59;;:78;;;;;;;;;;;;:::i;:::-;;15215:1;15155:5;:22;15161:15;15155:22;;;;;;;;;;;;;;;:31;;:38;15187:5;15155:38;;;;;;;;;;;;;;;:49;;;:62;;;;;;;;;;;;;;;;;;15235:5;:22;15241:15;15235:22;;;;;;;;;;;;;;;:37;;:46;15279:1;15273:5;:7;15235:46;;;;;;;;;;;;;;;;;;;;;;;;;15234:47;:70;;;;;785:2;15285:19;;:5;:19;;;;15234:70;15230:156;;;15370:4;15321:5;:22;15327:15;15321:22;;;;;;;;;;;;;;;:31;;:38;15353:5;15321:38;;;;;;;;;;;;;;;:46;;;:53;;;;;;;;;;;;;;;;;;15230:156;15398:5;:22;15404:15;15398:22;;;;;;;;;;;;;;;:31;;:38;15430:5;15398:38;;;;;;;;;;;;;;;:52;;;:54;;;;;;;;;;;;;15496:5;;;;;;;;;;;15477:24;;:15;:24;;;15473:460;;15518:27;15548:43;15568:15;15585:5;15548:19;:43::i;:::-;15518:73;;15660:11;15613:69;;15639:19;15613:69;;15622:15;15613:69;;;15673:1;15676:5;15613:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15697;15716:15;15733:19;15754:5;15760;15697:18;:69::i;:::-;15473:460;;;;15832:11;15804:50;;15828:1;15804:50;;15813:5;;;;;;;;;;;15804:50;;;15845:1;15848:5;15804:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15869:52;15886:5;;;;;;;;;;;15893:11;15906:1;15909:5;15915;15869:16;:52::i;:::-;15473:460;13994:1946;;;;;;:::o;12363:1619::-;12475:2;12470:1505;;12494:5;:68;12500:5;:22;12506:15;12500:22;;;;;;;;;;;;;;;:31;;:38;12532:5;12500:38;;;;;;;;;;;;;;;:58;;12559:1;12500:61;;;;;;;;;;;;;;;;;;;;;;;;;12494:68;;;;;;;;;;;;;;;:77;;:84;12572:5;12494:84;;;;;;;;;;;;;;;:104;;12604:11;12494:122;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;12494:122:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12662:5;:22;12668:15;12662:22;;;;;;;;;;;;;;;:31;;:38;12694:5;12662:38;;;;;;;;;;;;;;;:58;;12721:1;12662:61;;;;;;;;;;;;;;;;;;;;;;;;;12636:218;;12649:11;12636:218;;;12725:1;12728:5;12741;:68;12747:5;:22;12753:15;12747:22;;;;;;;;;;;;;;;:31;;:38;12779:5;12747:38;;;;;;;;;;;;;;;:58;;12806:1;12747:61;;;;;;;;;;;;;;;;;;;;;;;;;12741:68;;;;;;;;;;;;;;;:77;;:84;12819:5;12741:84;;;;;;;;;;;;;;;:104;;:111;;;;12636:218;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12900:15;12874:176;;12887:11;12874:176;;;12917:1;12920:5;12937;:68;12943:5;:22;12949:15;12943:22;;;;;;;;;;;;;;;:31;;:38;12975:5;12943:38;;;;;;;;;;;;;;;:58;;13002:1;12943:61;;;;;;;;;;;;;;;;;;;;;;;;;12937:68;;;;;;;;;;;;;;;:77;;:84;13015:5;12937:84;;;;;;;;;;;;;;;:104;;:111;;;;12927:1;:122;12874:176;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13151:5;:22;13157:15;13151:22;;;;;;;;;;;;;;;:31;;:38;13183:5;13151:38;;;;;;;;;;;;;;;:58;;13210:1;13151:61;;;;;;;;;;;;;;;;;;;;;;;;;13098:5;:18;13104:11;13098:18;;;;;;;;;;;;;;;:27;;:34;13126:5;13098:34;;;;;;;;;;;;;;;:50;;;:114;;;;;;;;;;;;;;;;;;12470:1505;;;13245:5;:68;13251:5;:22;13257:15;13251:22;;;;;;;;;;;;;;;:31;;:38;13283:5;13251:38;;;;;;;;;;;;;;;:58;;13310:1;13251:61;;;;;;;;;;;;;;;;;;;;;;;;;13245:68;;;;;;;;;;;;;;;:77;;:84;13323:5;13245:84;;;;;;;;;;;;;;;:104;;13355:11;13245:122;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;13245:122:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13413:5;:22;13419:15;13413:22;;;;;;;;;;;;;;;:31;;:38;13445:5;13413:38;;;;;;;;;;;;;;;:58;;13472:1;13413:61;;;;;;;;;;;;;;;;;;;;;;;;;13387:218;;13400:11;13387:218;;;13476:1;13479:5;13492;:68;13498:5;:22;13504:15;13498:22;;;;;;;;;;;;;;;:31;;:38;13530:5;13498:38;;;;;;;;;;;;;;;:58;;13557:1;13498:61;;;;;;;;;;;;;;;;;;;;;;;;;13492:68;;;;;;;;;;;;;;;:77;;:84;13570:5;13492:84;;;;;;;;;;;;;;;:104;;:111;;;;13387:218;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13651:15;13625:176;;13638:11;13625:176;;;13668:1;13671:5;13688;:68;13694:5;:22;13700:15;13694:22;;;;;;;;;;;;;;;:31;;:38;13726:5;13694:38;;;;;;;;;;;;;;;:58;;13753:1;13694:61;;;;;;;;;;;;;;;;;;;;;;;;;13688:68;;;;;;;;;;;;;;;:77;;:84;13766:5;13688:84;;;;;;;;;;;;;;;:104;;:111;;;;13678:1;:122;13625:176;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13902:5;:22;13908:15;13902:22;;;;;;;;;;;;;;;:31;;:38;13934:5;13902:38;;;;;;;;;;;;;;;:58;;13961:1;13902:61;;;;;;;;;;;;;;;;;;;;;;;;;13849:5;:18;13855:11;13849:18;;;;;;;;;;;;;;;:27;;:34;13877:5;13849:34;;;;;;;;;;;;;;;:50;;;:114;;;;;;;;;;;;;;;;;;12470:1505;12363:1619;;;;:::o;17954:965::-;18057:7;18066:4;18083:16;18102:11;18083:30;;18124:21;18170:1;18160:6;:11;;;18156:756;;;18188:342;18195:4;18188:342;;;18224:5;:15;18230:8;18224:15;;;;;;;;;;;;;;;:24;;:31;18249:5;18224:31;;;;;;;;;;;;;;;:39;;;;;;;;;;;;18220:295;;;18326:4;18307:23;;18364:5;:15;18370:8;18364:15;;;;;;;;;;;;;;;:24;;:31;18389:5;18364:31;;;;;;;;;;;;;;;:47;;;;;;;;;;;;18353:58;;18220:295;;;18468:8;18478:16;18460:35;;;;;;;;18220:295;18188:342;;;18156:756;;;18562:339;18569:4;18562:339;;;18598:5;:15;18604:8;18598:15;;;;;;;;;;;;;;;:24;;:31;18623:5;18598:31;;;;;;;;;;;;;;;:39;;;;;;;;;;;;18594:292;;;18697:4;18678:23;;18735:5;:15;18741:8;18735:15;;;;;;;;;;;;;;;:24;;:31;18760:5;18735:31;;;;;;;;;;;;;;;:47;;;;;;;;;;;;18724:58;;18594:292;;;18839:8;18849:16;18831:35;;;;;;;;18594:292;18562:339;;;18156:756;17954:965;;;;;;;;;;:::o;36:19765::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o
Swarm Source
bzzr://af9dc1981b35f6b51eed586bcc415db180133d09b9f5652383f93827ad1ad871
Loading...
Loading
Loading...
Loading
Net Worth in USD
$388.22
Net Worth in ETH
0.196139
Token Allocations
ETH
100.00%
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|---|---|---|---|---|
| ETH | 100.00% | $1,979.33 | 0.1961 | $388.22 |
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.