Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 69 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Open Trading | 17649472 | 550 days ago | IN | 0 ETH | 0.00071896 | ||||
Open Trading | 17649456 | 550 days ago | IN | 0 ETH | 0.00074532 | ||||
Open Trading | 17649451 | 550 days ago | IN | 0 ETH | 0.00075738 | ||||
Open Trading | 17649446 | 550 days ago | IN | 0 ETH | 0.00077591 | ||||
Open Trading | 17649309 | 550 days ago | IN | 0 ETH | 0.00097744 | ||||
Open Trading | 17649268 | 550 days ago | IN | 0 ETH | 0.0009717 | ||||
Open Trading | 17649202 | 550 days ago | IN | 0 ETH | 0.00095758 | ||||
Open Trading | 17649186 | 550 days ago | IN | 0 ETH | 0.00066376 | ||||
Open Trading | 17647197 | 550 days ago | IN | 0 ETH | 0.00049798 | ||||
Open Trading | 17647191 | 550 days ago | IN | 0 ETH | 0.00045872 | ||||
Open Trading | 17647188 | 550 days ago | IN | 0 ETH | 0.00049493 | ||||
Open Trading | 17647176 | 550 days ago | IN | 0 ETH | 0.00047641 | ||||
Open Trading | 17647164 | 550 days ago | IN | 0 ETH | 0.00051498 | ||||
Open Trading | 17646794 | 551 days ago | IN | 0 ETH | 0.00050883 | ||||
Open Trading | 17646770 | 551 days ago | IN | 0 ETH | 0.00052285 | ||||
Open Trading | 17646743 | 551 days ago | IN | 0 ETH | 0.0005167 | ||||
Open Trading | 17646732 | 551 days ago | IN | 0 ETH | 0.00052747 | ||||
Open Trading | 17646314 | 551 days ago | IN | 0 ETH | 0.00051511 | ||||
Open Trading | 17646310 | 551 days ago | IN | 0 ETH | 0.00055983 | ||||
Open Trading | 17646304 | 551 days ago | IN | 0 ETH | 0.00051658 | ||||
Open Trading | 17646294 | 551 days ago | IN | 0 ETH | 0.00052326 | ||||
Open Trading | 17646235 | 551 days ago | IN | 0 ETH | 0.0005524 | ||||
Open Trading | 17645897 | 551 days ago | IN | 0 ETH | 0.0006044 | ||||
Open Trading | 17645895 | 551 days ago | IN | 0 ETH | 0.00060818 | ||||
Open Trading | 17645890 | 551 days ago | IN | 0 ETH | 0.00058261 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
15817403 | 807 days ago | 1 ETH |
Loading...
Loading
Contract Name:
SKT
Compiler Version
v0.8.9+commit.e5eed63a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-10-24 */ /** *Submitted for verification at Etherscan.io on 2022-10-23 */ pragma solidity 0.8.9; // SPDX-License-Identifier: UNLICENSED abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } 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) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract SKT is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _rOwned; mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private bots; mapping (address => uint) private cooldown; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 1000000 * 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _feeAddr1; uint256 private _feeAddr2; uint256 private _standardTax; address payable private _feeAddrWallet; string private constant _name = "SK Telecom T2"; string private constant _symbol = "T2"; uint8 private constant _decimals = 9; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; bool private cooldownEnabled = false; bool private disableAddLiquid = false; uint256 private _maxTxAmount = _tTotal.mul(2).div(100); uint256 private _maxWalletSize = _tTotal.mul(2).div(100); event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _feeAddrWallet = payable(_msgSender()); _rOwned[_msgSender()] = _rTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_feeAddrWallet] = true; _standardTax=0; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return tokenFromReflection(_rOwned[account]); } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function setCooldownEnabled(bool onoff) external onlyOwner() { cooldownEnabled = onoff; } function tokenFromReflection(uint256 rAmount) private view returns(uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (from != owner() && to != owner()) { require(!bots[from] && !bots[to]); _feeAddr1 = 0; _feeAddr2 = _standardTax; if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] && cooldownEnabled) { // Cooldown require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && from != uniswapV2Pair && swapEnabled && contractTokenBalance>0) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } } }else{ _feeAddr1 = 0; _feeAddr2 = 0; } _tokenTransfer(from,to,amount); } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function setStandardTax(uint256 newTax) external onlyOwner{ require(newTax<_standardTax); _standardTax=newTax; } function removeLimits() external onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; } function sendETHToFee(uint256 amount) private { _feeAddrWallet.transfer(amount); } function openTrading() external onlyOwner() { if(disableAddLiquid == false){ IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); } disableAddLiquid = true; swapEnabled = true; cooldownEnabled = true; tradingOpen = true; IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); } function addbot(address[] memory bots_) public onlyOwner { for (uint i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function _tokenTransfer(address sender, address recipient, uint256 amount) private { _transferStandard(sender, recipient, amount); } function _transferStandard(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } receive() external payable {} function manualswap() external { require(_msgSender() == _feeAddrWallet); uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualsendETH() external { require(_msgSender() == _feeAddrWallet); uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256, uint256) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _feeAddr1, _feeAddr2); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTValues(uint256 tAmount, uint256 taxFee, uint256 TeamFee) private pure returns (uint256, uint256, uint256) { uint256 tFee = tAmount.mul(taxFee).div(100); uint256 tTeam = tAmount.mul(TeamFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function _getRValues(uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTeam = tTeam.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam); return (rAmount, rTransferAmount, rFee); } function _getRate() private view returns(uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function _getCurrentSupply() private view returns(uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"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":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addbot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","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":"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":"manualsendETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"onoff","type":"bool"}],"name":"setCooldownEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newTax","type":"uint256"}],"name":"setStandardTax","outputs":[],"stateMutability":"nonpayable","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":"pure","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":"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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526200001966038d7ea4c6800060001962000320565b62000027906000196200034d565b600855600f805463ffffffff60a81b191690556200007460646200006066038d7ea4c680006002620001f0602090811b620009eb17901c565b6200028460201b62000a711790919060201c565b6010556200009f606462000060600266038d7ea4c68000620001f060201b620009eb1790919060201c565b601155348015620000af57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600d80546001600160a01b03191633908117909155600854600091825260026020526040822055600190600590620001316000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526005909352818320805485166001908117909155600d549091168352908220805490931617909155600c55620001953390565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef66038d7ea4c68000604051620001e291815260200190565b60405180910390a3620003f8565b60008262000201575060006200027e565b60006200020f838562000367565b9050826200021e858362000389565b146200027b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084015b60405180910390fd5b90505b92915050565b60006200027b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620002ce60201b60201c565b60008183620002f25760405162461bcd60e51b8152600401620002729190620003a0565b50600062000301848662000389565b95945050505050565b634e487b7160e01b600052601260045260246000fd5b6000826200033257620003326200030a565b500690565b634e487b7160e01b600052601160045260246000fd5b60008282101562000362576200036262000337565b500390565b600081600019048311821515161562000384576200038462000337565b500290565b6000826200039b576200039b6200030a565b500490565b600060208083528351808285015260005b81811015620003cf57858101830151858201604001528201620003b1565b81811115620003e2576000604083870101525b50601f01601f1916929092016040019392505050565b6119da80620004086000396000f3fe60806040526004361061010d5760003560e01c8063751039fc11610095578063a9059cbb11610064578063a9059cbb146102e5578063c3c8cd8014610305578063c9567bf91461031a578063ccfee5d61461032f578063dd62ed3e1461034f57600080fd5b8063751039fc1461025d578063843f7be2146102725780638da5cb5b1461029257806395d89b41146102ba57600080fd5b8063313ce567116100dc578063313ce567146101d55780635932ead1146101f157806359659ba81461021357806370a0823114610228578063715018a61461024857600080fd5b806306fdde0314610119578063095ea7b31461016157806318160ddd1461019157806323b872dd146101b557600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5060408051808201909152600d81526c29a5902a32b632b1b7b6902a1960991b60208201525b604051610158919061155b565b60405180910390f35b34801561016d57600080fd5b5061018161017c3660046115d5565b610395565b6040519015158152602001610158565b34801561019d57600080fd5b5066038d7ea4c680005b604051908152602001610158565b3480156101c157600080fd5b506101816101d0366004611601565b6103ac565b3480156101e157600080fd5b5060405160098152602001610158565b3480156101fd57600080fd5b5061021161020c366004611650565b610415565b005b34801561021f57600080fd5b50610211610466565b34801561023457600080fd5b506101a761024336600461166d565b610493565b34801561025457600080fd5b506102116104b5565b34801561026957600080fd5b50610211610529565b34801561027e57600080fd5b5061021161028d36600461168a565b610565565b34801561029e57600080fd5b506000546040516001600160a01b039091168152602001610158565b3480156102c657600080fd5b506040805180820190915260028152612a1960f11b602082015261014b565b3480156102f157600080fd5b506101816103003660046115d5565b6105a2565b34801561031157600080fd5b506102116105af565b34801561032657600080fd5b506102116105e5565b34801561033b57600080fd5b5061021161034a3660046116b9565b610955565b34801561035b57600080fd5b506101a761036a36600461177e565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60006103a2338484610ab3565b5060015b92915050565b60006103b9848484610bd7565b61040b84336104068560405180606001604052806028815260200161197d602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610f3f565b610ab3565b5060019392505050565b6000546001600160a01b031633146104485760405162461bcd60e51b815260040161043f906117b7565b60405180910390fd5b600f8054911515600160b81b0260ff60b81b19909216919091179055565b600d546001600160a01b0316336001600160a01b03161461048657600080fd5b4761049081610f79565b50565b6001600160a01b0381166000908152600260205260408120546103a690610fb3565b6000546001600160a01b031633146104df5760405162461bcd60e51b815260040161043f906117b7565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105535760405162461bcd60e51b815260040161043f906117b7565b66038d7ea4c680006010819055601155565b6000546001600160a01b0316331461058f5760405162461bcd60e51b815260040161043f906117b7565b600c54811061059d57600080fd5b600c55565b60006103a2338484610bd7565b600d546001600160a01b0316336001600160a01b0316146105cf57600080fd5b60006105da30610493565b905061049081611030565b6000546001600160a01b0316331461060f5760405162461bcd60e51b815260040161043f906117b7565b600f54600160c01b900460ff166108b257600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561065b308266038d7ea4c68000610ab3565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561069457600080fd5b505afa1580156106a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cc91906117ec565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561071457600080fd5b505afa158015610728573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074c91906117ec565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561079457600080fd5b505af11580156107a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cc91906117ec565b600f80546001600160a01b0319166001600160a01b03928316179055600e541663f305d71947306107fc81610493565b6000806108116000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b15801561087457600080fd5b505af1158015610888573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108ad9190611809565b505050505b600f805464ffffff00ff60a01b19811664010101000160a01b17909155600e5460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b390604401602060405180830381600087803b15801561091d57600080fd5b505af1158015610931573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104909190611837565b6000546001600160a01b0316331461097f5760405162461bcd60e51b815260040161043f906117b7565b60005b81518110156109e7576001600660008484815181106109a3576109a3611854565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806109df81611880565b915050610982565b5050565b6000826109fa575060006103a6565b6000610a06838561189b565b905082610a1385836118ba565b14610a6a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161043f565b9392505050565b6000610a6a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111b9565b6001600160a01b038316610b155760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161043f565b6001600160a01b038216610b765760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161043f565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c3b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161043f565b6001600160a01b038216610c9d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161043f565b60008111610cff5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161043f565b6000546001600160a01b03848116911614801590610d2b57506000546001600160a01b03838116911614155b15610f24576001600160a01b03831660009081526006602052604090205460ff16158015610d7257506001600160a01b03821660009081526006602052604090205460ff16155b610d7b57600080fd5b6000600a55600c54600b55600f546001600160a01b038481169116148015610db15750600e546001600160a01b03838116911614155b8015610dd657506001600160a01b03821660009081526005602052604090205460ff16155b8015610deb5750600f54600160b81b900460ff165b15610ea757601054811115610e425760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161043f565b60115481610e4f84610493565b610e5991906118dc565b1115610ea75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161043f565b6000610eb230610493565b600f54909150600160a81b900460ff16158015610edd5750600f546001600160a01b03858116911614155b8015610ef25750600f54600160b01b900460ff165b8015610efe5750600081115b15610f1e57610f0c81611030565b478015610f1c57610f1c47610f79565b505b50610f2f565b6000600a819055600b555b610f3a8383836111e7565b505050565b60008184841115610f635760405162461bcd60e51b815260040161043f919061155b565b506000610f7084866118f4565b95945050505050565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156109e7573d6000803e3d6000fd5b600060085482111561101a5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161043f565b60006110246111f2565b9050610a6a8382610a71565b600f805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061107857611078611854565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156110cc57600080fd5b505afa1580156110e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110491906117ec565b8160018151811061111757611117611854565b6001600160a01b039283166020918202929092010152600e5461113d9130911684610ab3565b600e5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061117690859060009086903090429060040161190b565b600060405180830381600087803b15801561119057600080fd5b505af11580156111a4573d6000803e3d6000fd5b5050600f805460ff60a81b1916905550505050565b600081836111da5760405162461bcd60e51b815260040161043f919061155b565b506000610f7084866118ba565b610f3a838383611215565b60008060006111ff61130c565b909250905061120e8282610a71565b9250505090565b6000806000806000806112278761134a565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061125990876113a7565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461128890866113e9565b6001600160a01b0389166000908152600260205260409020556112aa81611448565b6112b48483611492565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516112f991815260200190565b60405180910390a3505050505050505050565b600854600090819066038d7ea4c680006113268282610a71565b8210156113415750506008549266038d7ea4c6800092509050565b90939092509050565b60008060008060008060008060006113678a600a54600b546114b6565b92509250925060006113776111f2565b9050600080600061138a8e87878761150b565b919e509c509a509598509396509194505050505091939550919395565b6000610a6a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f3f565b6000806113f683856118dc565b905083811015610a6a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161043f565b60006114526111f2565b9050600061146083836109eb565b3060009081526002602052604090205490915061147d90826113e9565b30600090815260026020526040902055505050565b60085461149f90836113a7565b6008556009546114af90826113e9565b6009555050565b60008080806114d060646114ca89896109eb565b90610a71565b905060006114e360646114ca8a896109eb565b905060006114fb826114f58b866113a7565b906113a7565b9992985090965090945050505050565b600080808061151a88866109eb565b9050600061152888876109eb565b9050600061153688886109eb565b90506000611548826114f586866113a7565b939b939a50919850919650505050505050565b600060208083528351808285015260005b818110156115885785810183015185820160400152820161156c565b8181111561159a576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461049057600080fd5b80356115d0816115b0565b919050565b600080604083850312156115e857600080fd5b82356115f3816115b0565b946020939093013593505050565b60008060006060848603121561161657600080fd5b8335611621816115b0565b92506020840135611631816115b0565b929592945050506040919091013590565b801515811461049057600080fd5b60006020828403121561166257600080fd5b8135610a6a81611642565b60006020828403121561167f57600080fd5b8135610a6a816115b0565b60006020828403121561169c57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156116cc57600080fd5b823567ffffffffffffffff808211156116e457600080fd5b818501915085601f8301126116f857600080fd5b81358181111561170a5761170a6116a3565b8060051b604051601f19603f8301168101818110858211171561172f5761172f6116a3565b60405291825284820192508381018501918883111561174d57600080fd5b938501935b8285101561177257611763856115c5565b84529385019392850192611752565b98975050505050505050565b6000806040838503121561179157600080fd5b823561179c816115b0565b915060208301356117ac816115b0565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156117fe57600080fd5b8151610a6a816115b0565b60008060006060848603121561181e57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561184957600080fd5b8151610a6a81611642565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006000198214156118945761189461186a565b5060010190565b60008160001904831182151516156118b5576118b561186a565b500290565b6000826118d757634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156118ef576118ef61186a565b500190565b6000828210156119065761190661186a565b500390565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561195b5784516001600160a01b031683529383019391830191600101611936565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220184d65be3fc82f8724cc072dbd5e2a148eea82f2254bcd72ba7cda3ab8493e4864736f6c63430008090033
Deployed Bytecode
0x60806040526004361061010d5760003560e01c8063751039fc11610095578063a9059cbb11610064578063a9059cbb146102e5578063c3c8cd8014610305578063c9567bf91461031a578063ccfee5d61461032f578063dd62ed3e1461034f57600080fd5b8063751039fc1461025d578063843f7be2146102725780638da5cb5b1461029257806395d89b41146102ba57600080fd5b8063313ce567116100dc578063313ce567146101d55780635932ead1146101f157806359659ba81461021357806370a0823114610228578063715018a61461024857600080fd5b806306fdde0314610119578063095ea7b31461016157806318160ddd1461019157806323b872dd146101b557600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5060408051808201909152600d81526c29a5902a32b632b1b7b6902a1960991b60208201525b604051610158919061155b565b60405180910390f35b34801561016d57600080fd5b5061018161017c3660046115d5565b610395565b6040519015158152602001610158565b34801561019d57600080fd5b5066038d7ea4c680005b604051908152602001610158565b3480156101c157600080fd5b506101816101d0366004611601565b6103ac565b3480156101e157600080fd5b5060405160098152602001610158565b3480156101fd57600080fd5b5061021161020c366004611650565b610415565b005b34801561021f57600080fd5b50610211610466565b34801561023457600080fd5b506101a761024336600461166d565b610493565b34801561025457600080fd5b506102116104b5565b34801561026957600080fd5b50610211610529565b34801561027e57600080fd5b5061021161028d36600461168a565b610565565b34801561029e57600080fd5b506000546040516001600160a01b039091168152602001610158565b3480156102c657600080fd5b506040805180820190915260028152612a1960f11b602082015261014b565b3480156102f157600080fd5b506101816103003660046115d5565b6105a2565b34801561031157600080fd5b506102116105af565b34801561032657600080fd5b506102116105e5565b34801561033b57600080fd5b5061021161034a3660046116b9565b610955565b34801561035b57600080fd5b506101a761036a36600461177e565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b60006103a2338484610ab3565b5060015b92915050565b60006103b9848484610bd7565b61040b84336104068560405180606001604052806028815260200161197d602891396001600160a01b038a1660009081526004602090815260408083203384529091529020549190610f3f565b610ab3565b5060019392505050565b6000546001600160a01b031633146104485760405162461bcd60e51b815260040161043f906117b7565b60405180910390fd5b600f8054911515600160b81b0260ff60b81b19909216919091179055565b600d546001600160a01b0316336001600160a01b03161461048657600080fd5b4761049081610f79565b50565b6001600160a01b0381166000908152600260205260408120546103a690610fb3565b6000546001600160a01b031633146104df5760405162461bcd60e51b815260040161043f906117b7565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146105535760405162461bcd60e51b815260040161043f906117b7565b66038d7ea4c680006010819055601155565b6000546001600160a01b0316331461058f5760405162461bcd60e51b815260040161043f906117b7565b600c54811061059d57600080fd5b600c55565b60006103a2338484610bd7565b600d546001600160a01b0316336001600160a01b0316146105cf57600080fd5b60006105da30610493565b905061049081611030565b6000546001600160a01b0316331461060f5760405162461bcd60e51b815260040161043f906117b7565b600f54600160c01b900460ff166108b257600e80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561065b308266038d7ea4c68000610ab3565b806001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561069457600080fd5b505afa1580156106a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cc91906117ec565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561071457600080fd5b505afa158015610728573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061074c91906117ec565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561079457600080fd5b505af11580156107a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cc91906117ec565b600f80546001600160a01b0319166001600160a01b03928316179055600e541663f305d71947306107fc81610493565b6000806108116000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c4016060604051808303818588803b15801561087457600080fd5b505af1158015610888573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108ad9190611809565b505050505b600f805464ffffff00ff60a01b19811664010101000160a01b17909155600e5460405163095ea7b360e01b81526001600160a01b039182166004820152600019602482015291169063095ea7b390604401602060405180830381600087803b15801561091d57600080fd5b505af1158015610931573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104909190611837565b6000546001600160a01b0316331461097f5760405162461bcd60e51b815260040161043f906117b7565b60005b81518110156109e7576001600660008484815181106109a3576109a3611854565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806109df81611880565b915050610982565b5050565b6000826109fa575060006103a6565b6000610a06838561189b565b905082610a1385836118ba565b14610a6a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161043f565b9392505050565b6000610a6a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111b9565b6001600160a01b038316610b155760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161043f565b6001600160a01b038216610b765760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161043f565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c3b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161043f565b6001600160a01b038216610c9d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161043f565b60008111610cff5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161043f565b6000546001600160a01b03848116911614801590610d2b57506000546001600160a01b03838116911614155b15610f24576001600160a01b03831660009081526006602052604090205460ff16158015610d7257506001600160a01b03821660009081526006602052604090205460ff16155b610d7b57600080fd5b6000600a55600c54600b55600f546001600160a01b038481169116148015610db15750600e546001600160a01b03838116911614155b8015610dd657506001600160a01b03821660009081526005602052604090205460ff16155b8015610deb5750600f54600160b81b900460ff165b15610ea757601054811115610e425760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e00000000000000604482015260640161043f565b60115481610e4f84610493565b610e5991906118dc565b1115610ea75760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161043f565b6000610eb230610493565b600f54909150600160a81b900460ff16158015610edd5750600f546001600160a01b03858116911614155b8015610ef25750600f54600160b01b900460ff165b8015610efe5750600081115b15610f1e57610f0c81611030565b478015610f1c57610f1c47610f79565b505b50610f2f565b6000600a819055600b555b610f3a8383836111e7565b505050565b60008184841115610f635760405162461bcd60e51b815260040161043f919061155b565b506000610f7084866118f4565b95945050505050565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156109e7573d6000803e3d6000fd5b600060085482111561101a5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161043f565b60006110246111f2565b9050610a6a8382610a71565b600f805460ff60a81b1916600160a81b179055604080516002808252606082018352600092602083019080368337019050509050308160008151811061107857611078611854565b6001600160a01b03928316602091820292909201810191909152600e54604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156110cc57600080fd5b505afa1580156110e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061110491906117ec565b8160018151811061111757611117611854565b6001600160a01b039283166020918202929092010152600e5461113d9130911684610ab3565b600e5460405163791ac94760e01b81526001600160a01b039091169063791ac9479061117690859060009086903090429060040161190b565b600060405180830381600087803b15801561119057600080fd5b505af11580156111a4573d6000803e3d6000fd5b5050600f805460ff60a81b1916905550505050565b600081836111da5760405162461bcd60e51b815260040161043f919061155b565b506000610f7084866118ba565b610f3a838383611215565b60008060006111ff61130c565b909250905061120e8282610a71565b9250505090565b6000806000806000806112278761134a565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061125990876113a7565b6001600160a01b03808b1660009081526002602052604080822093909355908a168152205461128890866113e9565b6001600160a01b0389166000908152600260205260409020556112aa81611448565b6112b48483611492565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516112f991815260200190565b60405180910390a3505050505050505050565b600854600090819066038d7ea4c680006113268282610a71565b8210156113415750506008549266038d7ea4c6800092509050565b90939092509050565b60008060008060008060008060006113678a600a54600b546114b6565b92509250925060006113776111f2565b9050600080600061138a8e87878761150b565b919e509c509a509598509396509194505050505091939550919395565b6000610a6a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610f3f565b6000806113f683856118dc565b905083811015610a6a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161043f565b60006114526111f2565b9050600061146083836109eb565b3060009081526002602052604090205490915061147d90826113e9565b30600090815260026020526040902055505050565b60085461149f90836113a7565b6008556009546114af90826113e9565b6009555050565b60008080806114d060646114ca89896109eb565b90610a71565b905060006114e360646114ca8a896109eb565b905060006114fb826114f58b866113a7565b906113a7565b9992985090965090945050505050565b600080808061151a88866109eb565b9050600061152888876109eb565b9050600061153688886109eb565b90506000611548826114f586866113a7565b939b939a50919850919650505050505050565b600060208083528351808285015260005b818110156115885785810183015185820160400152820161156c565b8181111561159a576000604083870101525b50601f01601f1916929092016040019392505050565b6001600160a01b038116811461049057600080fd5b80356115d0816115b0565b919050565b600080604083850312156115e857600080fd5b82356115f3816115b0565b946020939093013593505050565b60008060006060848603121561161657600080fd5b8335611621816115b0565b92506020840135611631816115b0565b929592945050506040919091013590565b801515811461049057600080fd5b60006020828403121561166257600080fd5b8135610a6a81611642565b60006020828403121561167f57600080fd5b8135610a6a816115b0565b60006020828403121561169c57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b600060208083850312156116cc57600080fd5b823567ffffffffffffffff808211156116e457600080fd5b818501915085601f8301126116f857600080fd5b81358181111561170a5761170a6116a3565b8060051b604051601f19603f8301168101818110858211171561172f5761172f6116a3565b60405291825284820192508381018501918883111561174d57600080fd5b938501935b8285101561177257611763856115c5565b84529385019392850192611752565b98975050505050505050565b6000806040838503121561179157600080fd5b823561179c816115b0565b915060208301356117ac816115b0565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156117fe57600080fd5b8151610a6a816115b0565b60008060006060848603121561181e57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561184957600080fd5b8151610a6a81611642565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006000198214156118945761189461186a565b5060010190565b60008160001904831182151516156118b5576118b561186a565b500290565b6000826118d757634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156118ef576118ef61186a565b500190565b6000828210156119065761190661186a565b500390565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561195b5784516001600160a01b031683529383019391830191600101611936565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220184d65be3fc82f8724cc072dbd5e2a148eea82f2254bcd72ba7cda3ab8493e4864736f6c63430008090033
Deployed Bytecode Sourcemap
3585:10253:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5388:83;;;;;;;;;;-1:-1:-1;5458:5:0;;;;;;;;;;;;-1:-1:-1;;;5458:5:0;;;;5388:83;;;;;;;:::i;:::-;;;;;;;;6240:161;;;;;;;;;;-1:-1:-1;6240:161:0;;;;;:::i;:::-;;:::i;:::-;;;1376:14:1;;1369:22;1351:41;;1339:2;1324:18;6240:161:0;1211:187:1;5665:95:0;;;;;;;;;;-1:-1:-1;4081:15:0;5665:95;;;1549:25:1;;;1537:2;1522:18;5665:95:0;1403:177:1;6409:313:0;;;;;;;;;;-1:-1:-1;6409:313:0;;;;;:::i;:::-;;:::i;5574:83::-;;;;;;;;;;-1:-1:-1;5574:83:0;;4474:1;2188:36:1;;2176:2;2161:18;5574:83:0;2046:184:1;6730:103:0;;;;;;;;;;-1:-1:-1;6730:103:0;;;;;:::i;:::-;;:::i;:::-;;11950:196;;;;;;;;;;;;;:::i;5768:138::-;;;;;;;;;;-1:-1:-1;5768:138:0;;;;;:::i;:::-;;:::i;2666:148::-;;;;;;;;;;;;;:::i;9458:118::-;;;;;;;;;;;;;:::i;9319:131::-;;;;;;;;;;-1:-1:-1;9319:131:0;;;;;:::i;:::-;;:::i;2452:79::-;;;;;;;;;;-1:-1:-1;2490:7:0;2517:6;2452:79;;-1:-1:-1;;;;;2517:6:0;;;3187:51:1;;3175:2;3160:18;2452:79:0;3041:203:1;5479:87:0;;;;;;;;;;-1:-1:-1;5551:7:0;;;;;;;;;;;;-1:-1:-1;;;5551:7:0;;;;5479:87;;5914:167;;;;;;;;;;-1:-1:-1;5914:167:0;;;;;:::i;:::-;;:::i;11748:194::-;;;;;;;;;;;;;:::i;9688:820::-;;;;;;;;;;;;;:::i;10516:163::-;;;;;;;;;;-1:-1:-1;10516:163:0;;;;;:::i;:::-;;:::i;6089:143::-;;;;;;;;;;-1:-1:-1;6089:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6197:18:0;;;6170:7;6197:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6089:143;6240:161;6315:4;6332:39;250:10;6355:7;6364:6;6332:8;:39::i;:::-;-1:-1:-1;6389:4:0;6240:161;;;;;:::o;6409:313::-;6507:4;6524:36;6534:6;6542:9;6553:6;6524:9;:36::i;:::-;6571:121;6580:6;250:10;6602:89;6640:6;6602:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6602:19:0;;;;;;:11;:19;;;;;;;;250:10;6602:33;;;;;;;;;;:37;:89::i;:::-;6571:8;:121::i;:::-;-1:-1:-1;6710:4:0;6409:313;;;;;:::o;6730:103::-;2579:6;;-1:-1:-1;;;;;2579:6:0;250:10;2579:22;2571:67;;;;-1:-1:-1;;;2571:67:0;;;;;;;:::i;:::-;;;;;;;;;6802:15:::1;:23:::0;;;::::1;;-1:-1:-1::0;;;6802:23:0::1;-1:-1:-1::0;;;;6802:23:0;;::::1;::::0;;;::::1;::::0;;6730:103::o;11950:196::-;12019:14;;-1:-1:-1;;;;;12019:14:0;250:10;-1:-1:-1;;;;;12003:30:0;;11995:39;;;;;;12074:21;12106:32;12074:21;12106:12;:32::i;:::-;11984:162;11950:196::o;5768:138::-;-1:-1:-1;;;;;5881:16:0;;5834:7;5881:16;;;:7;:16;;;;;;5861:37;;:19;:37::i;2666:148::-;2579:6;;-1:-1:-1;;;;;2579:6:0;250:10;2579:22;2571:67;;;;-1:-1:-1;;;2571:67:0;;;;;;;:::i;:::-;2773:1:::1;2757:6:::0;;2736:40:::1;::::0;-1:-1:-1;;;;;2757:6:0;;::::1;::::0;2736:40:::1;::::0;2773:1;;2736:40:::1;2804:1;2787:19:::0;;-1:-1:-1;;;;;;2787:19:0::1;::::0;;2666:148::o;9458:118::-;2579:6;;-1:-1:-1;;;;;2579:6:0;250:10;2579:22;2571:67;;;;-1:-1:-1;;;2571:67:0;;;;;;;:::i;:::-;4081:15:::1;9511:12;:22:::0;;;9544:14:::1;:24:::0;9458:118::o;9319:131::-;2579:6;;-1:-1:-1;;;;;2579:6:0;250:10;2579:22;2571:67;;;;-1:-1:-1;;;2571:67:0;;;;;;;:::i;:::-;9401:12:::1;;9394:6;:19;9386:28;;;::::0;::::1;;9423:12;:19:::0;9319:131::o;5914:167::-;5992:4;6009:42;250:10;6033:9;6044:6;6009:9;:42::i;11748:194::-;11814:14;;-1:-1:-1;;;;;11814:14:0;250:10;-1:-1:-1;;;;;11798:30:0;;11790:39;;;;;;11840:23;11866:24;11884:4;11866:9;:24::i;:::-;11840:50;;11901:33;11918:15;11901:16;:33::i;9688:820::-;2579:6;;-1:-1:-1;;;;;2579:6:0;250:10;2579:22;2571:67;;;;-1:-1:-1;;;2571:67:0;;;;;;;:::i;:::-;9746:16:::1;::::0;-1:-1:-1;;;9746:16:0;::::1;;;9743:549;;9902:15;:34:::0;;-1:-1:-1;;;;;;9902:34:0::1;9844:42;9902:34:::0;;::::1;::::0;;;9951:58:::1;9968:4;9844:42:::0;4081:15:::1;9951:8;:58::i;:::-;10058:16;-1:-1:-1::0;;;;;10058:24:0::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10040:56:0::1;;10105:4;10112:16;-1:-1:-1::0;;;;;10112:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10040:96;::::0;-1:-1:-1;;;;;;10040:96:0::1;::::0;;;;;;-1:-1:-1;;;;;5747:15:1;;;10040:96:0::1;::::0;::::1;5729:34:1::0;5799:15;;5779:18;;;5772:43;5664:18;;10040:96:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10024:13;:112:::0;;-1:-1:-1;;;;;;10024:112:0::1;-1:-1:-1::0;;;;;10024:112:0;;::::1;;::::0;;10151:15:::1;::::0;::::1;:31;10190:21;10221:4;10227:24;10221:4:::0;10227:9:::1;:24::i;:::-;10252:1;10254::::0;10256:7:::1;2490::::0;2517:6;-1:-1:-1;;;;;2517:6:0;;2452:79;10256:7:::1;10151:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10151:129:0;;;-1:-1:-1;;;;;6185:15:1;;;10151:129:0::1;::::0;::::1;6167:34:1::0;6217:18;;;6210:34;;;;6260:18;;;6253:34;;;;6303:18;;;6296:34;6367:15;;;6346:19;;;6339:44;10264:15:0::1;6399:19:1::0;;;6392:35;6101:19;;10151:129:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;9772:520;9743:549;10302:16;:23:::0;;-1:-1:-1;;;;10400:18:0;;-1:-1:-1;;;10400:18:0;;;;10467:15:::1;::::0;10429:71:::1;::::0;-1:-1:-1;;;10429:71:0;;-1:-1:-1;;;;;10467:15:0;;::::1;10429:71;::::0;::::1;6923:51:1::0;-1:-1:-1;;6990:18:1;;;6983:34;10436:13:0;;;10429:29:::1;::::0;6896:18:1;;10429:71:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;10516:163::-:0;2579:6;;-1:-1:-1;;;;;2579:6:0;250:10;2579:22;2571:67;;;;-1:-1:-1;;;2571:67:0;;;;;;;:::i;:::-;10589:6:::1;10584:88;10605:5;:12;10601:1;:16;10584:88;;;10656:4;10639;:14;10644:5;10650:1;10644:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10639:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10639:14:0;:21;;-1:-1:-1;;10639:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10619:3;::::1;::::0;::::1;:::i;:::-;;;;10584:88;;;;10516:163:::0;:::o;1505:246::-;1563:7;1587:6;1583:47;;-1:-1:-1;1617:1:0;1610:8;;1583:47;1640:9;1652:5;1656:1;1652;:5;:::i;:::-;1640:17;-1:-1:-1;1685:1:0;1676:5;1680:1;1640:17;1676:5;:::i;:::-;:10;1668:56;;;;-1:-1:-1;;;1668:56:0;;8279:2:1;1668:56:0;;;8261:21:1;8318:2;8298:18;;;8291:30;8357:34;8337:18;;;8330:62;-1:-1:-1;;;8408:18:1;;;8401:31;8449:19;;1668:56:0;8077:397:1;1668:56:0;1742:1;1505:246;-1:-1:-1;;;1505:246:0:o;1759:132::-;1817:7;1844:39;1848:1;1851;1844:39;;;;;;;;;;;;;;;;;:3;:39::i;7103:335::-;-1:-1:-1;;;;;7196:19:0;;7188:68;;;;-1:-1:-1;;;7188:68:0;;8681:2:1;7188:68:0;;;8663:21:1;8720:2;8700:18;;;8693:30;8759:34;8739:18;;;8732:62;-1:-1:-1;;;8810:18:1;;;8803:34;8854:19;;7188:68:0;8479:400:1;7188:68:0;-1:-1:-1;;;;;7275:21:0;;7267:68;;;;-1:-1:-1;;;7267:68:0;;9086:2:1;7267:68:0;;;9068:21:1;9125:2;9105:18;;;9098:30;9164:34;9144:18;;;9137:62;-1:-1:-1;;;9215:18:1;;;9208:32;9257:19;;7267:68:0;8884:398:1;7267:68:0;-1:-1:-1;;;;;7346:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7398:32;;1549:25:1;;;7398:32:0;;1522:18:1;7398:32:0;;;;;;;7103:335;;;:::o;7446:1374::-;-1:-1:-1;;;;;7534:18:0;;7526:68;;;;-1:-1:-1;;;7526:68:0;;9489:2:1;7526:68:0;;;9471:21:1;9528:2;9508:18;;;9501:30;9567:34;9547:18;;;9540:62;-1:-1:-1;;;9618:18:1;;;9611:35;9663:19;;7526:68:0;9287:401:1;7526:68:0;-1:-1:-1;;;;;7613:16:0;;7605:64;;;;-1:-1:-1;;;7605:64:0;;9895:2:1;7605:64:0;;;9877:21:1;9934:2;9914:18;;;9907:30;9973:34;9953:18;;;9946:62;-1:-1:-1;;;10024:18:1;;;10017:33;10067:19;;7605:64:0;9693:399:1;7605:64:0;7697:1;7688:6;:10;7680:64;;;;-1:-1:-1;;;7680:64:0;;10299:2:1;7680:64:0;;;10281:21:1;10338:2;10318:18;;;10311:30;10377:34;10357:18;;;10350:62;-1:-1:-1;;;10428:18:1;;;10421:39;10477:19;;7680:64:0;10097:405:1;7680:64:0;2490:7;2517:6;-1:-1:-1;;;;;7763:15:0;;;2517:6;;7763:15;;;;:32;;-1:-1:-1;2490:7:0;2517:6;-1:-1:-1;;;;;7782:13:0;;;2517:6;;7782:13;;7763:32;7759:1011;;;-1:-1:-1;;;;;7821:10:0;;;;;;:4;:10;;;;;;;;7820:11;:24;;;;-1:-1:-1;;;;;;7836:8:0;;;;;;:4;:8;;;;;;;;7835:9;7820:24;7812:33;;;;;;7872:1;7860:9;:13;7900:12;;7888:9;:24;7939:13;;-1:-1:-1;;;;;7931:21:0;;;7939:13;;7931:21;:55;;;;-1:-1:-1;7970:15:0;;-1:-1:-1;;;;;7956:30:0;;;7970:15;;7956:30;;7931:55;:83;;;;-1:-1:-1;;;;;;7992:22:0;;;;;;:18;:22;;;;;;;;7990:24;7931:83;:102;;;;-1:-1:-1;8018:15:0;;-1:-1:-1;;;8018:15:0;;;;7931:102;7927:332;;;8101:12;;8091:6;:22;;8083:60;;;;-1:-1:-1;;;8083:60:0;;10709:2:1;8083:60:0;;;10691:21:1;10748:2;10728:18;;;10721:30;10787:27;10767:18;;;10760:55;10832:18;;8083:60:0;10507:349:1;8083:60:0;8196:14;;8186:6;8170:13;8180:2;8170:9;:13::i;:::-;:22;;;;:::i;:::-;:40;;8162:79;;;;-1:-1:-1;;;8162:79:0;;11196:2:1;8162:79:0;;;11178:21:1;11235:2;11215:18;;;11208:30;11274:28;11254:18;;;11247:56;11320:18;;8162:79:0;10994:350:1;8162:79:0;8277:28;8308:24;8326:4;8308:9;:24::i;:::-;8352:6;;8277:55;;-1:-1:-1;;;;8352:6:0;;;;8351:7;:32;;;;-1:-1:-1;8370:13:0;;-1:-1:-1;;;;;8362:21:0;;;8370:13;;8362:21;;8351:32;:47;;;;-1:-1:-1;8387:11:0;;-1:-1:-1;;;8387:11:0;;;;8351:47;:73;;;;;8423:1;8402:20;:22;8351:73;8347:344;;;8445:38;8462:20;8445:16;:38::i;:::-;8531:21;8574:22;;8571:105;;8621:35;8634:21;8621:12;:35::i;:::-;8426:265;8347:344;7797:905;7759:1011;;;8731:1;8719:9;:13;;;8745:9;:13;7759:1011;8782:30;8797:4;8802:2;8805:6;8782:14;:30::i;:::-;7446:1374;;;:::o;1307:190::-;1393:7;1429:12;1421:6;;;;1413:29;;;;-1:-1:-1;;;1413:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1453:9:0;1465:5;1469:1;1465;:5;:::i;:::-;1453:17;1307:190;-1:-1:-1;;;;;1307:190:0:o;9584:96::-;9641:14;;:31;;-1:-1:-1;;;;;9641:14:0;;;;:31;;;;;9665:6;;9641:14;:31;:14;:31;9665:6;9641:14;:31;;;;;;;;;;;;;;;;;;;6841:254;6908:7;6947;;6936;:18;;6928:73;;;;-1:-1:-1;;;6928:73:0;;11681:2:1;6928:73:0;;;11663:21:1;11720:2;11700:18;;;11693:30;11759:34;11739:18;;;11732:62;-1:-1:-1;;;11810:18:1;;;11803:40;11860:19;;6928:73:0;11479:406:1;6928:73:0;7012:19;7035:10;:8;:10::i;:::-;7012:33;-1:-1:-1;7063:24:0;:7;7012:33;7063:11;:24::i;8828:483::-;4966:6;:13;;-1:-1:-1;;;;4966:13:0;-1:-1:-1;;;4966:13:0;;;8930:16:::1;::::0;;8944:1:::1;8930:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8930:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8930:16:0::1;8906:40;;8975:4;8957;8962:1;8957:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8957:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9001:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9001:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;8957:7;;9001:22;;;;;:15;:22;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8991:4;8996:1;8991:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8991:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9066:15:::1;::::0;9034:62:::1;::::0;9051:4:::1;::::0;9066:15:::1;9084:11:::0;9034:8:::1;:62::i;:::-;9107:15;::::0;:196:::1;::::0;-1:-1:-1;;;9107:196:0;;-1:-1:-1;;;;;9107:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9188:11;;9107:15:::1;::::0;9230:4;;9257::::1;::::0;9277:15:::1;::::0;9107:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5002:6:0;:14;;-1:-1:-1;;;;5002:14:0;;;-1:-1:-1;;;;8828:483:0:o;1899:189::-;1985:7;2020:12;2013:5;2005:28;;;;-1:-1:-1;;;2005:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2044:9:0;2056:5;2060:1;2056;:5;:::i;10687:146::-;10781:44;10799:6;10807:9;10818:6;10781:17;:44::i;13408:163::-;13449:7;13470:15;13487;13506:19;:17;:19::i;:::-;13469:56;;-1:-1:-1;13469:56:0;-1:-1:-1;13543:20:0;13469:56;;13543:11;:20::i;:::-;13536:27;;;;13408:163;:::o;10841:487::-;10940:15;10957:23;10982:12;10996:23;11021:12;11035:13;11052:19;11063:7;11052:10;:19::i;:::-;-1:-1:-1;;;;;11100:15:0;;;;;;:7;:15;;;;;;10939:132;;-1:-1:-1;10939:132:0;;-1:-1:-1;10939:132:0;;-1:-1:-1;10939:132:0;-1:-1:-1;10939:132:0;-1:-1:-1;10939:132:0;-1:-1:-1;11100:28:0;;10939:132;11100:19;:28::i;:::-;-1:-1:-1;;;;;11082:15:0;;;;;;;:7;:15;;;;;;:46;;;;11160:18;;;;;;;:39;;11183:15;11160:22;:39::i;:::-;-1:-1:-1;;;;;11139:18:0;;;;;;:7;:18;;;;;:60;11210:16;11220:5;11210:9;:16::i;:::-;11237:23;11249:4;11255;11237:11;:23::i;:::-;11293:9;-1:-1:-1;;;;;11276:44:0;11285:6;-1:-1:-1;;;;;11276:44:0;;11304:15;11276:44;;;;1549:25:1;;1537:2;1522:18;;1403:177;11276:44:0;;;;;;;;10928:400;;;;;;10841:487;;;:::o;13579:256::-;13676:7;;13629;;;;4081:15;13744:20;13676:7;4081:15;13744:11;:20::i;:::-;13734:7;:30;13730:61;;;-1:-1:-1;;13774:7:0;;;4081:15;;-1:-1:-1;13579:256:0;-1:-1:-1;13579:256:0:o;13730:61::-;13810:7;;13819;;-1:-1:-1;13579:256:0;-1:-1:-1;13579:256:0:o;12156:471::-;12215:7;12224;12233;12242;12251;12260;12281:23;12306:12;12320:13;12337:42;12349:7;12358:9;;12369;;12337:11;:42::i;:::-;12280:99;;;;;;12390:19;12413:10;:8;:10::i;:::-;12390:33;;12435:15;12452:23;12477:12;12493:46;12505:7;12514:4;12520:5;12527:11;12493;:46::i;:::-;12434:105;;-1:-1:-1;12434:105:0;-1:-1:-1;12434:105:0;-1:-1:-1;12590:15:0;;-1:-1:-1;12607:4:0;;-1:-1:-1;12613:5:0;;-1:-1:-1;;;;;12156:471:0;;;;;;;:::o;1163:136::-;1221:7;1248:43;1252:1;1255;1248:43;;;;;;;;;;;;;;;;;:3;:43::i;976:179::-;1034:7;;1066:5;1070:1;1066;:5;:::i;:::-;1054:17;;1095:1;1090;:6;;1082:46;;;;-1:-1:-1;;;1082:46:0;;13077:2:1;1082:46:0;;;13059:21:1;13116:2;13096:18;;;13089:30;13155:29;13135:18;;;13128:57;13202:18;;1082:46:0;12875:351:1;11336:212:0;11389:19;11412:10;:8;:10::i;:::-;11389:33;-1:-1:-1;11433:13:0;11449:22;:5;11389:33;11449:9;:22::i;:::-;11523:4;11507:22;;;;:7;:22;;;;;;11433:38;;-1:-1:-1;11507:33:0;;11433:38;11507:26;:33::i;:::-;11498:4;11482:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;11336:212:0:o;11556:147::-;11634:7;;:17;;11646:4;11634:11;:17::i;:::-;11624:7;:27;11675:10;;:20;;11690:4;11675:14;:20::i;:::-;11662:10;:33;-1:-1:-1;;11556:147:0:o;12635:351::-;12728:7;;;;12781:28;12805:3;12781:19;:7;12793:6;12781:11;:19::i;:::-;:23;;:28::i;:::-;12766:43;-1:-1:-1;12820:13:0;12836:29;12861:3;12836:20;:7;12848;12836:11;:20::i;:29::-;12820:45;-1:-1:-1;12876:23:0;12902:28;12820:45;12902:17;:7;12914:4;12902:11;:17::i;:::-;:21;;:28::i;:::-;12876:54;12966:4;;-1:-1:-1;12972:5:0;;-1:-1:-1;12635:351:0;;-1:-1:-1;;;;;12635:351:0:o;12994:409::-;13104:7;;;;13160:24;:7;13172:11;13160;:24::i;:::-;13142:42;-1:-1:-1;13195:12:0;13210:21;:4;13219:11;13210:8;:21::i;:::-;13195:36;-1:-1:-1;13242:13:0;13258:22;:5;13268:11;13258:9;:22::i;:::-;13242:38;-1:-1:-1;13291:23:0;13317:28;13242:38;13317:17;:7;13329:4;13317:11;:17::i;:28::-;13364:7;;;;-1:-1:-1;13390:4:0;;-1:-1:-1;12994:409:0;;-1:-1:-1;;;;;;;12994:409:0:o;14:597:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:131::-;-1:-1:-1;;;;;691:31:1;;681:42;;671:70;;737:1;734;727:12;752:134;820:20;;849:31;820:20;849:31;:::i;:::-;752:134;;;:::o;891:315::-;959:6;967;1020:2;1008:9;999:7;995:23;991:32;988:52;;;1036:1;1033;1026:12;988:52;1075:9;1062:23;1094:31;1119:5;1094:31;:::i;:::-;1144:5;1196:2;1181:18;;;;1168:32;;-1:-1:-1;;;891:315:1:o;1585:456::-;1662:6;1670;1678;1731:2;1719:9;1710:7;1706:23;1702:32;1699:52;;;1747:1;1744;1737:12;1699:52;1786:9;1773:23;1805:31;1830:5;1805:31;:::i;:::-;1855:5;-1:-1:-1;1912:2:1;1897:18;;1884:32;1925:33;1884:32;1925:33;:::i;:::-;1585:456;;1977:7;;-1:-1:-1;;;2031:2:1;2016:18;;;;2003:32;;1585:456::o;2235:118::-;2321:5;2314:13;2307:21;2300:5;2297:32;2287:60;;2343:1;2340;2333:12;2358:241;2414:6;2467:2;2455:9;2446:7;2442:23;2438:32;2435:52;;;2483:1;2480;2473:12;2435:52;2522:9;2509:23;2541:28;2563:5;2541:28;:::i;2604:247::-;2663:6;2716:2;2704:9;2695:7;2691:23;2687:32;2684:52;;;2732:1;2729;2722:12;2684:52;2771:9;2758:23;2790:31;2815:5;2790:31;:::i;2856:180::-;2915:6;2968:2;2956:9;2947:7;2943:23;2939:32;2936:52;;;2984:1;2981;2974:12;2936:52;-1:-1:-1;3007:23:1;;2856:180;-1:-1:-1;2856:180:1:o;3249:127::-;3310:10;3305:3;3301:20;3298:1;3291:31;3341:4;3338:1;3331:15;3365:4;3362:1;3355:15;3381:1121;3465:6;3496:2;3539;3527:9;3518:7;3514:23;3510:32;3507:52;;;3555:1;3552;3545:12;3507:52;3595:9;3582:23;3624:18;3665:2;3657:6;3654:14;3651:34;;;3681:1;3678;3671:12;3651:34;3719:6;3708:9;3704:22;3694:32;;3764:7;3757:4;3753:2;3749:13;3745:27;3735:55;;3786:1;3783;3776:12;3735:55;3822:2;3809:16;3844:2;3840;3837:10;3834:36;;;3850:18;;:::i;:::-;3896:2;3893:1;3889:10;3928:2;3922:9;3991:2;3987:7;3982:2;3978;3974:11;3970:25;3962:6;3958:38;4046:6;4034:10;4031:22;4026:2;4014:10;4011:18;4008:46;4005:72;;;4057:18;;:::i;:::-;4093:2;4086:22;4143:18;;;4177:15;;;;-1:-1:-1;4219:11:1;;;4215:20;;;4247:19;;;4244:39;;;4279:1;4276;4269:12;4244:39;4303:11;;;;4323:148;4339:6;4334:3;4331:15;4323:148;;;4405:23;4424:3;4405:23;:::i;:::-;4393:36;;4356:12;;;;4449;;;;4323:148;;;4490:6;3381:1121;-1:-1:-1;;;;;;;;3381:1121:1:o;4507:388::-;4575:6;4583;4636:2;4624:9;4615:7;4611:23;4607:32;4604:52;;;4652:1;4649;4642:12;4604:52;4691:9;4678:23;4710:31;4735:5;4710:31;:::i;:::-;4760:5;-1:-1:-1;4817:2:1;4802:18;;4789:32;4830:33;4789:32;4830:33;:::i;:::-;4882:7;4872:17;;;4507:388;;;;;:::o;4900:356::-;5102:2;5084:21;;;5121:18;;;5114:30;5180:34;5175:2;5160:18;;5153:62;5247:2;5232:18;;4900:356::o;5261:251::-;5331:6;5384:2;5372:9;5363:7;5359:23;5355:32;5352:52;;;5400:1;5397;5390:12;5352:52;5432:9;5426:16;5451:31;5476:5;5451:31;:::i;6438:306::-;6526:6;6534;6542;6595:2;6583:9;6574:7;6570:23;6566:32;6563:52;;;6611:1;6608;6601:12;6563:52;6640:9;6634:16;6624:26;;6690:2;6679:9;6675:18;6669:25;6659:35;;6734:2;6723:9;6719:18;6713:25;6703:35;;6438:306;;;;;:::o;7028:245::-;7095:6;7148:2;7136:9;7127:7;7123:23;7119:32;7116:52;;;7164:1;7161;7154:12;7116:52;7196:9;7190:16;7215:28;7237:5;7215:28;:::i;7278:127::-;7339:10;7334:3;7330:20;7327:1;7320:31;7370:4;7367:1;7360:15;7394:4;7391:1;7384:15;7410:127;7471:10;7466:3;7462:20;7459:1;7452:31;7502:4;7499:1;7492:15;7526:4;7523:1;7516:15;7542:135;7581:3;-1:-1:-1;;7602:17:1;;7599:43;;;7622:18;;:::i;:::-;-1:-1:-1;7669:1:1;7658:13;;7542:135::o;7682:168::-;7722:7;7788:1;7784;7780:6;7776:14;7773:1;7770:21;7765:1;7758:9;7751:17;7747:45;7744:71;;;7795:18;;:::i;:::-;-1:-1:-1;7835:9:1;;7682:168::o;7855:217::-;7895:1;7921;7911:132;;7965:10;7960:3;7956:20;7953:1;7946:31;8000:4;7997:1;7990:15;8028:4;8025:1;8018:15;7911:132;-1:-1:-1;8057:9:1;;7855:217::o;10861:128::-;10901:3;10932:1;10928:6;10925:1;10922:13;10919:39;;;10938:18;;:::i;:::-;-1:-1:-1;10974:9:1;;10861:128::o;11349:125::-;11389:4;11417:1;11414;11411:8;11408:34;;;11422:18;;:::i;:::-;-1:-1:-1;11459:9:1;;11349:125::o;11890:980::-;12152:4;12200:3;12189:9;12185:19;12231:6;12220:9;12213:25;12257:2;12295:6;12290:2;12279:9;12275:18;12268:34;12338:3;12333:2;12322:9;12318:18;12311:31;12362:6;12397;12391:13;12428:6;12420;12413:22;12466:3;12455:9;12451:19;12444:26;;12505:2;12497:6;12493:15;12479:29;;12526:1;12536:195;12550:6;12547:1;12544:13;12536:195;;;12615:13;;-1:-1:-1;;;;;12611:39:1;12599:52;;12706:15;;;;12671:12;;;;12647:1;12565:9;12536:195;;;-1:-1:-1;;;;;;;12787:32:1;;;;12782:2;12767:18;;12760:60;-1:-1:-1;;;12851:3:1;12836:19;12829:35;12748:3;11890:980;-1:-1:-1;;;11890:980:1:o
Swarm Source
ipfs://184d65be3fc82f8724cc072dbd5e2a148eea82f2254bcd72ba7cda3ab8493e48
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.