Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 36,492 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Mining Token | 8405271 | 1803 days ago | IN | 0 ETH | 0.00015032 | ||||
Mining Token | 8387764 | 1806 days ago | IN | 0 ETH | 0.00003006 | ||||
Set Mining Diffi... | 8385874 | 1806 days ago | IN | 0 ETH | 0.00057166 | ||||
Update ETH Price | 8385821 | 1806 days ago | IN | 0 ETH | 0.00058038 | ||||
Ai Set Token G2 | 8385813 | 1806 days ago | IN | 0 ETH | 0.00058642 | ||||
Ai Set Token G2 | 8385775 | 1806 days ago | IN | 0 ETH | 0.00058514 | ||||
Set DA Banking T... | 8385770 | 1806 days ago | IN | 0 ETH | 0.00058336 | ||||
Set Max Join Pac... | 8385649 | 1806 days ago | IN | 0 ETH | 0.00058994 | ||||
Set DA Banking T... | 8385467 | 1806 days ago | IN | 0 ETH | 0.00033834 | ||||
Join Package Via... | 8385226 | 1806 days ago | IN | 0 ETH | 0.01108298 | ||||
Set Max Join Pac... | 8385203 | 1806 days ago | IN | 0 ETH | 0.00088683 | ||||
Mining Token | 8384503 | 1806 days ago | IN | 0 ETH | 0.00014843 | ||||
Mining Token | 8384243 | 1806 days ago | IN | 0 ETH | 0.00013494 | ||||
Mining Token | 8384226 | 1806 days ago | IN | 0 ETH | 0.00013494 | ||||
Mining Token | 8384212 | 1806 days ago | IN | 0 ETH | 0.00010795 | ||||
Mining Token | 8384177 | 1806 days ago | IN | 0 ETH | 0.00010795 | ||||
Mining Token | 8384174 | 1806 days ago | IN | 0 ETH | 0.00010795 | ||||
Mining Token | 8384172 | 1806 days ago | IN | 0 ETH | 0.00010795 | ||||
Set Mining Diffi... | 8381868 | 1807 days ago | IN | 0 ETH | 0.00023288 | ||||
Join Package Via... | 8381759 | 1807 days ago | IN | 2.489173 ETH | 0.01277168 | ||||
Register | 8381751 | 1807 days ago | IN | 0 ETH | 0.00367236 | ||||
Mining Token | 8381701 | 1807 days ago | IN | 0 ETH | 0.000723 | ||||
Mining Token | 8381654 | 1807 days ago | IN | 0 ETH | 0.00010328 | ||||
Mining Token | 8381634 | 1807 days ago | IN | 0 ETH | 0.00027543 | ||||
Mining Token | 8381633 | 1807 days ago | IN | 0 ETH | 0.00027543 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
8385762 | 1806 days ago | 6,177.69024165 ETH | ||||
8381759 | 1807 days ago | 0.2489173 ETH | ||||
8381578 | 1807 days ago | 0.0997656 ETH | ||||
8381203 | 1807 days ago | 1.9858016 ETH | ||||
8381114 | 1807 days ago | 0.4975372 ETH | ||||
8381013 | 1807 days ago | 0.1001302 ETH | ||||
8380677 | 1807 days ago | 1.9851117 ETH | ||||
8380642 | 1807 days ago | 2.4742677 ETH | ||||
8380613 | 1807 days ago | 2.477578 ETH | ||||
8380594 | 1807 days ago | 2.4799128 ETH | ||||
8380581 | 1807 days ago | 2.4795438 ETH | ||||
8380519 | 1807 days ago | 0.3968254 ETH | ||||
8380508 | 1807 days ago | 0.3965108 ETH | ||||
8380374 | 1807 days ago | 0.0515625 ETH | ||||
8380064 | 1807 days ago | 0.2999101 ETH | ||||
8380017 | 1807 days ago | 0.1994715 ETH | ||||
8379379 | 1807 days ago | 0.0515625 ETH | ||||
8379350 | 1807 days ago | 0.4359327 ETH | ||||
8379325 | 1807 days ago | 0.1084301 ETH | ||||
8379320 | 1807 days ago | 0.207125 ETH | ||||
8379151 | 1807 days ago | 0.0109375 ETH | ||||
8378657 | 1807 days ago | 0.0515625 ETH | ||||
8378154 | 1807 days ago | 0.03325 ETH | ||||
8378040 | 1807 days ago | 0.0984375 ETH | ||||
8375539 | 1808 days ago | 0.1013223 ETH |
Loading...
Loading
Contract Name:
ReserveFund
Compiler Version
v0.4.25+commit.59dbf8f1
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-06-24 */ pragma solidity 0.4.25; contract Auth { address internal mainAdmin; address internal contractAdmin; event OwnershipTransferred(address indexed _previousOwner, address indexed _newOwner); constructor( address _mainAdmin, address _contractAdmin ) internal { mainAdmin = _mainAdmin; contractAdmin = _contractAdmin; } modifier onlyAdmin() { require(isMainAdmin() || isContractAdmin(), "onlyAdmin"); _; } modifier onlyMainAdmin() { require(isMainAdmin(), "onlyMainAdmin"); _; } modifier onlyContractAdmin() { require(isContractAdmin(), "onlyContractAdmin"); _; } function transferOwnership(address _newOwner) onlyContractAdmin internal { require(_newOwner != address(0x0)); contractAdmin = _newOwner; emit OwnershipTransferred(msg.sender, _newOwner); } function isMainAdmin() public view returns (bool) { return msg.sender == mainAdmin; } function isContractAdmin() public view returns (bool) { return msg.sender == contractAdmin; } } library Math { function abs(int number) internal pure returns (uint) { if (number < 0) { return uint(number * -1); } return uint(number); } } library StringUtil { struct slice { uint _length; uint _pointer; } function validateUserName(string memory _username) internal pure returns (bool) { uint8 len = uint8(bytes(_username).length); if ((len < 4) || (len > 18)) return false; // only contain A-Z 0-9 for (uint8 i = 0; i < len; i++) { if ( (uint8(bytes(_username)[i]) < 48) || (uint8(bytes(_username)[i]) > 57 && uint8(bytes(_username)[i]) < 65) || (uint8(bytes(_username)[i]) > 90) ) return false; } // First char != '0' return uint8(bytes(_username)[0]) != 48; } } interface IWallet { function bonusForAdminWhenUserBuyPackageViaDollar(uint _amount, address _admin) external; function bonusNewRank(address _investorAddress, uint _currentRank, uint _newRank) external; function mineToken(address _from, uint _amount) external; function deposit(address _to, uint _deposited, uint8 _source, uint _sourceAmount) external; function getInvestorLastDeposited(address _investor) external view returns (uint); function getUserWallet(address _investor) external view returns (uint, uint[], uint, uint, uint, uint, uint); function getProfitBalance(address _investor) external view returns (uint); function increaseETHWithdrew(uint _amount) external; function validateCanMineToken(uint _tokenAmount, address _from) external view; } interface ICitizen { function addF1DepositedToInviter(address _invitee, uint _amount) external; function addNetworkDepositedToInviter(address _inviter, uint _amount, uint _source, uint _sourceAmount) external; function checkInvestorsInTheSameReferralTree(address _inviter, address _invitee) external view returns (bool); function getF1Deposited(address _investor) external view returns (uint); function getId(address _investor) external view returns (uint); function getInvestorCount() external view returns (uint); function getInviter(address _investor) external view returns (address); function getDirectlyInvitee(address _investor) external view returns (address[]); function getDirectlyInviteeHaveJoinedPackage(address _investor) external view returns (address[]); function getNetworkDeposited(address _investor) external view returns (uint); function getRank(address _investor) external view returns (uint); function getRankBonus(uint _index) external view returns (uint); function getUserAddresses(uint _index) external view returns (address); function getSubscribers(address _investor) external view returns (uint); function increaseInviterF1HaveJoinedPackage(address _invitee) external; function isCitizen(address _user) view external returns (bool); function register(address _user, string _userName, address _inviter) external returns (uint); function showInvestorInfo(address _investorAddress) external view returns (uint, string memory, address, address[], uint, uint, uint, uint); } /** * @title ERC20 interface * @dev see https://eips.ethereum.org/EIPS/eip-20 */ contract IERC20 { function transfer(address to, uint256 value) public returns (bool); function approve(address spender, uint256 value) public returns (bool); function transferFrom(address from, address to, uint256 value) public returns (bool); function balanceOf(address who) public view returns (uint256); function allowance(address owner, address spender) public view returns (uint256); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } contract ReserveFund is Auth { using StringUtil for *; using Math for int; enum Lock { UNLOCKED, PROFIT, MINING_TOKEN, BOTH } mapping(address => Lock) public lockedAccounts; uint private miningDifficulty = 200000; // $200 uint private transferDifficulty = 1000; // $1 uint private aiTokenG3; // 1 ETH = aiTokenG3 DAB uint public aiTokenG2; // in mili-dollar (1/1000 dollar) uint public minJoinPackage = 200000; // $200 uint public maxJoinPackage = 5000000; // $5k uint public currentETHPrice; bool public enableJoinPackageViaEther = true; ICitizen private citizen; IWallet private wallet; IERC20 public dabToken; event AccountsLocked(address[] addresses, uint8 lockingType); event AITokenG2Set(uint rate); event AITokenG3Set(uint rate); event ETHPriceSet(uint ethPrice); event EnableJoinPackageViaEtherSwitched(bool enabled); event EtherPriceUpdated(uint currentETHPrice); event MinJoinPackageSet(uint minJoinPackage); event MaxJoinPackageSet(uint maxJoinPackage); event MiningDifficultySet(uint rate); event TransferDifficultySet(uint value); event PackageJoinedViaEther(address buyer, address receiver, uint amount); event PackageJoinedViaToken(address buyer, address receiver, uint amount); event PackageJoinedViaDollar(address buyer, address receiver, uint amount); event Registered(uint id, string userName, address userAddress, address inviter); event TokenMined(address buyer, uint amount, uint walletAmount); event TokenSwapped(address seller, uint amount, uint ethAmount); constructor ( address _citizen, address _wallet, address _mainAdmin, uint _currentETHPrice ) Auth(_mainAdmin, msg.sender) public { citizen = ICitizen(_citizen); wallet = IWallet(_wallet); currentETHPrice = _currentETHPrice; } // ADMINS FUNCTIONS function setDABankingToken(address _dabToken) onlyAdmin public { dabToken = IERC20(_dabToken); } function updateETHPrice(uint _currentETHPrice) onlyAdmin public { require(_currentETHPrice > 0, "Must be > 0"); require(_currentETHPrice != currentETHPrice, "Must be new value"); currentETHPrice = _currentETHPrice; emit ETHPriceSet(currentETHPrice); } function updateContractAdmin(address _newAddress) onlyAdmin public { transferOwnership(_newAddress); } function setMinJoinPackage(uint _minJoinPackage) onlyAdmin public { require(_minJoinPackage > 0, "Must be > 0"); require(_minJoinPackage < maxJoinPackage, "Must be < maxJoinPackage"); require(_minJoinPackage != minJoinPackage, "Must be new value"); minJoinPackage = _minJoinPackage; emit MinJoinPackageSet(minJoinPackage); } function setMaxJoinPackage(uint _maxJoinPackage) onlyAdmin public { require(_maxJoinPackage > minJoinPackage, "Must be > minJoinPackage"); require(_maxJoinPackage != maxJoinPackage, "Must be new value"); maxJoinPackage = _maxJoinPackage; emit MaxJoinPackageSet(maxJoinPackage); } function setEnableJoinPackageViaEther(bool _enableJoinPackageViaEther) onlyAdmin public { require(_enableJoinPackageViaEther != enableJoinPackageViaEther, "Must be new value"); enableJoinPackageViaEther = _enableJoinPackageViaEther; emit EnableJoinPackageViaEtherSwitched(enableJoinPackageViaEther); } function aiSetTokenG2(uint _rate) onlyAdmin public { require(_rate > 0, "aiTokenG2 must be > 0"); require(_rate != aiTokenG2, "aiTokenG2 must be new value"); aiTokenG2 = _rate; emit AITokenG2Set(aiTokenG2); } function aiSetTokenG3(uint _rate) onlyAdmin public { require(_rate > 0, "aiTokenG3 must be > 0"); require(_rate != aiTokenG3, "aiTokenG3 must be new value"); aiTokenG3 = _rate; emit AITokenG3Set(aiTokenG3); } function setMiningDifficulty(uint _miningDifficulty) onlyAdmin public { require(_miningDifficulty > 0, "miningDifficulty must be > 0"); require(_miningDifficulty != miningDifficulty, "miningDifficulty must be new value"); miningDifficulty = _miningDifficulty; emit MiningDifficultySet(miningDifficulty); } function setTransferDifficulty(uint _transferDifficulty) onlyAdmin public { require(_transferDifficulty > 0, "MinimumBuy must be > 0"); require(_transferDifficulty != transferDifficulty, "transferDifficulty must be new value"); transferDifficulty = _transferDifficulty; emit TransferDifficultySet(transferDifficulty); } function lockAccounts(address[] _addresses, uint8 _type) onlyAdmin public { require(_addresses.length > 0, "Address cannot be empty"); require(_addresses.length <= 256, "Maximum users per action is 256"); require(_type >= 0 && _type <= 3, "Type is invalid"); for (uint8 i = 0; i < _addresses.length; i++) { require(_addresses[i] != msg.sender, "You cannot lock yourself"); lockedAccounts[_addresses[i]] = Lock(_type); } emit AccountsLocked(_addresses, _type); } // PUBLIC FUNCTIONS function () public payable {} function getAITokenG3() view public returns (uint) { return aiTokenG3; } function getMiningDifficulty() view public returns (uint) { return miningDifficulty; } function getTransferDifficulty() view public returns (uint) { return transferDifficulty; } function getLockedStatus(address _investor) view public returns (uint8) { return uint8(lockedAccounts[_investor]); } function register(string memory _userName, address _inviter) public { require(citizen.isCitizen(_inviter), "Inviter did not registered."); require(_inviter != msg.sender, "Cannot referral yourself"); uint id = citizen.register(msg.sender, _userName, _inviter); emit Registered(id, _userName, msg.sender, _inviter); } function showMe() public view returns (uint, string memory, address, address[], uint, uint, uint, uint) { return citizen.showInvestorInfo(msg.sender); } function joinPackageViaEther(uint _rate, address _to) payable public { require(enableJoinPackageViaEther, "Can not buy via Ether now"); validateJoinPackage(msg.sender, _to); require(_rate > 0, "Rate must be > 0"); validateAmount(_to, (msg.value * _rate) / (10 ** 18)); bool rateHigherUnder3Percents = (int(currentETHPrice - _rate).abs() * 100 / _rate) <= uint(3); bool rateLowerUnder5Percents = (int(_rate - currentETHPrice).abs() * 100 / currentETHPrice) <= uint(5); bool validRate = rateHigherUnder3Percents && rateLowerUnder5Percents; require(validRate, "Invalid rate, please check again!"); doJoinViaEther(msg.sender, _to, msg.value, _rate); } function joinPackageViaDollar(uint _amount, address _to) public { validateJoinPackage(msg.sender, _to); validateAmount(_to, _amount); validateProfitBalance(msg.sender, _amount); wallet.deposit(_to, _amount, 2, _amount); wallet.bonusForAdminWhenUserBuyPackageViaDollar(_amount / 10, mainAdmin); emit PackageJoinedViaDollar(msg.sender, _to, _amount); } function joinPackageViaToken(uint _amount, address _to) public { validateJoinPackage(msg.sender, _to); validateAmount(_to, _amount); uint tokenAmount = (_amount / aiTokenG2) * (10 ** 18); require(dabToken.allowance(msg.sender, address(this)) >= tokenAmount, "You must call approve() first"); uint userOldBalance = dabToken.balanceOf(msg.sender); require(userOldBalance >= tokenAmount, "You have not enough tokens"); require(dabToken.transferFrom(msg.sender, address(this), tokenAmount), "Transfer token failed"); require(dabToken.transfer(mainAdmin, tokenAmount / 10), "Transfer token to admin failed"); wallet.deposit(_to, _amount, 1, tokenAmount); emit PackageJoinedViaToken(msg.sender, _to, _amount); } function miningToken(uint _tokenAmount) public { require(aiTokenG2 > 0, "Invalid aiTokenG2, please contact admin"); require(citizen.isCitizen(msg.sender), "Please register first"); validateLockingMiningToken(msg.sender); require(_tokenAmount > miningDifficulty, "Amount must be > miningDifficulty"); uint fiatAmount = (_tokenAmount * aiTokenG2) / (10 ** 18); validateProfitBalance(msg.sender, fiatAmount); wallet.validateCanMineToken(fiatAmount, msg.sender); wallet.mineToken(msg.sender, fiatAmount); uint userOldBalance = dabToken.balanceOf(msg.sender); require(dabToken.transfer(msg.sender, _tokenAmount), "Transfer token to user failed"); require(dabToken.balanceOf(msg.sender) == userOldBalance + _tokenAmount, "User token changed invalid"); emit TokenMined(msg.sender, _tokenAmount, fiatAmount); } function swapToken(uint _amount) public { require(_amount > 0, "Invalid amount to swap"); require(dabToken.balanceOf(msg.sender) >= _amount, "You have not enough balance"); uint etherAmount = getEtherAmountFromToken(_amount); require(address(this).balance >= etherAmount, "The contract have not enough balance"); require(dabToken.allowance(msg.sender, address(this)) >= _amount, "You must call approve() first"); require(dabToken.transferFrom(msg.sender, address(this), _amount), "Transfer token failed"); msg.sender.transfer(etherAmount); wallet.increaseETHWithdrew(etherAmount); emit TokenSwapped(msg.sender, _amount, etherAmount); } function getCurrentEthPrice() public view returns (uint) { return currentETHPrice; } // PRIVATE FUNCTIONS function getEtherAmountFromToken(uint _amount) private view returns (uint) { require(aiTokenG3 > 0, "Invalid aiTokenG3, please contact admin"); return _amount / aiTokenG3; } function doJoinViaEther(address _from, address _to, uint _etherAmountInWei, uint _rate) private { uint etherForAdmin = _etherAmountInWei / 10; uint packageValue = (_etherAmountInWei * _rate) / (10 ** 18); wallet.deposit(_to, packageValue, 0, _etherAmountInWei); mainAdmin.transfer(etherForAdmin); emit PackageJoinedViaEther(_from, _to, packageValue); } function validateAmount(address _user, uint _packageValue) private view { require(_packageValue > 0, "Amount must be > 0"); require(_packageValue <= maxJoinPackage, "Can not join with amount that greater max join package"); uint lastBuy = wallet.getInvestorLastDeposited(_user); if (lastBuy == 0) { require(_packageValue >= minJoinPackage, "Minimum for first join is $200"); } else { require(_packageValue >= lastBuy, "Can not join with amount that lower than your last join"); } } function validateJoinPackage(address _from, address _to) private view { require(citizen.isCitizen(_from), "Please register first"); require(citizen.isCitizen(_to), "You can only buy for an exists member"); if (_from != _to) { require(citizen.checkInvestorsInTheSameReferralTree(_from, _to), "This user isn't in your referral tree"); } require(currentETHPrice > 0, "Invalid currentETHPrice, please contact admin!"); } function validateLockingMiningToken(address _from) private view { bool canBuy = lockedAccounts[_from] != Lock.MINING_TOKEN && lockedAccounts[_from] != Lock.BOTH; require(canBuy, "Your account get locked from mining token"); } function validateProfitBalance(address _user, uint _amount) private view { uint profitBalance = wallet.getProfitBalance(_user); require(profitBalance >= _amount, "You have not enough balance"); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_newAddress","type":"address"}],"name":"updateContractAdmin","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_miningDifficulty","type":"uint256"}],"name":"setMiningDifficulty","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"isMainAdmin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getMiningDifficulty","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_userName","type":"string"},{"name":"_inviter","type":"address"}],"name":"register","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getAITokenG3","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"enableJoinPackageViaEther","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"},{"name":"_to","type":"address"}],"name":"joinPackageViaToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAmount","type":"uint256"}],"name":"miningToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"}],"name":"swapToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getTransferDifficulty","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_dabToken","type":"address"}],"name":"setDABankingToken","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_transferDifficulty","type":"uint256"}],"name":"setTransferDifficulty","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_rate","type":"uint256"},{"name":"_to","type":"address"}],"name":"joinPackageViaEther","outputs":[],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"},{"name":"_to","type":"address"}],"name":"joinPackageViaDollar","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_enableJoinPackageViaEther","type":"bool"}],"name":"setEnableJoinPackageViaEther","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"dabToken","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getCurrentEthPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_currentETHPrice","type":"uint256"}],"name":"updateETHPrice","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"maxJoinPackage","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"showMe","outputs":[{"name":"","type":"uint256"},{"name":"","type":"string"},{"name":"","type":"address"},{"name":"","type":"address[]"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"},{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_rate","type":"uint256"}],"name":"aiSetTokenG3","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_minJoinPackage","type":"uint256"}],"name":"setMinJoinPackage","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_addresses","type":"address[]"},{"name":"_type","type":"uint8"}],"name":"lockAccounts","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_maxJoinPackage","type":"uint256"}],"name":"setMaxJoinPackage","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"minJoinPackage","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"aiTokenG2","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isContractAdmin","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_rate","type":"uint256"}],"name":"aiSetTokenG2","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"currentETHPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"lockedAccounts","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_investor","type":"address"}],"name":"getLockedStatus","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_citizen","type":"address"},{"name":"_wallet","type":"address"},{"name":"_mainAdmin","type":"address"},{"name":"_currentETHPrice","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"addresses","type":"address[]"},{"indexed":false,"name":"lockingType","type":"uint8"}],"name":"AccountsLocked","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"rate","type":"uint256"}],"name":"AITokenG2Set","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"rate","type":"uint256"}],"name":"AITokenG3Set","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"ethPrice","type":"uint256"}],"name":"ETHPriceSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"enabled","type":"bool"}],"name":"EnableJoinPackageViaEtherSwitched","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"currentETHPrice","type":"uint256"}],"name":"EtherPriceUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"minJoinPackage","type":"uint256"}],"name":"MinJoinPackageSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"maxJoinPackage","type":"uint256"}],"name":"MaxJoinPackageSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"rate","type":"uint256"}],"name":"MiningDifficultySet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"value","type":"uint256"}],"name":"TransferDifficultySet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"receiver","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"PackageJoinedViaEther","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"receiver","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"PackageJoinedViaToken","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"receiver","type":"address"},{"indexed":false,"name":"amount","type":"uint256"}],"name":"PackageJoinedViaDollar","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"id","type":"uint256"},{"indexed":false,"name":"userName","type":"string"},{"indexed":false,"name":"userAddress","type":"address"},{"indexed":false,"name":"inviter","type":"address"}],"name":"Registered","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"buyer","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"walletAmount","type":"uint256"}],"name":"TokenMined","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"seller","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"ethAmount","type":"uint256"}],"name":"TokenSwapped","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_previousOwner","type":"address"},{"indexed":true,"name":"_newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
608060405262030d4060038190556103e8600455600755624c4b40600855600a805460ff1916600117905534801561003657600080fd5b506040516080806137ec833981016040908152815160208301519183015160609093015160008054600160a060020a03958616600160a060020a03199182161790915560018054821633179055600a80549386166101000261010060a860020a031990941693909317909255600b80549490931693909116929092179055600955613726806100c66000396000f30060806040526004361061017c5763ffffffff60e060020a60003504166302e65b8a811461017e5780630a4cb9391461019f5780631168222b146101b757806317da485f146101e05780631e59c5291461020757806325b679471461026b57806334aed065146102805780633bef6e1e1461029557806348f79607146102b95780634bbf3a7a146102d157806350a4947b146102e957806351dc8b0d146102fe57806358e4bdeb1461031f57806359450ff514610337578063621b46e51461034e57806369cf6b2c1461037257806387a462ae1461038c5780639125009d146103bd578063924bb1d0146103d25780639cb5c7b9146103ea578063a34cc936146103ff578063b27ee41014610509578063b7a400d314610521578063bae2fb1314610539578063bb0ea95a14610593578063bca3583d146105ab578063cf99ad4a146105c0578063d3184e80146105d5578063d31e1ff5146105ea578063e9a158a614610602578063ebd0d82014610617578063ed153dc51461065c575b005b34801561018a57600080fd5b5061017c600160a060020a0360043516610693565b3480156101ab57600080fd5b5061017c6004356106f9565b3480156101c357600080fd5b506101cc610866565b604080519115158252519081900360200190f35b3480156101ec57600080fd5b506101f5610877565b60408051918252519081900360200190f35b34801561021357600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261017c94369492936024939284019190819084018382808284375094975050509235600160a060020a0316935061087d92505050565b34801561027757600080fd5b506101f5610b91565b34801561028c57600080fd5b506101cc610b97565b3480156102a157600080fd5b5061017c600435600160a060020a0360243516610ba0565b3480156102c557600080fd5b5061017c600435611062565b3480156102dd57600080fd5b5061017c6004356115ee565b3480156102f557600080fd5b506101f5611a74565b34801561030a57600080fd5b5061017c600160a060020a0360043516611a7a565b34801561032b57600080fd5b5061017c600435611b03565b61017c600435600160a060020a0360243516611c6f565b34801561035a57600080fd5b5061017c600435600160a060020a0360243516611e2a565b34801561037e57600080fd5b5061017c6004351515611fb0565b34801561039857600080fd5b506103a16120a5565b60408051600160a060020a039092168252519081900360200190f35b3480156103c957600080fd5b506101f56120b4565b3480156103de57600080fd5b5061017c6004356120ba565b3480156103f657600080fd5b506101f56121ef565b34801561040b57600080fd5b506104146121f5565b604051808981526020018060200188600160a060020a0316600160a060020a031681526020018060200187815260200186815260200185815260200184815260200183810383528a818151815260200191508051906020019080838360005b8381101561048b578181015183820152602001610473565b50505050905090810190601f1680156104b85780820380516001836020036101000a031916815260200191505b508381038252885181528851602091820191808b01910280838360005b838110156104ed5781810151838201526020016104d5565b505050509050019a505050505050505050505060405180910390f35b34801561051557600080fd5b5061017c6004356123a1565b34801561052d57600080fd5b5061017c6004356124e8565b34801561054557600080fd5b506040805160206004803580820135838102808601850190965280855261017c953695939460249493850192918291850190849080828437509497505050923560ff16935061267692505050565b34801561059f57600080fd5b5061017c60043561296f565b3480156105b757600080fd5b506101f5612aa5565b3480156105cc57600080fd5b506101f5612aab565b3480156105e157600080fd5b506101cc612ab1565b3480156105f657600080fd5b5061017c600435612ac2565b34801561060e57600080fd5b506101f5612c09565b34801561062357600080fd5b50610638600160a060020a0360043516612c0f565b6040518082600381111561064857fe5b60ff16815260200191505060405180910390f35b34801561066857600080fd5b5061067d600160a060020a0360043516612c24565b6040805160ff9092168252519081900360200190f35b61069b610866565b806106a957506106a9612ab1565b15156106ed576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b6106f681612c53565b50565b610701610866565b8061070f575061070f612ab1565b1515610753576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b600081116107ab576040805160e560020a62461bcd02815260206004820152601c60248201527f6d696e696e67446966666963756c7479206d757374206265203e203000000000604482015290519081900360640190fd5b60035481141561082b576040805160e560020a62461bcd02815260206004820152602260248201527f6d696e696e67446966666963756c7479206d757374206265206e65772076616c60448201527f7565000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60038190556040805182815290517fc804b872dd5bd76fe759786fc915ef19c21e73e434f957897f682d670412a81e9181900360200190a150565b600054600160a060020a0316331490565b60035490565b600a546040805160e060020a63f3caad03028152600160a060020a038481166004830152915160009361010090049092169163f3caad039160248082019260209290919082900301818787803b1580156108d657600080fd5b505af11580156108ea573d6000803e3d6000fd5b505050506040513d602081101561090057600080fd5b50511515610958576040805160e560020a62461bcd02815260206004820152601b60248201527f496e766974657220646964206e6f7420726567697374657265642e0000000000604482015290519081900360640190fd5b600160a060020a0382163314156109b9576040805160e560020a62461bcd02815260206004820152601860248201527f43616e6e6f7420726566657272616c20796f757273656c660000000000000000604482015290519081900360640190fd5b600a546040517f97294e580000000000000000000000000000000000000000000000000000000081523360048201818152600160a060020a038681166044850152606060248501908152885160648601528851610100909604909116946397294e5894899389939092909160840190602086019080838360005b83811015610a4b578181015183820152602001610a33565b50505050905090810190601f168015610a785780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b158015610a9957600080fd5b505af1158015610aad573d6000803e3d6000fd5b505050506040513d6020811015610ac357600080fd5b50516040805182815233918101829052600160a060020a03851660608201526080602082810182815288519284019290925287519495507f6cddf760a0682a65b93ab75a1c92afba3c310bdab72fe56a81949110dc6ac8619486948994909389939192909160a08401919087019080838360005b83811015610b4f578181015183820152602001610b37565b50505050905090810190601f168015610b7c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b60055490565b600a5460ff1681565b600080610bad3384612d1f565b610bb783856130ae565b60065484811515610bc457fe5b600c54604080517fdd62ed3e000000000000000000000000000000000000000000000000000000008152336004820152306024820152905193909204670de0b6b3a76400000294508492600160a060020a039091169163dd62ed3e9160448083019260209291908290030181600087803b158015610c4157600080fd5b505af1158015610c55573d6000803e3d6000fd5b505050506040513d6020811015610c6b57600080fd5b50511015610cc3576040805160e560020a62461bcd02815260206004820152601d60248201527f596f75206d7573742063616c6c20617070726f76652829206669727374000000604482015290519081900360640190fd5b600c546040805160e060020a6370a082310281523360048201529051600160a060020a03909216916370a08231916024808201926020929091908290030181600087803b158015610d1357600080fd5b505af1158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b5051905081811015610d99576040805160e560020a62461bcd02815260206004820152601a60248201527f596f752068617665206e6f7420656e6f75676820746f6b656e73000000000000604482015290519081900360640190fd5b600c54604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018590529051600160a060020a03909216916323b872dd916064808201926020929091908290030181600087803b158015610e0c57600080fd5b505af1158015610e20573d6000803e3d6000fd5b505050506040513d6020811015610e3657600080fd5b50511515610e8e576040805160e560020a62461bcd02815260206004820152601560248201527f5472616e7366657220746f6b656e206661696c65640000000000000000000000604482015290519081900360640190fd5b600c54600054600160a060020a039182169163a9059cbb9116600a85046040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610efd57600080fd5b505af1158015610f11573d6000803e3d6000fd5b505050506040513d6020811015610f2757600080fd5b50511515610f7f576040805160e560020a62461bcd02815260206004820152601e60248201527f5472616e7366657220746f6b656e20746f2061646d696e206661696c65640000604482015290519081900360640190fd5b600b54604080517ff1f89e92000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301526024820188905260016044830152606482018690529151919092169163f1f89e9291608480830192600092919082900301818387803b158015610ffb57600080fd5b505af115801561100f573d6000803e3d6000fd5b505060408051338152600160a060020a038716602082015280820188905290517f6a26ed261f93dd650629e9362d6ed42670d1ea1f869fbdbd077eb1b310a242369350908190036060019150a150505050565b60008060006006541115156110e7576040805160e560020a62461bcd02815260206004820152602760248201527f496e76616c6964206169546f6b656e47322c20706c6561736520636f6e74616360448201527f742061646d696e00000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600a546040805160e060020a63f3caad030281523360048201529051610100909204600160a060020a03169163f3caad03916024808201926020929091908290030181600087803b15801561113b57600080fd5b505af115801561114f573d6000803e3d6000fd5b505050506040513d602081101561116557600080fd5b505115156111bd576040805160e560020a62461bcd02815260206004820152601560248201527f506c656173652072656769737465722066697273740000000000000000000000604482015290519081900360640190fd5b6111c633613306565b6003548311611245576040805160e560020a62461bcd02815260206004820152602160248201527f416d6f756e74206d757374206265203e206d696e696e67446966666963756c7460448201527f7900000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600654670de0b6b3a764000090840204915061126133836133e5565b600b54604080517f3296c7d6000000000000000000000000000000000000000000000000000000008152600481018590523360248201529051600160a060020a0390921691633296c7d69160448082019260009290919082900301818387803b1580156112cd57600080fd5b505af11580156112e1573d6000803e3d6000fd5b5050600b54604080517f23e85bfb000000000000000000000000000000000000000000000000000000008152336004820152602481018790529051600160a060020a0390921693506323e85bfb925060448082019260009290919082900301818387803b15801561135157600080fd5b505af1158015611365573d6000803e3d6000fd5b5050600c546040805160e060020a6370a082310281523360048201529051600160a060020a0390921693506370a0823192506024808201926020929091908290030181600087803b1580156113b957600080fd5b505af11580156113cd573d6000803e3d6000fd5b505050506040513d60208110156113e357600080fd5b5051600c54604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018790529051929350600160a060020a039091169163a9059cbb916044808201926020929091908290030181600087803b15801561145557600080fd5b505af1158015611469573d6000803e3d6000fd5b505050506040513d602081101561147f57600080fd5b505115156114d7576040805160e560020a62461bcd02815260206004820152601d60248201527f5472616e7366657220746f6b656e20746f2075736572206661696c6564000000604482015290519081900360640190fd5b600c546040805160e060020a6370a08231028152336004820152905183860192600160a060020a0316916370a082319160248083019260209291908290030181600087803b15801561152857600080fd5b505af115801561153c573d6000803e3d6000fd5b505050506040513d602081101561155257600080fd5b5051146115a9576040805160e560020a62461bcd02815260206004820152601a60248201527f5573657220746f6b656e206368616e67656420696e76616c6964000000000000604482015290519081900360640190fd5b604080513381526020810185905280820184905290517f7fb08210da114cf38e2518a9feafd477ad944ed7eb08ce5bc794ce918f3409c39181900360600190a1505050565b6000808211611647576040805160e560020a62461bcd02815260206004820152601660248201527f496e76616c696420616d6f756e7420746f207377617000000000000000000000604482015290519081900360640190fd5b600c546040805160e060020a6370a0823102815233600482015290518492600160a060020a0316916370a082319160248083019260209291908290030181600087803b15801561169657600080fd5b505af11580156116aa573d6000803e3d6000fd5b505050506040513d60208110156116c057600080fd5b50511015611718576040805160e560020a62461bcd02815260206004820152601b60248201527f596f752068617665206e6f7420656e6f7567682062616c616e63650000000000604482015290519081900360640190fd5b611721826134d6565b905030318111156117a1576040805160e560020a62461bcd028152602060048201526024808201527f54686520636f6e74726163742068617665206e6f7420656e6f7567682062616c60448201527f616e636500000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600c54604080517fdd62ed3e00000000000000000000000000000000000000000000000000000000815233600482015230602482015290518492600160a060020a03169163dd62ed3e9160448083019260209291908290030181600087803b15801561180c57600080fd5b505af1158015611820573d6000803e3d6000fd5b505050506040513d602081101561183657600080fd5b5051101561188e576040805160e560020a62461bcd02815260206004820152601d60248201527f596f75206d7573742063616c6c20617070726f76652829206669727374000000604482015290519081900360640190fd5b600c54604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018590529051600160a060020a03909216916323b872dd916064808201926020929091908290030181600087803b15801561190157600080fd5b505af1158015611915573d6000803e3d6000fd5b505050506040513d602081101561192b57600080fd5b50511515611983576040805160e560020a62461bcd02815260206004820152601560248201527f5472616e7366657220746f6b656e206661696c65640000000000000000000000604482015290519081900360640190fd5b604051339082156108fc029083906000818181858888f193505050501580156119b0573d6000803e3d6000fd5b50600b54604080517fc61d04a1000000000000000000000000000000000000000000000000000000008152600481018490529051600160a060020a039092169163c61d04a19160248082019260009290919082900301818387803b158015611a1757600080fd5b505af1158015611a2b573d6000803e3d6000fd5b5050604080513381526020810186905280820185905290517fd5a1cd88ddd329cc1ddf861a21708efa9ef3136b88e1420c21f91ef6f95ad0249350908190036060019150a15050565b60045490565b611a82610866565b80611a905750611a90612ab1565b1515611ad4576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b600c805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b611b0b610866565b80611b195750611b19612ab1565b1515611b5d576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b60008111611bb5576040805160e560020a62461bcd02815260206004820152601660248201527f4d696e696d756d427579206d757374206265203e203000000000000000000000604482015290519081900360640190fd5b600454811415611c34576040805160e560020a62461bcd028152602060048201526024808201527f7472616e73666572446966666963756c7479206d757374206265206e6577207660448201527f616c756500000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60048190556040805182815290517f741043be2f72a75deedbedc540854fc311e7466fd47a155c39f3fb22dc0353d99181900360200190a150565b600a546000908190819060ff161515611cd2576040805160e560020a62461bcd02815260206004820152601960248201527f43616e206e6f742062757920766961204574686572206e6f7700000000000000604482015290519081900360640190fd5b611cdc3385612d1f565b60008511611d34576040805160e560020a62461bcd02815260206004820152601060248201527f52617465206d757374206265203e203000000000000000000000000000000000604482015290519081900360640190fd5b611d4a84670de0b6b3a7640000348802046130ae565b600385611d5a876009540361356d565b606402811515611d6657fe5b04111592506005600954611d7d600954880361356d565b606402811515611d8957fe5b0411159150828015611d985750815b9050801515611e17576040805160e560020a62461bcd02815260206004820152602160248201527f496e76616c696420726174652c20706c6561736520636865636b20616761696e60448201527f2100000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b611e2333853488613587565b5050505050565b611e343382612d1f565b611e3e81836130ae565b611e4833836133e5565b600b54604080517ff1f89e92000000000000000000000000000000000000000000000000000000008152600160a060020a0384811660048301526024820186905260026044830152606482018690529151919092169163f1f89e9291608480830192600092919082900301818387803b158015611ec457600080fd5b505af1158015611ed8573d6000803e3d6000fd5b5050600b5460008054604080517f5e5205fe000000000000000000000000000000000000000000000000000000008152600a89046004820152600160a060020a0392831660248201529051919093169450635e5205fe935060448084019382900301818387803b158015611f4b57600080fd5b505af1158015611f5f573d6000803e3d6000fd5b505060408051338152600160a060020a038516602082015280820186905290517f7b2f4de0cb94d605245e79183c85ba07e8c449476a547bbd4fe9904e790c93709350908190036060019150a15050565b611fb8610866565b80611fc65750611fc6612ab1565b151561200a576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b600a5460ff1615158115151415612059576040805160e560020a62461bcd02815260206004820152601160248201526000805160206136db833981519152604482015290519081900360640190fd5b600a805460ff191682151517908190556040805160ff90921615158252517f3a8c20227c3a1c9a24b3da37d5e1b2c111f9d1b476c219cad9febe092cee4c25916020908290030190a150565b600c54600160a060020a031681565b60095490565b6120c2610866565b806120d057506120d0612ab1565b1515612114576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b6000811161216c576040805160e560020a62461bcd02815260206004820152600b60248201527f4d757374206265203e2030000000000000000000000000000000000000000000604482015290519081900360640190fd5b6009548114156121b4576040805160e560020a62461bcd02815260206004820152601160248201526000805160206136db833981519152604482015290519081900360640190fd5b60098190556040805182815290517f37dcffad3b06af912e7fda69320a919573d0c99e0ba3ae2ae8e5be21be88d9fb9181900360200190a150565b60085481565b6000606060006060600080600080600a60019054906101000a9004600160a060020a0316600160a060020a03166372fbc851336040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561227357600080fd5b505af1158015612287573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101008110156122b157600080fd5b8151602083018051919392830192916401000000008111156122d257600080fd5b820160208101848111156122e557600080fd5b81516401000000008111828201871017156122ff57600080fd5b5050602082015160409092018051919492939164010000000081111561232457600080fd5b8201602081018481111561233757600080fd5b815185602082028301116401000000008211171561235457600080fd5b505092919060200180519060200190929190805190602001909291908051906020019092919080519060200190929190505050975097509750975097509750975097509091929394959697565b6123a9610866565b806123b757506123b7612ab1565b15156123fb576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b60008111612453576040805160e560020a62461bcd02815260206004820152601560248201527f6169546f6b656e4733206d757374206265203e20300000000000000000000000604482015290519081900360640190fd5b6005548114156124ad576040805160e560020a62461bcd02815260206004820152601b60248201527f6169546f6b656e4733206d757374206265206e65772076616c75650000000000604482015290519081900360640190fd5b60058190556040805182815290517fd3d81cad3cdf5cf5bc2d3bdd083728dca5f3049f3ec44298b0248c8217a561999181900360200190a150565b6124f0610866565b806124fe57506124fe612ab1565b1515612542576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b6000811161259a576040805160e560020a62461bcd02815260206004820152600b60248201527f4d757374206265203e2030000000000000000000000000000000000000000000604482015290519081900360640190fd5b60085481106125f3576040805160e560020a62461bcd02815260206004820152601860248201527f4d757374206265203c206d61784a6f696e5061636b6167650000000000000000604482015290519081900360640190fd5b60075481141561263b576040805160e560020a62461bcd02815260206004820152601160248201526000805160206136db833981519152604482015290519081900360640190fd5b60078190556040805182815290517fdbecd9aa4d7a32d8b26e95c265a7edff020bfd6e09c914833f5f7208270237369181900360200190a150565b6000612680610866565b8061268e575061268e612ab1565b15156126d2576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b825160001061272b576040805160e560020a62461bcd02815260206004820152601760248201527f416464726573732063616e6e6f7420626520656d707479000000000000000000604482015290519081900360640190fd5b82516101001015612786576040805160e560020a62461bcd02815260206004820152601f60248201527f4d6178696d756d2075736572732070657220616374696f6e2069732032353600604482015290519081900360640190fd5b60008260ff161015801561279e575060038260ff1611155b15156127f4576040805160e560020a62461bcd02815260206004820152600f60248201527f5479706520697320696e76616c69640000000000000000000000000000000000604482015290519081900360640190fd5b5060005b82518160ff1610156128e75782513390849060ff841690811061281757fe5b60209081029091010151600160a060020a03161415612880576040805160e560020a62461bcd02815260206004820152601860248201527f596f752063616e6e6f74206c6f636b20796f757273656c660000000000000000604482015290519081900360640190fd5b8160ff16600381111561288f57fe5b60026000858460ff168151811015156128a457fe5b6020908102909101810151600160a060020a03168252810191909152604001600020805460ff191660018360038111156128da57fe5b02179055506001016127f8565b7fa4c25a558ef9057d52f5288f1a06611914cbed6bab5e47ab7ef302ba37ccdf2d838360405180806020018360ff1660ff168152602001828103825284818151815260200191508051906020019060200280838360005b8381101561295657818101518382015260200161293e565b50505050905001935050505060405180910390a1505050565b612977610866565b806129855750612985612ab1565b15156129c9576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b6007548111612a22576040805160e560020a62461bcd02815260206004820152601860248201527f4d757374206265203e206d696e4a6f696e5061636b6167650000000000000000604482015290519081900360640190fd5b600854811415612a6a576040805160e560020a62461bcd02815260206004820152601160248201526000805160206136db833981519152604482015290519081900360640190fd5b60088190556040805182815290517f12b9aff014569f32de919545171daec25b5e27ba47fba531f23351b0142be0579181900360200190a150565b60075481565b60065481565b600154600160a060020a0316331490565b612aca610866565b80612ad85750612ad8612ab1565b1515612b1c576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b60008111612b74576040805160e560020a62461bcd02815260206004820152601560248201527f6169546f6b656e4732206d757374206265203e20300000000000000000000000604482015290519081900360640190fd5b600654811415612bce576040805160e560020a62461bcd02815260206004820152601b60248201527f6169546f6b656e4732206d757374206265206e65772076616c75650000000000604482015290519081900360640190fd5b60068190556040805182815290517fe68a407f4fb9369152f192537dafac2e63a2e5e54014b93eec900db34a67ab0d9181900360200190a150565b60095481565b60026020526000908152604090205460ff1681565b600160a060020a03811660009081526002602052604081205460ff166003811115612c4b57fe5b90505b919050565b612c5b612ab1565b1515612cb1576040805160e560020a62461bcd02815260206004820152601160248201527f6f6e6c79436f6e747261637441646d696e000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a0381161515612cc657600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03831690811790915560405133907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a350565b600a546040805160e060020a63f3caad03028152600160a060020a03858116600483015291516101009093049091169163f3caad03916024808201926020929091908290030181600087803b158015612d7757600080fd5b505af1158015612d8b573d6000803e3d6000fd5b505050506040513d6020811015612da157600080fd5b50511515612df9576040805160e560020a62461bcd02815260206004820152601560248201527f506c656173652072656769737465722066697273740000000000000000000000604482015290519081900360640190fd5b600a546040805160e060020a63f3caad03028152600160a060020a03848116600483015291516101009093049091169163f3caad03916024808201926020929091908290030181600087803b158015612e5157600080fd5b505af1158015612e65573d6000803e3d6000fd5b505050506040513d6020811015612e7b57600080fd5b50511515612ef9576040805160e560020a62461bcd02815260206004820152602560248201527f596f752063616e206f6e6c792062757920666f7220616e20657869737473206d60448201527f656d626572000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a038281169082161461302a57600a54604080517fda9c9ba7000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152848116602483015291516101009093049091169163da9c9ba7916044808201926020929091908290030181600087803b158015612f8257600080fd5b505af1158015612f96573d6000803e3d6000fd5b505050506040513d6020811015612fac57600080fd5b5051151561302a576040805160e560020a62461bcd02815260206004820152602560248201527f5468697320757365722069736e277420696e20796f757220726566657272616c60448201527f2074726565000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6009546000106130aa576040805160e560020a62461bcd02815260206004820152602e60248201527f496e76616c69642063757272656e7445544850726963652c20706c656173652060448201527f636f6e746163742061646d696e21000000000000000000000000000000000000606482015290519081900360840190fd5b5050565b6000808211613107576040805160e560020a62461bcd02815260206004820152601260248201527f416d6f756e74206d757374206265203e20300000000000000000000000000000604482015290519081900360640190fd5b600854821115613187576040805160e560020a62461bcd02815260206004820152603660248201527f43616e206e6f74206a6f696e207769746820616d6f756e74207468617420677260448201527f6561746572206d6178206a6f696e207061636b61676500000000000000000000606482015290519081900360840190fd5b600b54604080517f9042bb1e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691639042bb1e9160248083019260209291908290030181600087803b1580156131ef57600080fd5b505af1158015613203573d6000803e3d6000fd5b505050506040513d602081101561321957600080fd5b505190508015156132835760075482101561327e576040805160e560020a62461bcd02815260206004820152601e60248201527f4d696e696d756d20666f72206669727374206a6f696e20697320243230300000604482015290519081900360640190fd5b613301565b80821015613301576040805160e560020a62461bcd02815260206004820152603760248201527f43616e206e6f74206a6f696e207769746820616d6f756e742074686174206c6f60448201527f776572207468616e20796f7572206c617374206a6f696e000000000000000000606482015290519081900360840190fd5b505050565b60006002600160a060020a03831660009081526002602052604090205460ff16600381111561333157fe5b1415801561336657506003600160a060020a03831660009081526002602052604090205460ff16600381111561336357fe5b14155b90508015156130aa576040805160e560020a62461bcd02815260206004820152602960248201527f596f7572206163636f756e7420676574206c6f636b65642066726f6d206d696e60448201527f696e6720746f6b656e0000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600b54604080517fbb1937c0000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151600093929092169163bb1937c09160248082019260209290919082900301818787803b15801561345057600080fd5b505af1158015613464573d6000803e3d6000fd5b505050506040513d602081101561347a57600080fd5b5051905081811015613301576040805160e560020a62461bcd02815260206004820152601b60248201527f596f752068617665206e6f7420656e6f7567682062616c616e63650000000000604482015290519081900360640190fd5b600080600554111515613559576040805160e560020a62461bcd02815260206004820152602760248201527f496e76616c6964206169546f6b656e47332c20706c6561736520636f6e74616360448201527f742061646d696e00000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6005548281151561356657fe5b0492915050565b6000808212156135835781600019029050612c4e565b5090565b600b54604080517ff1f89e92000000000000000000000000000000000000000000000000000000008152600160a060020a038681166004830152670de0b6b3a76400008587020460248301819052600060448401819052606484018890529351600a8804959194929091169263f1f89e9292608480830193919282900301818387803b15801561361657600080fd5b505af115801561362a573d6000803e3d6000fd5b505060008054604051600160a060020a03909116935085156108fc0292508591818181858888f19350505050158015613667573d6000803e3d6000fd5b5060408051600160a060020a0380891682528716602082015280820183905290517f2ced4e9f0876fb793bc9670927e9d22151fe5f129df989c2d4946ef5a59a97db9181900360600190a150505050505056006f6e6c7941646d696e00000000000000000000000000000000000000000000004d757374206265206e65772076616c7565000000000000000000000000000000a165627a7a72305820cb864849166ddc4457943785ef746e8019d745b439e18f7757ec3b61c7e9c1220029000000000000000000000000d4051a078383d3fc279603c1273360ac980cb39400000000000000000000000043187dd7709aec49f4870213390624bf365e119b000000000000000000000000a06cd23aa37c39095d8cfe3a0fd2654331e6312300000000000000000000000000000000000000000000000000000002540be400
Deployed Bytecode
0x60806040526004361061017c5763ffffffff60e060020a60003504166302e65b8a811461017e5780630a4cb9391461019f5780631168222b146101b757806317da485f146101e05780631e59c5291461020757806325b679471461026b57806334aed065146102805780633bef6e1e1461029557806348f79607146102b95780634bbf3a7a146102d157806350a4947b146102e957806351dc8b0d146102fe57806358e4bdeb1461031f57806359450ff514610337578063621b46e51461034e57806369cf6b2c1461037257806387a462ae1461038c5780639125009d146103bd578063924bb1d0146103d25780639cb5c7b9146103ea578063a34cc936146103ff578063b27ee41014610509578063b7a400d314610521578063bae2fb1314610539578063bb0ea95a14610593578063bca3583d146105ab578063cf99ad4a146105c0578063d3184e80146105d5578063d31e1ff5146105ea578063e9a158a614610602578063ebd0d82014610617578063ed153dc51461065c575b005b34801561018a57600080fd5b5061017c600160a060020a0360043516610693565b3480156101ab57600080fd5b5061017c6004356106f9565b3480156101c357600080fd5b506101cc610866565b604080519115158252519081900360200190f35b3480156101ec57600080fd5b506101f5610877565b60408051918252519081900360200190f35b34801561021357600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261017c94369492936024939284019190819084018382808284375094975050509235600160a060020a0316935061087d92505050565b34801561027757600080fd5b506101f5610b91565b34801561028c57600080fd5b506101cc610b97565b3480156102a157600080fd5b5061017c600435600160a060020a0360243516610ba0565b3480156102c557600080fd5b5061017c600435611062565b3480156102dd57600080fd5b5061017c6004356115ee565b3480156102f557600080fd5b506101f5611a74565b34801561030a57600080fd5b5061017c600160a060020a0360043516611a7a565b34801561032b57600080fd5b5061017c600435611b03565b61017c600435600160a060020a0360243516611c6f565b34801561035a57600080fd5b5061017c600435600160a060020a0360243516611e2a565b34801561037e57600080fd5b5061017c6004351515611fb0565b34801561039857600080fd5b506103a16120a5565b60408051600160a060020a039092168252519081900360200190f35b3480156103c957600080fd5b506101f56120b4565b3480156103de57600080fd5b5061017c6004356120ba565b3480156103f657600080fd5b506101f56121ef565b34801561040b57600080fd5b506104146121f5565b604051808981526020018060200188600160a060020a0316600160a060020a031681526020018060200187815260200186815260200185815260200184815260200183810383528a818151815260200191508051906020019080838360005b8381101561048b578181015183820152602001610473565b50505050905090810190601f1680156104b85780820380516001836020036101000a031916815260200191505b508381038252885181528851602091820191808b01910280838360005b838110156104ed5781810151838201526020016104d5565b505050509050019a505050505050505050505060405180910390f35b34801561051557600080fd5b5061017c6004356123a1565b34801561052d57600080fd5b5061017c6004356124e8565b34801561054557600080fd5b506040805160206004803580820135838102808601850190965280855261017c953695939460249493850192918291850190849080828437509497505050923560ff16935061267692505050565b34801561059f57600080fd5b5061017c60043561296f565b3480156105b757600080fd5b506101f5612aa5565b3480156105cc57600080fd5b506101f5612aab565b3480156105e157600080fd5b506101cc612ab1565b3480156105f657600080fd5b5061017c600435612ac2565b34801561060e57600080fd5b506101f5612c09565b34801561062357600080fd5b50610638600160a060020a0360043516612c0f565b6040518082600381111561064857fe5b60ff16815260200191505060405180910390f35b34801561066857600080fd5b5061067d600160a060020a0360043516612c24565b6040805160ff9092168252519081900360200190f35b61069b610866565b806106a957506106a9612ab1565b15156106ed576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b6106f681612c53565b50565b610701610866565b8061070f575061070f612ab1565b1515610753576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b600081116107ab576040805160e560020a62461bcd02815260206004820152601c60248201527f6d696e696e67446966666963756c7479206d757374206265203e203000000000604482015290519081900360640190fd5b60035481141561082b576040805160e560020a62461bcd02815260206004820152602260248201527f6d696e696e67446966666963756c7479206d757374206265206e65772076616c60448201527f7565000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60038190556040805182815290517fc804b872dd5bd76fe759786fc915ef19c21e73e434f957897f682d670412a81e9181900360200190a150565b600054600160a060020a0316331490565b60035490565b600a546040805160e060020a63f3caad03028152600160a060020a038481166004830152915160009361010090049092169163f3caad039160248082019260209290919082900301818787803b1580156108d657600080fd5b505af11580156108ea573d6000803e3d6000fd5b505050506040513d602081101561090057600080fd5b50511515610958576040805160e560020a62461bcd02815260206004820152601b60248201527f496e766974657220646964206e6f7420726567697374657265642e0000000000604482015290519081900360640190fd5b600160a060020a0382163314156109b9576040805160e560020a62461bcd02815260206004820152601860248201527f43616e6e6f7420726566657272616c20796f757273656c660000000000000000604482015290519081900360640190fd5b600a546040517f97294e580000000000000000000000000000000000000000000000000000000081523360048201818152600160a060020a038681166044850152606060248501908152885160648601528851610100909604909116946397294e5894899389939092909160840190602086019080838360005b83811015610a4b578181015183820152602001610a33565b50505050905090810190601f168015610a785780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b158015610a9957600080fd5b505af1158015610aad573d6000803e3d6000fd5b505050506040513d6020811015610ac357600080fd5b50516040805182815233918101829052600160a060020a03851660608201526080602082810182815288519284019290925287519495507f6cddf760a0682a65b93ab75a1c92afba3c310bdab72fe56a81949110dc6ac8619486948994909389939192909160a08401919087019080838360005b83811015610b4f578181015183820152602001610b37565b50505050905090810190601f168015610b7c5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a1505050565b60055490565b600a5460ff1681565b600080610bad3384612d1f565b610bb783856130ae565b60065484811515610bc457fe5b600c54604080517fdd62ed3e000000000000000000000000000000000000000000000000000000008152336004820152306024820152905193909204670de0b6b3a76400000294508492600160a060020a039091169163dd62ed3e9160448083019260209291908290030181600087803b158015610c4157600080fd5b505af1158015610c55573d6000803e3d6000fd5b505050506040513d6020811015610c6b57600080fd5b50511015610cc3576040805160e560020a62461bcd02815260206004820152601d60248201527f596f75206d7573742063616c6c20617070726f76652829206669727374000000604482015290519081900360640190fd5b600c546040805160e060020a6370a082310281523360048201529051600160a060020a03909216916370a08231916024808201926020929091908290030181600087803b158015610d1357600080fd5b505af1158015610d27573d6000803e3d6000fd5b505050506040513d6020811015610d3d57600080fd5b5051905081811015610d99576040805160e560020a62461bcd02815260206004820152601a60248201527f596f752068617665206e6f7420656e6f75676820746f6b656e73000000000000604482015290519081900360640190fd5b600c54604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018590529051600160a060020a03909216916323b872dd916064808201926020929091908290030181600087803b158015610e0c57600080fd5b505af1158015610e20573d6000803e3d6000fd5b505050506040513d6020811015610e3657600080fd5b50511515610e8e576040805160e560020a62461bcd02815260206004820152601560248201527f5472616e7366657220746f6b656e206661696c65640000000000000000000000604482015290519081900360640190fd5b600c54600054600160a060020a039182169163a9059cbb9116600a85046040518363ffffffff1660e060020a0281526004018083600160a060020a0316600160a060020a0316815260200182815260200192505050602060405180830381600087803b158015610efd57600080fd5b505af1158015610f11573d6000803e3d6000fd5b505050506040513d6020811015610f2757600080fd5b50511515610f7f576040805160e560020a62461bcd02815260206004820152601e60248201527f5472616e7366657220746f6b656e20746f2061646d696e206661696c65640000604482015290519081900360640190fd5b600b54604080517ff1f89e92000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301526024820188905260016044830152606482018690529151919092169163f1f89e9291608480830192600092919082900301818387803b158015610ffb57600080fd5b505af115801561100f573d6000803e3d6000fd5b505060408051338152600160a060020a038716602082015280820188905290517f6a26ed261f93dd650629e9362d6ed42670d1ea1f869fbdbd077eb1b310a242369350908190036060019150a150505050565b60008060006006541115156110e7576040805160e560020a62461bcd02815260206004820152602760248201527f496e76616c6964206169546f6b656e47322c20706c6561736520636f6e74616360448201527f742061646d696e00000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600a546040805160e060020a63f3caad030281523360048201529051610100909204600160a060020a03169163f3caad03916024808201926020929091908290030181600087803b15801561113b57600080fd5b505af115801561114f573d6000803e3d6000fd5b505050506040513d602081101561116557600080fd5b505115156111bd576040805160e560020a62461bcd02815260206004820152601560248201527f506c656173652072656769737465722066697273740000000000000000000000604482015290519081900360640190fd5b6111c633613306565b6003548311611245576040805160e560020a62461bcd02815260206004820152602160248201527f416d6f756e74206d757374206265203e206d696e696e67446966666963756c7460448201527f7900000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600654670de0b6b3a764000090840204915061126133836133e5565b600b54604080517f3296c7d6000000000000000000000000000000000000000000000000000000008152600481018590523360248201529051600160a060020a0390921691633296c7d69160448082019260009290919082900301818387803b1580156112cd57600080fd5b505af11580156112e1573d6000803e3d6000fd5b5050600b54604080517f23e85bfb000000000000000000000000000000000000000000000000000000008152336004820152602481018790529051600160a060020a0390921693506323e85bfb925060448082019260009290919082900301818387803b15801561135157600080fd5b505af1158015611365573d6000803e3d6000fd5b5050600c546040805160e060020a6370a082310281523360048201529051600160a060020a0390921693506370a0823192506024808201926020929091908290030181600087803b1580156113b957600080fd5b505af11580156113cd573d6000803e3d6000fd5b505050506040513d60208110156113e357600080fd5b5051600c54604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152336004820152602481018790529051929350600160a060020a039091169163a9059cbb916044808201926020929091908290030181600087803b15801561145557600080fd5b505af1158015611469573d6000803e3d6000fd5b505050506040513d602081101561147f57600080fd5b505115156114d7576040805160e560020a62461bcd02815260206004820152601d60248201527f5472616e7366657220746f6b656e20746f2075736572206661696c6564000000604482015290519081900360640190fd5b600c546040805160e060020a6370a08231028152336004820152905183860192600160a060020a0316916370a082319160248083019260209291908290030181600087803b15801561152857600080fd5b505af115801561153c573d6000803e3d6000fd5b505050506040513d602081101561155257600080fd5b5051146115a9576040805160e560020a62461bcd02815260206004820152601a60248201527f5573657220746f6b656e206368616e67656420696e76616c6964000000000000604482015290519081900360640190fd5b604080513381526020810185905280820184905290517f7fb08210da114cf38e2518a9feafd477ad944ed7eb08ce5bc794ce918f3409c39181900360600190a1505050565b6000808211611647576040805160e560020a62461bcd02815260206004820152601660248201527f496e76616c696420616d6f756e7420746f207377617000000000000000000000604482015290519081900360640190fd5b600c546040805160e060020a6370a0823102815233600482015290518492600160a060020a0316916370a082319160248083019260209291908290030181600087803b15801561169657600080fd5b505af11580156116aa573d6000803e3d6000fd5b505050506040513d60208110156116c057600080fd5b50511015611718576040805160e560020a62461bcd02815260206004820152601b60248201527f596f752068617665206e6f7420656e6f7567682062616c616e63650000000000604482015290519081900360640190fd5b611721826134d6565b905030318111156117a1576040805160e560020a62461bcd028152602060048201526024808201527f54686520636f6e74726163742068617665206e6f7420656e6f7567682062616c60448201527f616e636500000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600c54604080517fdd62ed3e00000000000000000000000000000000000000000000000000000000815233600482015230602482015290518492600160a060020a03169163dd62ed3e9160448083019260209291908290030181600087803b15801561180c57600080fd5b505af1158015611820573d6000803e3d6000fd5b505050506040513d602081101561183657600080fd5b5051101561188e576040805160e560020a62461bcd02815260206004820152601d60248201527f596f75206d7573742063616c6c20617070726f76652829206669727374000000604482015290519081900360640190fd5b600c54604080517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018590529051600160a060020a03909216916323b872dd916064808201926020929091908290030181600087803b15801561190157600080fd5b505af1158015611915573d6000803e3d6000fd5b505050506040513d602081101561192b57600080fd5b50511515611983576040805160e560020a62461bcd02815260206004820152601560248201527f5472616e7366657220746f6b656e206661696c65640000000000000000000000604482015290519081900360640190fd5b604051339082156108fc029083906000818181858888f193505050501580156119b0573d6000803e3d6000fd5b50600b54604080517fc61d04a1000000000000000000000000000000000000000000000000000000008152600481018490529051600160a060020a039092169163c61d04a19160248082019260009290919082900301818387803b158015611a1757600080fd5b505af1158015611a2b573d6000803e3d6000fd5b5050604080513381526020810186905280820185905290517fd5a1cd88ddd329cc1ddf861a21708efa9ef3136b88e1420c21f91ef6f95ad0249350908190036060019150a15050565b60045490565b611a82610866565b80611a905750611a90612ab1565b1515611ad4576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b600c805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b611b0b610866565b80611b195750611b19612ab1565b1515611b5d576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b60008111611bb5576040805160e560020a62461bcd02815260206004820152601660248201527f4d696e696d756d427579206d757374206265203e203000000000000000000000604482015290519081900360640190fd5b600454811415611c34576040805160e560020a62461bcd028152602060048201526024808201527f7472616e73666572446966666963756c7479206d757374206265206e6577207660448201527f616c756500000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60048190556040805182815290517f741043be2f72a75deedbedc540854fc311e7466fd47a155c39f3fb22dc0353d99181900360200190a150565b600a546000908190819060ff161515611cd2576040805160e560020a62461bcd02815260206004820152601960248201527f43616e206e6f742062757920766961204574686572206e6f7700000000000000604482015290519081900360640190fd5b611cdc3385612d1f565b60008511611d34576040805160e560020a62461bcd02815260206004820152601060248201527f52617465206d757374206265203e203000000000000000000000000000000000604482015290519081900360640190fd5b611d4a84670de0b6b3a7640000348802046130ae565b600385611d5a876009540361356d565b606402811515611d6657fe5b04111592506005600954611d7d600954880361356d565b606402811515611d8957fe5b0411159150828015611d985750815b9050801515611e17576040805160e560020a62461bcd02815260206004820152602160248201527f496e76616c696420726174652c20706c6561736520636865636b20616761696e60448201527f2100000000000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b611e2333853488613587565b5050505050565b611e343382612d1f565b611e3e81836130ae565b611e4833836133e5565b600b54604080517ff1f89e92000000000000000000000000000000000000000000000000000000008152600160a060020a0384811660048301526024820186905260026044830152606482018690529151919092169163f1f89e9291608480830192600092919082900301818387803b158015611ec457600080fd5b505af1158015611ed8573d6000803e3d6000fd5b5050600b5460008054604080517f5e5205fe000000000000000000000000000000000000000000000000000000008152600a89046004820152600160a060020a0392831660248201529051919093169450635e5205fe935060448084019382900301818387803b158015611f4b57600080fd5b505af1158015611f5f573d6000803e3d6000fd5b505060408051338152600160a060020a038516602082015280820186905290517f7b2f4de0cb94d605245e79183c85ba07e8c449476a547bbd4fe9904e790c93709350908190036060019150a15050565b611fb8610866565b80611fc65750611fc6612ab1565b151561200a576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b600a5460ff1615158115151415612059576040805160e560020a62461bcd02815260206004820152601160248201526000805160206136db833981519152604482015290519081900360640190fd5b600a805460ff191682151517908190556040805160ff90921615158252517f3a8c20227c3a1c9a24b3da37d5e1b2c111f9d1b476c219cad9febe092cee4c25916020908290030190a150565b600c54600160a060020a031681565b60095490565b6120c2610866565b806120d057506120d0612ab1565b1515612114576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b6000811161216c576040805160e560020a62461bcd02815260206004820152600b60248201527f4d757374206265203e2030000000000000000000000000000000000000000000604482015290519081900360640190fd5b6009548114156121b4576040805160e560020a62461bcd02815260206004820152601160248201526000805160206136db833981519152604482015290519081900360640190fd5b60098190556040805182815290517f37dcffad3b06af912e7fda69320a919573d0c99e0ba3ae2ae8e5be21be88d9fb9181900360200190a150565b60085481565b6000606060006060600080600080600a60019054906101000a9004600160a060020a0316600160a060020a03166372fbc851336040518263ffffffff1660e060020a0281526004018082600160a060020a0316600160a060020a03168152602001915050600060405180830381600087803b15801561227357600080fd5b505af1158015612287573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526101008110156122b157600080fd5b8151602083018051919392830192916401000000008111156122d257600080fd5b820160208101848111156122e557600080fd5b81516401000000008111828201871017156122ff57600080fd5b5050602082015160409092018051919492939164010000000081111561232457600080fd5b8201602081018481111561233757600080fd5b815185602082028301116401000000008211171561235457600080fd5b505092919060200180519060200190929190805190602001909291908051906020019092919080519060200190929190505050975097509750975097509750975097509091929394959697565b6123a9610866565b806123b757506123b7612ab1565b15156123fb576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b60008111612453576040805160e560020a62461bcd02815260206004820152601560248201527f6169546f6b656e4733206d757374206265203e20300000000000000000000000604482015290519081900360640190fd5b6005548114156124ad576040805160e560020a62461bcd02815260206004820152601b60248201527f6169546f6b656e4733206d757374206265206e65772076616c75650000000000604482015290519081900360640190fd5b60058190556040805182815290517fd3d81cad3cdf5cf5bc2d3bdd083728dca5f3049f3ec44298b0248c8217a561999181900360200190a150565b6124f0610866565b806124fe57506124fe612ab1565b1515612542576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b6000811161259a576040805160e560020a62461bcd02815260206004820152600b60248201527f4d757374206265203e2030000000000000000000000000000000000000000000604482015290519081900360640190fd5b60085481106125f3576040805160e560020a62461bcd02815260206004820152601860248201527f4d757374206265203c206d61784a6f696e5061636b6167650000000000000000604482015290519081900360640190fd5b60075481141561263b576040805160e560020a62461bcd02815260206004820152601160248201526000805160206136db833981519152604482015290519081900360640190fd5b60078190556040805182815290517fdbecd9aa4d7a32d8b26e95c265a7edff020bfd6e09c914833f5f7208270237369181900360200190a150565b6000612680610866565b8061268e575061268e612ab1565b15156126d2576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b825160001061272b576040805160e560020a62461bcd02815260206004820152601760248201527f416464726573732063616e6e6f7420626520656d707479000000000000000000604482015290519081900360640190fd5b82516101001015612786576040805160e560020a62461bcd02815260206004820152601f60248201527f4d6178696d756d2075736572732070657220616374696f6e2069732032353600604482015290519081900360640190fd5b60008260ff161015801561279e575060038260ff1611155b15156127f4576040805160e560020a62461bcd02815260206004820152600f60248201527f5479706520697320696e76616c69640000000000000000000000000000000000604482015290519081900360640190fd5b5060005b82518160ff1610156128e75782513390849060ff841690811061281757fe5b60209081029091010151600160a060020a03161415612880576040805160e560020a62461bcd02815260206004820152601860248201527f596f752063616e6e6f74206c6f636b20796f757273656c660000000000000000604482015290519081900360640190fd5b8160ff16600381111561288f57fe5b60026000858460ff168151811015156128a457fe5b6020908102909101810151600160a060020a03168252810191909152604001600020805460ff191660018360038111156128da57fe5b02179055506001016127f8565b7fa4c25a558ef9057d52f5288f1a06611914cbed6bab5e47ab7ef302ba37ccdf2d838360405180806020018360ff1660ff168152602001828103825284818151815260200191508051906020019060200280838360005b8381101561295657818101518382015260200161293e565b50505050905001935050505060405180910390a1505050565b612977610866565b806129855750612985612ab1565b15156129c9576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b6007548111612a22576040805160e560020a62461bcd02815260206004820152601860248201527f4d757374206265203e206d696e4a6f696e5061636b6167650000000000000000604482015290519081900360640190fd5b600854811415612a6a576040805160e560020a62461bcd02815260206004820152601160248201526000805160206136db833981519152604482015290519081900360640190fd5b60088190556040805182815290517f12b9aff014569f32de919545171daec25b5e27ba47fba531f23351b0142be0579181900360200190a150565b60075481565b60065481565b600154600160a060020a0316331490565b612aca610866565b80612ad85750612ad8612ab1565b1515612b1c576040805160e560020a62461bcd02815260206004820152600960248201526000805160206136bb833981519152604482015290519081900360640190fd5b60008111612b74576040805160e560020a62461bcd02815260206004820152601560248201527f6169546f6b656e4732206d757374206265203e20300000000000000000000000604482015290519081900360640190fd5b600654811415612bce576040805160e560020a62461bcd02815260206004820152601b60248201527f6169546f6b656e4732206d757374206265206e65772076616c75650000000000604482015290519081900360640190fd5b60068190556040805182815290517fe68a407f4fb9369152f192537dafac2e63a2e5e54014b93eec900db34a67ab0d9181900360200190a150565b60095481565b60026020526000908152604090205460ff1681565b600160a060020a03811660009081526002602052604081205460ff166003811115612c4b57fe5b90505b919050565b612c5b612ab1565b1515612cb1576040805160e560020a62461bcd02815260206004820152601160248201527f6f6e6c79436f6e747261637441646d696e000000000000000000000000000000604482015290519081900360640190fd5b600160a060020a0381161515612cc657600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03831690811790915560405133907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a350565b600a546040805160e060020a63f3caad03028152600160a060020a03858116600483015291516101009093049091169163f3caad03916024808201926020929091908290030181600087803b158015612d7757600080fd5b505af1158015612d8b573d6000803e3d6000fd5b505050506040513d6020811015612da157600080fd5b50511515612df9576040805160e560020a62461bcd02815260206004820152601560248201527f506c656173652072656769737465722066697273740000000000000000000000604482015290519081900360640190fd5b600a546040805160e060020a63f3caad03028152600160a060020a03848116600483015291516101009093049091169163f3caad03916024808201926020929091908290030181600087803b158015612e5157600080fd5b505af1158015612e65573d6000803e3d6000fd5b505050506040513d6020811015612e7b57600080fd5b50511515612ef9576040805160e560020a62461bcd02815260206004820152602560248201527f596f752063616e206f6e6c792062757920666f7220616e20657869737473206d60448201527f656d626572000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600160a060020a038281169082161461302a57600a54604080517fda9c9ba7000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152848116602483015291516101009093049091169163da9c9ba7916044808201926020929091908290030181600087803b158015612f8257600080fd5b505af1158015612f96573d6000803e3d6000fd5b505050506040513d6020811015612fac57600080fd5b5051151561302a576040805160e560020a62461bcd02815260206004820152602560248201527f5468697320757365722069736e277420696e20796f757220726566657272616c60448201527f2074726565000000000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6009546000106130aa576040805160e560020a62461bcd02815260206004820152602e60248201527f496e76616c69642063757272656e7445544850726963652c20706c656173652060448201527f636f6e746163742061646d696e21000000000000000000000000000000000000606482015290519081900360840190fd5b5050565b6000808211613107576040805160e560020a62461bcd02815260206004820152601260248201527f416d6f756e74206d757374206265203e20300000000000000000000000000000604482015290519081900360640190fd5b600854821115613187576040805160e560020a62461bcd02815260206004820152603660248201527f43616e206e6f74206a6f696e207769746820616d6f756e74207468617420677260448201527f6561746572206d6178206a6f696e207061636b61676500000000000000000000606482015290519081900360840190fd5b600b54604080517f9042bb1e000000000000000000000000000000000000000000000000000000008152600160a060020a03868116600483015291519190921691639042bb1e9160248083019260209291908290030181600087803b1580156131ef57600080fd5b505af1158015613203573d6000803e3d6000fd5b505050506040513d602081101561321957600080fd5b505190508015156132835760075482101561327e576040805160e560020a62461bcd02815260206004820152601e60248201527f4d696e696d756d20666f72206669727374206a6f696e20697320243230300000604482015290519081900360640190fd5b613301565b80821015613301576040805160e560020a62461bcd02815260206004820152603760248201527f43616e206e6f74206a6f696e207769746820616d6f756e742074686174206c6f60448201527f776572207468616e20796f7572206c617374206a6f696e000000000000000000606482015290519081900360840190fd5b505050565b60006002600160a060020a03831660009081526002602052604090205460ff16600381111561333157fe5b1415801561336657506003600160a060020a03831660009081526002602052604090205460ff16600381111561336357fe5b14155b90508015156130aa576040805160e560020a62461bcd02815260206004820152602960248201527f596f7572206163636f756e7420676574206c6f636b65642066726f6d206d696e60448201527f696e6720746f6b656e0000000000000000000000000000000000000000000000606482015290519081900360840190fd5b600b54604080517fbb1937c0000000000000000000000000000000000000000000000000000000008152600160a060020a0385811660048301529151600093929092169163bb1937c09160248082019260209290919082900301818787803b15801561345057600080fd5b505af1158015613464573d6000803e3d6000fd5b505050506040513d602081101561347a57600080fd5b5051905081811015613301576040805160e560020a62461bcd02815260206004820152601b60248201527f596f752068617665206e6f7420656e6f7567682062616c616e63650000000000604482015290519081900360640190fd5b600080600554111515613559576040805160e560020a62461bcd02815260206004820152602760248201527f496e76616c6964206169546f6b656e47332c20706c6561736520636f6e74616360448201527f742061646d696e00000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6005548281151561356657fe5b0492915050565b6000808212156135835781600019029050612c4e565b5090565b600b54604080517ff1f89e92000000000000000000000000000000000000000000000000000000008152600160a060020a038681166004830152670de0b6b3a76400008587020460248301819052600060448401819052606484018890529351600a8804959194929091169263f1f89e9292608480830193919282900301818387803b15801561361657600080fd5b505af115801561362a573d6000803e3d6000fd5b505060008054604051600160a060020a03909116935085156108fc0292508591818181858888f19350505050158015613667573d6000803e3d6000fd5b5060408051600160a060020a0380891682528716602082015280820183905290517f2ced4e9f0876fb793bc9670927e9d22151fe5f129df989c2d4946ef5a59a97db9181900360600190a150505050505056006f6e6c7941646d696e00000000000000000000000000000000000000000000004d757374206265206e65772076616c7565000000000000000000000000000000a165627a7a72305820cb864849166ddc4457943785ef746e8019d745b439e18f7757ec3b61c7e9c1220029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000d4051a078383d3fc279603c1273360ac980cb39400000000000000000000000043187dd7709aec49f4870213390624bf365e119b000000000000000000000000a06cd23aa37c39095d8cfe3a0fd2654331e6312300000000000000000000000000000000000000000000000000000002540be400
-----Decoded View---------------
Arg [0] : _citizen (address): 0xd4051A078383d3fc279603c1273360Ac980CB394
Arg [1] : _wallet (address): 0x43187dD7709AeC49f4870213390624bf365E119B
Arg [2] : _mainAdmin (address): 0xa06Cd23aA37C39095D8CFe3A0fd2654331e63123
Arg [3] : _currentETHPrice (uint256): 10000000000
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000d4051a078383d3fc279603c1273360ac980cb394
Arg [1] : 00000000000000000000000043187dd7709aec49f4870213390624bf365e119b
Arg [2] : 000000000000000000000000a06cd23aa37c39095d8cfe3a0fd2654331e63123
Arg [3] : 00000000000000000000000000000000000000000000000000000002540be400
Deployed Bytecode Sourcemap
4983:11639:0:-;;;;;;;;;-1:-1:-1;;;4983:11639:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7290:110;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7290:110:0;-1:-1:-1;;;;;7290:110:0;;;;;8871:328;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8871:328:0;;;;;883:93;;8:9:-1;5:2;;;30:1;27;20:12;5:2;883:93:0;;;;;;;;;;;;;;;;;;;;;;10213:94;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10213:94:0;;;;;;;;;;;;;;;;;;;;10547:339;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10547:339:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10547:339:0;;-1:-1:-1;;;10547:339:0;;-1:-1:-1;;;;;10547:339:0;;-1:-1:-1;10547:339:0;;-1:-1:-1;;;10547:339:0;10127:80;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10127:80:0;;;;5539:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5539:44:0;;;;12148:758;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12148:758:0;;;-1:-1:-1;;;;;12148:758:0;;;;;12912:867;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12912:867:0;;;;;13785:683;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13785:683:0;;;;;10313:98;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10313:98:0;;;;6900:104;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6900:104:0;-1:-1:-1;;;;;6900:104:0;;;;;9205:342;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9205:342:0;;;;;11058:695;;;;-1:-1:-1;;;;;11058:695:0;;;;;11759:383;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;11759:383:0;;;-1:-1:-1;;;;;11759:383:0;;;;;8072:319;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8072:319:0;;;;;;;5646:22;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5646:22:0;;;;;;;;-1:-1:-1;;;;;5646:22:0;;;;;;;;;;;;;;14474:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14474:92:0;;;;7010:274;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7010:274:0;;;;;5459:36;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5459:36:0;;;;10892:160;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10892:160:0;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10892:160:0;-1:-1:-1;;;;;10892:160:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10892:160:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10892:160:0;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10892:160:0;;;;;;;;;;;;;;;;;;;;;;;;;8634:231;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8634:231:0;;;;;7406:352;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7406:352:0;;;;;9553:508;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;9553:508:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9553:508:0;;-1:-1:-1;;;9553:508:0;;;;;-1:-1:-1;9553:508:0;;-1:-1:-1;;;9553:508:0;7764:302;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;7764:302:0;;;;;5411:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5411:35:0;;;;5351:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5351:21:0;;;;982:101;;8:9:-1;5:2;;;30:1;27;20:12;5:2;982:101:0;;;;8397:231;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;8397:231:0;;;;;5507:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5507:27:0;;;;5148:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5148:46:0;-1:-1:-1;;;;;5148:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10417:124;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10417:124:0;-1:-1:-1;;;;;10417:124:0;;;;;;;;;;;;;;;;;;;;;;;;7290:110;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;7364:30;7382:11;7364:17;:30::i;:::-;7290:110;:::o;8871:328::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;8976:1;8956:21;;8948:62;;;;;-1:-1:-1;;;;;8948:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9046:16;;9025:37;;;9017:84;;;;;-1:-1:-1;;;;;9017:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9108:16;:36;;;9156:37;;;;;;;;;;;;;;;;;8871:328;:::o;883:93::-;927:4;961:9;-1:-1:-1;;;;;961:9:0;947:10;:23;;883:93::o;10213:94::-;10285:16;;10213:94;:::o;10547:339::-;10630:7;;:27;;;-1:-1:-1;;;;;10630:27:0;;-1:-1:-1;;;;;10630:27:0;;;;;;;;;-1:-1:-1;;10630:7:0;;;;;;;:17;;:27;;;;;;;;;;;;;;;-1:-1:-1;10630:7:0;:27;;;5:2:-1;;;;30:1;27;20:12;5:2;10630:27:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10630:27:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10630:27:0;10622:67;;;;;;;-1:-1:-1;;;;;10622:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10704:22:0;;10716:10;10704:22;;10696:59;;;;;-1:-1:-1;;;;;10696:59:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10772:7;;:49;;;;;10789:10;10772:49;;;;;;-1:-1:-1;;;;;10772:49:0;;;;;;;;;;;;;;;;;;;;;;:7;;;;;;;;:16;;:49;;;;;;;;;;;-1:-1:-1;10772:49:0;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10772:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10772:49:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10772:49:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10772:49:0;10833:47;;;;;;10859:10;10833:47;;;;;;-1:-1:-1;;;;;10833:47:0;;;;;;;10772:49;10833:47;;;;;;;;;;;;;;;;;10772:49;;-1:-1:-1;10833:47:0;;10772:49;;10848:9;;10859:10;;10871:8;;10833:47;;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10833:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10547:339;;;:::o;10127:80::-;10192:9;;10127:80;:::o;5539:44::-;;;;;;:::o;12148:758::-;12296:16;12465:19;12218:36;12238:10;12250:3;12218:19;:36::i;:::-;12261:28;12276:3;12281:7;12261:14;:28::i;:::-;12326:9;;12316:7;:19;;;;;;;12364:8;;:45;;;;;;12383:10;12364:45;;;;12403:4;12364:45;;;;;;12316:19;;;;12340:8;12315:34;;-1:-1:-1;12315:34:0;;-1:-1:-1;;;;;12364:8:0;;;;:18;;:45;;;;;;;;;;;;;;-1:-1:-1;12364:8:0;:45;;;5:2:-1;;;;30:1;27;20:12;5:2;12364:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12364:45:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12364:45:0;:60;;12356:102;;;;;-1:-1:-1;;;;;12356:102:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12487:8;;:30;;;-1:-1:-1;;;;;12487:30:0;;12506:10;12487:30;;;;;;-1:-1:-1;;;;;12487:8:0;;;;:18;;:30;;;;;;;;;;;;;;;:8;;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;12487:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12487:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12487:30:0;;-1:-1:-1;12532:29:0;;;;12524:68;;;;;-1:-1:-1;;;;;12524:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12607:8;;:61;;;;;;12629:10;12607:61;;;;12649:4;12607:61;;;;;;;;;;;;-1:-1:-1;;;;;12607:8:0;;;;:21;;:61;;;;;;;;;;;;;;;:8;;:61;;;5:2:-1;;;;30:1;27;20:12;5:2;12607:61:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12607:61:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12607:61:0;12599:95;;;;;;;-1:-1:-1;;;;;12599:95:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12709:8;;;12727:9;-1:-1:-1;;;;;12709:8:0;;;;:17;;12727:9;12752:2;12738:11;:16;12709:46;;;;;-1:-1:-1;;;12709:46:0;;;;;;;-1:-1:-1;;;;;12709:46:0;-1:-1:-1;;;;;12709:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12709:46:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12709:46:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12709:46:0;12701:89;;;;;;;-1:-1:-1;;;;;12701:89:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12797:6;;:44;;;;;;-1:-1:-1;;;;;12797:44:0;;;;;;;;;;;;;:6;:44;;;;;;;;;;;;:6;;;;;:14;;:44;;;;;:6;;:44;;;;;;;:6;;:44;;;5:2:-1;;;;30:1;27;20:12;5:2;12797:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;12853:47:0;;;12875:10;12853:47;;-1:-1:-1;;;;;12853:47:0;;;;;;;;;;;;;;;;-1:-1:-1;12853:47:0;;;;;;;-1:-1:-1;12853:47:0;12148:758;;;;:::o;12912:867::-;13237:15;13460:19;12986:1;12974:9;;:13;12966:65;;;;;;;-1:-1:-1;;;;;12966:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13046:7;;:29;;;-1:-1:-1;;;;;13046:29:0;;13064:10;13046:29;;;;;;:7;;;;-1:-1:-1;;;;;13046:7:0;;:17;;:29;;;;;;;;;;;;;;;-1:-1:-1;13046:7:0;:29;;;5:2:-1;;;;30:1;27;20:12;5:2;13046:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13046:29:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13046:29:0;13038:63;;;;;;;-1:-1:-1;;;;;13038:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13108:38;13135:10;13108:26;:38::i;:::-;13176:16;;13161:31;;13153:77;;;;;-1:-1:-1;;;;;13153:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13271:9;;13285:8;;13256:24;;13255:39;13237:57;;13301:45;13323:10;13335;13301:21;:45::i;:::-;13353:6;;:51;;;;;;;;;;;;13393:10;13353:51;;;;;;-1:-1:-1;;;;;13353:6:0;;;;:27;;:51;;;;;:6;;:51;;;;;;;;:6;;:51;;;5:2:-1;;;;30:1;27;20:12;5:2;13353:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;13413:6:0;;:40;;;;;;13430:10;13413:40;;;;;;;;;;;;-1:-1:-1;;;;;13413:6:0;;;;-1:-1:-1;13413:16:0;;-1:-1:-1;13413:40:0;;;;;:6;;:40;;;;;;;;:6;;:40;;;5:2:-1;;;;30:1;27;20:12;5:2;13413:40:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;13482:8:0;;:30;;;-1:-1:-1;;;;;13482:30:0;;13501:10;13482:30;;;;;;-1:-1:-1;;;;;13482:8:0;;;;-1:-1:-1;13482:18:0;;-1:-1:-1;13482:30:0;;;;;;;;;;;;;;;:8;;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;13482:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13482:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13482:30:0;13527:8;;:43;;;;;;13545:10;13527:43;;;;;;;;;;;;13482:30;;-1:-1:-1;;;;;;13527:8:0;;;;:17;;:43;;;;;13482:30;;13527:43;;;;;;;;:8;;:43;;;5:2:-1;;;;30:1;27;20:12;5:2;13527:43:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13527:43:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13527:43:0;13519:85;;;;;;;-1:-1:-1;;;;;13519:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13619:8;;:30;;;-1:-1:-1;;;;;13619:30:0;;13638:10;13619:30;;;;;;13653:29;;;;-1:-1:-1;;;;;13619:8:0;;:18;;:30;;;;;;;;;;;;;;:8;;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;13619:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13619:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13619:30:0;:63;13611:102;;;;;-1:-1:-1;;;;;13611:102:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13725:48;;;13736:10;13725:48;;;;;;;;;;;;;;;;;;;;;;;;;12912:867;;;:::o;13785:683::-;13973:16;13840:11;;;13832:46;;;;;-1:-1:-1;;;;;13832:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13893:8;;:30;;;-1:-1:-1;;;;;13893:30:0;;13912:10;13893:30;;;;;;13927:7;;-1:-1:-1;;;;;13893:8:0;;:18;;:30;;;;;;;;;;;;;;:8;;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;13893:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;13893:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13893:30:0;:41;;13885:81;;;;;-1:-1:-1;;;;;13885:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;13992:32;14016:7;13992:23;:32::i;:::-;13973:51;-1:-1:-1;14047:4:0;14039:21;:36;-1:-1:-1;14039:36:0;14031:85;;;;;-1:-1:-1;;;;;14031:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14131:8;;:45;;;;;;14150:10;14131:45;;;;14170:4;14131:45;;;;;;14180:7;;-1:-1:-1;;;;;14131:8:0;;:18;;:45;;;;;;;;;;;;;;:8;;:45;;;5:2:-1;;;;30:1;27;20:12;5:2;14131:45:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14131:45:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14131:45:0;:56;;14123:98;;;;;-1:-1:-1;;;;;14123:98:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;14236:8;;:57;;;;;;14258:10;14236:57;;;;14278:4;14236:57;;;;;;;;;;;;-1:-1:-1;;;;;14236:8:0;;;;:21;;:57;;;;;;;;;;;;;;;:8;;:57;;;5:2:-1;;;;30:1;27;20:12;5:2;14236:57:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14236:57:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14236:57:0;14228:91;;;;;;;-1:-1:-1;;;;;14228:91:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;14326:32;;:10;;:32;;;;;14346:11;;14326:32;;;;14346:11;14326:10;:32;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;14365:6:0;;:39;;;;;;;;;;;;;;-1:-1:-1;;;;;14365:6:0;;;;:26;;:39;;;;;:6;;:39;;;;;;;;:6;;:39;;;5:2:-1;;;;30:1;27;20:12;5:2;14365:39:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;14416:46:0;;;14429:10;14416:46;;;;;;;;;;;;;;;;;;-1:-1:-1;14416:46:0;;;;;;;-1:-1:-1;14416:46:0;13785:683;;:::o;10313:98::-;10387:18;;10313:98;:::o;6900:104::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;6970:8;:28;;-1:-1:-1;;6970:28:0;-1:-1:-1;;;;;6970:28:0;;;;;;;;;;6900:104::o;9205:342::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;9316:1;9294:23;;9286:58;;;;;-1:-1:-1;;;;;9286:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9382:18;;9359:41;;;9351:90;;;;;-1:-1:-1;;;;;9351:90:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9448:18;:40;;;9500:41;;;;;;;;;;;;;;;;;9205:342;:::o;11058:695::-;11142:25;;11352:29;;;;;;11142:25;;11134:63;;;;;;;-1:-1:-1;;;;;11134:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;11204:36;11224:10;11236:3;11204:19;:36::i;:::-;11263:1;11255:9;;11247:38;;;;;-1:-1:-1;;;;;11247:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;11292:53;11307:3;11335:8;11313:9;:17;;11312:32;11292:14;:53::i;:::-;11443:1;11428:5;11385:34;11407:5;11389:15;;:23;11385:32;:34::i;:::-;11422:3;11385:40;:48;;;;;;;;11384:61;;11352:93;;11552:1;11527:15;;11484:34;11496:15;;11488:5;:23;11484:32;:34::i;:::-;11521:3;11484:40;:58;;;;;;;;11483:71;;11452:102;;11578:24;:51;;;;;11606:23;11578:51;11561:68;;11644:9;11636:55;;;;;;;-1:-1:-1;;;;;11636:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11698:49;11713:10;11725:3;11730:9;11741:5;11698:14;:49::i;:::-;11058:695;;;;;:::o;11759:383::-;11830:36;11850:10;11862:3;11830:19;:36::i;:::-;11873:28;11888:3;11893:7;11873:14;:28::i;:::-;11908:42;11930:10;11942:7;11908:21;:42::i;:::-;11957:6;;:40;;;;;;-1:-1:-1;;;;;11957:40:0;;;;;;;;;;;;;11986:1;11957:40;;;;;;;;;;;;:6;;;;;:14;;:40;;;;;:6;;:40;;;;;;;:6;;:40;;;5:2:-1;;;;30:1;27;20:12;5:2;11957:40:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;12004:6:0;;12066:9;;;12004:72;;;;;;12062:2;12052:12;;12004:72;;;;-1:-1:-1;;;;;12066:9:0;;;12004:72;;;;;;:6;;;;;-1:-1:-1;12004:47:0;;-1:-1:-1;12004:72:0;;;;;;;;;;12066:9;12004:6;:72;;;5:2:-1;;;;30:1;27;20:12;5:2;12004:72:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;12088:48:0;;;12111:10;12088:48;;-1:-1:-1;;;;;12088:48:0;;;;;;;;;;;;;;;;-1:-1:-1;12088:48:0;;;;;;;-1:-1:-1;12088:48:0;11759:383;;:::o;8072:319::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;8205:25;;;;8175:55;;;;;;;8167:85;;;;;-1:-1:-1;;;;;8167:85:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;8167:85:0;;;;;;;;;;;;;;;8259:25;:54;;-1:-1:-1;;8259:54:0;;;;;;;;;8325:60;;;8259:54;8359:25;;;8325:60;;;;;;;;;;;;;;;8072:319;:::o;5646:22::-;;;-1:-1:-1;;;;;5646:22:0;;:::o;14474:92::-;14545:15;;14474:92;:::o;7010:274::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;7108:1;7089:20;;7081:44;;;;;-1:-1:-1;;;;;7081:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7160:15;;7140:35;;;7132:65;;;;;-1:-1:-1;;;;;7132:65:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;7132:65:0;;;;;;;;;;;;;;;7204:15;:34;;;7250:28;;;;;;;;;;;;;;;;;7010:274;:::o;5459:36::-;;;;:::o;10892:160::-;10931:4;10937:6;10952:7;10961:9;10972:4;10978;10984;10990;11010:7;;;;;;;;;-1:-1:-1;;;;;11010:7:0;-1:-1:-1;;;;;11010:24:0;;11035:10;11010:36;;;;;-1:-1:-1;;;11010:36:0;;;;;;;-1:-1:-1;;;;;11010:36:0;-1:-1:-1;;;;;11010:36:0;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11010:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11010:36:0;;;;;;39:16:-1;36:1;17:17;2:54;101:4;11010:36:0;80:15:-1;;;-1:-1;;76:31;65:43;;120:4;113:20;13:3;5:12;;2:2;;;30:1;27;20:12;2:2;11010:36:0;;;;;;;;;;;;;;20:11:-1;12:20;;9:2;;;45:1;42;35:12;9:2;64:21;;126:4;117:14;;142:31;;;139:2;;;186:1;183;176:12;139:2;218:10;;268:11;251:29;;293:43;;;290:58;-1:-1;239:118;236:2;;;370:1;367;360:12;236:2;-1:-1;;11010:36:0;;;;;;;;;;;;;;;20:11:-1;12:20;;9:2;;;45:1;42;35:12;9:2;64:21;;126:4;117:14;;142:31;;;139:2;;;186:1;183;176:12;139:2;224:3;218:10;339:9;333:2;319:12;315:21;297:16;293:44;290:59;268:11;254:12;251:29;239:119;236:2;;;371:1;368;361:12;236:2;0:383;;11010:36:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11003:43;;;;;;;;;;;;;;;;10892:160;;;;;;;;:::o;8634:231::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;8708:1;8700:9;;8692:43;;;;;-1:-1:-1;;;;;8692:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8759:9;;8750:18;;;8742:58;;;;;-1:-1:-1;;;;;8742:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8807:9;:17;;;8836:23;;;;;;;;;;;;;;;;;8634:231;:::o;7406:352::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;7505:1;7487:19;;7479:43;;;;;-1:-1:-1;;;;;7479:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7555:14;;7537:32;;7529:69;;;;;-1:-1:-1;;;;;7529:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7632:14;;7613:33;;;7605:63;;;;;-1:-1:-1;;;;;7605:63:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;7605:63:0;;;;;;;;;;;;;;;7675:14;:32;;;7719:33;;;;;;;;;;;;;;;;;7406:352;:::o;9553:508::-;9837:7;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;9642:17;;9662:1;-1:-1:-1;9634:57:0;;;;;-1:-1:-1;;;;;9634:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9706:17;;9727:3;-1:-1:-1;9706:24:0;9698:68;;;;;-1:-1:-1;;;;;9698:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9790:1;9781:5;:10;;;;:24;;;;;9804:1;9795:5;:10;;;;9781:24;9773:52;;;;;;;-1:-1:-1;;;;;9773:52:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9847:1:0;9832:179;9854:10;:17;9850:1;:21;;;9832:179;;;9895:13;;9912:10;;9895;;:13;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9895:27:0;;;9887:64;;;;;-1:-1:-1;;;;;9887:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9997:5;9992:11;;;;;;;;;;9960:14;:29;9975:10;9986:1;9975:13;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9960:29:0;;;;;;;;;;;-1:-1:-1;9960:29:0;:43;;-1:-1:-1;;9960:43:0;;;;;;;;;;;;;;;-1:-1:-1;9873:3:0;;9832:179;;;10022:33;10037:10;10049:5;10022:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;10022:33:0;;;;;;;;;;;;;;;;;;9553:508;;;:::o;7764:302::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;7863:14;;7845:32;;7837:69;;;;;-1:-1:-1;;;;;7837:69:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;7940:14;;7921:33;;;7913:63;;;;;-1:-1:-1;;;;;7913:63:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;7913:63:0;;;;;;;;;;;;;;;7983:14;:32;;;8027:33;;;;;;;;;;;;;;;;;7764:302;:::o;5411:35::-;;;;:::o;5351:21::-;;;;:::o;982:101::-;1064:13;;-1:-1:-1;;;;;1064:13:0;1050:10;:27;;982:101::o;8397:231::-;408:13;:11;:13::i;:::-;:34;;;;425:17;:15;:17::i;:::-;400:56;;;;;;;-1:-1:-1;;;;;400:56:0;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;400:56:0;;;;;;;;;;;;;;;8471:1;8463:9;;8455:43;;;;;-1:-1:-1;;;;;8455:43:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8522:9;;8513:18;;;8505:58;;;;;-1:-1:-1;;;;;8505:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;8570:9;:17;;;8599:23;;;;;;;;;;;;;;;;;8397:231;:::o;5507:27::-;;;;:::o;5148:46::-;;;;;;;;;;;;;;;:::o;10417:124::-;-1:-1:-1;;;;;10509:25:0;;10482:5;10509:25;;;:14;:25;;;;;;;;10503:32;;;;;;;;10496:39;;10417:124;;;;:::o;670:207::-;611:17;:15;:17::i;:::-;603:47;;;;;;;-1:-1:-1;;;;;603:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;758:25:0;;;;750:34;;;;;;791:13;:25;;-1:-1:-1;;791:25:0;-1:-1:-1;;;;;791:25:0;;;;;;;;828:43;;849:10;;828:43;;-1:-1:-1;;828:43:0;670:207;:::o;15710:451::-;15795:7;;:24;;;-1:-1:-1;;;;;15795:24:0;;-1:-1:-1;;;;;15795:24:0;;;;;;;;;:7;;;;;;;;:17;;:24;;;;;;;;;;;;;;;-1:-1:-1;15795:7:0;:24;;;5:2:-1;;;;30:1;27;20:12;5:2;15795:24:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15795:24:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15795:24:0;15787:58;;;;;;;-1:-1:-1;;;;;15787:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15860:7;;:22;;;-1:-1:-1;;;;;15860:22:0;;-1:-1:-1;;;;;15860:22:0;;;;;;;;;:7;;;;;;;;:17;;:22;;;;;;;;;;;;;;;-1:-1:-1;15860:7:0;:22;;;5:2:-1;;;;30:1;27;20:12;5:2;15860:22:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15860:22:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15860:22:0;15852:72;;;;;;;-1:-1:-1;;;;;15852:72:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15935:12:0;;;;;;;15931:140;;15966:7;;:55;;;;;;-1:-1:-1;;;;;15966:55:0;;;;;;;;;;;;;;;;:7;;;;;;;;:43;;:55;;;;;;;;;;;;;;;-1:-1:-1;15966:7:0;:55;;;5:2:-1;;;;30:1;27;20:12;5:2;15966:55:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15966:55:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15966:55:0;15958:105;;;;;;;-1:-1:-1;;;;;15958:105:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16085:15;;16103:1;-1:-1:-1;16077:78:0;;;;;-1:-1:-1;;;;;16077:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15710:451;;:::o;15176:528::-;15415:12;15263:17;;;15255:48;;;;;-1:-1:-1;;;;;15255:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15335:14;;15318:31;;;15310:98;;;;;-1:-1:-1;;;;;15310:98:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15430:6;;:38;;;;;;-1:-1:-1;;;;;15430:38:0;;;;;;;;;:6;;;;;:31;;:38;;;;;;;;;;;;;;:6;;:38;;;5:2:-1;;;;30:1;27;20:12;5:2;15430:38:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15430:38:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15430:38:0;;-1:-1:-1;15479:12:0;;15475:224;;;15527:14;;15510:31;;;15502:74;;;;;-1:-1:-1;;;;;15502:74:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15475:224;;;15607:24;;;;15599:92;;;;;-1:-1:-1;;;;;15599:92:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15176:528;;;:::o;16167:238::-;16238:11;16277:17;-1:-1:-1;;;;;16252:21:0;;;;;;:14;:21;;;;;;;;:42;;;;;;;;;;:80;;;;-1:-1:-1;16323:9:0;-1:-1:-1;;;;;16298:21:0;;;;;;:14;:21;;;;;;;;:34;;;;;;;;;;16252:80;16238:94;;16347:6;16339:60;;;;;;;-1:-1:-1;;;;;16339:60:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16411:208;16512:6;;:30;;;;;;-1:-1:-1;;;;;16512:30:0;;;;;;;;;16491:18;;16512:6;;;;;:23;;:30;;;;;;;;;;;;;;;16491:18;16512:6;:30;;;5:2:-1;;;;30:1;27;20:12;5:2;16512:30:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16512:30:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16512:30:0;;-1:-1:-1;16557:24:0;;;;16549:64;;;;;-1:-1:-1;;;;;16549:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;14598:186;14667:4;14700:1;14688:9;;:13;14680:65;;;;;;;-1:-1:-1;;;;;14680:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14769:9;;14759:7;:19;;;;;;;;;14598:186;-1:-1:-1;;14598:186:0:o;1108:149::-;1156:4;1182:1;1173:6;:10;1169:57;;;1206:6;-1:-1:-1;;1206:11:0;1194:24;;;;1169:57;-1:-1:-1;1244:6:0;1108:149::o;14790:380::-;15010:6;;:55;;;;;;-1:-1:-1;;;;;15010:55:0;;;;;;;14994:8;14964:25;;;14963:40;15010:55;;;;;;14893:18;15010:55;;;;;;;;;;;;;;14934:2;14914:22;;;14963:40;;15010:6;;;;;:14;;:55;;;;;14893:18;;15010:55;;;;;14893:18;15010:6;:55;;;5:2:-1;;;;30:1;27;20:12;5:2;15010:55:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;;15072:9:0;;;:33;;-1:-1:-1;;;;;15072:9:0;;;;-1:-1:-1;15072:33:0;;;;;-1:-1:-1;15091:13:0;;15072:33;:9;:33;15091:13;15072:9;:33;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;-1:-1;15117:47:0;;;-1:-1:-1;;;;;15117:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;14790:380;;;;;;:::o
Swarm Source
bzzr://cb864849166ddc4457943785ef746e8019d745b439e18f7757ec3b61c7e9c122
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.