More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 669 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Withdraw | 16075662 | 745 days ago | IN | 0 ETH | 0.00100024 | ||||
Withdraw | 16004640 | 755 days ago | IN | 0 ETH | 0.00096048 | ||||
Withdraw | 15975057 | 759 days ago | IN | 0 ETH | 0.00129851 | ||||
Withdraw | 15920121 | 767 days ago | IN | 0 ETH | 0.00170386 | ||||
Withdraw | 15919610 | 767 days ago | IN | 0 ETH | 0.00137384 | ||||
Withdraw | 15735881 | 793 days ago | IN | 0 ETH | 0.00138305 | ||||
Stake | 15657300 | 804 days ago | IN | 0 ETH | 0.00053153 | ||||
Stake | 15595538 | 812 days ago | IN | 0 ETH | 0.00015497 | ||||
Stake | 15595536 | 812 days ago | IN | 0 ETH | 0.0009412 | ||||
Withdraw | 15554132 | 818 days ago | IN | 0 ETH | 0.00052785 | ||||
Stake | 15502088 | 826 days ago | IN | 0 ETH | 0.00195026 | ||||
Withdraw | 15493491 | 828 days ago | IN | 0 ETH | 0.00072133 | ||||
Stake | 15390707 | 844 days ago | IN | 0 ETH | 0.00276269 | ||||
Stake | 15336558 | 853 days ago | IN | 0 ETH | 0.00073318 | ||||
Withdraw | 15261566 | 864 days ago | IN | 0 ETH | 0.00067202 | ||||
Stake | 15191846 | 875 days ago | IN | 0 ETH | 0.00016069 | ||||
Stake | 15191828 | 875 days ago | IN | 0 ETH | 0.00019297 | ||||
Stake | 15191828 | 875 days ago | IN | 0 ETH | 0.00016081 | ||||
Withdraw | 15128259 | 885 days ago | IN | 0 ETH | 0.00118445 | ||||
Stake | 14955434 | 914 days ago | IN | 0 ETH | 0.01108217 | ||||
Withdraw | 14953346 | 915 days ago | IN | 0 ETH | 0.00943279 | ||||
Stake | 14865634 | 929 days ago | IN | 0 ETH | 0.00085233 | ||||
Stake | 14829651 | 935 days ago | IN | 0 ETH | 0.00334714 | ||||
Stake | 14784895 | 942 days ago | IN | 0 ETH | 0.00240385 | ||||
Withdraw | 14784497 | 943 days ago | IN | 0 ETH | 0.00160117 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
Professional_v8
Compiler Version
v0.5.16+commit.9c3226ce
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-04-13 */ pragma solidity 0.5.16; /** * @dev Interface of the ERC20 standard as defined in the EIP. Does not include * the optional functions; to access them see `ERC20Detailed`. */ interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } // File: openzeppelin-solidity/contracts/math/SafeMath.sol pragma solidity 0.5.16; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= a, "SafeMath: subtraction overflow"); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, "SafeMath: division by zero"); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0, "SafeMath: modulo by zero"); return a % b; } } pragma solidity 0.5.16; contract Context { // Empty internal constructor, to prevent people from mistakenly deploying // an instance of this contract, which should be used via inheritance. constructor() internal {} function _msgSender() internal view returns (address payable) { return msg.sender; } function _msgData() internal view returns (bytes memory) { this; // silence state mutability warning without generating bytecode return msg.data; } } // File: @openzeppelin/contracts/ownership/Ownable.sol pragma solidity 0.5.16; contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() internal { _owner = _msgSender(); emit OwnershipTransferred(address(0), _owner); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(isOwner(), "Ownable: caller is not the owner"); _; } function isOwner() public view returns (bool) { return _msgSender() == _owner; } function renounceOwnership() public onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public onlyOwner { _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal { require( newOwner != address(0), "Ownable: new owner is the zero address" ); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } pragma solidity 0.5.16; contract Professional_v8 is Ownable { using SafeMath for uint256; /** * @dev Structs to store user staking data. */ struct Deposits { uint256 depositAmount; uint256 depositTime; uint256 endTime; uint64 userIndex; bool paid; bool eligible; } /** * @dev Structs to store interest rate change. */ struct Rates { uint64 newInterestRate; uint256 timeStamp; } mapping(address => Deposits) private deposits; mapping(uint64 => Rates) public rates; mapping(address => bool) private hasStaked; address public tokenAddress; uint256 public stakedBalance; uint256 public rewardBalance; uint256 public stakedTotal; uint256 public totalReward; uint64 public index; uint64 public rate; uint256 public lockDuration; uint256 public eligibilityAmount; string public name; IERC20 public ERC20Interface; /** * @dev Emitted when user stakes 'stakedAmount' value of tokens */ event Staked( address indexed token, address indexed staker_, uint256 stakedAmount_ ); /** * @dev Emitted when user withdraws his stakings */ event PaidOut( address indexed token, address indexed staker_, uint256 amount_, uint256 reward_ ); /** * @param * name_ name of the contract * tokenAddress_ contract address of the token * rate_ rate multiplied by 100 * lockduration_ duration in days */ constructor( string memory name_, address tokenAddress_, uint64 rate_, uint256 lockDuration_ ) public Ownable() { name = name_; require(tokenAddress_ != address(0), "Zero token address"); tokenAddress = tokenAddress_; lockDuration = lockDuration_; require(rate_ != 0, "Zero interest rate"); rate = rate_; rates[index] = Rates(rate, block.timestamp); } /** * Requirements: * `rate_` New effective interest rate multiplied by 100 * @dev to set interest rates */ function setRate(uint64 rate_) external onlyOwner { require(rate_ != 0, "Zero interest rate"); rate = rate_; index++; rates[index] = Rates(rate_, block.timestamp); } /** * Requirements: * `amount_` Eligibility amount to be set for Professional Tier unlocks * @dev to set eligibility amount */ function setEligibilityAmount( uint256 eligibilityAmount_ //external ) external onlyOwner { eligibilityAmount = eligibilityAmount_; } /** * Requirements: * `lockduration_' lock days * @dev to set lock duration days */ function changeLockDuration(uint256 lockduration_) external onlyOwner { lockDuration = lockduration_; } /** * Requirements: * `user_` User wallet address * @dev to view eligibility status of user */ function eligibility(address user_) external view returns (bool) { return deposits[user_].eligible; } /** * Requirements: * `rewardAmount` rewards to be added to the staking contract * @dev to add rewards to the staking contract * once the allowance is given to this contract for 'rewardAmount' by the user */ function addReward(uint256 rewardAmount) external _hasAllowance(msg.sender, rewardAmount) returns (bool) { require(rewardAmount > 0, "Reward must be positive"); address from = msg.sender; if (!_payMe(from, rewardAmount)) { return false; } totalReward = totalReward.add(rewardAmount); rewardBalance = rewardBalance.add(rewardAmount); return true; } /** * Requirements: * `user` User wallet address * @dev returns user staking data */ function userDeposits(address user) external view returns ( uint256, uint256, uint256, uint256, bool ) { if (hasStaked[user]) { return ( deposits[user].depositAmount, deposits[user].depositTime, deposits[user].endTime, deposits[user].userIndex, deposits[user].paid ); } } /** * Requirements: * `amount` Amount to be staked /** * @dev to stake 'amount' value of tokens * once the user has given allowance to the staking contract */ function stake(uint256 amount) external _hasAllowance(msg.sender, amount) returns (bool) { require(amount > 0, "Can't stake 0 amount"); address from = msg.sender; require(!hasStaked[from], "Already Staked"); return (_stake(from, amount)); } function _stake(address from, uint256 amount) private returns (bool) { if (!_payMe(from, amount)) { return false; } hasStaked[from] = true; bool stakerEligibility; if (amount >= eligibilityAmount) { stakerEligibility = true; } deposits[from] = Deposits( amount, block.timestamp, block.timestamp.add((lockDuration.mul(86400))), //lockDuration * 24 * 3600 index, false, stakerEligibility ); emit Staked(tokenAddress, from, amount); stakedBalance = stakedBalance.add(amount); stakedTotal = stakedTotal.add(amount); return true; } /** * @dev to withdraw user stakings after the lock period ends. */ function withdraw() external returns (bool) { address from = msg.sender; require(hasStaked[from], "No stakes found for user"); require( block.timestamp >= deposits[from].endTime, "Requesting before lock time" ); require(!deposits[from].paid, "Already paid out"); return (_withdraw(from)); } function _withdraw(address from) private returns (bool) { uint256 payOut = _calculate(from); uint256 amount = deposits[from].depositAmount; uint256 reward = payOut.sub(amount); require(reward <= rewardBalance, "Not enough rewards"); stakedBalance = stakedBalance.sub(amount); rewardBalance = rewardBalance.sub(reward); deposits[from].paid = true; hasStaked[from] = false; if (deposits[from].eligible) { deposits[from].eligible = false; } if (_payDirect(from, payOut)) { emit PaidOut(tokenAddress, from, amount, reward); return true; } return false; } function emergencyWithdraw() external returns (bool) { address from = msg.sender; require(hasStaked[from], "No stakes found for user"); require( block.timestamp >= deposits[from].endTime, "Requesting before lock time" ); require(!deposits[from].paid, "Already paid out"); return (_emergencyWithdraw(from)); } function _emergencyWithdraw(address from) private returns (bool) { uint256 amount = deposits[from].depositAmount; stakedBalance = stakedBalance.sub(amount); deposits[from].paid = true; hasStaked[from] = false; //Check-Effects-Interactions pattern if (deposits[from].eligible) { deposits[from].eligible = false; } bool principalPaid = _payDirect(from, amount); require(principalPaid, "Error paying"); emit PaidOut(tokenAddress, from, amount, 0); return true; } /** * Requirements: * `from` User wallet address * @dev to calculate the rewards based on user staked 'amount' * 'userIndex' - the index of the interest rate at the time of user stake. * 'depositTime' - time of staking */ function calculate(address from) external view returns (uint256) { return _calculate(from); } function _calculate(address from) private view returns (uint256) { if (!hasStaked[from]) return 0; ( uint256 amount, uint256 depositTime, uint256 endTime, uint64 userIndex ) = ( deposits[from].depositAmount, deposits[from].depositTime, deposits[from].endTime, deposits[from].userIndex ); uint256 time; uint256 interest; uint256 _lockduration = endTime.sub(depositTime); for (uint64 i = userIndex; i < index; i++) { //loop runs till the latest index/interest rate change if (endTime < rates[i + 1].timeStamp) { //if the change occurs after the endTime loop breaks break; } else { time = rates[i + 1].timeStamp.sub(depositTime); interest = amount.mul(rates[i].newInterestRate).mul(time).div( _lockduration.mul(10000) ); //replace with (_lockduration * 10000) amount += interest; depositTime = rates[i + 1].timeStamp; userIndex++; } } if (depositTime < endTime) { //final calculation for the remaining time period time = endTime.sub(depositTime); interest = time .mul(amount) .mul(rates[userIndex].newInterestRate) .div(_lockduration.mul(10000)); //replace with (lockduration * 10000) amount += interest; } return (amount); } function _payMe(address payer, uint256 amount) private returns (bool) { return _payTo(payer, address(this), amount); } function _payTo( address allower, address receiver, uint256 amount ) private _hasAllowance(allower, amount) returns (bool) { ERC20Interface = IERC20(tokenAddress); return ERC20Interface.transferFrom(allower, receiver, amount); } function _payDirect(address to, uint256 amount) private returns (bool) { ERC20Interface = IERC20(tokenAddress); return ERC20Interface.transfer(to, amount); } modifier _hasAllowance(address allower, uint256 amount) { // Make sure the allower has provided the right allowance. ERC20Interface = IERC20(tokenAddress); uint256 ourAllowance = ERC20Interface.allowance(allower, address(this)); require(amount <= ourAllowance, "Make sure to add enough allowance"); _; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"address","name":"tokenAddress_","type":"address"},{"internalType":"uint64","name":"rate_","type":"uint64"},{"internalType":"uint256","name":"lockDuration_","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"staker_","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount_","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"reward_","type":"uint256"}],"name":"PaidOut","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"token","type":"address"},{"indexed":true,"internalType":"address","name":"staker_","type":"address"},{"indexed":false,"internalType":"uint256","name":"stakedAmount_","type":"uint256"}],"name":"Staked","type":"event"},{"constant":true,"inputs":[],"name":"ERC20Interface","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"rewardAmount","type":"uint256"}],"name":"addReward","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"from","type":"address"}],"name":"calculate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"lockduration_","type":"uint256"}],"name":"changeLockDuration","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"user_","type":"address"}],"name":"eligibility","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"eligibilityAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"emergencyWithdraw","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"index","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"lockDuration","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"rate","outputs":[{"internalType":"uint64","name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint64","name":"","type":"uint64"}],"name":"rates","outputs":[{"internalType":"uint64","name":"newInterestRate","type":"uint64"},{"internalType":"uint256","name":"timeStamp","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"rewardBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"eligibilityAmount_","type":"uint256"}],"name":"setEligibilityAmount","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint64","name":"rate_","type":"uint64"}],"name":"setRate","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"stake","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"stakedBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"stakedTotal","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalReward","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"userDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdraw","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b506040516200359038038062003590833981810160405260808110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b838201915060208201858111156200006f57600080fd5b82518660018202830111640100000000821117156200008d57600080fd5b8083526020830192505050908051906020019080838360005b83811015620000c3578082015181840152602081019050620000a6565b50505050905090810190601f168015620000f15780820380516001836020036101000a031916815260200191505b50604052602001805190602001909291908051906020019092919080519060200190929190505050620001296200044c60201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a383600c9080519060200190620001fc92919062000454565b50600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415620002a1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f5a65726f20746f6b656e2061646472657373000000000000000000000000000081525060200191505060405180910390fd5b82600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600a8190555060008267ffffffffffffffff1614156200036b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f5a65726f20696e7465726573742072617465000000000000000000000000000081525060200191505060405180910390fd5b81600960086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506040518060400160405280600960089054906101000a900467ffffffffffffffff1667ffffffffffffffff1681526020014281525060026000600960009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550602082015181600101559050505050505062000503565b600033905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200049757805160ff1916838001178555620004c8565b82800160010185558215620004c8579182015b82811115620004c7578251825591602001919060010190620004aa565b5b509050620004d79190620004db565b5090565b6200050091905b80821115620004fc576000816000905550600101620004e2565b5090565b90565b61307d80620005136000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c806363c36dec116100de5780638f32d59b11610097578063aa5c3ab411610071578063aa5c3ab4146106d1578063d66692a7146106ef578063db2e21bc1461070d578063f2fde38b1461072f5761018e565b80638f32d59b1461061f5780639d76ea5814610641578063a694fc3a1461068b5761018e565b806363c36dec146104ed578063715018a614610549578063715d94021461055357806374de4ec414610571578063750142e6146105b75780638da5cb5b146105d55761018e565b80632986c0e51161014b5780633ccfd60b116101255780633ccfd60b146104275780633e4134831461044957806350003ca6146104775780635b9f0016146104cf5761018e565b80632986c0e51461038b5780632c4e722e146103bd578063398327e6146103ef5761018e565b8063045544431461019357806306fdde03146101b15780630ba36dcd146102345780630f0a3d13146102ac5780631bbc4b831461031357806327a59fb81461035d575b600080fd5b61019b610773565b6040518082815260200191505060405180910390f35b6101b9610779565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101f95780820151818401526020810190506101de565b50505050905090810190601f1680156102265780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102766004803603602081101561024a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610817565b60405180868152602001858152602001848152602001838152602001821515151581526020019550505050505060405180910390f35b6102e2600480360360208110156102c257600080fd5b81019080803567ffffffffffffffff169060200190929190505050610a07565b604051808367ffffffffffffffff1667ffffffffffffffff1681526020018281526020019250505060405180910390f35b61031b610a3f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103896004803603602081101561037357600080fd5b8101908080359060200190929190505050610a65565b005b610393610ae9565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6103c5610b03565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6104256004803603602081101561040557600080fd5b81019080803567ffffffffffffffff169060200190929190505050610b1d565b005b61042f610d23565b604051808215151515815260200191505060405180910390f35b6104756004803603602081101561045f57600080fd5b8101908080359060200190929190505050610f72565b005b6104b96004803603602081101561048d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ff6565b6040518082815260200191505060405180910390f35b6104d7611008565b6040518082815260200191505060405180910390f35b61052f6004803603602081101561050357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061100e565b604051808215151515815260200191505060405180910390f35b610551611067565b005b61055b6111a0565b6040518082815260200191505060405180910390f35b61059d6004803603602081101561058757600080fd5b81019080803590602001909291905050506111a6565b604051808215151515815260200191505060405180910390f35b6105bf61144f565b6040518082815260200191505060405180910390f35b6105dd611455565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61062761147e565b604051808215151515815260200191505060405180910390f35b6106496114dc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6106b7600480360360208110156106a157600080fd5b8101908080359060200190929190505050611502565b604051808215151515815260200191505060405180910390f35b6106d9611824565b6040518082815260200191505060405180910390f35b6106f761182a565b6040518082815260200191505060405180910390f35b610715611830565b604051808215151515815260200191505060405180910390f35b6107716004803603602081101561074557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a7f565b005b600a5481565b600c8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561080f5780601f106107e45761010080835404028352916020019161080f565b820191906000526020600020905b8154815290600101906020018083116107f257829003601f168201915b505050505081565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156109fd57600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900467ffffffffffffffff16600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160089054906101000a900460ff168167ffffffffffffffff169150945094509450945094506109fe565b5b91939590929450565b60026020528060005260406000206000915090508060000160009054906101000a900467ffffffffffffffff16908060010154905082565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610a6d61147e565b610adf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600a8190555050565b600960009054906101000a900467ffffffffffffffff1681565b600960089054906101000a900467ffffffffffffffff1681565b610b2561147e565b610b97576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b60008167ffffffffffffffff161415610c18576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f5a65726f20696e7465726573742072617465000000000000000000000000000081525060200191505060405180910390fd5b80600960086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506009600081819054906101000a900467ffffffffffffffff168092919060010191906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505060405180604001604052808267ffffffffffffffff1681526020014281525060026000600960009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506020820151816001015590505050565b600080339050600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610de8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f4e6f207374616b657320666f756e6420666f722075736572000000000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154421015610ea0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f52657175657374696e67206265666f7265206c6f636b2074696d65000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160089054906101000a900460ff1615610f63576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f416c72656164792070616964206f75740000000000000000000000000000000081525060200191505060405180910390fd5b610f6c81611b05565b91505090565b610f7a61147e565b610fec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600b8190555050565b600061100182611e39565b9050919050565b60055481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160099054906101000a900460ff169050919050565b61106f61147e565b6110e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600b5481565b60003382600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b1580156112e257600080fd5b505afa1580156112f6573d6000803e3d6000fd5b505050506040513d602081101561130c57600080fd5b8101908080519060200190929190505050905080821115611378576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612fe16021913960400191505060405180910390fd5b600085116113ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f526577617264206d75737420626520706f73697469766500000000000000000081525060200191505060405180910390fd5b60003390506113fd8187612239565b61140b576000945050611447565b6114208660085461224e90919063ffffffff16565b60088190555061143b8660065461224e90919063ffffffff16565b60068190555060019450505b505050919050565b60085481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166114c06122d6565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003382600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b15801561163e57600080fd5b505afa158015611652573d6000803e3d6000fd5b505050506040513d602081101561166857600080fd5b81019080805190602001909291905050509050808211156116d4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612fe16021913960400191505060405180910390fd5b6000851161174a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f43616e2774207374616b65203020616d6f756e7400000000000000000000000081525060200191505060405180910390fd5b6000339050600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561180f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f416c7265616479205374616b656400000000000000000000000000000000000081525060200191505060405180910390fd5b61181981876122de565b945050505050919050565b60065481565b60075481565b600080339050600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166118f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f4e6f207374616b657320666f756e6420666f722075736572000000000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201544210156119ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f52657175657374696e67206265666f7265206c6f636b2074696d65000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160089054906101000a900460ff1615611a70576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f416c72656164792070616964206f75740000000000000000000000000000000081525060200191505060405180910390fd5b611a7981612572565b91505090565b611a8761147e565b611af9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b611b0281612854565b50565b600080611b1183611e39565b90506000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015490506000611b6f828461299890919063ffffffff16565b9050600654811115611be9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4e6f7420656e6f7567682072657761726473000000000000000000000000000081525060200191505060405180910390fd5b611bfe8260055461299890919063ffffffff16565b600581905550611c198160065461299890919063ffffffff16565b60068190555060018060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160086101000a81548160ff0219169083151502179055506000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160099054906101000a900460ff1615611d82576000600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160096101000a81548160ff0219169083151502179055505b611d8c8584612a21565b15611e2c578473ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f85ab59351da11b79336de7647172267c33bf533ee87d9d292441c2672177159b8484604051808381526020018281526020019250505060405180910390a360019350505050611e34565b600093505050505b919050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611e955760009050612234565b600080600080600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900467ffffffffffffffff1693509350935093506000806000611fdb868661299890919063ffffffff16565b905060008490505b600960009054906101000a900467ffffffffffffffff1667ffffffffffffffff168167ffffffffffffffff16101561217057600260006001830167ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206001015486101561204f57612170565b61208f87600260006001850167ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206001015461299890919063ffffffff16565b93506121246120a961271084612b7290919063ffffffff16565b61211686612108600260008767ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff168d612b7290919063ffffffff16565b612b7290919063ffffffff16565b612bf890919063ffffffff16565b92508288019750600260006001830167ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060010154965084806001019550508080600101915050611fe3565b50848610156122295761218c868661299890919063ffffffff16565b92506122216121a661271083612b7290919063ffffffff16565b612213600260008867ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff166122058b88612b7290919063ffffffff16565b612b7290919063ffffffff16565b612bf890919063ffffffff16565b915081870196505b869750505050505050505b919050565b6000612246833084612c87565b905092915050565b6000808284019050838110156122cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600033905090565b60006122ea8383612239565b6122f7576000905061256c565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000600b54831061235f57600190505b6040518060c001604052808481526020014281526020016123a061239162015180600a54612b7290919063ffffffff16565b4261224e90919063ffffffff16565b8152602001600960009054906101000a900467ffffffffffffffff1667ffffffffffffffff168152602001600015158152602001821515815250600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060808201518160030160086101000a81548160ff02191690831515021790555060a08201518160030160096101000a81548160ff0219169083151502179055509050508373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f5dac0c1b1112564a045ba943c9d50270893e8e826c49be8e7073adc713ab7bd7856040518082815260200191505060405180910390a36125458360055461224e90919063ffffffff16565b6005819055506125608360075461224e90919063ffffffff16565b60078190555060019150505b92915050565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015490506125cf8160055461299890919063ffffffff16565b60058190555060018060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160086101000a81548160ff0219169083151502179055506000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160099054906101000a900460ff1615612738576000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160096101000a81548160ff0219169083151502179055505b60006127448483612a21565b9050806127b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f4572726f7220706179696e67000000000000000000000000000000000000000081525060200191505060405180910390fd5b8373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f85ab59351da11b79336de7647172267c33bf533ee87d9d292441c2672177159b846000604051808381526020018281526020019250505060405180910390a3600192505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156128da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806130026026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600082821115612a10576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612b2f57600080fd5b505af1158015612b43573d6000803e3d6000fd5b505050506040513d6020811015612b5957600080fd5b8101908080519060200190929190505050905092915050565b600080831415612b855760009050612bf2565b6000828402905082848281612b9657fe5b0414612bed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806130286021913960400191505060405180910390fd5b809150505b92915050565b6000808211612c6f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b6000828481612c7a57fe5b0490508091505092915050565b60008382600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b158015612dc357600080fd5b505afa158015612dd7573d6000803e3d6000fd5b505050506040513d6020811015612ded57600080fd5b8101908080519060200190929190505050905080821115612e59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612fe16021913960400191505060405180910390fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8888886040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015612f9957600080fd5b505af1158015612fad573d6000803e3d6000fd5b505050506040513d6020811015612fc357600080fd5b81019080805190602001909291905050509350505050939250505056fe4d616b65207375726520746f2061646420656e6f75676820616c6c6f77616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a7231582033881f354c5e2379944b8ae5262f69ac717dc8f83800e47ce15d29e2a8d0b17c64736f6c6343000510003200000000000000000000000000000000000000000000000000000000000000800000000000000000000000001de5e000c41c8d35b9f1f4985c23988f05831057000000000000000000000000000000000000000000000000000000000000016a000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000c50726f66657373696f6e616c0000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061018e5760003560e01c806363c36dec116100de5780638f32d59b11610097578063aa5c3ab411610071578063aa5c3ab4146106d1578063d66692a7146106ef578063db2e21bc1461070d578063f2fde38b1461072f5761018e565b80638f32d59b1461061f5780639d76ea5814610641578063a694fc3a1461068b5761018e565b806363c36dec146104ed578063715018a614610549578063715d94021461055357806374de4ec414610571578063750142e6146105b75780638da5cb5b146105d55761018e565b80632986c0e51161014b5780633ccfd60b116101255780633ccfd60b146104275780633e4134831461044957806350003ca6146104775780635b9f0016146104cf5761018e565b80632986c0e51461038b5780632c4e722e146103bd578063398327e6146103ef5761018e565b8063045544431461019357806306fdde03146101b15780630ba36dcd146102345780630f0a3d13146102ac5780631bbc4b831461031357806327a59fb81461035d575b600080fd5b61019b610773565b6040518082815260200191505060405180910390f35b6101b9610779565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156101f95780820151818401526020810190506101de565b50505050905090810190601f1680156102265780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102766004803603602081101561024a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610817565b60405180868152602001858152602001848152602001838152602001821515151581526020019550505050505060405180910390f35b6102e2600480360360208110156102c257600080fd5b81019080803567ffffffffffffffff169060200190929190505050610a07565b604051808367ffffffffffffffff1667ffffffffffffffff1681526020018281526020019250505060405180910390f35b61031b610a3f565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103896004803603602081101561037357600080fd5b8101908080359060200190929190505050610a65565b005b610393610ae9565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6103c5610b03565b604051808267ffffffffffffffff1667ffffffffffffffff16815260200191505060405180910390f35b6104256004803603602081101561040557600080fd5b81019080803567ffffffffffffffff169060200190929190505050610b1d565b005b61042f610d23565b604051808215151515815260200191505060405180910390f35b6104756004803603602081101561045f57600080fd5b8101908080359060200190929190505050610f72565b005b6104b96004803603602081101561048d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ff6565b6040518082815260200191505060405180910390f35b6104d7611008565b6040518082815260200191505060405180910390f35b61052f6004803603602081101561050357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061100e565b604051808215151515815260200191505060405180910390f35b610551611067565b005b61055b6111a0565b6040518082815260200191505060405180910390f35b61059d6004803603602081101561058757600080fd5b81019080803590602001909291905050506111a6565b604051808215151515815260200191505060405180910390f35b6105bf61144f565b6040518082815260200191505060405180910390f35b6105dd611455565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61062761147e565b604051808215151515815260200191505060405180910390f35b6106496114dc565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6106b7600480360360208110156106a157600080fd5b8101908080359060200190929190505050611502565b604051808215151515815260200191505060405180910390f35b6106d9611824565b6040518082815260200191505060405180910390f35b6106f761182a565b6040518082815260200191505060405180910390f35b610715611830565b604051808215151515815260200191505060405180910390f35b6107716004803603602081101561074557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a7f565b005b600a5481565b600c8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561080f5780601f106107e45761010080835404028352916020019161080f565b820191906000526020600020905b8154815290600101906020018083116107f257829003601f168201915b505050505081565b6000806000806000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156109fd57600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900467ffffffffffffffff16600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160089054906101000a900460ff168167ffffffffffffffff169150945094509450945094506109fe565b5b91939590929450565b60026020528060005260406000206000915090508060000160009054906101000a900467ffffffffffffffff16908060010154905082565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b610a6d61147e565b610adf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600a8190555050565b600960009054906101000a900467ffffffffffffffff1681565b600960089054906101000a900467ffffffffffffffff1681565b610b2561147e565b610b97576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b60008167ffffffffffffffff161415610c18576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f5a65726f20696e7465726573742072617465000000000000000000000000000081525060200191505060405180910390fd5b80600960086101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506009600081819054906101000a900467ffffffffffffffff168092919060010191906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505060405180604001604052808267ffffffffffffffff1681526020014281525060026000600960009054906101000a900467ffffffffffffffff1667ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055506020820151816001015590505050565b600080339050600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16610de8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f4e6f207374616b657320666f756e6420666f722075736572000000000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154421015610ea0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f52657175657374696e67206265666f7265206c6f636b2074696d65000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160089054906101000a900460ff1615610f63576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f416c72656164792070616964206f75740000000000000000000000000000000081525060200191505060405180910390fd5b610f6c81611b05565b91505090565b610f7a61147e565b610fec576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600b8190555050565b600061100182611e39565b9050919050565b60055481565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160099054906101000a900460ff169050919050565b61106f61147e565b6110e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600b5481565b60003382600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b1580156112e257600080fd5b505afa1580156112f6573d6000803e3d6000fd5b505050506040513d602081101561130c57600080fd5b8101908080519060200190929190505050905080821115611378576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612fe16021913960400191505060405180910390fd5b600085116113ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f526577617264206d75737420626520706f73697469766500000000000000000081525060200191505060405180910390fd5b60003390506113fd8187612239565b61140b576000945050611447565b6114208660085461224e90919063ffffffff16565b60088190555061143b8660065461224e90919063ffffffff16565b60068190555060019450505b505050919050565b60085481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166114c06122d6565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003382600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b15801561163e57600080fd5b505afa158015611652573d6000803e3d6000fd5b505050506040513d602081101561166857600080fd5b81019080805190602001909291905050509050808211156116d4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612fe16021913960400191505060405180910390fd5b6000851161174a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f43616e2774207374616b65203020616d6f756e7400000000000000000000000081525060200191505060405180910390fd5b6000339050600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561180f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f416c7265616479205374616b656400000000000000000000000000000000000081525060200191505060405180910390fd5b61181981876122de565b945050505050919050565b60065481565b60075481565b600080339050600360008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff166118f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f4e6f207374616b657320666f756e6420666f722075736572000000000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201544210156119ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f52657175657374696e67206265666f7265206c6f636b2074696d65000000000081525060200191505060405180910390fd5b600160008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160089054906101000a900460ff1615611a70576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f416c72656164792070616964206f75740000000000000000000000000000000081525060200191505060405180910390fd5b611a7981612572565b91505090565b611a8761147e565b611af9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b611b0281612854565b50565b600080611b1183611e39565b90506000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015490506000611b6f828461299890919063ffffffff16565b9050600654811115611be9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f4e6f7420656e6f7567682072657761726473000000000000000000000000000081525060200191505060405180910390fd5b611bfe8260055461299890919063ffffffff16565b600581905550611c198160065461299890919063ffffffff16565b60068190555060018060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160086101000a81548160ff0219169083151502179055506000600360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160099054906101000a900460ff1615611d82576000600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160096101000a81548160ff0219169083151502179055505b611d8c8584612a21565b15611e2c578473ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f85ab59351da11b79336de7647172267c33bf533ee87d9d292441c2672177159b8484604051808381526020018281526020019250505060405180910390a360019350505050611e34565b600093505050505b919050565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16611e955760009050612234565b600080600080600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154600160008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600160008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900467ffffffffffffffff1693509350935093506000806000611fdb868661299890919063ffffffff16565b905060008490505b600960009054906101000a900467ffffffffffffffff1667ffffffffffffffff168167ffffffffffffffff16101561217057600260006001830167ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206001015486101561204f57612170565b61208f87600260006001850167ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000206001015461299890919063ffffffff16565b93506121246120a961271084612b7290919063ffffffff16565b61211686612108600260008767ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff168d612b7290919063ffffffff16565b612b7290919063ffffffff16565b612bf890919063ffffffff16565b92508288019750600260006001830167ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060010154965084806001019550508080600101915050611fe3565b50848610156122295761218c868661299890919063ffffffff16565b92506122216121a661271083612b7290919063ffffffff16565b612213600260008867ffffffffffffffff1667ffffffffffffffff16815260200190815260200160002060000160009054906101000a900467ffffffffffffffff1667ffffffffffffffff166122058b88612b7290919063ffffffff16565b612b7290919063ffffffff16565b612bf890919063ffffffff16565b915081870196505b869750505050505050505b919050565b6000612246833084612c87565b905092915050565b6000808284019050838110156122cc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600033905090565b60006122ea8383612239565b6122f7576000905061256c565b6001600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506000600b54831061235f57600190505b6040518060c001604052808481526020014281526020016123a061239162015180600a54612b7290919063ffffffff16565b4261224e90919063ffffffff16565b8152602001600960009054906101000a900467ffffffffffffffff1667ffffffffffffffff168152602001600015158152602001821515815250600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000155602082015181600101556040820151816002015560608201518160030160006101000a81548167ffffffffffffffff021916908367ffffffffffffffff16021790555060808201518160030160086101000a81548160ff02191690831515021790555060a08201518160030160096101000a81548160ff0219169083151502179055509050508373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f5dac0c1b1112564a045ba943c9d50270893e8e826c49be8e7073adc713ab7bd7856040518082815260200191505060405180910390a36125458360055461224e90919063ffffffff16565b6005819055506125608360075461224e90919063ffffffff16565b60078190555060019150505b92915050565b600080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015490506125cf8160055461299890919063ffffffff16565b60058190555060018060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160086101000a81548160ff0219169083151502179055506000600360008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160099054906101000a900460ff1615612738576000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160096101000a81548160ff0219169083151502179055505b60006127448483612a21565b9050806127b9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600c8152602001807f4572726f7220706179696e67000000000000000000000000000000000000000081525060200191505060405180910390fd5b8373ffffffffffffffffffffffffffffffffffffffff16600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f85ab59351da11b79336de7647172267c33bf533ee87d9d292441c2672177159b846000604051808381526020018281526020019250505060405180910390a3600192505050919050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156128da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806130026026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600082821115612a10576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b600082840390508091505092915050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612b2f57600080fd5b505af1158015612b43573d6000803e3d6000fd5b505050506040513d6020811015612b5957600080fd5b8101908080519060200190929190505050905092915050565b600080831415612b855760009050612bf2565b6000828402905082848281612b9657fe5b0414612bed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806130286021913960400191505060405180910390fd5b809150505b92915050565b6000808211612c6f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b6000828481612c7a57fe5b0490508091505092915050565b60008382600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e84306040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b158015612dc357600080fd5b505afa158015612dd7573d6000803e3d6000fd5b505050506040513d6020811015612ded57600080fd5b8101908080519060200190929190505050905080821115612e59576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612fe16021913960400191505060405180910390fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd8888886040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015612f9957600080fd5b505af1158015612fad573d6000803e3d6000fd5b505050506040513d6020811015612fc357600080fd5b81019080805190602001909291905050509350505050939250505056fe4d616b65207375726520746f2061646420656e6f75676820616c6c6f77616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a265627a7a7231582033881f354c5e2379944b8ae5262f69ac717dc8f83800e47ce15d29e2a8d0b17c64736f6c63430005100032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000000000000000000000000000000000000000000800000000000000000000000001de5e000c41c8d35b9f1f4985c23988f05831057000000000000000000000000000000000000000000000000000000000000016a000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000c50726f66657373696f6e616c0000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : name_ (string): Professional
Arg [1] : tokenAddress_ (address): 0x1DE5e000C41C8d35b9f1f4985C23988f05831057
Arg [2] : rate_ (uint64): 362
Arg [3] : lockDuration_ (uint256): 60
-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 0000000000000000000000001de5e000c41c8d35b9f1f4985c23988f05831057
Arg [2] : 000000000000000000000000000000000000000000000000000000000000016a
Arg [3] : 000000000000000000000000000000000000000000000000000000000000003c
Arg [4] : 000000000000000000000000000000000000000000000000000000000000000c
Arg [5] : 50726f66657373696f6e616c0000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
4024:11154:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4024:11154:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4890:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4963:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4963:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8144:511;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8144:511:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4574:37;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4574:37:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4990:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6933:117;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6933:117:0;;;;;;;;;;;;;;;;;:::i;:::-;;4839:19;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4865:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6275:206;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6275:206:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;10033:375;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6648:161;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6648:161:0;;;;;;;;;;;;;;;;;:::i;:::-;;12386:107;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12386:107:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4703:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7185:115;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7185:115:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3459:140;;;:::i;:::-;;4924:32;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7555:464;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7555:464:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4806:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;3156:79;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3357:94;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4669:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8868:313;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8868:313:0;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;4738:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4773:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11139:395;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;3607:109;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3607:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;4890:27;;;;:::o;4963:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8144:511::-;8244:7;8266;8288;8310;8332:4;8368:9;:15;8378:4;8368:15;;;;;;;;;;;;;;;;;;;;;;;;;8364:284;;;8426:8;:14;8435:4;8426:14;;;;;;;;;;;;;;;:28;;;8473:8;:14;8482:4;8473:14;;;;;;;;;;;;;;;:26;;;8518:8;:14;8527:4;8518:14;;;;;;;;;;;;;;;:22;;;8559:8;:14;8568:4;8559:14;;;;;;;;;;;;;;;:24;;;;;;;;;;;;8602:8;:14;8611:4;8602:14;;;;;;;;;;;;;;;:19;;;;;;;;;;;;8400:236;;;;;;;;;;;;;;;;;8364:284;8144:511;;;;;;;;:::o;4574:37::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;4990:28::-;;;;;;;;;;;;;:::o;6933:117::-;3283:9;:7;:9::i;:::-;3275:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7029:13;7014:12;:28;;;;6933:117;:::o;4839:19::-;;;;;;;;;;;;;:::o;4865:18::-;;;;;;;;;;;;;:::o;6275:206::-;3283:9;:7;:9::i;:::-;3275:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6353:1;6344:5;:10;;;;6336:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6395:5;6388:4;;:12;;;;;;;;;;;;;;;;;;6411:5;;:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6444:29;;;;;;;;6450:5;6444:29;;;;;;6457:15;6444:29;;;6429:5;:12;6435:5;;;;;;;;;;;6429:12;;;;;;;;;;;;;;;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6275:206;:::o;10033:375::-;10071:4;10088:12;10103:10;10088:25;;10132:9;:15;10142:4;10132:15;;;;;;;;;;;;;;;;;;;;;;;;;10124:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10228:8;:14;10237:4;10228:14;;;;;;;;;;;;;;;:22;;;10209:15;:41;;10187:118;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10325:8;:14;10334:4;10325:14;;;;;;;;;;;;;;;:19;;;;;;;;;;;;10324:20;10316:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10384:15;10394:4;10384:9;:15::i;:::-;10376:24;;;10033:375;:::o;6648:161::-;3283:9;:7;:9::i;:::-;3275:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6783:18;6763:17;:38;;;;6648:161;:::o;12386:107::-;12442:7;12469:16;12480:4;12469:10;:16::i;:::-;12462:23;;12386:107;;;:::o;4703:28::-;;;;:::o;7185:115::-;7244:4;7268:8;:15;7277:5;7268:15;;;;;;;;;;;;;;;:24;;;;;;;;;;;;7261:31;;7185:115;;;:::o;3459:140::-;3283:9;:7;:9::i;:::-;3275:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3558:1;3521:40;;3542:6;;;;;;;;;;;3521:40;;;;;;;;;;;;3589:1;3572:6;;:19;;;;;;;;;;;;;;;;;;3459:140::o;4924:32::-;;;;:::o;7555:464::-;7681:4;7637:10;7649:12;14981;;;;;;;;;;;14957:14;;:37;;;;;;;;;;;;;;;;;;15005:20;15028:14;;;;;;;;;;;:24;;;15053:7;15070:4;15028:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15028:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15028:48:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15028:48:0;;;;;;;;;;;;;;;;15005:71;;15105:12;15095:6;:22;;15087:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7726:1;7711:12;:16;7703:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7766:12;7781:10;7766:25;;7809:26;7816:4;7822:12;7809:6;:26::i;:::-;7804:72;;7859:5;7852:12;;;;;7804:72;7902:29;7918:12;7902:11;;:15;;:29;;;;:::i;:::-;7888:11;:43;;;;7958:31;7976:12;7958:13;;:17;;:31;;;;:::i;:::-;7942:13;:47;;;;8007:4;8000:11;;;15166:1;7555:464;;;;;;:::o;4806:26::-;;;;:::o;3156:79::-;3194:7;3221:6;;;;;;;;;;;3214:13;;3156:79;:::o;3357:94::-;3397:4;3437:6;;;;;;;;;;;3421:22;;:12;:10;:12::i;:::-;:22;;;3414:29;;3357:94;:::o;4669:27::-;;;;;;;;;;;;;:::o;8868:313::-;8978:4;8940:10;8952:6;14981:12;;;;;;;;;;;14957:14;;:37;;;;;;;;;;;;;;;;;;15005:20;15028:14;;;;;;;;;;;:24;;;15053:7;15070:4;15028:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15028:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15028:48:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15028:48:0;;;;;;;;;;;;;;;;15005:71;;15105:12;15095:6;:22;;15087:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9017:1;9008:6;:10;9000:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9054:12;9069:10;9054:25;;9099:9;:15;9109:4;9099:15;;;;;;;;;;;;;;;;;;;;;;;;;9098:16;9090:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9152:20;9159:4;9165:6;9152;:20::i;:::-;9144:29;;;8868:313;;;;;;:::o;4738:28::-;;;;:::o;4773:26::-;;;;:::o;11139:395::-;11186:4;11203:12;11218:10;11203:25;;11247:9;:15;11257:4;11247:15;;;;;;;;;;;;;;;;;;;;;;;;;11239:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11343:8;:14;11352:4;11343:14;;;;;;;;;;;;;;;:22;;;11324:15;:41;;11302:118;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11440:8;:14;11449:4;11440:14;;;;;;;;;;;;;;;:19;;;;;;;;;;;;11439:20;11431:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11501:24;11520:4;11501:18;:24::i;:::-;11493:33;;;11139:395;:::o;3607:109::-;3283:9;:7;:9::i;:::-;3275:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3680:28;3699:8;3680:18;:28::i;:::-;3607:109;:::o;10416:715::-;10466:4;10483:14;10500:16;10511:4;10500:10;:16::i;:::-;10483:33;;10527:14;10544:8;:14;10553:4;10544:14;;;;;;;;;;;;;;;:28;;;10527:45;;10583:14;10600:18;10611:6;10600;:10;;:18;;;;:::i;:::-;10583:35;;10647:13;;10637:6;:23;;10629:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10712:25;10730:6;10712:13;;:17;;:25;;;;:::i;:::-;10696:13;:41;;;;10764:25;10782:6;10764:13;;:17;;:25;;;;:::i;:::-;10748:13;:41;;;;10822:4;10800:8;:14;10809:4;10800:14;;;;;;;;;;;;;;;:19;;;:26;;;;;;;;;;;;;;;;;;10855:5;10837:9;:15;10847:4;10837:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;10875:8;:14;10884:4;10875:14;;;;;;;;;;;;;;;:23;;;;;;;;;;;;10871:87;;;10941:5;10915:8;:14;10924:4;10915:14;;;;;;;;;;;;;;;:23;;;:31;;;;;;;;;;;;;;;;;;10871:87;10974:24;10985:4;10991:6;10974:10;:24::i;:::-;10970:131;;;11042:4;11020:43;;11028:12;;;;;;;;;;;11020:43;;;11048:6;11056;11020:43;;;;;;;;;;;;;;;;;;;;;;;;11085:4;11078:11;;;;;;;10970:131;11118:5;11111:12;;;;;10416:715;;;;:::o;12501:1694::-;12557:7;12582:9;:15;12592:4;12582:15;;;;;;;;;;;;;;;;;;;;;;;;;12577:30;;12606:1;12599:8;;;;12577:30;12633:14;12662:19;12696:15;12726:16;12788:8;:14;12797:4;12788:14;;;;;;;;;;;;;;;:28;;;12835:8;:14;12844:4;12835:14;;;;;;;;;;;;;;;:26;;;12880:8;:14;12889:4;12880:14;;;;;;;;;;;;;;;:22;;;12921:8;:14;12930:4;12921:14;;;;;;;;;;;;;;;:24;;;;;;;;;;;;12618:342;;;;;;;;12973:12;12996:16;13023:21;13047:24;13059:11;13047:7;:11;;:24;;;;:::i;:::-;13023:48;;13087:8;13098:9;13087:20;;13082:679;13113:5;;;;;;;;;;;13109:9;;:1;:9;;;13082:679;;;13222:5;:12;13232:1;13228;:5;13222:12;;;;;;;;;;;;;;;:22;;;13212:7;:32;13208:542;;;13335:5;;13208:542;13388:39;13415:11;13388:5;:12;13398:1;13394;:5;13388:12;;;;;;;;;;;;;;;:22;;;:26;;:39;;;;:::i;:::-;13381:46;;13457:116;13530:24;13548:5;13530:13;:17;;:24;;;;:::i;:::-;13457:46;13498:4;13457:36;13468:5;:8;13474:1;13468:8;;;;;;;;;;;;;;;:24;;;;;;;;;;;;13457:36;;:6;:10;;:36;;;;:::i;:::-;:40;;:46;;;;:::i;:::-;:50;;:116;;;;:::i;:::-;13446:127;;13641:8;13631:18;;;;13682:5;:12;13692:1;13688;:5;13682:12;;;;;;;;;;;;;;;:22;;;13668:36;;13723:11;;;;;;;13120:3;;;;;;;13082:679;;;;13791:7;13777:11;:21;13773:387;;;13885:24;13897:11;13885:7;:11;;:24;;;;:::i;:::-;13878:31;;13937:138;14050:24;14068:5;14050:13;:17;;:24;;;;:::i;:::-;13937:90;13994:5;:16;14000:9;13994:16;;;;;;;;;;;;;;;:32;;;;;;;;;;;;13937:90;;:34;13964:6;13937:4;:26;;:34;;;;:::i;:::-;:56;;:90;;;;:::i;:::-;:112;;:138;;;;:::i;:::-;13926:149;;14140:8;14130:18;;;;13773:387;14180:6;14172:15;;;;;;;;;12501:1694;;;;:::o;14203:132::-;14267:4;14291:36;14298:5;14313:4;14320:6;14291;:36::i;:::-;14284:43;;14203:132;;;;:::o;1101:181::-;1159:7;1179:9;1195:1;1191;:5;1179:17;;1220:1;1215;:6;;1207:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1273:1;1266:8;;;1101:181;;;;:::o;2478:98::-;2523:15;2558:10;2551:17;;2478:98;:::o;9189:751::-;9252:4;9274:20;9281:4;9287:6;9274;:20::i;:::-;9269:66;;9318:5;9311:12;;;;9269:66;9365:4;9347:9;:15;9357:4;9347:15;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;9380;9427:17;;9417:6;:27;9413:84;;9481:4;9461:24;;9413:84;9526:230;;;;;;;;9549:6;9526:230;;;;9570:15;9526:230;;;;9600:46;9621:23;9638:5;9621:12;;:16;;:23;;;;:::i;:::-;9600:15;:19;;:46;;;;:::i;:::-;9526:230;;;;9688:5;;;;;;;;;;;9526:230;;;;;;9708:5;9526:230;;;;;;9728:17;9526:230;;;;;9509:8;:14;9518:4;9509:14;;;;;;;;;;;;;;;:247;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9795:4;9774:34;;9781:12;;;;;;;;;;;9774:34;;;9801:6;9774:34;;;;;;;;;;;;;;;;;;9837:25;9855:6;9837:13;;:17;;:25;;;;:::i;:::-;9821:13;:41;;;;9887:23;9903:6;9887:11;;:15;;:23;;;;:::i;:::-;9873:11;:37;;;;9928:4;9921:11;;;9189:751;;;;;:::o;11542:571::-;11601:4;11618:14;11635:8;:14;11644:4;11635:14;;;;;;;;;;;;;;;:28;;;11618:45;;11690:25;11708:6;11690:13;;:17;;:25;;;;:::i;:::-;11674:13;:41;;;;11748:4;11726:8;:14;11735:4;11726:14;;;;;;;;;;;;;;;:19;;;:26;;;;;;;;;;;;;;;;;;11781:5;11763:9;:15;11773:4;11763:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;11838:8;:14;11847:4;11838:14;;;;;;;;;;;;;;;:23;;;;;;;;;;;;11834:87;;;11904:5;11878:8;:14;11887:4;11878:14;;;;;;;;;;;;;;;:23;;;:31;;;;;;;;;;;;;;;;;;11834:87;11933:18;11954:24;11965:4;11971:6;11954:10;:24::i;:::-;11933:45;;11997:13;11989:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12065:4;12043:38;;12051:12;;;;;;;;;;;12043:38;;;12071:6;12079:1;12043:38;;;;;;;;;;;;;;;;;;;;;;;;12101:4;12094:11;;;;11542:571;;;:::o;3724:266::-;3832:1;3812:22;;:8;:22;;;;3790:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3945:8;3916:38;;3937:6;;;;;;;;;;;3916:38;;;;;;;;;;;;3974:8;3965:6;;:17;;;;;;;;;;;;;;;;;;3724:266;:::o;1290:184::-;1348:7;1381:1;1376;:6;;1368:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1428:9;1444:1;1440;:5;1428:17;;1465:1;1458:8;;;1290:184;;;;:::o;14634:180::-;14699:4;14740:12;;;;;;;;;;;14716:14;;:37;;;;;;;;;;;;;;;;;;14771:14;;;;;;;;;;;:23;;;14795:2;14799:6;14771:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14771:35:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14771:35:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14771:35:0;;;;;;;;;;;;;;;;14764:42;;14634:180;;;;:::o;1482:250::-;1540:7;1569:1;1564;:6;1560:47;;;1594:1;1587:8;;;;1560:47;1619:9;1635:1;1631;:5;1619:17;;1664:1;1659;1655;:5;;;;;;:10;1647:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1723:1;1716:8;;;1482:250;;;;;:::o;1740:331::-;1798:7;1897:1;1893;:5;1885:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1940:9;1956:1;1952;:5;;;;;;1940:17;;2062:1;2055:8;;;1740:331;;;;:::o;14343:283::-;14492:4;14466:7;14475:6;14981:12;;;;;;;;;;;14957:14;;:37;;;;;;;;;;;;;;;;;;15005:20;15028:14;;;;;;;;;;;:24;;;15053:7;15070:4;15028:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15028:48:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15028:48:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;15028:48:0;;;;;;;;;;;;;;;;15005:71;;15105:12;15095:6;:22;;15087:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14533:12;;;;;;;;;;;14509:14;;:37;;;;;;;;;;;;;;;;;;14564:14;;;;;;;;;;;:27;;;14592:7;14601:8;14611:6;14564:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14564:54:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14564:54:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;14564:54:0;;;;;;;;;;;;;;;;14557:61;;14343:283;;;;;;;;:::o
Swarm Source
bzzr://33881f354c5e2379944b8ae5262f69ac717dc8f83800e47ce15d29e2a8d0b17c
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $0.000038 | 22,396,271.5231 | $842 |
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.