Feature Tip: Add private address tag to any address under My Name Tag !
Source Code
Overview
ETH Balance
0 ETH
Eth Value
$0.00Latest 25 from a total of 86 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Harvest | 11034936 | 1943 days ago | IN | 0 ETH | 0.04417285 | ||||
| Harvest | 11019393 | 1945 days ago | IN | 0 ETH | 0.04332337 | ||||
| Harvest | 11012768 | 1946 days ago | IN | 0 ETH | 0.04354802 | ||||
| Harvest | 11006190 | 1947 days ago | IN | 0 ETH | 0.0946332 | ||||
| Harvest | 10999682 | 1948 days ago | IN | 0 ETH | 0.07475406 | ||||
| Harvest | 10993627 | 1949 days ago | IN | 0 ETH | 0.05521607 | ||||
| Harvest | 10987153 | 1950 days ago | IN | 0 ETH | 0.05521607 | ||||
| Harvest | 10980551 | 1951 days ago | IN | 0 ETH | 0.04019817 | ||||
| Harvest | 10975207 | 1952 days ago | IN | 0 ETH | 0.1189196 | ||||
| Harvest | 10967681 | 1953 days ago | IN | 0 ETH | 0.07586604 | ||||
| Harvest | 10960975 | 1954 days ago | IN | 0 ETH | 0.05778122 | ||||
| Harvest | 10956216 | 1955 days ago | IN | 0 ETH | 0.1002384 | ||||
| Harvest | 10948824 | 1956 days ago | IN | 0 ETH | 0.1274217 | ||||
| Harvest | 10942722 | 1957 days ago | IN | 0 ETH | 0.08409832 | ||||
| Harvest | 10938476 | 1958 days ago | IN | 0 ETH | 0.06197218 | ||||
| Harvest | 10934529 | 1959 days ago | IN | 0 ETH | 0.06201189 | ||||
| Harvest | 10909946 | 1962 days ago | IN | 0 ETH | 0.0825446 | ||||
| Harvest | 10902903 | 1963 days ago | IN | 0 ETH | 0.09429205 | ||||
| Harvest | 10900769 | 1964 days ago | IN | 0 ETH | 0.13566884 | ||||
| Harvest | 10896958 | 1964 days ago | IN | 0 ETH | 0.08290873 | ||||
| Harvest | 10889704 | 1965 days ago | IN | 0 ETH | 0.31876856 | ||||
| Harvest | 10883614 | 1966 days ago | IN | 0 ETH | 0.2275957 | ||||
| Harvest | 10881202 | 1967 days ago | IN | 0 ETH | 0.4625929 | ||||
| Harvest | 10872394 | 1968 days ago | IN | 0 ETH | 0.08999534 | ||||
| Harvest | 10863221 | 1970 days ago | IN | 0 ETH | 0.08870963 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
StrategyCurveSBTC
Compiler Version
v0.5.17+commit.d19bba13
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2020-08-26
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.5.17;
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 decimals() external view returns (uint);
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);
}
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) {
return sub(a, b, "SafeMath: subtraction overflow");
}
function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b <= a, errorMessage);
uint256 c = a - b;
return c;
}
function mul(uint256 a, uint256 b) internal pure returns (uint256) {
if (a == 0) {
return 0;
}
uint256 c = a * b;
require(c / a == b, "SafeMath: multiplication overflow");
return c;
}
function div(uint256 a, uint256 b) internal pure returns (uint256) {
return div(a, b, "SafeMath: division by zero");
}
function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
// Solidity only automatically asserts when dividing by 0
require(b > 0, errorMessage);
uint256 c = a / b;
return c;
}
function mod(uint256 a, uint256 b) internal pure returns (uint256) {
return mod(a, b, "SafeMath: modulo by zero");
}
function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b != 0, errorMessage);
return a % b;
}
}
library Address {
function isContract(address account) internal view returns (bool) {
bytes32 codehash;
bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
// solhint-disable-next-line no-inline-assembly
assembly { codehash := extcodehash(account) }
return (codehash != 0x0 && codehash != accountHash);
}
function toPayable(address account) internal pure returns (address payable) {
return address(uint160(account));
}
function sendValue(address payable recipient, uint256 amount) internal {
require(address(this).balance >= amount, "Address: insufficient balance");
// solhint-disable-next-line avoid-call-value
(bool success, ) = recipient.call.value(amount)("");
require(success, "Address: unable to send value, recipient may have reverted");
}
}
library SafeERC20 {
using SafeMath for uint256;
using Address for address;
function safeTransfer(IERC20 token, address to, uint256 value) internal {
callOptionalReturn(token, abi.encodeWithSelector(token.transfer.selector, to, value));
}
function safeTransferFrom(IERC20 token, address from, address to, uint256 value) internal {
callOptionalReturn(token, abi.encodeWithSelector(token.transferFrom.selector, from, to, value));
}
function safeApprove(IERC20 token, address spender, uint256 value) internal {
require((value == 0) || (token.allowance(address(this), spender) == 0),
"SafeERC20: approve from non-zero to non-zero allowance"
);
callOptionalReturn(token, abi.encodeWithSelector(token.approve.selector, spender, value));
}
function callOptionalReturn(IERC20 token, bytes memory data) private {
require(address(token).isContract(), "SafeERC20: call to non-contract");
// solhint-disable-next-line avoid-low-level-calls
(bool success, bytes memory returndata) = address(token).call(data);
require(success, "SafeERC20: low-level call failed");
if (returndata.length > 0) { // Return data is optional
// solhint-disable-next-line max-line-length
require(abi.decode(returndata, (bool)), "SafeERC20: ERC20 operation did not succeed");
}
}
}
interface Controller {
function vaults(address) external view returns (address);
function rewards() external view returns (address);
}
/*
A strategy must implement the following calls;
- deposit()
- withdraw(address) must exclude any tokens used in the yield - Controller role - withdraw should return to Controller
- withdraw(uint) - Controller | Vault role - withdraw should always return to vault
- withdrawAll() - Controller | Vault role - withdraw should always return to vault
- balanceOf()
Where possible, strategies must remain as immutable as possible, instead of updating variables, we update the contract by linking it in the controller
*/
interface Gauge {
function deposit(uint) external;
function balanceOf(address) external view returns (uint);
function withdraw(uint) external;
}
interface Mintr {
function mint(address) external;
}
interface Uni {
function swapExactTokensForTokens(uint, uint, address[] calldata, address, uint) external;
}
interface ICurveFi {
function get_virtual_price() external view returns (uint);
function add_liquidity(
uint256[3] calldata amounts,
uint256 min_mint_amount
) external;
function remove_liquidity_imbalance(
uint256[3] calldata amounts,
uint256 max_burn_amount
) external;
function remove_liquidity(
uint256 _amount,
uint256[3] calldata amounts
) external;
function exchange(
int128 from, int128 to, uint256 _from_amount, uint256 _min_to_amount
) external;
}
contract StrategyCurveSBTC {
using SafeERC20 for IERC20;
using Address for address;
using SafeMath for uint256;
address constant public want = address(0x075b1bb99792c9E1041bA13afEf80C91a1e70fB3);
address constant public pool = address(0x705350c4BcD35c9441419DdD5d2f097d7a55410F);
address constant public mintr = address(0xd061D61a4d941c39E5453435B6345Dc261C2fcE0);
address constant public crv = address(0xD533a949740bb3306d119CC777fa900bA034cd52);
address constant public uni = address(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
address constant public weth = address(0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2); // used for crv <> weth <> wbtc route
address constant public wbtc = address(0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599);
address constant public curve = address(0x7fC77b5c7614E1533320Ea6DDc2Eb61fa00A9714);
uint public performanceFee = 500;
uint constant public performanceMax = 10000;
uint public withdrawalFee = 50;
uint constant public withdrawalMax = 10000;
uint public keepCRV = 1000;
uint constant public keepCRVMax = 10000;
address public governance;
address public controller;
address public strategist;
constructor(address _controller) public {
governance = msg.sender;
strategist = msg.sender;
controller = _controller;
}
function getName() external pure returns (string memory) {
return "StrategyCurveSBTC";
}
function setStrategist(address _strategist) external {
require(msg.sender == governance, "!governance");
strategist = _strategist;
}
function setKeepCRV(uint _keepCRV) external {
require(msg.sender == governance, "!governance");
keepCRV = _keepCRV;
}
function setWithdrawalFee(uint _withdrawalFee) external {
require(msg.sender == governance, "!governance");
withdrawalFee = _withdrawalFee;
}
function setPerformanceFee(uint _performanceFee) external {
require(msg.sender == governance, "!governance");
performanceFee = _performanceFee;
}
function deposit() public {
uint _want = IERC20(want).balanceOf(address(this));
if (_want > 0) {
IERC20(want).safeApprove(pool, 0);
IERC20(want).safeApprove(pool, _want);
Gauge(pool).deposit(_want);
}
}
// Controller only function for creating additional rewards from dust
function withdraw(IERC20 _asset) external returns (uint balance) {
require(msg.sender == controller, "!controller");
require(want != address(_asset), "want");
require(wbtc != address(_asset), "wbtc");
require(crv != address(_asset), "crv");
balance = _asset.balanceOf(address(this));
_asset.safeTransfer(controller, balance);
}
// Withdraw partial funds, normally used with a vault withdrawal
function withdraw(uint _amount) external {
require(msg.sender == controller, "!controller");
uint _balance = IERC20(want).balanceOf(address(this));
if (_balance < _amount) {
_amount = _withdrawSome(_amount.sub(_balance));
_amount = _amount.add(_balance);
}
uint _fee = _amount.mul(withdrawalFee).div(withdrawalMax);
IERC20(want).safeTransfer(Controller(controller).rewards(), _fee);
address _vault = Controller(controller).vaults(address(want));
require(_vault != address(0), "!vault"); // additional protection so we don't burn the funds
IERC20(want).safeTransfer(_vault, _amount.sub(_fee));
}
// Withdraw all funds, normally used when migrating strategies
function withdrawAll() external returns (uint balance) {
require(msg.sender == controller, "!controller");
_withdrawAll();
balance = IERC20(want).balanceOf(address(this));
address _vault = Controller(controller).vaults(address(want));
require(_vault != address(0), "!vault"); // additional protection so we don't burn the funds
IERC20(want).safeTransfer(_vault, balance);
}
function _withdrawAll() internal {
Gauge(pool).withdraw(Gauge(pool).balanceOf(address(this)));
}
function harvest() public {
require(msg.sender == strategist || msg.sender == governance, "!authorized");
Mintr(mintr).mint(pool);
uint _crv = IERC20(crv).balanceOf(address(this));
uint _keepCRV = _crv.mul(keepCRV).div(keepCRVMax);
IERC20(crv).safeTransfer(Controller(controller).rewards(), _keepCRV);
_crv = _crv.sub(_keepCRV);
if (_crv > 0) {
IERC20(crv).safeApprove(uni, 0);
IERC20(crv).safeApprove(uni, _crv);
address[] memory path = new address[](3);
path[0] = crv;
path[1] = weth;
path[2] = wbtc;
Uni(uni).swapExactTokensForTokens(_crv, uint(0), path, address(this), now.add(1800));
}
uint _wbtc = IERC20(wbtc).balanceOf(address(this));
if (_wbtc > 0) {
IERC20(wbtc).safeApprove(curve, 0);
IERC20(wbtc).safeApprove(curve, _wbtc);
ICurveFi(curve).add_liquidity([0,_wbtc,0],0);
}
uint _want = IERC20(want).balanceOf(address(this));
if (_want > 0) {
uint _fee = _want.mul(performanceFee).div(performanceMax);
IERC20(want).safeTransfer(Controller(controller).rewards(), _fee);
deposit();
}
}
function _withdrawSome(uint256 _amount) internal returns (uint) {
Gauge(pool).withdraw(_amount);
return _amount;
}
function balanceOfWant() public view returns (uint) {
return IERC20(want).balanceOf(address(this));
}
function balanceOfPool() public view returns (uint) {
return Gauge(pool).balanceOf(address(this));
}
function balanceOf() public view returns (uint) {
return balanceOfWant()
.add(balanceOfPool());
}
function setGovernance(address _governance) external {
require(msg.sender == governance, "!governance");
governance = _governance;
}
function setController(address _controller) external {
require(msg.sender == governance, "!governance");
controller = _controller;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_controller","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"constant":true,"inputs":[],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"balanceOfPool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"balanceOfWant","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"controller","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"crv","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"curve","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"deposit","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getName","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":true,"inputs":[],"name":"governance","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"harvest","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"keepCRV","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"keepCRVMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"mintr","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"performanceFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"performanceMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"pool","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_controller","type":"address"}],"name":"setController","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_governance","type":"address"}],"name":"setGovernance","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_keepCRV","type":"uint256"}],"name":"setKeepCRV","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_performanceFee","type":"uint256"}],"name":"setPerformanceFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_strategist","type":"address"}],"name":"setStrategist","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_withdrawalFee","type":"uint256"}],"name":"setWithdrawalFee","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"strategist","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"uni","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"want","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"wbtc","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"weth","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"contract IERC20","name":"_asset","type":"address"}],"name":"withdraw","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawAll","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"withdrawalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"withdrawalMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"}]Contract Creation Code
60806040526101f460005560326001556103e860025534801561002157600080fd5b5060405161375f38038061375f8339818101604052602081101561004457600080fd5b810190808051906020019092919050505033600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555033600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050613637806101286000396000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c80637fef901a1161010f578063c1a3d44c116100a2578063d5c1ff7311610071578063d5c1ff73146107f2578063e9751f6b14610810578063edc9af951461082e578063f77c479114610878576101f0565b8063c1a3d44c1461073c578063c7b9d5301461075a578063d0e30db01461079e578063d1e61dcb146107a8576101f0565b806392eefe9b116100de57806392eefe9b14610658578063955383bd1461069c578063ab033ea9146106ca578063ac1e50251461070e576101f0565b80637fef901a146105e0578063853828b6146105fe578063877887821461061c5780638bc7e8c41461063a576101f0565b80634641257d1161018757806370897b231161015657806370897b231461052c5780637165485d1461055a578063722713f7146105a45780637cc79113146105c2576101f0565b80634641257d1461043657806351cff8d9146104405780635aa6e675146104985780636a4874a1146104e2576101f0565b80631fe4a686116101c35780631fe4a6861461032a5780632e1a7d4d146103745780633cdc5389146103a25780633fc8cef3146103ec576101f0565b806311588086146101f557806316f0115b1461021357806317d7de7c1461025d5780631f1fcd51146102e0575b600080fd5b6101fd6108c2565b6040518082815260200191505060405180910390f35b61021b610995565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102656109ad565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102a557808201518184015260208101905061028a565b50505050905090810190601f1680156102d25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102e86109ea565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610332610a02565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103a06004803603602081101561038a57600080fd5b8101908080359060200190929190505050610a28565b005b6103aa610ef0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103f4610f08565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61043e610f20565b005b6104826004803603602081101561045657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a4d565b6040518082815260200191505060405180910390f35b6104a0611e40565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104ea611e66565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105586004803603602081101561054257600080fd5b8101908080359060200190929190505050611e7e565b005b610562611f4b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105ac611f63565b6040518082815260200191505060405180910390f35b6105ca611f8b565b6040518082815260200191505060405180910390f35b6105e8611f91565b6040518082815260200191505060405180910390f35b610606611f97565b6040518082815260200191505060405180910390f35b61062461230a565b6040518082815260200191505060405180910390f35b610642612310565b6040518082815260200191505060405180910390f35b61069a6004803603602081101561066e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612316565b005b6106c8600480360360208110156106b257600080fd5b810190808035906020019092919050505061241d565b005b61070c600480360360208110156106e057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506124ea565b005b61073a6004803603602081101561072457600080fd5b81019080803590602001909291905050506125f1565b005b6107446126be565b6040518082815260200191505060405180910390f35b61079c6004803603602081101561077057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612791565b005b6107a6612898565b005b6107b0612a9b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107fa612ab3565b6040518082815260200191505060405180910390f35b610818612ab9565b6040518082815260200191505060405180910390f35b610836612abf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610880612ad7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600073705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561095557600080fd5b505afa158015610969573d6000803e3d6000fd5b505050506040513d602081101561097f57600080fd5b8101908080519060200190929190505050905090565b73705350c4bcd35c9441419ddd5d2f097d7a55410f81565b60606040518060400160405280601181526020017f5374726174656779437572766553425443000000000000000000000000000000815250905090565b73075b1bb99792c9e1041ba13afef80c91a1e70fb381565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610aeb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21636f6e74726f6c6c657200000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610b7e57600080fd5b505afa158015610b92573d6000803e3d6000fd5b505050506040513d6020811015610ba857600080fd5b8101908080519060200190929190505050905081811015610bf657610bde610bd98284612afd90919063ffffffff16565b612b47565b9150610bf38183612bd090919063ffffffff16565b91505b6000610c21612710610c1360015486612c5890919063ffffffff16565b612cde90919063ffffffff16565b9050610d04600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ec5a8946040518163ffffffff1660e01b815260040160206040518083038186803b158015610c8e57600080fd5b505afa158015610ca2573d6000803e3d6000fd5b505050506040513d6020811015610cb857600080fd5b81019080805190602001909291905050508273075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a622ee7c73075b1bb99792c9e1041ba13afef80c91a1e70fb36040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610db957600080fd5b505afa158015610dcd573d6000803e3d6000fd5b505050506040513d6020811015610de357600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610e99576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f217661756c74000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b610eea81610eb08487612afd90919063ffffffff16565b73075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b50505050565b732260fac5e5542a773aa44fbcfedf7c193bc2c59981565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610fc95750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b61103b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21617574686f72697a656400000000000000000000000000000000000000000081525060200191505060405180910390fd5b73d061d61a4d941c39e5453435b6345dc261c2fce073ffffffffffffffffffffffffffffffffffffffff16636a62784273705350c4bcd35c9441419ddd5d2f097d7a55410f6040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1580156110e257600080fd5b505af11580156110f6573d6000803e3d6000fd5b50505050600073d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561118d57600080fd5b505afa1580156111a1573d6000803e3d6000fd5b505050506040513d60208110156111b757600080fd5b8101908080519060200190929190505050905060006111f56127106111e760025485612c5890919063ffffffff16565b612cde90919063ffffffff16565b90506112d8600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ec5a8946040518163ffffffff1660e01b815260040160206040518083038186803b15801561126257600080fd5b505afa158015611276573d6000803e3d6000fd5b505050506040513d602081101561128c57600080fd5b81019080805190602001909291905050508273d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b6112eb8183612afd90919063ffffffff16565b915060008211156116095761134a737a250d5630b4cf539739df2c5dacb4c659f2488d600073d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b61139d737a250d5630b4cf539739df2c5dacb4c659f2488d8373d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b606060036040519080825280602002602001820160405280156113cf5781602001602082028038833980820191505090505b50905073d533a949740bb3306d119cc777fa900ba034cd52816000815181106113f457fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc28160018151811061145057fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050732260fac5e5542a773aa44fbcfedf7c193bc2c599816002815181106114ac57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff166338ed1739846000843061153061070842612bd090919063ffffffff16565b6040518663ffffffff1660e01b815260040180868152602001858152602001806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156115c65780820151818401526020810190506115ab565b505050509050019650505050505050600060405180830381600087803b1580156115ef57600080fd5b505af1158015611603573d6000803e3d6000fd5b50505050505b6000732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561169c57600080fd5b505afa1580156116b0573d6000803e3d6000fd5b505050506040513d60208110156116c657600080fd5b81019080805190602001909291905050509050600081111561185657611736737fc77b5c7614e1533320ea6ddc2eb61fa00a97146000732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b611789737fc77b5c7614e1533320ea6ddc2eb61fa00a971482732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b737fc77b5c7614e1533320ea6ddc2eb61fa00a971473ffffffffffffffffffffffffffffffffffffffff16634515cef3604051806060016040528060008152602001848152602001600081525060006040518363ffffffff1660e01b81526004018083600360200280838360005b838110156118125780820151818401526020810190506117f7565b5050505090500182815260200192505050600060405180830381600087803b15801561183d57600080fd5b505af1158015611851573d6000803e3d6000fd5b505050505b600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156118e957600080fd5b505afa1580156118fd573d6000803e3d6000fd5b505050506040513d602081101561191357600080fd5b810190808051906020019092919050505090506000811115611a4757600061195a61271061194c60005485612c5890919063ffffffff16565b612cde90919063ffffffff16565b9050611a3d600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ec5a8946040518163ffffffff1660e01b815260040160206040518083038186803b1580156119c757600080fd5b505afa1580156119db573d6000803e3d6000fd5b505050506040513d60208110156119f157600080fd5b81019080805190602001909291905050508273075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b611a45612898565b505b50505050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b12576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21636f6e74726f6c6c657200000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1673075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff161415611bc8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f77616e740000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff161415611c7e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f776274630000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1673d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff161415611d34576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260038152602001807f637276000000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611db157600080fd5b505afa158015611dc5573d6000803e3d6000fd5b505050506040513d6020811015611ddb57600080fd5b81019080805190602001909291905050509050611e3b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828473ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b919050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b73d533a949740bb3306d119cc777fa900ba034cd5281565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f41576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b8060008190555050565b737fc77b5c7614e1533320ea6ddc2eb61fa00a971481565b6000611f86611f706108c2565b611f786126be565b612bd090919063ffffffff16565b905090565b61271081565b60025481565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461205c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21636f6e74726f6c6c657200000000000000000000000000000000000000000081525060200191505060405180910390fd5b612064613019565b73075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156120f557600080fd5b505afa158015612109573d6000803e3d6000fd5b505050506040513d602081101561211f57600080fd5b810190808051906020019092919050505090506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a622ee7c73075b1bb99792c9e1041ba13afef80c91a1e70fb36040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156121e757600080fd5b505afa1580156121fb573d6000803e3d6000fd5b505050506040513d602081101561221157600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156122c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f217661756c74000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b612306818373075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b5090565b60005481565b60015481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146123d9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146124e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b8060028190555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146125ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146126b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b8060018190555050565b600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561275157600080fd5b505afa158015612765573d6000803e3d6000fd5b505050506040513d602081101561277b57600080fd5b8101908080519060200190929190505050905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612854576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561292b57600080fd5b505afa15801561293f573d6000803e3d6000fd5b505050506040513d602081101561295557600080fd5b810190808051906020019092919050505090506000811115612a98576129c573705350c4bcd35c9441419ddd5d2f097d7a55410f600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b612a1873705350c4bcd35c9441419ddd5d2f097d7a55410f8273075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b73705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff1663b6b55f25826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015612a7f57600080fd5b505af1158015612a93573d6000803e3d6000fd5b505050505b50565b73d061d61a4d941c39e5453435b6345dc261c2fce081565b61271081565b61271081565b737a250d5630b4cf539739df2c5dacb4c659f2488d81565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000612b3f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613165565b905092915050565b600073705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d836040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015612bb057600080fd5b505af1158015612bc4573d6000803e3d6000fd5b50505050819050919050565b600080828401905083811015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600080831415612c6b5760009050612cd8565b6000828402905082848281612c7c57fe5b0414612cd3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806135826021913960400191505060405180910390fd5b809150505b92915050565b6000612d2083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613225565b905092915050565b612df4838473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb905060e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506132eb565b505050565b6000811480612ef3575060008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e30856040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b158015612eb657600080fd5b505afa158015612eca573d6000803e3d6000fd5b505050506040513d6020811015612ee057600080fd5b8101908080519060200190929190505050145b612f48576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260368152602001806135cd6036913960400191505060405180910390fd5b613014838473ffffffffffffffffffffffffffffffffffffffff1663095ea7b3905060e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506132eb565b505050565b73705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d73705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156130da57600080fd5b505afa1580156130ee573d6000803e3d6000fd5b505050506040513d602081101561310457600080fd5b81019080805190602001909291905050506040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561314b57600080fd5b505af115801561315f573d6000803e3d6000fd5b50505050565b6000838311158290613212576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156131d75780820151818401526020810190506131bc565b50505050905090810190601f1680156132045780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080831182906132d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561329657808201518184015260208101905061327b565b50505050905090810190601f1680156132c35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816132dd57fe5b049050809150509392505050565b61330a8273ffffffffffffffffffffffffffffffffffffffff16613536565b61337c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740081525060200191505060405180910390fd5b600060608373ffffffffffffffffffffffffffffffffffffffff16836040518082805190602001908083835b602083106133cb57805182526020820191506020810190506020830392506133a8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461342d576040519150601f19603f3d011682016040523d82523d6000602084013e613432565b606091505b5091509150816134aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656481525060200191505060405180910390fd5b600081511115613530578080602001905160208110156134c957600080fd5b810190808051906020019092919050505061352f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a8152602001806135a3602a913960400191505060405180910390fd5b5b50505050565b60008060007fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b9050833f91506000801b82141580156135785750808214155b9250505091905056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365a265627a7a72315820232a9fe466a851dbd0e1c94c698cb6ccf0e839d62f866a297de60d29acf4eccb64736f6c634300051100320000000000000000000000009e65ad11b299ca0abefc2799ddb6314ef2d91080
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101f05760003560e01c80637fef901a1161010f578063c1a3d44c116100a2578063d5c1ff7311610071578063d5c1ff73146107f2578063e9751f6b14610810578063edc9af951461082e578063f77c479114610878576101f0565b8063c1a3d44c1461073c578063c7b9d5301461075a578063d0e30db01461079e578063d1e61dcb146107a8576101f0565b806392eefe9b116100de57806392eefe9b14610658578063955383bd1461069c578063ab033ea9146106ca578063ac1e50251461070e576101f0565b80637fef901a146105e0578063853828b6146105fe578063877887821461061c5780638bc7e8c41461063a576101f0565b80634641257d1161018757806370897b231161015657806370897b231461052c5780637165485d1461055a578063722713f7146105a45780637cc79113146105c2576101f0565b80634641257d1461043657806351cff8d9146104405780635aa6e675146104985780636a4874a1146104e2576101f0565b80631fe4a686116101c35780631fe4a6861461032a5780632e1a7d4d146103745780633cdc5389146103a25780633fc8cef3146103ec576101f0565b806311588086146101f557806316f0115b1461021357806317d7de7c1461025d5780631f1fcd51146102e0575b600080fd5b6101fd6108c2565b6040518082815260200191505060405180910390f35b61021b610995565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6102656109ad565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102a557808201518184015260208101905061028a565b50505050905090810190601f1680156102d25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102e86109ea565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610332610a02565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103a06004803603602081101561038a57600080fd5b8101908080359060200190929190505050610a28565b005b6103aa610ef0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6103f4610f08565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61043e610f20565b005b6104826004803603602081101561045657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a4d565b6040518082815260200191505060405180910390f35b6104a0611e40565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104ea611e66565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105586004803603602081101561054257600080fd5b8101908080359060200190929190505050611e7e565b005b610562611f4b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105ac611f63565b6040518082815260200191505060405180910390f35b6105ca611f8b565b6040518082815260200191505060405180910390f35b6105e8611f91565b6040518082815260200191505060405180910390f35b610606611f97565b6040518082815260200191505060405180910390f35b61062461230a565b6040518082815260200191505060405180910390f35b610642612310565b6040518082815260200191505060405180910390f35b61069a6004803603602081101561066e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612316565b005b6106c8600480360360208110156106b257600080fd5b810190808035906020019092919050505061241d565b005b61070c600480360360208110156106e057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506124ea565b005b61073a6004803603602081101561072457600080fd5b81019080803590602001909291905050506125f1565b005b6107446126be565b6040518082815260200191505060405180910390f35b61079c6004803603602081101561077057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612791565b005b6107a6612898565b005b6107b0612a9b565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107fa612ab3565b6040518082815260200191505060405180910390f35b610818612ab9565b6040518082815260200191505060405180910390f35b610836612abf565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610880612ad7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600073705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561095557600080fd5b505afa158015610969573d6000803e3d6000fd5b505050506040513d602081101561097f57600080fd5b8101908080519060200190929190505050905090565b73705350c4bcd35c9441419ddd5d2f097d7a55410f81565b60606040518060400160405280601181526020017f5374726174656779437572766553425443000000000000000000000000000000815250905090565b73075b1bb99792c9e1041ba13afef80c91a1e70fb381565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610aeb576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21636f6e74726f6c6c657200000000000000000000000000000000000000000081525060200191505060405180910390fd5b600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610b7e57600080fd5b505afa158015610b92573d6000803e3d6000fd5b505050506040513d6020811015610ba857600080fd5b8101908080519060200190929190505050905081811015610bf657610bde610bd98284612afd90919063ffffffff16565b612b47565b9150610bf38183612bd090919063ffffffff16565b91505b6000610c21612710610c1360015486612c5890919063ffffffff16565b612cde90919063ffffffff16565b9050610d04600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ec5a8946040518163ffffffff1660e01b815260040160206040518083038186803b158015610c8e57600080fd5b505afa158015610ca2573d6000803e3d6000fd5b505050506040513d6020811015610cb857600080fd5b81019080805190602001909291905050508273075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a622ee7c73075b1bb99792c9e1041ba13afef80c91a1e70fb36040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610db957600080fd5b505afa158015610dcd573d6000803e3d6000fd5b505050506040513d6020811015610de357600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610e99576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f217661756c74000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b610eea81610eb08487612afd90919063ffffffff16565b73075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b50505050565b732260fac5e5542a773aa44fbcfedf7c193bc2c59981565b73c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480610fc95750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16145b61103b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21617574686f72697a656400000000000000000000000000000000000000000081525060200191505060405180910390fd5b73d061d61a4d941c39e5453435b6345dc261c2fce073ffffffffffffffffffffffffffffffffffffffff16636a62784273705350c4bcd35c9441419ddd5d2f097d7a55410f6040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050600060405180830381600087803b1580156110e257600080fd5b505af11580156110f6573d6000803e3d6000fd5b50505050600073d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561118d57600080fd5b505afa1580156111a1573d6000803e3d6000fd5b505050506040513d60208110156111b757600080fd5b8101908080519060200190929190505050905060006111f56127106111e760025485612c5890919063ffffffff16565b612cde90919063ffffffff16565b90506112d8600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ec5a8946040518163ffffffff1660e01b815260040160206040518083038186803b15801561126257600080fd5b505afa158015611276573d6000803e3d6000fd5b505050506040513d602081101561128c57600080fd5b81019080805190602001909291905050508273d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b6112eb8183612afd90919063ffffffff16565b915060008211156116095761134a737a250d5630b4cf539739df2c5dacb4c659f2488d600073d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b61139d737a250d5630b4cf539739df2c5dacb4c659f2488d8373d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b606060036040519080825280602002602001820160405280156113cf5781602001602082028038833980820191505090505b50905073d533a949740bb3306d119cc777fa900ba034cd52816000815181106113f457fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc28160018151811061145057fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050732260fac5e5542a773aa44fbcfedf7c193bc2c599816002815181106114ac57fe5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff166338ed1739846000843061153061070842612bd090919063ffffffff16565b6040518663ffffffff1660e01b815260040180868152602001858152602001806020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156115c65780820151818401526020810190506115ab565b505050509050019650505050505050600060405180830381600087803b1580156115ef57600080fd5b505af1158015611603573d6000803e3d6000fd5b50505050505b6000732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561169c57600080fd5b505afa1580156116b0573d6000803e3d6000fd5b505050506040513d60208110156116c657600080fd5b81019080805190602001909291905050509050600081111561185657611736737fc77b5c7614e1533320ea6ddc2eb61fa00a97146000732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b611789737fc77b5c7614e1533320ea6ddc2eb61fa00a971482732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b737fc77b5c7614e1533320ea6ddc2eb61fa00a971473ffffffffffffffffffffffffffffffffffffffff16634515cef3604051806060016040528060008152602001848152602001600081525060006040518363ffffffff1660e01b81526004018083600360200280838360005b838110156118125780820151818401526020810190506117f7565b5050505090500182815260200192505050600060405180830381600087803b15801561183d57600080fd5b505af1158015611851573d6000803e3d6000fd5b505050505b600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156118e957600080fd5b505afa1580156118fd573d6000803e3d6000fd5b505050506040513d602081101561191357600080fd5b810190808051906020019092919050505090506000811115611a4757600061195a61271061194c60005485612c5890919063ffffffff16565b612cde90919063ffffffff16565b9050611a3d600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16639ec5a8946040518163ffffffff1660e01b815260040160206040518083038186803b1580156119c757600080fd5b505afa1580156119db573d6000803e3d6000fd5b505050506040513d60208110156119f157600080fd5b81019080805190602001909291905050508273075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b611a45612898565b505b50505050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611b12576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21636f6e74726f6c6c657200000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1673075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff161415611bc8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f77616e740000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16732260fac5e5542a773aa44fbcfedf7c193bc2c59973ffffffffffffffffffffffffffffffffffffffff161415611c7e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f776274630000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1673d533a949740bb3306d119cc777fa900ba034cd5273ffffffffffffffffffffffffffffffffffffffff161415611d34576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260038152602001807f637276000000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611db157600080fd5b505afa158015611dc5573d6000803e3d6000fd5b505050506040513d6020811015611ddb57600080fd5b81019080805190602001909291905050509050611e3b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828473ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b919050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b73d533a949740bb3306d119cc777fa900ba034cd5281565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f41576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b8060008190555050565b737fc77b5c7614e1533320ea6ddc2eb61fa00a971481565b6000611f86611f706108c2565b611f786126be565b612bd090919063ffffffff16565b905090565b61271081565b60025481565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461205c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21636f6e74726f6c6c657200000000000000000000000000000000000000000081525060200191505060405180910390fd5b612064613019565b73075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156120f557600080fd5b505afa158015612109573d6000803e3d6000fd5b505050506040513d602081101561211f57600080fd5b810190808051906020019092919050505090506000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a622ee7c73075b1bb99792c9e1041ba13afef80c91a1e70fb36040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156121e757600080fd5b505afa1580156121fb573d6000803e3d6000fd5b505050506040513d602081101561221157600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156122c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260068152602001807f217661756c74000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b612306818373075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612d289092919063ffffffff16565b5090565b60005481565b60015481565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146123d9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146124e0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b8060028190555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146125ad576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146126b4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b8060018190555050565b600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561275157600080fd5b505afa158015612765573d6000803e3d6000fd5b505050506040513d602081101561277b57600080fd5b8101908080519060200190929190505050905090565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612854576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f21676f7665726e616e636500000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561292b57600080fd5b505afa15801561293f573d6000803e3d6000fd5b505050506040513d602081101561295557600080fd5b810190808051906020019092919050505090506000811115612a98576129c573705350c4bcd35c9441419ddd5d2f097d7a55410f600073075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b612a1873705350c4bcd35c9441419ddd5d2f097d7a55410f8273075b1bb99792c9e1041ba13afef80c91a1e70fb373ffffffffffffffffffffffffffffffffffffffff16612df99092919063ffffffff16565b73705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff1663b6b55f25826040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015612a7f57600080fd5b505af1158015612a93573d6000803e3d6000fd5b505050505b50565b73d061d61a4d941c39e5453435b6345dc261c2fce081565b61271081565b61271081565b737a250d5630b4cf539739df2c5dacb4c659f2488d81565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000612b3f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613165565b905092915050565b600073705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d836040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b158015612bb057600080fd5b505af1158015612bc4573d6000803e3d6000fd5b50505050819050919050565b600080828401905083811015612c4e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600080831415612c6b5760009050612cd8565b6000828402905082848281612c7c57fe5b0414612cd3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806135826021913960400191505060405180910390fd5b809150505b92915050565b6000612d2083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613225565b905092915050565b612df4838473ffffffffffffffffffffffffffffffffffffffff1663a9059cbb905060e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506132eb565b505050565b6000811480612ef3575060008373ffffffffffffffffffffffffffffffffffffffff1663dd62ed3e30856040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060206040518083038186803b158015612eb657600080fd5b505afa158015612eca573d6000803e3d6000fd5b505050506040513d6020811015612ee057600080fd5b8101908080519060200190929190505050145b612f48576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260368152602001806135cd6036913960400191505060405180910390fd5b613014838473ffffffffffffffffffffffffffffffffffffffff1663095ea7b3905060e01b8484604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506132eb565b505050565b73705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff16632e1a7d4d73705350c4bcd35c9441419ddd5d2f097d7a55410f73ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156130da57600080fd5b505afa1580156130ee573d6000803e3d6000fd5b505050506040513d602081101561310457600080fd5b81019080805190602001909291905050506040518263ffffffff1660e01b815260040180828152602001915050600060405180830381600087803b15801561314b57600080fd5b505af115801561315f573d6000803e3d6000fd5b50505050565b6000838311158290613212576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156131d75780820151818401526020810190506131bc565b50505050905090810190601f1680156132045780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080831182906132d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561329657808201518184015260208101905061327b565b50505050905090810190601f1680156132c35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816132dd57fe5b049050809150509392505050565b61330a8273ffffffffffffffffffffffffffffffffffffffff16613536565b61337c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5361666545524332303a2063616c6c20746f206e6f6e2d636f6e74726163740081525060200191505060405180910390fd5b600060608373ffffffffffffffffffffffffffffffffffffffff16836040518082805190602001908083835b602083106133cb57805182526020820191506020810190506020830392506133a8565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d806000811461342d576040519150601f19603f3d011682016040523d82523d6000602084013e613432565b606091505b5091509150816134aa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c656481525060200191505060405180910390fd5b600081511115613530578080602001905160208110156134c957600080fd5b810190808051906020019092919050505061352f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602a8152602001806135a3602a913960400191505060405180910390fd5b5b50505050565b60008060007fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a47060001b9050833f91506000801b82141580156135785750808214155b9250505091905056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f775361666545524332303a204552433230206f7065726174696f6e20646964206e6f7420737563636565645361666545524332303a20617070726f76652066726f6d206e6f6e2d7a65726f20746f206e6f6e2d7a65726f20616c6c6f77616e6365a265627a7a72315820232a9fe466a851dbd0e1c94c698cb6ccf0e839d62f866a297de60d29acf4eccb64736f6c63430005110032
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000009e65ad11b299ca0abefc2799ddb6314ef2d91080
-----Decoded View---------------
Arg [0] : _controller (address): 0x9E65Ad11b299CA0Abefc2799dDB6314Ef2d91080
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000009e65ad11b299ca0abefc2799ddb6314ef2d91080
Deployed Bytecode Sourcemap
6236:6685:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6236:6685:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12331:114;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6463:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7673:102;;;:::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;7673:102:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6374:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7472:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;9290:736;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9290:736:0;;;;;;;;;;;;;;;;;:::i;:::-;;6951:82;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6818;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10702:1341;;;:::i;:::-;;8822:386;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8822:386:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7408:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;6642:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8282:168;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8282:168:0;;;;;;;;;;;;;;;;;:::i;:::-;;7040:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;12457:127;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7175:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7323:26;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10106:462;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7136:32;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7231:30;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12763:155;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12763:155:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;7954:140;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7954:140:0;;;;;;;;;;;;;;;;;:::i;:::-;;12596:155;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12596:155:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;8106:164;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8106:164:0;;;;;;;;;;;;;;;;;:::i;:::-;;12204:115;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7787:155;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7787:155:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;8462:273;;;:::i;:::-;;6552:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7268:42;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7356:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6730:81;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;7440:25;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;12331:114;12377:4;6502:42;12401:21;;;12431:4;12401:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12401:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12401:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12401:36:0;;;;;;;;;;;;;;;;12394:43;;12331:114;:::o;6463:82::-;6502:42;6463:82;:::o;7673:102::-;7715:13;7741:26;;;;;;;;;;;;;;;;;;;7673:102;:::o;6374:82::-;6413:42;6374:82;:::o;7472:25::-;;;;;;;;;;;;;:::o;9290:736::-;9364:10;;;;;;;;;;;9350:24;;:10;:24;;;9342:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9401:13;6413:42;9417:22;;;9448:4;9417:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9417:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9417:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9417:37:0;;;;;;;;;;;;;;;;9401:53;;9480:7;9469:8;:18;9465:143;;;9514:36;9528:21;9540:8;9528:7;:11;;:21;;;;:::i;:::-;9514:13;:36::i;:::-;9504:46;;9575:21;9587:8;9575:7;:11;;:21;;;;:::i;:::-;9565:31;;9465:143;9628:9;9640:45;7305:5;9640:26;9652:13;;9640:7;:11;;:26;;;;:::i;:::-;:30;;:45;;;;:::i;:::-;9628:57;;9706:65;9743:10;;;;;;;;;;;9732:30;;;:32;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9732:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9732:32:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9732:32:0;;;;;;;;;;;;;;;;9766:4;6413:42;9706:25;;;;:65;;;;;:::i;:::-;9782:14;9810:10;;;;;;;;;;;9799:29;;;6413:42;9799:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9799:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9799:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9799:44:0;;;;;;;;;;;;;;;;9782:61;;9880:1;9862:20;;:6;:20;;;;9854:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9966:52;9992:6;10000:17;10012:4;10000:7;:11;;:17;;;;:::i;:::-;6413:42;9966:25;;;;:52;;;;;:::i;:::-;9290:736;;;;:::o;6951:82::-;6990:42;6951:82;:::o;6818:::-;6857:42;6818:82;:::o;10702:1341::-;10761:10;;;;;;;;;;;10747:24;;:10;:24;;;:52;;;;10789:10;;;;;;;;;;;10775:24;;:10;:24;;;10747:52;10739:76;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6592:42;10826:17;;;6502:42;10826:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10826:23:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10826:23:0;;;;10860:9;6680:42;10872:21;;;10902:4;10872:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10872:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10872:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10872:36:0;;;;;;;;;;;;;;;;10860:48;;10929:13;10945:33;7390:5;10945:17;10954:7;;10945:4;:8;;:17;;;;:::i;:::-;:21;;:33;;;;:::i;:::-;10929:49;;10989:68;11025:10;;;;;;;;;;;11014:30;;;:32;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11014:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11014:32:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11014:32:0;;;;;;;;;;;;;;;;11048:8;6680:42;10989:24;;;;:68;;;;;:::i;:::-;11075:18;11084:8;11075:4;:8;;:18;;;;:::i;:::-;11068:25;;11125:1;11118:4;:8;11114:389;;;11143:31;6768:42;11172:1;6680:42;11143:23;;;;:31;;;;;:::i;:::-;11189:34;6768:42;11218:4;6680:42;11189:23;;;;:34;;;;;:::i;:::-;11252:21;11290:1;11276:16;;;;;;;;;;;;;;;;;;;;;;29:2:-1;21:6;17:15;117:4;105:10;97:6;88:34;148:4;140:6;136:17;126:27;;0:157;11276:16:0;;;;11252:40;;6680:42;11307:4;11312:1;11307:7;;;;;;;;;;;;;:13;;;;;;;;;;;6857:42;11335:4;11340:1;11335:7;;;;;;;;;;;;;:14;;;;;;;;;;;6990:42;11364:4;11369:1;11364:7;;;;;;;;;;;;;:14;;;;;;;;;;;6768:42;11407:33;;;11441:4;11452:1;11456:4;11470;11477:13;11485:4;11477:3;:7;;:13;;;;:::i;:::-;11407:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;11407:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11407:84:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11407:84:0;;;;11114:389;;11513:10;6990:42;11526:22;;;11557:4;11526:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11526:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11526:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11526:37:0;;;;;;;;;;;;;;;;11513:50;;11586:1;11578:5;:9;11574:188;;;11604:34;7080:42;11636:1;6990:42;11604:24;;;;:34;;;;;:::i;:::-;11653:38;7080:42;11685:5;6990:42;11653:24;;;;:38;;;;;:::i;:::-;7080:42;11706:29;;;:44;;;;;;;;11737:1;11706:44;;;;11739:5;11706:44;;;;11745:1;11706:44;;;11748:1;11706:44;;;;;;;;;;;;;;;;;;;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;11706:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11706:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11706:44:0;;;;11574:188;11772:10;6413:42;11785:22;;;11816:4;11785:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11785:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11785:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11785:37:0;;;;;;;;;;;;;;;;11772:50;;11845:1;11837:5;:9;11833:203;;;11863:9;11875:45;7213:5;11875:25;11885:14;;11875:5;:9;;:25;;;;:::i;:::-;:29;;:45;;;;:::i;:::-;11863:57;;11935:65;11972:10;;;;;;;;;;;11961:30;;;:32;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11961:32:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11961:32:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11961:32:0;;;;;;;;;;;;;;;;11995:4;6413:42;11935:25;;;;:65;;;;;:::i;:::-;12015:9;:7;:9::i;:::-;11833:203;;10702:1341;;;;:::o;8822:386::-;8873:12;8920:10;;;;;;;;;;;8906:24;;:10;:24;;;8898:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8981:6;8965:23;;6413:42;8965:23;;;;8957:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9032:6;9016:23;;6990:42;9016:23;;;;9008:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9082:6;9067:22;;6680:42;9067:22;;;;9059:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9118:6;:16;;;9143:4;9118:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9118:31:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9118:31:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9118:31:0;;;;;;;;;;;;;;;;9108:41;;9160:40;9180:10;;;;;;;;;;;9192:7;9160:6;:19;;;;:40;;;;;:::i;:::-;8822:386;;;:::o;7408:25::-;;;;;;;;;;;;;:::o;6642:81::-;6680:42;6642:81;:::o;8282:168::-;8373:10;;;;;;;;;;;8359:24;;:10;:24;;;8351:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8427:15;8410:14;:32;;;;8282:168;:::o;7040:83::-;7080:42;7040:83;:::o;12457:127::-;12499:4;12523:53;12560:15;:13;:15::i;:::-;12523;:13;:15::i;:::-;:36;;:53;;;;:::i;:::-;12516:60;;12457:127;:::o;7175:43::-;7213:5;7175:43;:::o;7323:26::-;;;;:::o;10106:462::-;10147:12;10194:10;;;;;;;;;;;10180:24;;:10;:24;;;10172:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10231:14;:12;:14::i;:::-;6413:42;10286:22;;;10317:4;10286:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10286:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10286:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10286:37:0;;;;;;;;;;;;;;;;10276:47;;10344:14;10372:10;;;;;;;;;;;10361:29;;;6413:42;10361:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10361:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10361:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10361:44:0;;;;;;;;;;;;;;;;10344:61;;10442:1;10424:20;;:6;:20;;;;10416:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10518:42;10544:6;10552:7;6413:42;10518:25;;;;:42;;;;;:::i;:::-;10106:462;;:::o;7136:32::-;;;;:::o;7231:30::-;;;;:::o;12763:155::-;12849:10;;;;;;;;;;;12835:24;;:10;:24;;;12827:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12899:11;12886:10;;:24;;;;;;;;;;;;;;;;;;12763:155;:::o;7954:140::-;8031:10;;;;;;;;;;;8017:24;;:10;:24;;;8009:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8078:8;8068:7;:18;;;;7954:140;:::o;12596:155::-;12682:10;;;;;;;;;;;12668:24;;:10;:24;;;12660:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12732:11;12719:10;;:24;;;;;;;;;;;;;;;;;;12596:155;:::o;8106:164::-;8195:10;;;;;;;;;;;8181:24;;:10;:24;;;8173:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8248:14;8232:13;:30;;;;8106:164;:::o;12204:115::-;12250:4;6413:42;12274:22;;;12305:4;12274:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12274:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12274:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;12274:37:0;;;;;;;;;;;;;;;;12267:44;;12204:115;:::o;7787:155::-;7873:10;;;;;;;;;;;7859:24;;:10;:24;;;7851:48;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7923:11;7910:10;;:24;;;;;;;;;;;;;;;;;;7787:155;:::o;8462:273::-;8499:10;6413:42;8512:22;;;8543:4;8512:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8512:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8512:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;8512:37:0;;;;;;;;;;;;;;;;8499:50;;8572:1;8564:5;:9;8560:168;;;8590:33;6502:42;8621:1;6413:42;8590:24;;;;:33;;;;;:::i;:::-;8638:37;6502:42;8669:5;6413:42;8638:24;;;;:37;;;;;:::i;:::-;6502:42;8690:19;;;8710:5;8690:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8690:26:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8690:26:0;;;;8560:168;8462:273;:::o;6552:83::-;6592:42;6552:83;:::o;7268:42::-;7305:5;7268:42;:::o;7356:39::-;7390:5;7356:39;:::o;6730:81::-;6768:42;6730:81;:::o;7440:25::-;;;;;;;;;;;;;:::o;1006:136::-;1064:7;1091:43;1095:1;1098;1091:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1084:50;;1006:136;;;;:::o;12055:137::-;12113:4;6502:42;12130:20;;;12151:7;12130:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12130:29:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12130:29:0;;;;12177:7;12170:14;;12055:137;;;:::o;819:181::-;877:7;897:9;913:1;909;:5;897:17;;938:1;933;:6;;925:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;991:1;984:8;;;819:181;;;;:::o;1346:250::-;1404:7;1433:1;1428;:6;1424:47;;;1458:1;1451:8;;;;1424:47;1483:9;1499:1;1495;:5;1483:17;;1528:1;1523;1519;:5;;;;;;:10;1511:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1587:1;1580:8;;;1346:250;;;;;:::o;1602:132::-;1660:7;1687:39;1691:1;1694;1687:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1680:46;;1602:132;;;;:::o;3319:176::-;3402:85;3421:5;3451;:14;;;:23;;;;3476:2;3480:5;3428:58;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3428:58:0;;;;;;;38:4:-1;29:7;25:18;67:10;61:17;96:58;199:8;192:4;186;182:15;179:29;167:10;160:49;0:215;;;3428:58:0;3402:18;:85::i;:::-;3319:176;;;:::o;3715:347::-;3820:1;3811:5;:10;3810:62;;;;3870:1;3827:5;:15;;;3851:4;3858:7;3827:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3827:39:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3827:39:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3827:39:0;;;;;;;;;;;;;;;;:44;3810:62;3802:152;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3965:89;3984:5;4014;:13;;;:22;;;;4038:7;4047:5;3991:62;;;;;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3991:62:0;;;;;;;38:4:-1;29:7;25:18;67:10;61:17;96:58;199:8;192:4;186;182:15;179:29;167:10;160:49;0:215;;;3991:62:0;3965:18;:89::i;:::-;3715:347;;;:::o;10580:110::-;6502:42;10624:20;;;6502:42;10645:21;;;10675:4;10645:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10645:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10645:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10645:36:0;;;;;;;;;;;;;;;;10624:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10624:58:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10624:58:0;;;;10580:110::o;1148:192::-;1234:7;1267:1;1262;:6;;1270:12;1254:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;1254:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1294:9;1310:1;1306;:5;1294:17;;1331:1;1324:8;;;1148:192;;;;;:::o;1740:258::-;1826:7;1925:1;1921;:5;1928:12;1913:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;1913:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1952:9;1968:1;1964;:5;;;;;;1952:17;;1989:1;1982:8;;;1740:258;;;;;:::o;4068:598::-;4156:27;4164:5;4156:25;;;:27::i;:::-;4148:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4293:12;4307:23;4342:5;4334:19;;4354:4;4334:25;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;36:153;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;4334:25:0;;;;;;;;;;;;;;;;;;;;;;;;14:1:-1;21;16:31;;;;75:4;69:11;64:16;;144:4;140:9;133:4;115:16;111:27;107:43;104:1;100:51;94:4;87:65;169:16;166:1;159:27;225:16;222:1;215:4;212:1;208:12;193:49;7:242;;16:31;36:4;31:9;;7:242;;4292:67:0;;;;4378:7;4370:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4459:1;4439:10;:17;:21;4435:224;;;4581:10;4570:30;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4570:30:0;;;;;;;;;;;;;;;;4562:85;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4435:224;4068:598;;;;:::o;2336:374::-;2396:4;2413:16;2440:19;2462:66;2440:88;;;;2631:7;2619:20;2607:32;;2671:3;2659:15;;:8;:15;;:42;;;;;2690:11;2678:8;:23;;2659:42;2651:51;;;;2336:374;;;:::o
Swarm Source
bzzr://232a9fe466a851dbd0e1c94c698cb6ccf0e839d62f866a297de60d29acf4eccb
Loading...
Loading
Loading...
Loading
Net Worth in USD
$1.76
Net Worth in ETH
0.000955
Token Allocations
ANY
100.00%
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|---|---|---|---|---|
| BSC | 100.00% | $1.76 | 1 | $1.76 |
Loading...
Loading
Loading...
Loading
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.