More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 317 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 13267648 | 387 days ago | IN | 0 CRO | 0.14663368 | ||||
Manual Send | 2812082 | 1071 days ago | IN | 0 CRO | 0.18303861 | ||||
Transfer | 2765608 | 1074 days ago | IN | 0 CRO | 1.035285 | ||||
Approve | 2478875 | 1094 days ago | IN | 0 CRO | 0.072615 | ||||
Approve | 2261189 | 1110 days ago | IN | 0 CRO | 0.072615 | ||||
Approve | 2261182 | 1110 days ago | IN | 0 CRO | 0.072615 | ||||
Approve Max | 2205933 | 1114 days ago | IN | 0 CRO | 0.144485 | ||||
Set Is Tx Limit ... | 2205912 | 1114 days ago | IN | 0 CRO | 0.24057 | ||||
Approve | 2205903 | 1114 days ago | IN | 0 CRO | 0.220585 | ||||
Set Max Wallet | 2204919 | 1114 days ago | IN | 0 CRO | 0.162475 | ||||
Set Tx Limit | 2204855 | 1114 days ago | IN | 0 CRO | 0.162905 | ||||
Approve | 2194927 | 1115 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2176910 | 1116 days ago | IN | 0 CRO | 0.311003 | ||||
Approve | 2164369 | 1117 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2160315 | 1117 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2119973 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2119344 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2119024 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2118934 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2118909 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2118643 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2118592 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2118532 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2118531 | 1120 days ago | IN | 0 CRO | 0.222145 | ||||
Approve | 2118443 | 1120 days ago | IN | 0 CRO | 0.222145 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
2812082 | 1071 days ago | 33.79305296 CRO | ||||
2164379 | 1117 days ago | 0.00073826 CRO | ||||
2164379 | 1117 days ago | 0.39092272 CRO | ||||
2164379 | 1117 days ago | 0.39092272 CRO | ||||
2164379 | 1117 days ago | 4.69107272 CRO | ||||
2164379 | 1117 days ago | 5.47291817 CRO | ||||
2149666 | 1118 days ago | 0.00152941 CRO | ||||
2149666 | 1118 days ago | 0.51887417 CRO | ||||
2149666 | 1118 days ago | 0.51887417 CRO | ||||
2149666 | 1118 days ago | 6.22649013 CRO | ||||
2149666 | 1118 days ago | 7.26423849 CRO | ||||
2130272 | 1119 days ago | 0.00088225 CRO | ||||
2130272 | 1119 days ago | 0.4310923 CRO | ||||
2130272 | 1119 days ago | 0.4310923 CRO | ||||
2130272 | 1119 days ago | 5.17310765 CRO | ||||
2130272 | 1119 days ago | 6.03529226 CRO | ||||
2125565 | 1120 days ago | 0.00307305 CRO | ||||
2125565 | 1120 days ago | 0.71136654 CRO | ||||
2125565 | 1120 days ago | 0.71136654 CRO | ||||
2125565 | 1120 days ago | 8.53639853 CRO | ||||
2125565 | 1120 days ago | 9.95913161 CRO | ||||
2121436 | 1120 days ago | 0.00301863 CRO | ||||
2121436 | 1120 days ago | 0.72277256 CRO | ||||
2121436 | 1120 days ago | 0.72277256 CRO | ||||
2121436 | 1120 days ago | 8.67327079 CRO |
Loading...
Loading
Contract Name:
Cronobi
Compiler Version
v0.8.5+commit.a4f2e591
Contract Source Code (Solidity)
/** *Submitted for verification at cronoscan.com on 2022-03-28 */ //Telegram: https://t.me/Cronobi // THE CRO VERSION OF SHINOBI // //SPDX-License-Identifier: MIT pragma solidity ^0.8.5; 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; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } } /** * BEP20 standard interface. */ interface IBEP20 { function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function name() external view returns (string memory); function getOwner() external view returns (address); 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); } /** * Allows for contract ownership along with multi-address authorization */ abstract contract Auth { address internal owner; mapping (address => bool) internal authorizations; constructor(address _owner) { owner = _owner; authorizations[_owner] = true; } /** * Function modifier to require caller to be contract owner */ modifier onlyOwner() { require(isOwner(msg.sender), "!OWNER"); _; } /** * Function modifier to require caller to be authorized */ modifier authorized() { require(isAuthorized(msg.sender), "!AUTHORIZED"); _; } /** * Authorize address. Owner only */ function authorize(address adr) public onlyOwner { authorizations[adr] = true; } /** * Remove address' authorization. Owner only */ function unauthorize(address adr) public onlyOwner { authorizations[adr] = false; } /** * Check if address is owner */ function isOwner(address account) public view returns (bool) { return account == owner; } /** * Return address' authorization status */ function isAuthorized(address adr) public view returns (bool) { return authorizations[adr]; } /** * Transfer ownership to new address. Caller must be owner. Leaves old owner authorized */ function transferOwnership(address payable adr) public onlyOwner { owner = adr; authorizations[adr] = true; emit OwnershipTransferred(adr); } event OwnershipTransferred(address owner); } interface IDEXFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IDEXRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract Cronobi is IBEP20, Auth { using SafeMath for uint256; address WCRO = 0x5C7F8A570d578ED84E63fdFA7b1eE72dEae1AE23; address DEAD = 0x000000000000000000000000000000000000dEaD; address ZERO = 0x0000000000000000000000000000000000000000; string constant _name = "Cronobi"; string constant _symbol = "Cronobi"; uint8 constant _decimals = 9; uint256 _totalSupply = 1000000000 * (10 ** _decimals); uint256 public _maxTxAmount = (_totalSupply * 2) / 100; uint256 public _maxWalletSize = (_totalSupply * 2) / 100; mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _allowances; mapping (address => bool) isFeeExempt; mapping (address => bool) isTxLimitExempt; uint256 liquidityFee = 2; uint256 teamFee =1; uint256 marketingFee = 10; uint256 totalFee = 13; uint256 feeDenominator = 100; address private marketingFeeReceiver = 0x8FC093eFE1b2BAEFfd3442A5d768e192C894EFE5; address private teamFeeReceiver = 0x5949Cf2A53Aaff068cE770114B514Ed417cd216B; IDEXRouter public router; address public pair; uint256 public launchedAt; bool public swapEnabled = true; uint256 public swapThreshold = _totalSupply / 1000 * 3; // 0.3% bool inSwap; modifier swapping() { inSwap = true; _; inSwap = false; } constructor () Auth(msg.sender) { router = IDEXRouter(0x145677FC4d9b8F19B5D56d1820c48e0443049a30); pair = IDEXFactory(router.factory()).createPair(WCRO, address(this)); _allowances[address(this)][address(router)] = type(uint256).max; address _owner = owner; isFeeExempt[_owner] = true; isTxLimitExempt[_owner] = true; _balances[_owner] = _totalSupply; emit Transfer(address(0), _owner, _totalSupply); } receive() external payable { } function totalSupply() external view override returns (uint256) { return _totalSupply; } function decimals() external pure override returns (uint8) { return _decimals; } function symbol() external pure override returns (string memory) { return _symbol; } function name() external pure override returns (string memory) { return _name; } function getOwner() external view override returns (address) { return owner; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function approveMax(address spender) external returns (bool) { return approve(spender, type(uint256).max); } function transfer(address recipient, uint256 amount) external override returns (bool) { return _transferFrom(msg.sender, recipient, amount); } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { if(_allowances[sender][msg.sender] != type(uint256).max){ _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance"); } return _transferFrom(sender, recipient, amount); } function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) { if(inSwap){ return _basicTransfer(sender, recipient, amount); } checkTxLimit(sender, amount); if (recipient != pair && recipient != DEAD) { require(isTxLimitExempt[recipient] || _balances[recipient] + amount <= _maxWalletSize, "Transfer amount exceeds the bag size."); } if(shouldSwapBack()){ swapBack(); } if(!launched() && recipient == pair){ require(_balances[sender] > 0); launch(); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 amountReceived = shouldTakeFee(sender) ? takeFee(sender, recipient, amount) : amount; _balances[recipient] = _balances[recipient].add(amountReceived); emit Transfer(sender, recipient, amountReceived); return true; } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function checkTxLimit(address sender, uint256 amount) internal view { require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded"); } function shouldTakeFee(address sender) internal view returns (bool) { return !isFeeExempt[sender]; } function getTotalFee(bool selling) public view returns (uint256) { if(launchedAt + 1 >= block.number){ return feeDenominator.sub(1); } if(selling) { return totalFee.add(1); } return totalFee; } function takeFee(address sender, address receiver, uint256 amount) internal returns (uint256) { uint256 feeAmount = amount.mul(getTotalFee(receiver == pair)).div(feeDenominator); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function shouldSwapBack() internal view returns (bool) { return msg.sender != pair && !inSwap && swapEnabled && _balances[address(this)] >= swapThreshold; } function swapBack() internal swapping { uint256 contractTokenBalance = balanceOf(address(this)); uint256 amountToLiquify = contractTokenBalance.mul(liquidityFee).div(totalFee).div(2); uint256 amountToSwap = contractTokenBalance.sub(amountToLiquify); address[] memory path = new address[](2); path[0] = address(this); path[1] = WCRO; uint256 balanceBefore = address(this).balance; router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountBNB = address(this).balance.sub(balanceBefore); uint256 totalBNBFee = totalFee.sub(liquidityFee.div(2)); uint256 amountBNBLiquidity = amountBNB.mul(liquidityFee).div(totalBNBFee).div(2); uint256 amountBNBdevelopment = amountBNB.mul(teamFee).div(totalBNBFee); uint256 amountBNBMarketing = amountBNB.mul(marketingFee).div(totalBNBFee); (bool MarketingSuccess, /* bytes memory data */) = payable(marketingFeeReceiver).call{value: amountBNBMarketing, gas: 30000}(""); require(MarketingSuccess, "receiver rejected ETH transfer"); (bool developmentSuccess, /* bytes memory data */) = payable(teamFeeReceiver).call{value: amountBNBdevelopment, gas: 30000}(""); require(developmentSuccess, "receiver rejected ETH transfer"); if(amountToLiquify > 0){ router.addLiquidityETH{value: amountBNBLiquidity}( address(this), amountToLiquify, 0, 0, marketingFeeReceiver, block.timestamp ); emit AutoLiquify(amountBNBLiquidity, amountToLiquify); } } function buyTokens(uint256 amount, address to) internal swapping { address[] memory path = new address[](2); path[0] = WCRO; path[1] = address(this); router.swapExactETHForTokensSupportingFeeOnTransferTokens{value: amount}( 0, path, to, block.timestamp ); } function launched() internal view returns (bool) { return launchedAt != 0; } function launch() internal { launchedAt = block.number; } function setTxLimit(uint256 amount) external authorized { require(amount >= _totalSupply / 1000); _maxTxAmount = amount; } function setMaxWallet(uint256 amount) external onlyOwner() { require(amount >= _totalSupply / 1000 ); _maxWalletSize = amount; } function setIsFeeExempt(address holder, bool exempt) external authorized { isFeeExempt[holder] = exempt; } function setIsTxLimitExempt(address holder, bool exempt) external authorized { isTxLimitExempt[holder] = exempt; } function setFees(uint256 _liquidityFee, uint256 _teamFee, uint256 _marketingFee, uint256 _feeDenominator) external authorized { liquidityFee = _liquidityFee; teamFee = _teamFee; marketingFee = _marketingFee; totalFee = _liquidityFee.add(_teamFee).add(_marketingFee); feeDenominator = _feeDenominator; } function setFeeReceiver(address _marketingFeeReceiver, address _teamFeeReceiver) external authorized { marketingFeeReceiver = _marketingFeeReceiver; teamFeeReceiver = _teamFeeReceiver; } function setSwapBackSettings(bool _enabled, uint256 _amount) external authorized { swapEnabled = _enabled; swapThreshold = _amount; } function manualSend() external authorized { uint256 contractETHBalance = address(this).balance; payable(marketingFeeReceiver).transfer(contractETHBalance); } function transferForeignToken(address _token) public authorized { require(_token != address(this), "Can't let you take all native token"); uint256 _contractBalance = IBEP20(_token).balanceOf(address(this)); payable(marketingFeeReceiver).transfer(_contractBalance); } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO)); } function getLiquidityBacking(uint256 accuracy) public view returns (uint256) { return accuracy.mul(balanceOf(pair).mul(2)).div(getCirculatingSupply()); } function isOverLiquified(uint256 target, uint256 accuracy) public view returns (bool) { return getLiquidityBacking(accuracy) > target; } event AutoLiquify(uint256 amountBNB, uint256 amountBOG); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountBNB","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"authorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"selling","type":"bool"}],"name":"getTotalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"isAuthorized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"target","type":"uint256"},{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"isOverLiquified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingFeeReceiver","type":"address"},{"internalType":"address","name":"_teamFeeReceiver","type":"address"}],"name":"setFeeReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_teamFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_token","type":"address"}],"name":"transferForeignToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"unauthorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600280546001600160a01b0319908116735c7f8a570d578ed84e63fdfa7b1ee72deae1ae231790915560038054821661dead179055600480549091169055620000506009600a620003de565b6200006090633b9aca006200049f565b600555606460055460026200007691906200049f565b62000082919062000372565b600655606460055460026200009891906200049f565b620000a4919062000372565b6007556002600c556001600d818155600a600e55600f556064601055601180546001600160a01b0319908116738fc093efe1b2baeffd3442a5d768e192c894efe51790915560128054909116735949cf2a53aaff068ce770114b514ed417cd216b1790556016805460ff1916909117905560055462000127906103e89062000372565b620001349060036200049f565b6017553480156200014457600080fd5b5060008054336001600160a01b031991821681178355825260016020818152604093849020805460ff19169092179091556013805473145677fc4d9b8f19b5d56d1820c48e0443049a30931683179055825163c45a015560e01b81529251919263c45a01559260048083019392829003018186803b158015620001c657600080fd5b505afa158015620001db573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000201919062000340565b6002546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c6539690604401602060405180830381600087803b1580156200024e57600080fd5b505af115801562000263573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000289919062000340565b601480546001600160a01b0319166001600160a01b0392831617905530600090815260096020908152604080832060135485168452825280832060001990558254909316808352600a8252838320805460ff199081166001908117909255600b845285852080549091169091179055600554600883528484208190559351938452928392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350620004d7565b6000602082840312156200035357600080fd5b81516001600160a01b03811681146200036b57600080fd5b9392505050565b6000826200039057634e487b7160e01b600052601260045260246000fd5b500490565b600181815b80851115620003d6578160001904821115620003ba57620003ba620004c1565b80851615620003c857918102915b93841c93908002906200039a565b509250929050565b60006200036b60ff841683600082620003fa5750600162000499565b81620004095750600062000499565b81600181146200042257600281146200042d576200044d565b600191505062000499565b60ff841115620004415762000441620004c1565b50506001821b62000499565b5060208310610133831016604e8410600b841016171562000472575081810a62000499565b6200047e838362000395565b8060001904821115620004955762000495620004c1565b0290505b92915050565b6000816000190483118215151615620004bc57620004bc620004c1565b500290565b634e487b7160e01b600052601160045260246000fd5b611cb680620004e76000396000f3fe6080604052600436106102135760003560e01c80638f9a55c011610118578063df20fd49116100a0578063f2fde38b1161006f578063f2fde38b1461062f578063f42938901461064f578063f84ba65d14610664578063f887ea4014610684578063fe9fbb80146106a457600080fd5b8063df20fd49146105af578063e66db25e146105cf578063f0b37c04146105ef578063f1f3bca31461060f57600080fd5b8063b6a5d7de116100e7578063b6a5d7de146104f3578063bf56b37114610513578063d51ed1c814610529578063dc93cf7014610549578063dd62ed3e1461056957600080fd5b80638f9a55c01461049d57806395d89b4114610248578063a8aa1b31146104b3578063a9059cbb146104d357600080fd5b8063571ac8b01161019b5780636ddd17131161016a5780636ddd1713146103e55780636fcba377146103ff57806370a082311461041f5780637d1db4a514610455578063893d20e81461046b57600080fd5b8063571ac8b0146103635780635c85974f146103835780635d0044ca146103a5578063658d4b7f146103c557600080fd5b806318160ddd116101e257806318160ddd146102ce57806323b872dd146102e35780632b112e49146103035780632f54bf6e14610318578063313ce5671461034757600080fd5b80630445b6671461021f57806306fdde0314610248578063095ea7b31461027e5780631161ae39146102ae57600080fd5b3661021a57005b600080fd5b34801561022b57600080fd5b5061023560175481565b6040519081526020015b60405180910390f35b34801561025457600080fd5b50604080518082018252600781526643726f6e6f626960c81b6020820152905161023f9190611ac1565b34801561028a57600080fd5b5061029e6102993660046119aa565b6106c4565b604051901515815260200161023f565b3480156102ba57600080fd5b5061029e6102c9366004611a3f565b610731565b3480156102da57600080fd5b50600554610235565b3480156102ef57600080fd5b5061029e6102fe366004611934565b610745565b34801561030f57600080fd5b50610235610807565b34801561032457600080fd5b5061029e6103333660046118de565b6000546001600160a01b0391821691161490565b34801561035357600080fd5b506040516009815260200161023f565b34801561036f57600080fd5b5061029e61037e3660046118de565b610859565b34801561038f57600080fd5b506103a361039e366004611a0d565b610867565b005b3480156103b157600080fd5b506103a36103c0366004611a0d565b6108b6565b3480156103d157600080fd5b506103a36103e0366004611975565b610901565b3480156103f157600080fd5b5060165461029e9060ff1681565b34801561040b57600080fd5b506103a361041a366004611a8f565b610951565b34801561042b57600080fd5b5061023561043a3660046118de565b6001600160a01b031660009081526008602052604090205490565b34801561046157600080fd5b5061023560065481565b34801561047757600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161023f565b3480156104a957600080fd5b5061023560075481565b3480156104bf57600080fd5b50601454610485906001600160a01b031681565b3480156104df57600080fd5b5061029e6104ee3660046119aa565b6109a4565b3480156104ff57600080fd5b506103a361050e3660046118de565b6109b1565b34801561051f57600080fd5b5061023560155481565b34801561053557600080fd5b50610235610544366004611a0d565b610a02565b34801561055557600080fd5b506103a36105643660046118de565b610a46565b34801561057557600080fd5b506102356105843660046118fb565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b3480156105bb57600080fd5b506103a36105ca3660046119f1565b610b8a565b3480156105db57600080fd5b506103a36105ea3660046118fb565b610bc6565b3480156105fb57600080fd5b506103a361060a3660046118de565b610c19565b34801561061b57600080fd5b5061023561062a3660046119d6565b610c64565b34801561063b57600080fd5b506103a361064a3660046118de565b610ca5565b34801561065b57600080fd5b506103a3610d3b565b34801561067057600080fd5b506103a361067f366004611975565b610d9e565b34801561069057600080fd5b50601354610485906001600160a01b031681565b3480156106b057600080fd5b5061029e6106bf3660046118de565b610dee565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061071f9086815260200190565b60405180910390a35060015b92915050565b60008261073d83610a02565b119392505050565b6001600160a01b0383166000908152600960209081526040808320338452909152812054600019146107f2576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526009825283812033825290915291909120546107cd918490610e0c565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b6107fd848484610e46565b90505b9392505050565b6004546001600160a01b0316600090815260086020526040812054610854906003546001600160a01b031660009081526008602052604090205461084e90600554906110c8565b906110c8565b905090565b600061072b826000196106c4565b61087033610dee565b6108955760405162461bcd60e51b815260040161088c90611b36565b60405180910390fd5b6103e86005546108a59190611be4565b8110156108b157600080fd5b600655565b6000546001600160a01b031633146108e05760405162461bcd60e51b815260040161088c90611b16565b6103e86005546108f09190611be4565b8110156108fc57600080fd5b600755565b61090a33610dee565b6109265760405162461bcd60e51b815260040161088c90611b36565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b61095a33610dee565b6109765760405162461bcd60e51b815260040161088c90611b36565b600c849055600d839055600e82905561099982610993868661110a565b9061110a565b600f55601055505050565b6000610800338484610e46565b6000546001600160a01b031633146109db5760405162461bcd60e51b815260040161088c90611b16565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b600061072b610a0f610807565b6014546001600160a01b0316600090815260086020526040902054610a4090610a39906002611169565b8590611169565b906111e8565b610a4f33610dee565b610a6b5760405162461bcd60e51b815260040161088c90611b36565b6001600160a01b038116301415610ad05760405162461bcd60e51b815260206004820152602360248201527f43616e2774206c657420796f752074616b6520616c6c206e617469766520746f60448201526235b2b760e91b606482015260840161088c565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a082319060240160206040518083038186803b158015610b1257600080fd5b505afa158015610b26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4a9190611a26565b6011546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610b85573d6000803e3d6000fd5b505050565b610b9333610dee565b610baf5760405162461bcd60e51b815260040161088c90611b36565b6016805460ff191692151592909217909155601755565b610bcf33610dee565b610beb5760405162461bcd60e51b815260040161088c90611b36565b601180546001600160a01b039384166001600160a01b03199182161790915560128054929093169116179055565b6000546001600160a01b03163314610c435760405162461bcd60e51b815260040161088c90611b16565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6000436015546001610c769190611bcc565b10610c895760105461072b9060016110c8565b8115610c9d57600f5461072b90600161110a565b5050600f5490565b6000546001600160a01b03163314610ccf5760405162461bcd60e51b815260040161088c90611b16565b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff191690921790915591519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b610d4433610dee565b610d605760405162461bcd60e51b815260040161088c90611b36565b60115460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610d9a573d6000803e3d6000fd5b5050565b610da733610dee565b610dc35760405162461bcd60e51b815260040161088c90611b36565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6001600160a01b031660009081526001602052604090205460ff1690565b60008184841115610e305760405162461bcd60e51b815260040161088c9190611ac1565b506000610e3d8486611c25565b95945050505050565b60185460009060ff1615610e6657610e5f84848461122a565b9050610800565b610e708483611310565b6014546001600160a01b03848116911614801590610e9c57506003546001600160a01b03848116911614155b15610f47576001600160a01b0383166000908152600b602052604090205460ff1680610eed57506007546001600160a01b038416600090815260086020526040902054610eea908490611bcc565b11155b610f475760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b606482015260840161088c565b610f4f611379565b15610f5c57610f5c6113c8565b601554158015610f7957506014546001600160a01b038481169116145b15610fa9576001600160a01b038416600090815260086020526040902054610fa057600080fd5b610fa943601555565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260089091529190912054610ffb918490610e0c565b6001600160a01b038516600090815260086020908152604080832093909355600a90529081205460ff1615611030578261103b565b61103b8585856117e9565b6001600160a01b038516600090815260086020526040902054909150611061908261110a565b6001600160a01b0380861660008181526008602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110b59085815260200190565b60405180910390a3506001949350505050565b600061080083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e0c565b6000806111178385611bcc565b9050838110156108005760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161088c565b6000826111785750600061072b565b60006111848385611c06565b9050826111918583611be4565b146108005760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161088c565b600061080083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061189b565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260089091529182205461127b918490610e0c565b6001600160a01b0380861660009081526008602052604080822093909355908516815220546112aa908361110a565b6001600160a01b0380851660008181526008602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112fe9086815260200190565b60405180910390a35060019392505050565b6006548111158061133957506001600160a01b0382166000908152600b602052604090205460ff165b610d9a5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161088c565b6014546000906001600160a01b0316331480159061139a575060185460ff16155b80156113a8575060165460ff165b801561085457505060175430600090815260086020526040902054101590565b6018805460ff1916600117905530600090815260086020526040812054905060006114096002610a40600f54610a40600c548761116990919063ffffffff16565b9050600061141783836110c8565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061145157611451611c52565b6001600160a01b03928316602091820292909201015260025482519116908290600190811061148257611482611c52565b6001600160a01b03928316602091820292909201015260135460405163791ac94760e01b81524792919091169063791ac947906114cc908690600090879030904290600401611b5b565b600060405180830381600087803b1580156114e657600080fd5b505af11580156114fa573d6000803e3d6000fd5b50505050600061151382476110c890919063ffffffff16565b905060006115396115306002600c546111e890919063ffffffff16565b600f54906110c8565b9050600061155b6002610a4084610a40600c548861116990919063ffffffff16565b9050600061157883610a40600d548761116990919063ffffffff16565b9050600061159584610a40600e548861116990919063ffffffff16565b6011546040519192506000916001600160a01b039091169061753090849084818181858888f193505050503d80600081146115ec576040519150601f19603f3d011682016040523d82523d6000602084013e6115f1565b606091505b50509050806116425760405162461bcd60e51b815260206004820152601e60248201527f72656365697665722072656a656374656420455448207472616e736665720000604482015260640161088c565b6012546040516000916001600160a01b03169061753090869084818181858888f193505050503d8060008114611694576040519150601f19603f3d011682016040523d82523d6000602084013e611699565b606091505b50509050806116ea5760405162461bcd60e51b815260206004820152601e60248201527f72656365697665722072656a656374656420455448207472616e736665720000604482015260640161088c565b8a156117d15760135460115460405163f305d71960e01b8152306004820152602481018e905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990879060c4016060604051808303818588803b15801561175b57600080fd5b505af115801561176f573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906117949190611a61565b505060408051878152602081018e90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b50506018805460ff1916905550505050505050505050565b601054601454600091829161181b9190610a4090611814906001600160a01b03898116911614610c64565b8690611169565b30600090815260086020526040902054909150611838908261110a565b30600081815260086020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118899085815260200190565b60405180910390a3610e3d83826110c8565b600081836118bc5760405162461bcd60e51b815260040161088c9190611ac1565b506000610e3d8486611be4565b803580151581146118d957600080fd5b919050565b6000602082840312156118f057600080fd5b813561080081611c68565b6000806040838503121561190e57600080fd5b823561191981611c68565b9150602083013561192981611c68565b809150509250929050565b60008060006060848603121561194957600080fd5b833561195481611c68565b9250602084013561196481611c68565b929592945050506040919091013590565b6000806040838503121561198857600080fd5b823561199381611c68565b91506119a1602084016118c9565b90509250929050565b600080604083850312156119bd57600080fd5b82356119c881611c68565b946020939093013593505050565b6000602082840312156119e857600080fd5b610800826118c9565b60008060408385031215611a0457600080fd5b6119c8836118c9565b600060208284031215611a1f57600080fd5b5035919050565b600060208284031215611a3857600080fd5b5051919050565b60008060408385031215611a5257600080fd5b50508035926020909101359150565b600080600060608486031215611a7657600080fd5b8351925060208401519150604084015190509250925092565b60008060008060808587031215611aa557600080fd5b5050823594602084013594506040840135936060013592509050565b600060208083528351808285015260005b81811015611aee57858101830151858201604001528201611ad2565b81811115611b00576000604083870101525b50601f01601f1916929092016040019392505050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b6020808252600b908201526a085055551213d49256915160aa1b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611bab5784516001600160a01b031683529383019391830191600101611b86565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611bdf57611bdf611c3c565b500190565b600082611c0157634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611c2057611c20611c3c565b500290565b600082821015611c3757611c37611c3c565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114611c7d57600080fd5b5056fea26469706673582212202f12d4f6a2e0010c9a225cacdf0311457ca7dc97a0be04fe689db912b52da6e564736f6c63430008050033
Deployed Bytecode
0x6080604052600436106102135760003560e01c80638f9a55c011610118578063df20fd49116100a0578063f2fde38b1161006f578063f2fde38b1461062f578063f42938901461064f578063f84ba65d14610664578063f887ea4014610684578063fe9fbb80146106a457600080fd5b8063df20fd49146105af578063e66db25e146105cf578063f0b37c04146105ef578063f1f3bca31461060f57600080fd5b8063b6a5d7de116100e7578063b6a5d7de146104f3578063bf56b37114610513578063d51ed1c814610529578063dc93cf7014610549578063dd62ed3e1461056957600080fd5b80638f9a55c01461049d57806395d89b4114610248578063a8aa1b31146104b3578063a9059cbb146104d357600080fd5b8063571ac8b01161019b5780636ddd17131161016a5780636ddd1713146103e55780636fcba377146103ff57806370a082311461041f5780637d1db4a514610455578063893d20e81461046b57600080fd5b8063571ac8b0146103635780635c85974f146103835780635d0044ca146103a5578063658d4b7f146103c557600080fd5b806318160ddd116101e257806318160ddd146102ce57806323b872dd146102e35780632b112e49146103035780632f54bf6e14610318578063313ce5671461034757600080fd5b80630445b6671461021f57806306fdde0314610248578063095ea7b31461027e5780631161ae39146102ae57600080fd5b3661021a57005b600080fd5b34801561022b57600080fd5b5061023560175481565b6040519081526020015b60405180910390f35b34801561025457600080fd5b50604080518082018252600781526643726f6e6f626960c81b6020820152905161023f9190611ac1565b34801561028a57600080fd5b5061029e6102993660046119aa565b6106c4565b604051901515815260200161023f565b3480156102ba57600080fd5b5061029e6102c9366004611a3f565b610731565b3480156102da57600080fd5b50600554610235565b3480156102ef57600080fd5b5061029e6102fe366004611934565b610745565b34801561030f57600080fd5b50610235610807565b34801561032457600080fd5b5061029e6103333660046118de565b6000546001600160a01b0391821691161490565b34801561035357600080fd5b506040516009815260200161023f565b34801561036f57600080fd5b5061029e61037e3660046118de565b610859565b34801561038f57600080fd5b506103a361039e366004611a0d565b610867565b005b3480156103b157600080fd5b506103a36103c0366004611a0d565b6108b6565b3480156103d157600080fd5b506103a36103e0366004611975565b610901565b3480156103f157600080fd5b5060165461029e9060ff1681565b34801561040b57600080fd5b506103a361041a366004611a8f565b610951565b34801561042b57600080fd5b5061023561043a3660046118de565b6001600160a01b031660009081526008602052604090205490565b34801561046157600080fd5b5061023560065481565b34801561047757600080fd5b506000546001600160a01b03165b6040516001600160a01b03909116815260200161023f565b3480156104a957600080fd5b5061023560075481565b3480156104bf57600080fd5b50601454610485906001600160a01b031681565b3480156104df57600080fd5b5061029e6104ee3660046119aa565b6109a4565b3480156104ff57600080fd5b506103a361050e3660046118de565b6109b1565b34801561051f57600080fd5b5061023560155481565b34801561053557600080fd5b50610235610544366004611a0d565b610a02565b34801561055557600080fd5b506103a36105643660046118de565b610a46565b34801561057557600080fd5b506102356105843660046118fb565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b3480156105bb57600080fd5b506103a36105ca3660046119f1565b610b8a565b3480156105db57600080fd5b506103a36105ea3660046118fb565b610bc6565b3480156105fb57600080fd5b506103a361060a3660046118de565b610c19565b34801561061b57600080fd5b5061023561062a3660046119d6565b610c64565b34801561063b57600080fd5b506103a361064a3660046118de565b610ca5565b34801561065b57600080fd5b506103a3610d3b565b34801561067057600080fd5b506103a361067f366004611975565b610d9e565b34801561069057600080fd5b50601354610485906001600160a01b031681565b3480156106b057600080fd5b5061029e6106bf3660046118de565b610dee565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061071f9086815260200190565b60405180910390a35060015b92915050565b60008261073d83610a02565b119392505050565b6001600160a01b0383166000908152600960209081526040808320338452909152812054600019146107f2576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526009825283812033825290915291909120546107cd918490610e0c565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b6107fd848484610e46565b90505b9392505050565b6004546001600160a01b0316600090815260086020526040812054610854906003546001600160a01b031660009081526008602052604090205461084e90600554906110c8565b906110c8565b905090565b600061072b826000196106c4565b61087033610dee565b6108955760405162461bcd60e51b815260040161088c90611b36565b60405180910390fd5b6103e86005546108a59190611be4565b8110156108b157600080fd5b600655565b6000546001600160a01b031633146108e05760405162461bcd60e51b815260040161088c90611b16565b6103e86005546108f09190611be4565b8110156108fc57600080fd5b600755565b61090a33610dee565b6109265760405162461bcd60e51b815260040161088c90611b36565b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b61095a33610dee565b6109765760405162461bcd60e51b815260040161088c90611b36565b600c849055600d839055600e82905561099982610993868661110a565b9061110a565b600f55601055505050565b6000610800338484610e46565b6000546001600160a01b031633146109db5760405162461bcd60e51b815260040161088c90611b16565b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b600061072b610a0f610807565b6014546001600160a01b0316600090815260086020526040902054610a4090610a39906002611169565b8590611169565b906111e8565b610a4f33610dee565b610a6b5760405162461bcd60e51b815260040161088c90611b36565b6001600160a01b038116301415610ad05760405162461bcd60e51b815260206004820152602360248201527f43616e2774206c657420796f752074616b6520616c6c206e617469766520746f60448201526235b2b760e91b606482015260840161088c565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a082319060240160206040518083038186803b158015610b1257600080fd5b505afa158015610b26573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b4a9190611a26565b6011546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610b85573d6000803e3d6000fd5b505050565b610b9333610dee565b610baf5760405162461bcd60e51b815260040161088c90611b36565b6016805460ff191692151592909217909155601755565b610bcf33610dee565b610beb5760405162461bcd60e51b815260040161088c90611b36565b601180546001600160a01b039384166001600160a01b03199182161790915560128054929093169116179055565b6000546001600160a01b03163314610c435760405162461bcd60e51b815260040161088c90611b16565b6001600160a01b03166000908152600160205260409020805460ff19169055565b6000436015546001610c769190611bcc565b10610c895760105461072b9060016110c8565b8115610c9d57600f5461072b90600161110a565b5050600f5490565b6000546001600160a01b03163314610ccf5760405162461bcd60e51b815260040161088c90611b16565b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff191690921790915591519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163910160405180910390a150565b610d4433610dee565b610d605760405162461bcd60e51b815260040161088c90611b36565b60115460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610d9a573d6000803e3d6000fd5b5050565b610da733610dee565b610dc35760405162461bcd60e51b815260040161088c90611b36565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6001600160a01b031660009081526001602052604090205460ff1690565b60008184841115610e305760405162461bcd60e51b815260040161088c9190611ac1565b506000610e3d8486611c25565b95945050505050565b60185460009060ff1615610e6657610e5f84848461122a565b9050610800565b610e708483611310565b6014546001600160a01b03848116911614801590610e9c57506003546001600160a01b03848116911614155b15610f47576001600160a01b0383166000908152600b602052604090205460ff1680610eed57506007546001600160a01b038416600090815260086020526040902054610eea908490611bcc565b11155b610f475760405162461bcd60e51b815260206004820152602560248201527f5472616e7366657220616d6f756e74206578636565647320746865206261672060448201526439b4bd329760d91b606482015260840161088c565b610f4f611379565b15610f5c57610f5c6113c8565b601554158015610f7957506014546001600160a01b038481169116145b15610fa9576001600160a01b038416600090815260086020526040902054610fa057600080fd5b610fa943601555565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260089091529190912054610ffb918490610e0c565b6001600160a01b038516600090815260086020908152604080832093909355600a90529081205460ff1615611030578261103b565b61103b8585856117e9565b6001600160a01b038516600090815260086020526040902054909150611061908261110a565b6001600160a01b0380861660008181526008602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110b59085815260200190565b60405180910390a3506001949350505050565b600061080083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e0c565b6000806111178385611bcc565b9050838110156108005760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161088c565b6000826111785750600061072b565b60006111848385611c06565b9050826111918583611be4565b146108005760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161088c565b600061080083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061189b565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038616600090815260089091529182205461127b918490610e0c565b6001600160a01b0380861660009081526008602052604080822093909355908516815220546112aa908361110a565b6001600160a01b0380851660008181526008602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112fe9086815260200190565b60405180910390a35060019392505050565b6006548111158061133957506001600160a01b0382166000908152600b602052604090205460ff165b610d9a5760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161088c565b6014546000906001600160a01b0316331480159061139a575060185460ff16155b80156113a8575060165460ff165b801561085457505060175430600090815260086020526040902054101590565b6018805460ff1916600117905530600090815260086020526040812054905060006114096002610a40600f54610a40600c548761116990919063ffffffff16565b9050600061141783836110c8565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061145157611451611c52565b6001600160a01b03928316602091820292909201015260025482519116908290600190811061148257611482611c52565b6001600160a01b03928316602091820292909201015260135460405163791ac94760e01b81524792919091169063791ac947906114cc908690600090879030904290600401611b5b565b600060405180830381600087803b1580156114e657600080fd5b505af11580156114fa573d6000803e3d6000fd5b50505050600061151382476110c890919063ffffffff16565b905060006115396115306002600c546111e890919063ffffffff16565b600f54906110c8565b9050600061155b6002610a4084610a40600c548861116990919063ffffffff16565b9050600061157883610a40600d548761116990919063ffffffff16565b9050600061159584610a40600e548861116990919063ffffffff16565b6011546040519192506000916001600160a01b039091169061753090849084818181858888f193505050503d80600081146115ec576040519150601f19603f3d011682016040523d82523d6000602084013e6115f1565b606091505b50509050806116425760405162461bcd60e51b815260206004820152601e60248201527f72656365697665722072656a656374656420455448207472616e736665720000604482015260640161088c565b6012546040516000916001600160a01b03169061753090869084818181858888f193505050503d8060008114611694576040519150601f19603f3d011682016040523d82523d6000602084013e611699565b606091505b50509050806116ea5760405162461bcd60e51b815260206004820152601e60248201527f72656365697665722072656a656374656420455448207472616e736665720000604482015260640161088c565b8a156117d15760135460115460405163f305d71960e01b8152306004820152602481018e905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990879060c4016060604051808303818588803b15801561175b57600080fd5b505af115801561176f573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906117949190611a61565b505060408051878152602081018e90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b50506018805460ff1916905550505050505050505050565b601054601454600091829161181b9190610a4090611814906001600160a01b03898116911614610c64565b8690611169565b30600090815260086020526040902054909150611838908261110a565b30600081815260086020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906118899085815260200190565b60405180910390a3610e3d83826110c8565b600081836118bc5760405162461bcd60e51b815260040161088c9190611ac1565b506000610e3d8486611be4565b803580151581146118d957600080fd5b919050565b6000602082840312156118f057600080fd5b813561080081611c68565b6000806040838503121561190e57600080fd5b823561191981611c68565b9150602083013561192981611c68565b809150509250929050565b60008060006060848603121561194957600080fd5b833561195481611c68565b9250602084013561196481611c68565b929592945050506040919091013590565b6000806040838503121561198857600080fd5b823561199381611c68565b91506119a1602084016118c9565b90509250929050565b600080604083850312156119bd57600080fd5b82356119c881611c68565b946020939093013593505050565b6000602082840312156119e857600080fd5b610800826118c9565b60008060408385031215611a0457600080fd5b6119c8836118c9565b600060208284031215611a1f57600080fd5b5035919050565b600060208284031215611a3857600080fd5b5051919050565b60008060408385031215611a5257600080fd5b50508035926020909101359150565b600080600060608486031215611a7657600080fd5b8351925060208401519150604084015190509250925092565b60008060008060808587031215611aa557600080fd5b5050823594602084013594506040840135936060013592509050565b600060208083528351808285015260005b81811015611aee57858101830151858201604001528201611ad2565b81811115611b00576000604083870101525b50601f01601f1916929092016040019392505050565b60208082526006908201526510a7aba722a960d11b604082015260600190565b6020808252600b908201526a085055551213d49256915160aa1b604082015260600190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611bab5784516001600160a01b031683529383019391830191600101611b86565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115611bdf57611bdf611c3c565b500190565b600082611c0157634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611c2057611c20611c3c565b500290565b600082821015611c3757611c37611c3c565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114611c7d57600080fd5b5056fea26469706673582212202f12d4f6a2e0010c9a225cacdf0311457ca7dc97a0be04fe689db912b52da6e564736f6c63430008050033
Deployed Bytecode Sourcemap
5532:10690:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6778:54;;;;;;;;;;;;;;;;;;;9310:25:1;;;9298:2;9283:18;6778:54:0;;;;;;;;7729:80;;;;;;;;;;-1:-1:-1;7801:5:0;;;;;;;;;;;-1:-1:-1;;;7801:5:0;;;;7729:80;;;;7801:5;7729:80;:::i;8151:216::-;;;;;;;;;;-1:-1:-1;8151:216:0;;;;;:::i;:::-;;:::i;:::-;;;5362:14:1;;5355:22;5337:41;;5325:2;5310:18;8151:216:0;5292:92:1;16001:150:0;;;;;;;;;;-1:-1:-1;16001:150:0;;;;;:::i;:::-;;:::i;7459:88::-;;;;;;;;;;-1:-1:-1;7532:12:0;;7459:88;;8669:370;;;;;;;;;;-1:-1:-1;8669:370:0;;;;;:::i;:::-;;:::i;15676:142::-;;;;;;;;;;;;;:::i;3427:103::-;;;;;;;;;;-1:-1:-1;3427:103:0;;;;;:::i;:::-;3482:4;3517:5;-1:-1:-1;;;;;3506:16:0;;;3517:5;;3506:16;;3427:103;7553:80;;;;;;;;;;-1:-1:-1;7553:80:0;;5910:1;10726:36:1;;10714:2;10699:18;7553:80:0;10681:87:1;8375:122:0;;;;;;;;;;-1:-1:-1;8375:122:0;;;;;:::i;:::-;;:::i;13854:145::-;;;;;;;;;;-1:-1:-1;13854:145:0;;;;;:::i;:::-;;:::i;:::-;;14006:151;;;;;;;;;;-1:-1:-1;14006:151:0;;;;;:::i;:::-;;:::i;14169:120::-;;;;;;;;;;-1:-1:-1;14169:120:0;;;;;:::i;:::-;;:::i;6741:30::-;;;;;;;;;;-1:-1:-1;6741:30:0;;;;;;;;14433:352;;;;;;;;;;-1:-1:-1;14433:352:0;;;;;:::i;:::-;;:::i;7899:105::-;;;;;;;;;;-1:-1:-1;7899:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;7983:18:0;7965:7;7983:18;;;:9;:18;;;;;;;7899:105;5980:54;;;;;;;;;;;;;;;;7815:78;;;;;;;;;;-1:-1:-1;7867:7:0;7885:5;-1:-1:-1;;;;;7885:5:0;7815:78;;;-1:-1:-1;;;;;4325:32:1;;;4307:51;;4295:2;4280:18;7815:78:0;4262:102:1;6043:56:0;;;;;;;;;;;;;;;;6679:19;;;;;;;;;;-1:-1:-1;6679:19:0;;;;-1:-1:-1;;;;;6679:19:0;;;8505:156;;;;;;;;;;-1:-1:-1;8505:156:0;;;;;:::i;:::-;;:::i;3100:94::-;;;;;;;;;;-1:-1:-1;3100:94:0;;;;;:::i;:::-;;:::i;6707:25::-;;;;;;;;;;;;;;;;15826:167;;;;;;;;;;-1:-1:-1;15826:167:0;;;;;:::i;:::-;;:::i;15362:298::-;;;;;;;;;;-1:-1:-1;15362:298:0;;;;;:::i;:::-;;:::i;8010:133::-;;;;;;;;;;-1:-1:-1;8010:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;8112:19:0;;;8094:7;8112:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;8010:133;15010:156;;;;;;;;;;-1:-1:-1;15010:156:0;;;;;:::i;:::-;;:::i;14793:209::-;;;;;;;;;;-1:-1:-1;14793:209:0;;;;;:::i;:::-;;:::i;3270:97::-;;;;;;;;;;-1:-1:-1;3270:97:0;;;;;:::i;:::-;;:::i;10639:225::-;;;;;;;;;;-1:-1:-1;10639:225:0;;;;;:::i;:::-;;:::i;3827:173::-;;;;;;;;;;-1:-1:-1;3827:173:0;;;;;:::i;:::-;;:::i;15174:180::-;;;;;;;;;;;;;:::i;14297:128::-;;;;;;;;;;-1:-1:-1;14297:128:0;;;;;:::i;:::-;;:::i;6648:24::-;;;;;;;;;;-1:-1:-1;6648:24:0;;;;-1:-1:-1;;;;;6648:24:0;;;3601:107;;;;;;;;;;-1:-1:-1;3601:107:0;;;;;:::i;:::-;;:::i;8151:216::-;8255:10;8226:4;8243:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;8243:32:0;;;;;;;;;;:41;;;8300:37;8226:4;;8243:32;;8300:37;;;;8278:6;9310:25:1;;9298:2;9283:18;;9265:76;8300:37:0;;;;;;;;-1:-1:-1;8355:4:0;8151:216;;;;;:::o;16001:150::-;16081:4;16137:6;16105:29;16125:8;16105:19;:29::i;:::-;:38;;16001:150;-1:-1:-1;;;16001:150:0:o;8669:370::-;-1:-1:-1;;;;;8789:19:0;;8769:4;8789:19;;;:11;:19;;;;;;;;8809:10;8789:31;;;;;;;;-1:-1:-1;;8789:52:0;8786:186;;8891:69;;;;;;;;;;;-1:-1:-1;;;8891:69:0;;;;;;;;-1:-1:-1;;;;;8891:19:0;;-1:-1:-1;8891:19:0;;;:11;:19;;;;;8911:10;8891:31;;;;;;;;;;:69;;8927:6;;8891:35;:69::i;:::-;-1:-1:-1;;;;;8857:19:0;;;;;;:11;:19;;;;;;;;8877:10;8857:31;;;;;;;:103;8786:186;8991:40;9005:6;9013:9;9024:6;8991:13;:40::i;:::-;8984:47;;8669:370;;;;;;:::o;15676:142::-;15804:4;;-1:-1:-1;;;;;15804:4:0;15729:7;7983:18;;;:9;:18;;;;;;15756:54;;15783:4;;-1:-1:-1;;;;;15783:4:0;7965:7;7983:18;;;:9;:18;;;;;;15756:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;15749:61;;15676:142;:::o;8375:122::-;8430:4;8454:35;8462:7;-1:-1:-1;;8454:7:0;:35::i;13854:145::-;2985:24;2998:10;2985:12;:24::i;:::-;2977:48;;;;-1:-1:-1;;;2977:48:0;;;;;;;:::i;:::-;;;;;;;;;13954:4:::1;13939:12;;:19;;;;:::i;:::-;13929:6;:29;;13921:38;;;::::0;::::1;;13970:12;:21:::0;13854:145::o;14006:151::-;3482:4;3517:5;-1:-1:-1;;;;;3517:5:0;2824:10;3506:16;2808:38;;;;-1:-1:-1;;;2808:38:0;;;;;;;:::i;:::-;14109:4:::1;14094:12;;:19;;;;:::i;:::-;14084:6;:29;;14076:39;;;::::0;::::1;;14126:14;:23:::0;14006:151::o;14169:120::-;2985:24;2998:10;2985:12;:24::i;:::-;2977:48;;;;-1:-1:-1;;;2977:48:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14253:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;14253:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14169:120::o;14433:352::-;2985:24;2998:10;2985:12;:24::i;:::-;2977:48;;;;-1:-1:-1;;;2977:48:0;;;;;;;:::i;:::-;14570:12:::1;:28:::0;;;14609:7:::1;:18:::0;;;14638:12:::1;:28:::0;;;14688:46:::1;14653:13:::0;14688:27:::1;14585:13:::0;14619:8;14688:17:::1;:27::i;:::-;:31:::0;::::1;:46::i;:::-;14677:8;:57:::0;14745:14:::1;:32:::0;-1:-1:-1;;;14433:352:0:o;8505:156::-;8585:4;8609:44;8623:10;8635:9;8646:6;8609:13;:44::i;3100:94::-;3482:4;3517:5;-1:-1:-1;;;;;3517:5:0;2824:10;3506:16;2808:38;;;;-1:-1:-1;;;2808:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3160:19:0::1;;::::0;;;3182:4:::1;3160:19;::::0;;;;;;;:26;;-1:-1:-1;;3160:26:0::1;::::0;;::::1;::::0;;3100:94::o;15826:167::-;15894:7;15921:64;15962:22;:20;:22::i;:::-;15944:4;;-1:-1:-1;;;;;15944:4:0;7965:7;7983:18;;;:9;:18;;;;;;15921:36;;15934:22;;15954:1;15934:19;:22::i;:::-;15921:8;;:12;:36::i;:::-;:40;;:64::i;15362:298::-;2985:24;2998:10;2985:12;:24::i;:::-;2977:48;;;;-1:-1:-1;;;2977:48:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;15445:23:0;::::1;15463:4;15445:23;;15437:71;;;::::0;-1:-1:-1;;;15437:71:0;;7171:2:1;15437:71:0::1;::::0;::::1;7153:21:1::0;7210:2;7190:18;;;7183:30;7249:34;7229:18;;;7222:62;-1:-1:-1;;;7300:18:1;;;7293:33;7343:19;;15437:71:0::1;7143:225:1::0;15437:71:0::1;15546:39;::::0;-1:-1:-1;;;15546:39:0;;15579:4:::1;15546:39;::::0;::::1;4307:51:1::0;15519:24:0::1;::::0;-1:-1:-1;;;;;15546:24:0;::::1;::::0;::::1;::::0;4280:18:1;;15546:39:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15604:20;::::0;15596:56:::1;::::0;15519:66;;-1:-1:-1;;;;;;15604:20:0::1;::::0;15596:56;::::1;;;::::0;15519:66;;15604:20:::1;15596:56:::0;15604:20;15596:56;15519:66;15604:20;15596:56;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;15426:234;15362:298:::0;:::o;15010:156::-;2985:24;2998:10;2985:12;:24::i;:::-;2977:48;;;;-1:-1:-1;;;2977:48:0;;;;;;;:::i;:::-;15102:11:::1;:22:::0;;-1:-1:-1;;15102:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;;15135:13:::1;:23:::0;15010:156::o;14793:209::-;2985:24;2998:10;2985:12;:24::i;:::-;2977:48;;;;-1:-1:-1;;;2977:48:0;;;;;;;:::i;:::-;14905:20:::1;:44:::0;;-1:-1:-1;;;;;14905:44:0;;::::1;-1:-1:-1::0;;;;;;14905:44:0;;::::1;;::::0;;;14960:15:::1;:34:::0;;;;;::::1;::::0;::::1;;::::0;;14793:209::o;3270:97::-;3482:4;3517:5;-1:-1:-1;;;;;3517:5:0;2824:10;3506:16;2808:38;;;;-1:-1:-1;;;2808:38:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3332:19:0::1;3354:5;3332:19:::0;;;:14:::1;:19;::::0;;;;:27;;-1:-1:-1;;3332:27:0::1;::::0;;3270:97::o;10639:225::-;10695:7;10736:12;10718:10;;10731:1;10718:14;;;;:::i;:::-;:30;10715:67;;10758:14;;:21;;10777:1;10758:18;:21::i;10715:67::-;10795:7;10792:39;;;10813:8;;:15;;10826:1;10813:12;:15::i;10792:39::-;-1:-1:-1;;10848:8:0;;;10639:225::o;3827:173::-;3482:4;3517:5;-1:-1:-1;;;;;3517:5:0;2824:10;3506:16;2808:38;;;;-1:-1:-1;;;2808:38:0;;;;;;;:::i;:::-;3903:5:::1;:11:::0;;-1:-1:-1;;;;;;3903:11:0::1;-1:-1:-1::0;;;;;3903:11:0;::::1;::::0;;::::1;::::0;;3925:19;;;-1:-1:-1;3925:19:0::1;::::0;;;;;;;;:26;;-1:-1:-1;;3925:26:0::1;::::0;;::::1;::::0;;;3967:25;;4307:51:1;;;3967:25:0::1;::::0;4280:18:1;3967:25:0::1;;;;;;;3827:173:::0;:::o;15174:180::-;2985:24;2998:10;2985:12;:24::i;:::-;2977:48;;;;-1:-1:-1;;;2977:48:0;;;;;;;:::i;:::-;15296:20:::1;::::0;15288:58:::1;::::0;15256:21:::1;::::0;-1:-1:-1;;;;;15296:20:0::1;::::0;15288:58;::::1;;;::::0;15256:21;;15227:26:::1;15288:58:::0;15227:26;15288:58;15256:21;15296:20;15288:58;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;15216:138;15174:180::o:0;14297:128::-;2985:24;2998:10;2985:12;:24::i;:::-;2977:48;;;;-1:-1:-1;;;2977:48:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14385:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;14385:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14297:128::o;3601:107::-;-1:-1:-1;;;;;3681:19:0;3657:4;3681:19;;;:14;:19;;;;;;;;;3601:107::o;484:192::-;570:7;606:12;598:6;;;;590:29;;;;-1:-1:-1;;;590:29:0;;;;;;;;:::i;:::-;-1:-1:-1;630:9:0;642:5;646:1;642;:5;:::i;:::-;630:17;484:192;-1:-1:-1;;;;;484:192:0:o;9047:942::-;9159:6;;9139:4;;9159:6;;9156:63;;;9175:41;9190:6;9198:9;9209:6;9175:14;:41::i;:::-;9168:48;;;;9156:63;9239:28;9252:6;9260;9239:12;:28::i;:::-;9305:4;;-1:-1:-1;;;;;9292:17:0;;;9305:4;;9292:17;;;;:38;;-1:-1:-1;9326:4:0;;-1:-1:-1;;;;;9313:17:0;;;9326:4;;9313:17;;9292:38;9288:198;;;-1:-1:-1;;;;;9355:26:0;;;;;;:15;:26;;;;;;;;;:77;;-1:-1:-1;9418:14:0;;-1:-1:-1;;;;;9385:20:0;;;;;;:9;:20;;;;;;:29;;9408:6;;9385:29;:::i;:::-;:47;;9355:77;9347:127;;;;-1:-1:-1;;;9347:127:0;;6419:2:1;9347:127:0;;;6401:21:1;6458:2;6438:18;;;6431:30;6497:34;6477:18;;;6470:62;-1:-1:-1;;;6548:18:1;;;6541:35;6593:19;;9347:127:0;6391:227:1;9347:127:0;9509:16;:14;:16::i;:::-;9506:35;;;9528:10;:8;:10::i;:::-;13744;;:15;;;9556:32;;-1:-1:-1;9584:4:0;;-1:-1:-1;;;;;9571:17:0;;;9584:4;;9571:17;9556:32;9553:81;;;-1:-1:-1;;;;;9599:17:0;;9619:1;9599:17;;;:9;:17;;;;;;9591:30;;;;;;9623:8;13826:12;13813:10;:25;13775:71;9623:8;9666:53;;;;;;;;;;;-1:-1:-1;;;9666:53:0;;;;;;;;-1:-1:-1;;;;;9666:17:0;;-1:-1:-1;9666:17:0;;;:9;:17;;;;;;;;:53;;9688:6;;9666:21;:53::i;:::-;-1:-1:-1;;;;;9646:17:0;;;;;;:9;:17;;;;;;;;:73;;;;10604:11;:19;;;;;;;;10603:20;9757:67;;9818:6;9757:67;;;9781:34;9789:6;9797:9;9808:6;9781:7;:34::i;:::-;-1:-1:-1;;;;;9858:20:0;;;;;;:9;:20;;;;;;9732:92;;-1:-1:-1;9858:40:0;;9732:92;9858:24;:40::i;:::-;-1:-1:-1;;;;;9835:20:0;;;;;;;:9;:20;;;;;;;:63;;;;9916:43;;;;;;;;;;9944:14;9310:25:1;;9298:2;9283:18;;9265:76;9916:43:0;;;;;;;;-1:-1:-1;9977:4:0;;9047:942;-1:-1:-1;;;;9047:942:0:o;342:136::-;400:7;427:43;431:1;434;427:43;;;;;;;;;;;;;;;;;:3;:43::i;155:181::-;213:7;;245:5;249:1;245;:5;:::i;:::-;233:17;;274:1;269;:6;;261:46;;;;-1:-1:-1;;;261:46:0;;7575:2:1;261:46:0;;;7557:21:1;7614:2;7594:18;;;7587:30;7653:29;7633:18;;;7626:57;7700:18;;261:46:0;7547:177:1;682:250:0;740:7;764:6;760:47;;-1:-1:-1;794:1:0;787:8;;760:47;819:9;831:5;835:1;831;:5;:::i;:::-;819:17;-1:-1:-1;864:1:0;855:5;859:1;819:17;855:5;:::i;:::-;:10;847:56;;;;-1:-1:-1;;;847:56:0;;8290:2:1;847:56:0;;;8272:21:1;8329:2;8309:18;;;8302:30;8368:34;8348:18;;;8341:62;-1:-1:-1;;;8419:18:1;;;8412:31;8460:19;;847:56:0;8262:223:1;938:132:0;996:7;1023:39;1027:1;1030;1023:39;;;;;;;;;;;;;;;;;:3;:39::i;10001:330::-;10131:53;;;;;;;;;;;-1:-1:-1;;;10131:53:0;;;;;;;;-1:-1:-1;;;;;10131:17:0;;10094:4;10131:17;;;:9;:17;;;;;;;:53;;10153:6;;10131:21;:53::i;:::-;-1:-1:-1;;;;;10111:17:0;;;;;;;:9;:17;;;;;;:73;;;;10218:20;;;;;;;:32;;10243:6;10218:24;:32::i;:::-;-1:-1:-1;;;;;10195:20:0;;;;;;;:9;:20;;;;;;;:55;;;;10266:35;;;;;;;;;;10294:6;9310:25:1;;9298:2;9283:18;;9265:76;10266:35:0;;;;;;;;-1:-1:-1;10319:4:0;10001:330;;;;;:::o;10339:166::-;10436:12;;10426:6;:22;;:49;;;-1:-1:-1;;;;;;10452:23:0;;;;;;:15;:23;;;;;;;;10426:49;10418:79;;;;-1:-1:-1;;;10418:79:0;;6825:2:1;10418:79:0;;;6807:21:1;6864:2;6844:18;;;6837:30;-1:-1:-1;;;6883:18:1;;;6876:47;6940:18;;10418:79:0;6797:167:1;11252:197:0;11339:4;;11301;;-1:-1:-1;;;;;11339:4:0;11325:10;:18;;;;:38;;-1:-1:-1;11357:6:0;;;;11356:7;11325:38;:62;;;;-1:-1:-1;11376:11:0;;;;11325:62;:116;;;;-1:-1:-1;;11428:13:0;;11418:4;11400:24;;;;:9;:24;;;;;;:41;;;11252:197::o;11457:1843::-;6887:6;:13;;-1:-1:-1;;6887:13:0;6896:4;6887:13;;;11555:4:::1;-1:-1:-1::0;7983:18:0;;;:9;:18;;;;;;11506:55:::1;;11572:23;11598:59;11655:1;11598:52;11641:8;;11598:38;11623:12;;11598:20;:24;;:38;;;;:::i;:59::-;11572:85:::0;-1:-1:-1;11668:20:0::1;11691:41;:20:::0;11572:85;11691:24:::1;:41::i;:::-;11769:16;::::0;;11783:1:::1;11769:16:::0;;;;;::::1;::::0;;11668:64;;-1:-1:-1;11745:21:0::1;::::0;11769:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11769:16:0::1;11745:40;;11814:4;11796;11801:1;11796:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11796:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;11840:4:::1;::::0;11830:7;;11840:4;::::1;::::0;11830;;11840;;11830:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;11830:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;11915:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;11915:188:0;;11881:21:::1;::::0;11915:6;;;::::1;::::0;:57:::1;::::0;:188:::1;::::0;11987:12;;11857:21:::1;::::0;12030:4;;12057::::1;::::0;12077:15:::1;::::0;11915:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;12114:17;12134:40;12160:13;12134:21;:25;;:40;;;;:::i;:::-;12114:60;;12185:19;12207:33;12220:19;12237:1;12220:12;;:16;;:19;;;;:::i;:::-;12207:8;::::0;;:12:::1;:33::i;:::-;12185:55;;12251:26;12280:51;12329:1;12280:44;12312:11;12280:27;12294:12;;12280:9;:13;;:27;;;;:::i;:51::-;12251:80;;12342:28;12373:39;12400:11;12373:22;12387:7;;12373:9;:13;;:22;;;;:::i;:39::-;12342:70;;12423:26;12452:44;12484:11;12452:27;12466:12;;12452:9;:13;;:27;;;;:::i;:44::-;12570:20;::::0;12562:77:::1;::::0;12423:73;;-1:-1:-1;12512:21:0::1;::::0;-1:-1:-1;;;;;12570:20:0;;::::1;::::0;12629:5:::1;::::0;12423:73;;12512:21;12562:77;12512:21;12562:77;12423:73;12570:20;12629:5;12562:77:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12511:128;;;12658:16;12650:59;;;::::0;-1:-1:-1;;;12650:59:0;;7931:2:1;12650:59:0::1;::::0;::::1;7913:21:1::0;7970:2;7950:18;;;7943:30;8009:32;7989:18;;;7982:60;8059:18;;12650:59:0::1;7903:180:1::0;12650:59:0::1;12781:15;::::0;12773:74:::1;::::0;12721:23:::1;::::0;-1:-1:-1;;;;;12781:15:0::1;::::0;12837:5:::1;::::0;12810:20;;12721:23;12773:74;12721:23;12773:74;12810:20;12781:15;12837:5;12773:74:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12720:127;;;12866:18;12858:61;;;::::0;-1:-1:-1;;;12858:61:0;;7931:2:1;12858:61:0::1;::::0;::::1;7913:21:1::0;7970:2;7950:18;;;7943:30;8009:32;7989:18;;;7982:60;8059:18;;12858:61:0::1;7903:180:1::0;12858:61:0::1;12935:19:::0;;12932:361:::1;;12970:6;::::0;13144:20:::1;::::0;12970:243:::1;::::0;-1:-1:-1;;;12970:243:0;;13046:4:::1;12970:243;::::0;::::1;4926:34:1::0;4976:18;;;4969:34;;;12970:6:0::1;5019:18:1::0;;;5012:34;;;5062:18;;;5055:34;-1:-1:-1;;;;;13144:20:0;;::::1;5105:19:1::0;;;5098:44;13183:15:0::1;5158:19:1::0;;;5151:35;12970:6:0;::::1;::::0;:22:::1;::::0;13000:18;;4860:19:1;;12970:243:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13233:48:0::1;::::0;;10505:25:1;;;10561:2;10546:18;;10539:34;;;13233:48:0::1;::::0;-1:-1:-1;10478:18:1;13233:48:0::1;;;;;;;12932:361;-1:-1:-1::0;;6905:6:0;:14;;-1:-1:-1;;6905:14:0;;;-1:-1:-1;;;;;;;;;;11457:1843:0:o;10872:372::-;11043:14;;11032:4;;10957:7;;;;10997:61;;11043:14;10997:41;;11008:29;;-1:-1:-1;;;;;11020:16:0;;;11032:4;;11020:16;11008:11;:29::i;:::-;10997:6;;:10;:41::i;:61::-;11116:4;11098:24;;;;:9;:24;;;;;;10977:81;;-1:-1:-1;11098:39:0;;10977:81;11098:28;:39::i;:::-;11089:4;11071:24;;;;:9;:24;;;;;;;:66;;;;11153:42;;-1:-1:-1;;;;;11153:42:0;;;;;;;11185:9;9310:25:1;;9298:2;9283:18;;9265:76;11153:42:0;;;;;;;;11215:21;:6;11226:9;11215:10;:21::i;1076:345::-;1162:7;1264:12;1257:5;1249:28;;;;-1:-1:-1;;;1249:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1288:9:0;1300:5;1304:1;1300;:5;:::i;14:160:1:-;79:20;;135:13;;128:21;118:32;;108:2;;164:1;161;154:12;108:2;60:114;;;:::o;179:247::-;238:6;291:2;279:9;270:7;266:23;262:32;259:2;;;307:1;304;297:12;259:2;346:9;333:23;365:31;390:5;365:31;:::i;691:388::-;759:6;767;820:2;808:9;799:7;795:23;791:32;788:2;;;836:1;833;826:12;788:2;875:9;862:23;894:31;919:5;894:31;:::i;:::-;944:5;-1:-1:-1;1001:2:1;986:18;;973:32;1014:33;973:32;1014:33;:::i;:::-;1066:7;1056:17;;;778:301;;;;;:::o;1084:456::-;1161:6;1169;1177;1230:2;1218:9;1209:7;1205:23;1201:32;1198:2;;;1246:1;1243;1236:12;1198:2;1285:9;1272:23;1304:31;1329:5;1304:31;:::i;:::-;1354:5;-1:-1:-1;1411:2:1;1396:18;;1383:32;1424:33;1383:32;1424:33;:::i;:::-;1188:352;;1476:7;;-1:-1:-1;;;1530:2:1;1515:18;;;;1502:32;;1188:352::o;1545:315::-;1610:6;1618;1671:2;1659:9;1650:7;1646:23;1642:32;1639:2;;;1687:1;1684;1677:12;1639:2;1726:9;1713:23;1745:31;1770:5;1745:31;:::i;:::-;1795:5;-1:-1:-1;1819:35:1;1850:2;1835:18;;1819:35;:::i;:::-;1809:45;;1629:231;;;;;:::o;1865:315::-;1933:6;1941;1994:2;1982:9;1973:7;1969:23;1965:32;1962:2;;;2010:1;2007;2000:12;1962:2;2049:9;2036:23;2068:31;2093:5;2068:31;:::i;:::-;2118:5;2170:2;2155:18;;;;2142:32;;-1:-1:-1;;;1952:228:1:o;2185:180::-;2241:6;2294:2;2282:9;2273:7;2269:23;2265:32;2262:2;;;2310:1;2307;2300:12;2262:2;2333:26;2349:9;2333:26;:::i;2370:248::-;2435:6;2443;2496:2;2484:9;2475:7;2471:23;2467:32;2464:2;;;2512:1;2509;2502:12;2464:2;2535:26;2551:9;2535:26;:::i;2623:180::-;2682:6;2735:2;2723:9;2714:7;2710:23;2706:32;2703:2;;;2751:1;2748;2741:12;2703:2;-1:-1:-1;2774:23:1;;2693:110;-1:-1:-1;2693:110:1:o;2808:184::-;2878:6;2931:2;2919:9;2910:7;2906:23;2902:32;2899:2;;;2947:1;2944;2937:12;2899:2;-1:-1:-1;2970:16:1;;2889:103;-1:-1:-1;2889:103:1:o;2997:248::-;3065:6;3073;3126:2;3114:9;3105:7;3101:23;3097:32;3094:2;;;3142:1;3139;3132:12;3094:2;-1:-1:-1;;3165:23:1;;;3235:2;3220:18;;;3207:32;;-1:-1:-1;3084:161:1:o;3250:306::-;3338:6;3346;3354;3407:2;3395:9;3386:7;3382:23;3378:32;3375:2;;;3423:1;3420;3413:12;3375:2;3452:9;3446:16;3436:26;;3502:2;3491:9;3487:18;3481:25;3471:35;;3546:2;3535:9;3531:18;3525:25;3515:35;;3365:191;;;;;:::o;3561:385::-;3647:6;3655;3663;3671;3724:3;3712:9;3703:7;3699:23;3695:33;3692:2;;;3741:1;3738;3731:12;3692:2;-1:-1:-1;;3764:23:1;;;3834:2;3819:18;;3806:32;;-1:-1:-1;3885:2:1;3870:18;;3857:32;;3936:2;3921:18;3908:32;;-1:-1:-1;3682:264:1;-1:-1:-1;3682:264:1:o;5615:597::-;5727:4;5756:2;5785;5774:9;5767:21;5817:6;5811:13;5860:6;5855:2;5844:9;5840:18;5833:34;5885:1;5895:140;5909:6;5906:1;5903:13;5895:140;;;6004:14;;;6000:23;;5994:30;5970:17;;;5989:2;5966:26;5959:66;5924:10;;5895:140;;;6053:6;6050:1;6047:13;6044:2;;;6123:1;6118:2;6109:6;6098:9;6094:22;6090:31;6083:42;6044:2;-1:-1:-1;6196:2:1;6175:15;-1:-1:-1;;6171:29:1;6156:45;;;;6203:2;6152:54;;5736:476;-1:-1:-1;;;5736:476:1:o;8490:329::-;8692:2;8674:21;;;8731:1;8711:18;;;8704:29;-1:-1:-1;;;8764:2:1;8749:18;;8742:36;8810:2;8795:18;;8664:155::o;8824:335::-;9026:2;9008:21;;;9065:2;9045:18;;;9038:30;-1:-1:-1;;;9099:2:1;9084:18;;9077:41;9150:2;9135:18;;8998:161::o;9346:980::-;9608:4;9656:3;9645:9;9641:19;9687:6;9676:9;9669:25;9713:2;9751:6;9746:2;9735:9;9731:18;9724:34;9794:3;9789:2;9778:9;9774:18;9767:31;9818:6;9853;9847:13;9884:6;9876;9869:22;9922:3;9911:9;9907:19;9900:26;;9961:2;9953:6;9949:15;9935:29;;9982:1;9992:195;10006:6;10003:1;10000:13;9992:195;;;10071:13;;-1:-1:-1;;;;;10067:39:1;10055:52;;10162:15;;;;10127:12;;;;10103:1;10021:9;9992:195;;;-1:-1:-1;;;;;;;10243:32:1;;;;10238:2;10223:18;;10216:60;-1:-1:-1;;;10307:3:1;10292:19;10285:35;10204:3;9617:709;-1:-1:-1;;;9617:709:1:o;10773:128::-;10813:3;10844:1;10840:6;10837:1;10834:13;10831:2;;;10850:18;;:::i;:::-;-1:-1:-1;10886:9:1;;10821:80::o;10906:217::-;10946:1;10972;10962:2;;11016:10;11011:3;11007:20;11004:1;10997:31;11051:4;11048:1;11041:15;11079:4;11076:1;11069:15;10962:2;-1:-1:-1;11108:9:1;;10952:171::o;11128:168::-;11168:7;11234:1;11230;11226:6;11222:14;11219:1;11216:21;11211:1;11204:9;11197:17;11193:45;11190:2;;;11241:18;;:::i;:::-;-1:-1:-1;11281:9:1;;11180:116::o;11301:125::-;11341:4;11369:1;11366;11363:8;11360:2;;;11374:18;;:::i;:::-;-1:-1:-1;11411:9:1;;11350:76::o;11431:127::-;11492:10;11487:3;11483:20;11480:1;11473:31;11523:4;11520:1;11513:15;11547:4;11544:1;11537:15;11563:127;11624:10;11619:3;11615:20;11612:1;11605:31;11655:4;11652:1;11645:15;11679:4;11676:1;11669:15;11827:131;-1:-1:-1;;;;;11902:31:1;;11892:42;;11882:2;;11948:1;11945;11938:12;11882:2;11872:86;:::o
Swarm Source
ipfs://2f12d4f6a2e0010c9a225cacdf0311457ca7dc97a0be04fe689db912b52da6e5
Loading...
Loading
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 34 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.