More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 28 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Change Tax | 21773302 | 14 days ago | IN | 0 ETH | 0.00006711 | ||||
Approve | 21773301 | 14 days ago | IN | 0 ETH | 0.00022499 | ||||
Change Tax | 21773300 | 14 days ago | IN | 0 ETH | 0.00006536 | ||||
Approve | 21773300 | 14 days ago | IN | 0 ETH | 0.0002222 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Approve | 21773298 | 14 days ago | IN | 0 ETH | 0.000223 | ||||
Open Trading | 21773296 | 14 days ago | IN | 0 ETH | 0.00005211 | ||||
Change Wallet Li... | 21773294 | 14 days ago | IN | 0 ETH | 0.0000561 | ||||
Approve | 21773288 | 14 days ago | IN | 0 ETH | 0.0003132 | ||||
Transfer Ownersh... | 21773276 | 14 days ago | IN | 0 ETH | 0.00004441 | ||||
Approve | 21773270 | 14 days ago | IN | 0 ETH | 0.00023315 | ||||
Approve | 21773270 | 14 days ago | IN | 0 ETH | 0.00023315 | ||||
Approve | 21773270 | 14 days ago | IN | 0 ETH | 0.00023315 | ||||
Approve | 21773270 | 14 days ago | IN | 0 ETH | 0.00023315 | ||||
Approve | 21773270 | 14 days ago | IN | 0 ETH | 0.00023315 | ||||
Approve | 21773270 | 14 days ago | IN | 0 ETH | 0.00023315 | ||||
Approve | 21773270 | 14 days ago | IN | 0 ETH | 0.00023315 |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Privix
Compiler Version
v0.8.26+commit.8a97fa7a
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2025-02-04 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.26; 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; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } 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 Privix is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) public _isExcludedFromFee; address payable public _DevWallet = payable(0x38CDf853F96ec463fF8B1e6D9b3b8c6694FEFacB); // tax wallet uint8 private constant _decimals = 18; uint256 private constant _tTotal = 10000000 * 10**_decimals; string private constant _name = unicode"Privix"; string private constant _symbol = unicode"PRIVIX"; uint256 public _taxSwapThreshold= 50000 * 10**_decimals; uint256 public _BuyTax = 25; uint256 public _SellTax = 25; uint256 public MaxWallet = 25000 * 10 ** decimals(); IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private inSwap = false; bool private swapEnabled = true; bool public tradeActivated = false; modifier lockTheSwap { inSwap = true; _; inSwap = false; } event TransactionRevert(address indexed taxWallet, uint256 amount); constructor () { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); // mainnet router address // IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0xD99D1c33F9fC3444f8101754aBC46c52416550D1); // test router address // Create a uniswap pair for this new token uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); // set the rest of the contract variables uniswapV2Router = _uniswapV2Router; _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_DevWallet] = true; 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 (!_isExcludedFromFee[from] && !_isExcludedFromFee[to]) { require(tradeActivated, "Trading need to be activated"); if(to != uniswapV2Pair){ require(balanceOf(to) + amount <= MaxWallet, "Cannot exceed Auto AI max wallet amount"); } if(_BuyTax > 0) { if (from == uniswapV2Pair && to != address(uniswapV2Router)) { taxAmount = amount.mul(_BuyTax).div(100); } } if(_SellTax > 0) { if(to == uniswapV2Pair){ taxAmount = amount.mul(_SellTax).div(100); } } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } if(taxAmount>0){ _balances[address(this)]=_balances[address(this)].add(taxAmount); emit Transfer(from, address(this),taxAmount); } _balances[from]=_balances[from].sub(amount); _balances[to]=_balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { if(tokenAmount==0){return;} 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 sendETHToFee(uint256 amount) private { (bool callSuccess, ) = payable(_DevWallet).call{value: amount}(""); if (!callSuccess) { // Log the failure but do not revert the transaction emit TransactionRevert(_DevWallet, amount); } } receive() external payable {} function updateTaxSwapThreshold(uint256 _taxLimit) public onlyOwner{ require(_taxLimit > 0, "Threshold cannot be 0"); _taxSwapThreshold = _taxLimit; } function excludeFromTaxes(address account) public onlyOwner { _isExcludedFromFee[account] = true; } function includeInTaxes(address account) public onlyOwner { _isExcludedFromFee[account] = false; } function changeTax(uint256 buyFee, uint256 sellFee) public onlyOwner { _BuyTax = buyFee; _SellTax = sellFee; } function manualSwap() external { require(_msgSender()==_DevWallet); uint256 tokenBalance=balanceOf(address(this)); if(tokenBalance>0){ swapTokensForEth(tokenBalance); } uint256 ethBalance=address(this).balance; if(ethBalance>0){ sendETHToFee(ethBalance); } } function changeWalletLimit(uint256 _maxLimit) public onlyOwner{ require(_maxLimit > totalSupply().div(200),"Limit cannot be too low"); MaxWallet = _maxLimit; } function openTrading() public onlyOwner { require(tradeActivated != true, "Activated already"); tradeActivated = true; } }
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":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":"taxWallet","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TransactionRevert","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":"MaxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_BuyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_DevWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_SellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","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":[{"internalType":"uint256","name":"buyFee","type":"uint256"},{"internalType":"uint256","name":"sellFee","type":"uint256"}],"name":"changeTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxLimit","type":"uint256"}],"name":"changeWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeFromTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeInTaxes","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":"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":[],"name":"tradeActivated","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_taxLimit","type":"uint256"}],"name":"updateTaxSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600480546001600160a01b0319167338cdf853f96ec463ff8b1e6d9b3b8c6694fefacb1790556100366012600a610459565b6100429061c35061046e565b6005556019600681905560075561005b6012600a610459565b610067906161a861046e565b600855600a805462ffffff60a01b1916600160a81b17905534801561008a575f80fd5b5061009433610311565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156100e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061010c9190610485565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610157573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061017b9190610485565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156101c5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101e99190610485565b600a80546001600160a01b03199081166001600160a01b03938416178255600980549091169284169290921790915561022490601290610459565b610231906298968061046e565b335f9081526001602081905260408220929092556003906102595f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556004549091168352912080549092161790556102b63390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6102ed6012600a610459565b6102fa906298968061046e565b60405190815260200160405180910390a3506104ab565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156103af5780850481111561039357610393610360565b60018416156103a157908102905b60019390931c928002610378565b935093915050565b5f826103c557506001610453565b816103d157505f610453565b81600181146103e757600281146103f15761040d565b6001915050610453565b60ff84111561040257610402610360565b50506001821b610453565b5060208310610133831016604e8410600b8410161715610430575081810a610453565b61043c5f198484610374565b805f190482111561044f5761044f610360565b0290505b92915050565b5f61046760ff8416836103b7565b9392505050565b808202811582820484141761045357610453610360565b5f60208284031215610495575f80fd5b81516001600160a01b0381168114610467575f80fd5b611613806104b85f395ff3fe60806040526004361061017e575f3560e01c8063768dc710116100cd57806395d89b4111610087578063bf474bed11610062578063bf474bed1461047a578063c9567bf91461048f578063dd62ed3e146104a3578063f2fde38b146104e7575f80fd5b806395d89b411461040e578063983e91581461043c578063a9059cbb1461045b575f80fd5b8063768dc710146103515780637a88f5dc1461037f5780637db1342c1461039f5780638da5cb5b146103be578063901849d6146103da5780639036ed4d146103ef575f80fd5b806323b872dd116101385780634a4a9a68116101135780634a4a9a68146102e057806351bc3c85146102f557806370a0823114610309578063715018a61461033d575f80fd5b806323b872dd14610291578063313ce567146102b057806343b8fe04146102cb575f80fd5b8063034832bd1461018957806306fdde03146101aa578063095ea7b3146101ea578063131e00b71461021957806315436a531461023857806318160ddd1461026f575f80fd5b3661018557005b5f80fd5b348015610194575f80fd5b506101a86101a336600461127b565b610506565b005b3480156101b5575f80fd5b506040805180820190915260068152650a0e4d2ecd2f60d31b60208201525b6040516101e19190611292565b60405180910390f35b3480156101f5575f80fd5b506102096102043660046112db565b61055f565b60405190151581526020016101e1565b348015610224575f80fd5b506101a8610233366004611305565b610575565b348015610243575f80fd5b50600454610257906001600160a01b031681565b6040516001600160a01b0390911681526020016101e1565b34801561027a575f80fd5b506102836105a0565b6040519081526020016101e1565b34801561029c575f80fd5b506102096102ab366004611320565b6105bf565b3480156102bb575f80fd5b50604051601281526020016101e1565b3480156102d6575f80fd5b5061028360075481565b3480156102eb575f80fd5b5061028360085481565b348015610300575f80fd5b506101a8610626565b348015610314575f80fd5b50610283610323366004611305565b6001600160a01b03165f9081526001602052604090205490565b348015610348575f80fd5b506101a8610677565b34801561035c575f80fd5b5061020961036b366004611305565b60036020525f908152604090205460ff1681565b34801561038a575f80fd5b50600a5461020990600160b01b900460ff1681565b3480156103aa575f80fd5b506101a86103b936600461127b565b61068a565b3480156103c9575f80fd5b505f546001600160a01b0316610257565b3480156103e5575f80fd5b5061028360065481565b3480156103fa575f80fd5b506101a861040936600461135e565b6106f8565b348015610419575f80fd5b506040805180820190915260068152650a0a492ac92b60d31b60208201526101d4565b348015610447575f80fd5b506101a8610456366004611305565b61070b565b348015610466575f80fd5b506102096104753660046112db565b610733565b348015610485575f80fd5b5061028360055481565b34801561049a575f80fd5b506101a861073f565b3480156104ae575f80fd5b506102836104bd36600461137e565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156104f2575f80fd5b506101a8610501366004611305565b6107ae565b61050e610827565b5f811161055a5760405162461bcd60e51b815260206004820152601560248201527405468726573686f6c642063616e6e6f74206265203605c1b60448201526064015b60405180910390fd5b600555565b5f61056b338484610880565b5060015b92915050565b61057d610827565b6001600160a01b03165f908152600360205260409020805460ff19166001179055565b5f6105ad6012600a6114ac565b6105ba90629896806114ba565b905090565b5f6105cb8484846109a3565b61061c8433610617856040518060600160405280602881526020016115b6602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610e4e565b610880565b5060019392505050565b6004546001600160a01b0316336001600160a01b031614610645575f80fd5b305f9081526001602052604090205480156106635761066381610e86565b4780156106735761067381610ffd565b5050565b61067f610827565b6106885f61109b565b565b610692610827565b6106a560c861069f6105a0565b906110ea565b81116106f35760405162461bcd60e51b815260206004820152601760248201527f4c696d69742063616e6e6f7420626520746f6f206c6f770000000000000000006044820152606401610551565b600855565b610700610827565b600691909155600755565b610713610827565b6001600160a01b03165f908152600360205260409020805460ff19169055565b5f61056b3384846109a3565b610747610827565b600a54600160b01b900460ff1615156001036107995760405162461bcd60e51b815260206004820152601160248201527041637469766174656420616c726561647960781b6044820152606401610551565b600a805460ff60b01b1916600160b01b179055565b6107b6610827565b6001600160a01b03811661081b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610551565b6108248161109b565b50565b5f546001600160a01b031633146106885760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610551565b6001600160a01b0383166108e25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610551565b6001600160a01b0382166109435760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610551565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a075760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610551565b6001600160a01b038216610a695760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610551565b5f8111610aca5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610551565b6001600160a01b0383165f9081526003602052604081205460ff16158015610b0a57506001600160a01b0383165f9081526003602052604090205460ff16155b15610d1157600a54600160b01b900460ff16610b685760405162461bcd60e51b815260206004820152601c60248201527f54726164696e67206e65656420746f20626520616374697661746564000000006044820152606401610551565b600a546001600160a01b03848116911614610c075760085482610b9f856001600160a01b03165f9081526001602052604090205490565b610ba991906114d1565b1115610c075760405162461bcd60e51b815260206004820152602760248201527f43616e6e6f7420657863656564204175746f204149206d61782077616c6c657460448201526608185b5bdd5b9d60ca1b6064820152608401610551565b60065415610c5c57600a546001600160a01b038581169116148015610c3a57506009546001600160a01b03848116911614155b15610c5c57610c59606461069f6006548561113290919063ffffffff16565b90505b60075415610c9757600a546001600160a01b0390811690841603610c9757610c94606461069f6007548561113290919063ffffffff16565b90505b305f90815260016020526040902054600a54600160a01b900460ff16158015610ccd5750600a546001600160a01b038581169116145b8015610ce25750600a54600160a81b900460ff165b8015610cef575060055481115b15610d0f57610cfd81610e86565b478015610d0d57610d0d47610ffd565b505b505b8015610d8957305f90815260016020526040902054610d3090826111b0565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d809085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610dab908361120e565b6001600160a01b0385165f90815260016020526040902055610dee610dd0838361120e565b6001600160a01b0385165f90815260016020526040902054906111b0565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610e37858561120e565b60405190815260200160405180910390a350505050565b5f8184841115610e715760405162461bcd60e51b81526004016105519190611292565b505f610e7d84866114e4565b95945050505050565b600a805460ff60a01b1916600160a01b1790558015610fed576040805160028082526060820183525f9260208301908036833701905050905030815f81518110610ed257610ed26114f7565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f4d919061150b565b81600181518110610f6057610f606114f7565b6001600160a01b039283166020918202929092010152600954610f869130911684610880565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac94790610fbe9085905f90869030904290600401611526565b5f604051808303815f87803b158015610fd5575f80fd5b505af1158015610fe7573d5f803e3d5ffd5b50505050505b50600a805460ff60a01b19169055565b6004546040515f916001600160a01b03169083908381818185875af1925050503d805f8114611047576040519150601f19603f3d011682016040523d82523d5f602084013e61104c565b606091505b5050905080610673576004546040518381526001600160a01b03909116907faa3a2b0832056fde3df798858c2c8612cf899b18536f53f5c1a7ff0e3bfa8a179060200160405180910390a25050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f61112b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061124f565b9392505050565b5f825f0361114157505f61056f565b5f61114c83856114ba565b9050826111598583611596565b1461112b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610551565b5f806111bc83856114d1565b90508381101561112b5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610551565b5f61112b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e4e565b5f818361126f5760405162461bcd60e51b81526004016105519190611292565b505f610e7d8486611596565b5f6020828403121561128b575f80fd5b5035919050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610824575f80fd5b5f80604083850312156112ec575f80fd5b82356112f7816112c7565b946020939093013593505050565b5f60208284031215611315575f80fd5b813561112b816112c7565b5f805f60608486031215611332575f80fd5b833561133d816112c7565b9250602084013561134d816112c7565b929592945050506040919091013590565b5f806040838503121561136f575f80fd5b50508035926020909101359150565b5f806040838503121561138f575f80fd5b823561139a816112c7565b915060208301356113aa816112c7565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b6001841115611404578085048111156113e8576113e86113b5565b60018416156113f657908102905b60019390931c9280026113cd565b935093915050565b5f8261141a5750600161056f565b8161142657505f61056f565b816001811461143c576002811461144657611462565b600191505061056f565b60ff841115611457576114576113b5565b50506001821b61056f565b5060208310610133831016604e8410600b8410161715611485575081810a61056f565b6114915f1984846113c9565b805f19048211156114a4576114a46113b5565b029392505050565b5f61112b60ff84168361140c565b808202811582820484141761056f5761056f6113b5565b8082018082111561056f5761056f6113b5565b8181038181111561056f5761056f6113b5565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561151b575f80fd5b815161112b816112c7565b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156115765783516001600160a01b031683526020938401939092019160010161154f565b50506001600160a01b039590951660608401525050608001529392505050565b5f826115b057634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202f53632ed8f776ddbab951b507286aab7b77e8cb0053857d65a38f6adcd818a364736f6c634300081a0033
Deployed Bytecode
0x60806040526004361061017e575f3560e01c8063768dc710116100cd57806395d89b4111610087578063bf474bed11610062578063bf474bed1461047a578063c9567bf91461048f578063dd62ed3e146104a3578063f2fde38b146104e7575f80fd5b806395d89b411461040e578063983e91581461043c578063a9059cbb1461045b575f80fd5b8063768dc710146103515780637a88f5dc1461037f5780637db1342c1461039f5780638da5cb5b146103be578063901849d6146103da5780639036ed4d146103ef575f80fd5b806323b872dd116101385780634a4a9a68116101135780634a4a9a68146102e057806351bc3c85146102f557806370a0823114610309578063715018a61461033d575f80fd5b806323b872dd14610291578063313ce567146102b057806343b8fe04146102cb575f80fd5b8063034832bd1461018957806306fdde03146101aa578063095ea7b3146101ea578063131e00b71461021957806315436a531461023857806318160ddd1461026f575f80fd5b3661018557005b5f80fd5b348015610194575f80fd5b506101a86101a336600461127b565b610506565b005b3480156101b5575f80fd5b506040805180820190915260068152650a0e4d2ecd2f60d31b60208201525b6040516101e19190611292565b60405180910390f35b3480156101f5575f80fd5b506102096102043660046112db565b61055f565b60405190151581526020016101e1565b348015610224575f80fd5b506101a8610233366004611305565b610575565b348015610243575f80fd5b50600454610257906001600160a01b031681565b6040516001600160a01b0390911681526020016101e1565b34801561027a575f80fd5b506102836105a0565b6040519081526020016101e1565b34801561029c575f80fd5b506102096102ab366004611320565b6105bf565b3480156102bb575f80fd5b50604051601281526020016101e1565b3480156102d6575f80fd5b5061028360075481565b3480156102eb575f80fd5b5061028360085481565b348015610300575f80fd5b506101a8610626565b348015610314575f80fd5b50610283610323366004611305565b6001600160a01b03165f9081526001602052604090205490565b348015610348575f80fd5b506101a8610677565b34801561035c575f80fd5b5061020961036b366004611305565b60036020525f908152604090205460ff1681565b34801561038a575f80fd5b50600a5461020990600160b01b900460ff1681565b3480156103aa575f80fd5b506101a86103b936600461127b565b61068a565b3480156103c9575f80fd5b505f546001600160a01b0316610257565b3480156103e5575f80fd5b5061028360065481565b3480156103fa575f80fd5b506101a861040936600461135e565b6106f8565b348015610419575f80fd5b506040805180820190915260068152650a0a492ac92b60d31b60208201526101d4565b348015610447575f80fd5b506101a8610456366004611305565b61070b565b348015610466575f80fd5b506102096104753660046112db565b610733565b348015610485575f80fd5b5061028360055481565b34801561049a575f80fd5b506101a861073f565b3480156104ae575f80fd5b506102836104bd36600461137e565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156104f2575f80fd5b506101a8610501366004611305565b6107ae565b61050e610827565b5f811161055a5760405162461bcd60e51b815260206004820152601560248201527405468726573686f6c642063616e6e6f74206265203605c1b60448201526064015b60405180910390fd5b600555565b5f61056b338484610880565b5060015b92915050565b61057d610827565b6001600160a01b03165f908152600360205260409020805460ff19166001179055565b5f6105ad6012600a6114ac565b6105ba90629896806114ba565b905090565b5f6105cb8484846109a3565b61061c8433610617856040518060600160405280602881526020016115b6602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610e4e565b610880565b5060019392505050565b6004546001600160a01b0316336001600160a01b031614610645575f80fd5b305f9081526001602052604090205480156106635761066381610e86565b4780156106735761067381610ffd565b5050565b61067f610827565b6106885f61109b565b565b610692610827565b6106a560c861069f6105a0565b906110ea565b81116106f35760405162461bcd60e51b815260206004820152601760248201527f4c696d69742063616e6e6f7420626520746f6f206c6f770000000000000000006044820152606401610551565b600855565b610700610827565b600691909155600755565b610713610827565b6001600160a01b03165f908152600360205260409020805460ff19169055565b5f61056b3384846109a3565b610747610827565b600a54600160b01b900460ff1615156001036107995760405162461bcd60e51b815260206004820152601160248201527041637469766174656420616c726561647960781b6044820152606401610551565b600a805460ff60b01b1916600160b01b179055565b6107b6610827565b6001600160a01b03811661081b5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610551565b6108248161109b565b50565b5f546001600160a01b031633146106885760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610551565b6001600160a01b0383166108e25760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610551565b6001600160a01b0382166109435760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610551565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610a075760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610551565b6001600160a01b038216610a695760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610551565b5f8111610aca5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610551565b6001600160a01b0383165f9081526003602052604081205460ff16158015610b0a57506001600160a01b0383165f9081526003602052604090205460ff16155b15610d1157600a54600160b01b900460ff16610b685760405162461bcd60e51b815260206004820152601c60248201527f54726164696e67206e65656420746f20626520616374697661746564000000006044820152606401610551565b600a546001600160a01b03848116911614610c075760085482610b9f856001600160a01b03165f9081526001602052604090205490565b610ba991906114d1565b1115610c075760405162461bcd60e51b815260206004820152602760248201527f43616e6e6f7420657863656564204175746f204149206d61782077616c6c657460448201526608185b5bdd5b9d60ca1b6064820152608401610551565b60065415610c5c57600a546001600160a01b038581169116148015610c3a57506009546001600160a01b03848116911614155b15610c5c57610c59606461069f6006548561113290919063ffffffff16565b90505b60075415610c9757600a546001600160a01b0390811690841603610c9757610c94606461069f6007548561113290919063ffffffff16565b90505b305f90815260016020526040902054600a54600160a01b900460ff16158015610ccd5750600a546001600160a01b038581169116145b8015610ce25750600a54600160a81b900460ff165b8015610cef575060055481115b15610d0f57610cfd81610e86565b478015610d0d57610d0d47610ffd565b505b505b8015610d8957305f90815260016020526040902054610d3090826111b0565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d809085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610dab908361120e565b6001600160a01b0385165f90815260016020526040902055610dee610dd0838361120e565b6001600160a01b0385165f90815260016020526040902054906111b0565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610e37858561120e565b60405190815260200160405180910390a350505050565b5f8184841115610e715760405162461bcd60e51b81526004016105519190611292565b505f610e7d84866114e4565b95945050505050565b600a805460ff60a01b1916600160a01b1790558015610fed576040805160028082526060820183525f9260208301908036833701905050905030815f81518110610ed257610ed26114f7565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610f29573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f4d919061150b565b81600181518110610f6057610f606114f7565b6001600160a01b039283166020918202929092010152600954610f869130911684610880565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac94790610fbe9085905f90869030904290600401611526565b5f604051808303815f87803b158015610fd5575f80fd5b505af1158015610fe7573d5f803e3d5ffd5b50505050505b50600a805460ff60a01b19169055565b6004546040515f916001600160a01b03169083908381818185875af1925050503d805f8114611047576040519150601f19603f3d011682016040523d82523d5f602084013e61104c565b606091505b5050905080610673576004546040518381526001600160a01b03909116907faa3a2b0832056fde3df798858c2c8612cf899b18536f53f5c1a7ff0e3bfa8a179060200160405180910390a25050565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f61112b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061124f565b9392505050565b5f825f0361114157505f61056f565b5f61114c83856114ba565b9050826111598583611596565b1461112b5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610551565b5f806111bc83856114d1565b90508381101561112b5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610551565b5f61112b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e4e565b5f818361126f5760405162461bcd60e51b81526004016105519190611292565b505f610e7d8486611596565b5f6020828403121561128b575f80fd5b5035919050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114610824575f80fd5b5f80604083850312156112ec575f80fd5b82356112f7816112c7565b946020939093013593505050565b5f60208284031215611315575f80fd5b813561112b816112c7565b5f805f60608486031215611332575f80fd5b833561133d816112c7565b9250602084013561134d816112c7565b929592945050506040919091013590565b5f806040838503121561136f575f80fd5b50508035926020909101359150565b5f806040838503121561138f575f80fd5b823561139a816112c7565b915060208301356113aa816112c7565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b6001815b6001841115611404578085048111156113e8576113e86113b5565b60018416156113f657908102905b60019390931c9280026113cd565b935093915050565b5f8261141a5750600161056f565b8161142657505f61056f565b816001811461143c576002811461144657611462565b600191505061056f565b60ff841115611457576114576113b5565b50506001821b61056f565b5060208310610133831016604e8410600b8410161715611485575081810a61056f565b6114915f1984846113c9565b805f19048211156114a4576114a46113b5565b029392505050565b5f61112b60ff84168361140c565b808202811582820484141761056f5761056f6113b5565b8082018082111561056f5761056f6113b5565b8181038181111561056f5761056f6113b5565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561151b575f80fd5b815161112b816112c7565b5f60a0820187835286602084015260a0604084015280865180835260c0850191506020880192505f5b818110156115765783516001600160a01b031683526020938401939092019160010161154f565b50506001600160a01b039590951660608401525050608001529392505050565b5f826115b057634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212202f53632ed8f776ddbab951b507286aab7b77e8cb0053857d65a38f6adcd818a364736f6c634300081a0033
Deployed Bytecode Sourcemap
4810:7758:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11303:173;;;;;;;;;;-1:-1:-1;11303:173:0;;;;;:::i;:::-;;:::i;:::-;;6841:83;;;;;;;;;;-1:-1:-1;6911:5:0;;;;;;;;;;;;-1:-1:-1;;;6911:5:0;;;;6841:83;;;;;;;:::i;:::-;;;;;;;;7674:161;;;;;;;;;;-1:-1:-1;7674:161:0;;;;;:::i;:::-;;:::i;:::-;;;1341:14:1;;1334:22;1316:41;;1304:2;1289:18;7674:161:0;1176:187:1;11484:113:0;;;;;;;;;;-1:-1:-1;11484:113:0;;;;;:::i;:::-;;:::i;5083:87::-;;;;;;;;;;-1:-1:-1;5083:87:0;;;;-1:-1:-1;;;;;5083:87:0;;;;;;-1:-1:-1;;;;;1800:32:1;;;1782:51;;1770:2;1755:18;5083:87:0;1620:219:1;7118:95:0;;;;;;;;;;;;;:::i;:::-;;;1990:25:1;;;1978:2;1963:18;7118:95:0;1844:177:1;7843:313:0;;;;;;;;;;-1:-1:-1;7843:313:0;;;;;:::i;:::-;;:::i;7027:83::-;;;;;;;;;;-1:-1:-1;7027:83:0;;5231:2;2681:36:1;;2669:2;2654:18;7027:83:0;2539:184:1;5514:28:0;;;;;;;;;;;;;;;;5549:51;;;;;;;;;;;;;;;;11866:348;;;;;;;;;;;;;:::i;7221:119::-;;;;;;;;;;-1:-1:-1;7221:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7314:18:0;7287:7;7314:18;;;:9;:18;;;;;;;7221:119;3231:103;;;;;;;;;;;;;:::i;5025:51::-;;;;;;;;;;-1:-1:-1;5025:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5770:34;;;;;;;;;;-1:-1:-1;5770:34:0;;;;-1:-1:-1;;;5770:34:0;;;;;;12222:182;;;;;;;;;;-1:-1:-1;12222:182:0;;;;;:::i;:::-;;:::i;2590:87::-;;;;;;;;;;-1:-1:-1;2636:7:0;2663:6;-1:-1:-1;;;;;2663:6:0;2590:87;;5480:27;;;;;;;;;;;;;;;;11725:133;;;;;;;;;;-1:-1:-1;11725:133:0;;;;;:::i;:::-;;:::i;6932:87::-;;;;;;;;;;-1:-1:-1;7004:7:0;;;;;;;;;;;;-1:-1:-1;;;7004:7:0;;;;6932:87;;11605:112;;;;;;;;;;-1:-1:-1;11605:112:0;;;;;:::i;:::-;;:::i;7348:167::-;;;;;;;;;;-1:-1:-1;7348:167:0;;;;;:::i;:::-;;:::i;5416:55::-;;;;;;;;;;;;;;;;12412:143;;;;;;;;;;;;;:::i;7523:::-;;;;;;;;;;-1:-1:-1;7523:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;7631:18:0;;;7604:7;7631:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7523:143;3489:201;;;;;;;;;;-1:-1:-1;3489:201:0;;;;;:::i;:::-;;:::i;11303:173::-;2476:13;:11;:13::i;:::-;11401:1:::1;11389:9;:13;11381:47;;;::::0;-1:-1:-1;;;11381:47:0;;3882:2:1;11381:47:0::1;::::0;::::1;3864:21:1::0;3921:2;3901:18;;;3894:30;-1:-1:-1;;;3940:18:1;;;3933:51;4001:18;;11381:47:0::1;;;;;;;;;11439:17;:29:::0;11303:173::o;7674:161::-;7749:4;7766:39;173:10;7789:7;7798:6;7766:8;:39::i;:::-;-1:-1:-1;7823:4:0;7674:161;;;;;:::o;11484:113::-;2476:13;:11;:13::i;:::-;-1:-1:-1;;;;;11555:27:0::1;;::::0;;;:18:::1;:27;::::0;;;;:34;;-1:-1:-1;;11555:34:0::1;11585:4;11555:34;::::0;;11484:113::o;7118:95::-;7171:7;5286:13;5231:2;5286;:13;:::i;:::-;5275:24;;:8;:24;:::i;:::-;7191:14;;7118:95;:::o;7843:313::-;7941:4;7958:36;7968:6;7976:9;7987:6;7958:9;:36::i;:::-;8005:121;8014:6;173:10;8036:89;8074:6;8036:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8036:19:0;;;;;;:11;:19;;;;;;;;173:10;8036:33;;;;;;;;;;:37;:89::i;:::-;8005:8;:121::i;:::-;-1:-1:-1;8144:4:0;7843:313;;;;;:::o;11866:348::-;11930:10;;-1:-1:-1;;;;;11930:10:0;173;-1:-1:-1;;;;;11916:24:0;;11908:33;;;;;;11991:4;11952:20;7314:18;;;:9;:18;;;;;;12011:14;;12008:73;;12039:30;12056:12;12039:16;:30::i;:::-;12110:21;12145:12;;12142:65;;12171:24;12184:10;12171:12;:24::i;:::-;11897:317;;11866:348::o;3231:103::-;2476:13;:11;:13::i;:::-;3296:30:::1;3323:1;3296:18;:30::i;:::-;3231:103::o:0;12222:182::-;2476:13;:11;:13::i;:::-;12315:22:::1;12333:3;12315:13;:11;:13::i;:::-;:17:::0;::::1;:22::i;:::-;12303:9;:34;12295:69;;;::::0;-1:-1:-1;;;12295:69:0;;5969:2:1;12295:69:0::1;::::0;::::1;5951:21:1::0;6008:2;5988:18;;;5981:30;6047:25;6027:18;;;6020:53;6090:18;;12295:69:0::1;5767:347:1::0;12295:69:0::1;12375:9;:21:::0;12222:182::o;11725:133::-;2476:13;:11;:13::i;:::-;11805:7:::1;:16:::0;;;;11832:8:::1;:18:::0;11725:133::o;11605:112::-;2476:13;:11;:13::i;:::-;-1:-1:-1;;;;;11674:27:0::1;11704:5;11674:27:::0;;;:18:::1;:27;::::0;;;;:35;;-1:-1:-1;;11674:35:0::1;::::0;;11605:112::o;7348:167::-;7426:4;7443:42;173:10;7467:9;7478:6;7443:9;:42::i;12412:143::-;2476:13;:11;:13::i;:::-;12471:14:::1;::::0;-1:-1:-1;;;12471:14:0;::::1;;;:22;;12489:4;12471:22:::0;12463:52:::1;;;::::0;-1:-1:-1;;;12463:52:0;;6321:2:1;12463:52:0::1;::::0;::::1;6303:21:1::0;6360:2;6340:18;;;6333:30;-1:-1:-1;;;6379:18:1;;;6372:47;6436:18;;12463:52:0::1;6119:341:1::0;12463:52:0::1;12526:14;:21:::0;;-1:-1:-1;;;;12526:21:0::1;-1:-1:-1::0;;;12526:21:0::1;::::0;;12412:143::o;3489:201::-;2476:13;:11;:13::i;:::-;-1:-1:-1;;;;;3578:22:0;::::1;3570:73;;;::::0;-1:-1:-1;;;3570:73:0;;6667:2:1;3570:73:0::1;::::0;::::1;6649:21:1::0;6706:2;6686:18;;;6679:30;6745:34;6725:18;;;6718:62;-1:-1:-1;;;6796:18:1;;;6789:36;6842:19;;3570:73:0::1;6465:402:1::0;3570:73:0::1;3654:28;3673:8;3654:18;:28::i;:::-;3489:201:::0;:::o;2755:132::-;2636:7;2663:6;-1:-1:-1;;;;;2663:6:0;173:10;2819:23;2811:68;;;;-1:-1:-1;;;2811:68:0;;7074:2:1;2811:68:0;;;7056:21:1;;;7093:18;;;7086:30;7152:34;7132:18;;;7125:62;7204:18;;2811:68:0;6872:356:1;8164:335:0;-1:-1:-1;;;;;8257:19:0;;8249:68;;;;-1:-1:-1;;;8249:68:0;;7435:2:1;8249:68:0;;;7417:21:1;7474:2;7454:18;;;7447:30;7513:34;7493:18;;;7486:62;-1:-1:-1;;;7564:18:1;;;7557:34;7608:19;;8249:68:0;7233:400:1;8249:68:0;-1:-1:-1;;;;;8336:21:0;;8328:68;;;;-1:-1:-1;;;8328:68:0;;7840:2:1;8328:68:0;;;7822:21:1;7879:2;7859:18;;;7852:30;7918:34;7898:18;;;7891:62;-1:-1:-1;;;7969:18:1;;;7962:32;8011:19;;8328:68:0;7638:398:1;8328:68:0;-1:-1:-1;;;;;8407:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8459:32;;1990:25:1;;;8459:32:0;;1963:18:1;8459:32:0;;;;;;;8164:335;;;:::o;8507:1819::-;-1:-1:-1;;;;;8595:18:0;;8587:68;;;;-1:-1:-1;;;8587:68:0;;8243:2:1;8587:68:0;;;8225:21:1;8282:2;8262:18;;;8255:30;8321:34;8301:18;;;8294:62;-1:-1:-1;;;8372:18:1;;;8365:35;8417:19;;8587:68:0;8041:401:1;8587:68:0;-1:-1:-1;;;;;8674:16:0;;8666:64;;;;-1:-1:-1;;;8666:64:0;;8649:2:1;8666:64:0;;;8631:21:1;8688:2;8668:18;;;8661:30;8727:34;8707:18;;;8700:62;-1:-1:-1;;;8778:18:1;;;8771:33;8821:19;;8666:64:0;8447:399:1;8666:64:0;8758:1;8749:6;:10;8741:64;;;;-1:-1:-1;;;8741:64:0;;9053:2:1;8741:64:0;;;9035:21:1;9092:2;9072:18;;;9065:30;9131:34;9111:18;;;9104:62;-1:-1:-1;;;9182:18:1;;;9175:39;9231:19;;8741:64:0;8851:405:1;8741:64:0;-1:-1:-1;;;;;8851:24:0;;8816:17;8851:24;;;:18;:24;;;;;;;;8850:25;:52;;;;-1:-1:-1;;;;;;8880:22:0;;;;;;:18;:22;;;;;;;;8879:23;8850:52;8846:1124;;;8929:14;;-1:-1:-1;;;8929:14:0;;;;8921:55;;;;-1:-1:-1;;;8921:55:0;;9463:2:1;8921:55:0;;;9445:21:1;9502:2;9482:18;;;9475:30;9541;9521:18;;;9514:58;9589:18;;8921:55:0;9261:352:1;8921:55:0;9002:13;;-1:-1:-1;;;;;8996:19:0;;;9002:13;;8996:19;8993:144;;9068:9;;9058:6;9042:13;9052:2;-1:-1:-1;;;;;7314:18:0;7287:7;7314:18;;;:9;:18;;;;;;;7221:119;9042:13;:22;;;;:::i;:::-;:35;;9034:87;;;;-1:-1:-1;;;9034:87:0;;9950:2:1;9034:87:0;;;9932:21:1;9989:2;9969:18;;;9962:30;10028:34;10008:18;;;10001:62;-1:-1:-1;;;10079:18:1;;;10072:37;10126:19;;9034:87:0;9748:403:1;9034:87:0;9156:7;;:11;9153:200;;9196:13;;-1:-1:-1;;;;;9188:21:0;;;9196:13;;9188:21;:55;;;;-1:-1:-1;9227:15:0;;-1:-1:-1;;;;;9213:30:0;;;9227:15;;9213:30;;9188:55;9184:154;;;9294:28;9318:3;9294:19;9305:7;;9294:6;:10;;:19;;;;:::i;:28::-;9282:40;;9184:154;9372:8;;:12;9369:146;;9410:13;;-1:-1:-1;;;;;9410:13:0;;;9404:19;;;;9401:99;;9455:29;9480:3;9455:20;9466:8;;9455:6;:10;;:20;;;;:::i;:29::-;9443:41;;9401:99;9580:4;9531:28;7314:18;;;:9;:18;;;;;;9606:6;;-1:-1:-1;;;9606:6:0;;;;9605:7;:30;;;;-1:-1:-1;9622:13:0;;-1:-1:-1;;;;;9616:19:0;;;9622:13;;9616:19;9605:30;:45;;;;-1:-1:-1;9639:11:0;;-1:-1:-1;;;9639:11:0;;;;9605:45;:87;;;;;9675:17;;9654:20;:38;9605:87;9601:358;;;9713:38;9730:20;9713:16;:38::i;:::-;9799:21;9842:22;;9839:105;;9889:35;9902:21;9889:12;:35::i;:::-;9694:265;9601:358;8904:1066;8846:1124;9985:11;;9982:161;;10053:4;10035:24;;;;:9;:24;;;;;;:39;;10064:9;10035:28;:39::i;:::-;10028:4;10010:24;;;;:9;:24;;;;;;;:64;;;;10092:39;;-1:-1:-1;;;;;10092:39:0;;;;;;;10121:9;1990:25:1;;1978:2;1963:18;;1844:177;10092:39:0;;;;;;;;9982:161;-1:-1:-1;;;;;10169:15:0;;;;;;:9;:15;;;;;;:27;;10189:6;10169:19;:27::i;:::-;-1:-1:-1;;;;;10153:15:0;;;;;;:9;:15;;;;;:43;10221:40;10239:21;:6;10250:9;10239:10;:21::i;:::-;-1:-1:-1;;;;;10221:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10207:13:0;;;;;;;:9;:13;;;;;:54;;;;10277:41;;;10296:21;:6;10307:9;10296:10;:21::i;:::-;10277:41;;1990:25:1;;;1978:2;1963:18;10277:41:0;;;;;;;8576:1750;8507:1819;;;:::o;1230:190::-;1316:7;1352:12;1344:6;;;;1336:29;;;;-1:-1:-1;;;1336:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1376:9:0;1388:5;1392:1;1388;:5;:::i;:::-;1376:17;1230:190;-1:-1:-1;;;;;1230:190:0:o;10442:520::-;5845:6;:13;;-1:-1:-1;;;;5845:13:0;-1:-1:-1;;;5845:13:0;;;10520:27;;10539:7:::1;10520:27;10581:16;::::0;;10595:1:::1;10581:16:::0;;;;;::::1;::::0;;10557:21:::1;::::0;10581:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10581:16:0::1;10557:40;;10626:4;10608;10613:1;10608:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10608:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10652:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10652:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10608:7;;10652:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10642:4;10647:1;10642:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10642:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10717:15:::1;::::0;10685:62:::1;::::0;10702:4:::1;::::0;10717:15:::1;10735:11:::0;10685:8:::1;:62::i;:::-;10758:15;::::0;:196:::1;::::0;-1:-1:-1;;;10758:196:0;;-1:-1:-1;;;;;10758:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10839:11;;10758:15:::1;::::0;10881:4;;10908::::1;::::0;10928:15:::1;::::0;10758:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10509:453;5869:1;-1:-1:-1::0;5881:6:0;:14;;-1:-1:-1;;;;5881:14:0;;;10442:520::o;10970:286::-;11058:10;;11050:43;;11028:16;;-1:-1:-1;;;;;11058:10:0;;11082:6;;11028:16;11050:43;11028:16;11050:43;11082:6;11058:10;11050:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11027:66;;;11111:11;11106:141;;11220:10;;11202:37;;1990:25:1;;;-1:-1:-1;;;;;11220:10:0;;;;11202:37;;1978:2:1;1963:18;11202:37:0;;;;;;;11016:240;10970:286;:::o;3850:191::-;3924:16;3943:6;;-1:-1:-1;;;;;3960:17:0;;;-1:-1:-1;;;;;;3960:17:0;;;;;;3993:40;;3943:6;;;;;;;3993:40;;3924:16;3993:40;3913:128;3850:191;:::o;1682:132::-;1740:7;1767:39;1771:1;1774;1767:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1760:46;1682:132;-1:-1:-1;;;1682:132:0:o;1428:246::-;1486:7;1510:1;1515;1510:6;1506:47;;-1:-1:-1;1540:1:0;1533:8;;1506:47;1563:9;1575:5;1579:1;1575;:5;:::i;:::-;1563:17;-1:-1:-1;1608:1:0;1599:5;1603:1;1563:17;1599:5;:::i;:::-;:10;1591:56;;;;-1:-1:-1;;;1591:56:0;;12407:2:1;1591:56:0;;;12389:21:1;12446:2;12426:18;;;12419:30;12485:34;12465:18;;;12458:62;-1:-1:-1;;;12536:18:1;;;12529:31;12577:19;;1591:56:0;12205:397:1;899:179:0;957:7;;989:5;993:1;989;:5;:::i;:::-;977:17;;1018:1;1013;:6;;1005:46;;;;-1:-1:-1;;;1005:46:0;;12809:2:1;1005:46:0;;;12791:21:1;12848:2;12828:18;;;12821:30;12887:29;12867:18;;;12860:57;12934:18;;1005:46:0;12607:351:1;1086:136:0;1144:7;1171:43;1175:1;1178;1171:43;;;;;;;;;;;;;;;;;:3;:43::i;1822:189::-;1908:7;1943:12;1936:5;1928:28;;;;-1:-1:-1;;;1928:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1967:9:0;1979:5;1983:1;1979;:5;:::i;14:226:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;187:23:1;;14:226;-1:-1:-1;14:226:1:o;245:418::-;394:2;383:9;376:21;357:4;426:6;420:13;469:6;464:2;453:9;449:18;442:34;528:6;523:2;515:6;511:15;506:2;495:9;491:18;485:50;584:1;579:2;570:6;559:9;555:22;551:31;544:42;654:2;647;643:7;638:2;630:6;626:15;622:29;611:9;607:45;603:54;595:62;;;245:418;;;;:::o;668:131::-;-1:-1:-1;;;;;743:31:1;;733:42;;723:70;;789:1;786;779:12;804:367;872:6;880;933:2;921:9;912:7;908:23;904:32;901:52;;;949:1;946;939:12;901:52;988:9;975:23;1007:31;1032:5;1007:31;:::i;:::-;1057:5;1135:2;1120:18;;;;1107:32;;-1:-1:-1;;;804:367:1:o;1368:247::-;1427:6;1480:2;1468:9;1459:7;1455:23;1451:32;1448:52;;;1496:1;1493;1486:12;1448:52;1535:9;1522:23;1554:31;1579:5;1554:31;:::i;2026:508::-;2103:6;2111;2119;2172:2;2160:9;2151:7;2147:23;2143:32;2140:52;;;2188:1;2185;2178:12;2140:52;2227:9;2214:23;2246:31;2271:5;2246:31;:::i;:::-;2296:5;-1:-1:-1;2353:2:1;2338:18;;2325:32;2366:33;2325:32;2366:33;:::i;:::-;2026:508;;2418:7;;-1:-1:-1;;;2498:2:1;2483:18;;;;2470:32;;2026:508::o;2936:346::-;3004:6;3012;3065:2;3053:9;3044:7;3040:23;3036:32;3033:52;;;3081:1;3078;3071:12;3033:52;-1:-1:-1;;3126:23:1;;;3246:2;3231:18;;;3218:32;;-1:-1:-1;2936:346:1:o;3287:388::-;3355:6;3363;3416:2;3404:9;3395:7;3391:23;3387:32;3384:52;;;3432:1;3429;3422:12;3384:52;3471:9;3458:23;3490:31;3515:5;3490:31;:::i;:::-;3540:5;-1:-1:-1;3597:2:1;3582:18;;3569:32;3610:33;3569:32;3610:33;:::i;:::-;3662:7;3652:17;;;3287:388;;;;;:::o;4030:127::-;4091:10;4086:3;4082:20;4079:1;4072:31;4122:4;4119:1;4112:15;4146:4;4143:1;4136:15;4162:375;4250:1;4268:5;4282:249;4303:1;4293:8;4290:15;4282:249;;;4353:4;4348:3;4344:14;4338:4;4335:24;4332:50;;;4362:18;;:::i;:::-;4412:1;4402:8;4398:16;4395:49;;;4426:16;;;;4395:49;4509:1;4505:16;;;;;4465:15;;4282:249;;;4162:375;;;;;;:::o;4542:902::-;4591:5;4621:8;4611:80;;-1:-1:-1;4662:1:1;4676:5;;4611:80;4710:4;4700:76;;-1:-1:-1;4747:1:1;4761:5;;4700:76;4792:4;4810:1;4805:59;;;;4878:1;4873:174;;;;4785:262;;4805:59;4835:1;4826:10;;4849:5;;;4873:174;4910:3;4900:8;4897:17;4894:43;;;4917:18;;:::i;:::-;-1:-1:-1;;4973:1:1;4959:16;;5032:5;;4785:262;;5131:2;5121:8;5118:16;5112:3;5106:4;5103:13;5099:36;5093:2;5083:8;5080:16;5075:2;5069:4;5066:12;5062:35;5059:77;5056:203;;;-1:-1:-1;5168:19:1;;;5244:5;;5056:203;5291:42;-1:-1:-1;;5316:8:1;5310:4;5291:42;:::i;:::-;5369:6;5365:1;5361:6;5357:19;5348:7;5345:32;5342:58;;;5380:18;;:::i;:::-;5418:20;;4542:902;-1:-1:-1;;;4542:902:1:o;5449:140::-;5507:5;5536:47;5577:4;5567:8;5563:19;5557:4;5536:47;:::i;5594:168::-;5667:9;;;5698;;5715:15;;;5709:22;;5695:37;5685:71;;5736:18;;:::i;9618:125::-;9683:9;;;9704:10;;;9701:36;;;9717:18;;:::i;10156:128::-;10223:9;;;10244:11;;;10241:37;;;10258:18;;:::i;10421:127::-;10482:10;10477:3;10473:20;10470:1;10463:31;10513:4;10510:1;10503:15;10537:4;10534:1;10527:15;10553:251;10623:6;10676:2;10664:9;10655:7;10651:23;10647:32;10644:52;;;10692:1;10689;10682:12;10644:52;10724:9;10718:16;10743:31;10768:5;10743:31;:::i;10809:959::-;11071:4;11119:3;11108:9;11104:19;11150:6;11139:9;11132:25;11193:6;11188:2;11177:9;11173:18;11166:34;11236:3;11231:2;11220:9;11216:18;11209:31;11260:6;11295;11289:13;11326:6;11318;11311:22;11364:3;11353:9;11349:19;11342:26;;11403:2;11395:6;11391:15;11377:29;;11424:1;11434:195;11448:6;11445:1;11442:13;11434:195;;;11513:13;;-1:-1:-1;;;;;11509:39:1;11497:52;;11578:2;11604:15;;;;11569:12;;;;11545:1;11463:9;11434:195;;;-1:-1:-1;;;;;;;11685:32:1;;;;11680:2;11665:18;;11658:60;-1:-1:-1;;11749:3:1;11734:19;11727:35;11646:3;10809:959;-1:-1:-1;;;10809:959:1:o;11983:217::-;12023:1;12049;12039:132;;12093:10;12088:3;12084:20;12081:1;12074:31;12128:4;12125:1;12118:15;12156:4;12153:1;12146:15;12039:132;-1:-1:-1;12185:9:1;;11983:217::o
Swarm Source
ipfs://2f53632ed8f776ddbab951b507286aab7b77e8cb0053857d65a38f6adcd818a3
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 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.