Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 42 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer | 19833863 | 112 days ago | IN | 0 ETH | 0.00033596 | ||||
Transfer | 19833854 | 112 days ago | IN | 0 ETH | 0.00020171 | ||||
Transfer | 19833854 | 112 days ago | IN | 0 ETH | 0.00033743 | ||||
Transfer | 19833852 | 112 days ago | IN | 0 ETH | 0.000367 | ||||
Transfer | 19833852 | 112 days ago | IN | 0 ETH | 0.00032851 | ||||
Transfer | 19833851 | 112 days ago | IN | 0 ETH | 0.00032611 | ||||
Transfer | 19833850 | 112 days ago | IN | 0 ETH | 0.00035234 | ||||
Transfer | 19833848 | 112 days ago | IN | 0 ETH | 0.00032512 | ||||
Transfer | 19833848 | 112 days ago | IN | 0 ETH | 0.00036289 | ||||
Transfer | 19833846 | 112 days ago | IN | 0 ETH | 0.0003625 | ||||
Transfer | 19833846 | 112 days ago | IN | 0 ETH | 0.00032477 | ||||
Transfer | 19833844 | 112 days ago | IN | 0 ETH | 0.00037902 | ||||
Transfer | 19833836 | 112 days ago | IN | 0 ETH | 0.00028261 | ||||
Transfer | 19833835 | 112 days ago | IN | 0 ETH | 0.00031705 | ||||
Transfer | 19833832 | 112 days ago | IN | 0 ETH | 0.00031297 | ||||
Transfer | 19833812 | 112 days ago | IN | 0 ETH | 0.00031093 | ||||
Transfer | 19833812 | 112 days ago | IN | 0 ETH | 0.00034718 | ||||
Transfer | 19833808 | 112 days ago | IN | 0 ETH | 0.00027382 | ||||
Transfer | 19833807 | 112 days ago | IN | 0 ETH | 0.00029436 | ||||
Transfer | 19833646 | 112 days ago | IN | 0.001 ETH | 0.00014813 | ||||
Transfer | 19833624 | 112 days ago | IN | 0.1 ETH | 0.00229606 | ||||
Transfer | 19833610 | 112 days ago | IN | 0.125 ETH | 0.00235471 | ||||
Transfer | 19833606 | 112 days ago | IN | 0.16 ETH | 0.0025228 | ||||
Transfer | 19833594 | 112 days ago | IN | 0.1 ETH | 0.00257833 | ||||
Transfer | 19833592 | 112 days ago | IN | 0.01 ETH | 0.0021252 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
19833863 | 112 days ago | 0.0713 ETH | ||||
19833854 | 112 days ago | 0.0123951 ETH | ||||
19833852 | 112 days ago | 0.1125082 ETH | ||||
19833852 | 112 days ago | 0.009 ETH | ||||
19833851 | 112 days ago | 0.09000662 ETH | ||||
19833850 | 112 days ago | 0.1080067 ETH | ||||
19833848 | 112 days ago | 0.15481139 ETH | ||||
19833848 | 112 days ago | 0.1080067 ETH | ||||
19833846 | 112 days ago | 0.0990037 ETH | ||||
19833846 | 112 days ago | 0.23671486 ETH | ||||
19833844 | 112 days ago | 0.0900033 ETH | ||||
19833836 | 112 days ago | 0.09000565 ETH | ||||
19833835 | 112 days ago | 0.1440105 ETH | ||||
19833832 | 112 days ago | 0.0961836 ETH | ||||
19833812 | 112 days ago | 0.09000565 ETH | ||||
19833812 | 112 days ago | 0.0990037 ETH | ||||
19833808 | 112 days ago | 0.09000372 ETH | ||||
19833807 | 112 days ago | 0.0810033 ETH | ||||
19833624 | 112 days ago | 0.01 ETH | ||||
19833610 | 112 days ago | 0.0125 ETH | ||||
19833606 | 112 days ago | 0.016 ETH | ||||
19833594 | 112 days ago | 0.01 ETH | ||||
19833592 | 112 days ago | 0.001 ETH | ||||
19833590 | 112 days ago | 0.01 ETH | ||||
19833588 | 112 days ago | 0.0172 ETH |
Loading...
Loading
Contract Name:
EtherX314
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity Multiple files format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "./Ownable.sol"; import "./Context.sol"; import "./IERC20.sol"; import "./EnumerableSet.sol"; interface IERC314 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out ); } interface ISwapFactory { function createPair(address tokenA, address tokenB) external returns (address pair); function feeTo() external view returns (address); } interface ISwapRouter { 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 EtherX314 is Context, Ownable, IERC314 { using EnumerableSet for EnumerableSet.AddressSet; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; address public marketAddress; address public liquidityAddress; address public WETH; address public swapRouter; //address public WETH = 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2; //address public swapRouter = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; //address public WETH = 0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd; //address public swapRouter = 0x37A7Bd3eaABFedD1b1EA3837B2fdF0367d3BAA43; //address public WETH = 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c; //address public swapRouter = 0x10ED43C718714eb63d5aA57B78B54704E256024E; address public swapPair; uint256 public lastRewardBlock = 0; uint256 public idoStartTime = block.timestamp; uint256 public idoEndTime = block.timestamp + 60 * 30; uint256 public idoPrice = 10 ** 7; uint256 public maxSupply = 2 * (10 ** 7) * (10 ** 18); uint256 public idoRate = 90; uint256 public marketFee = 1; uint256 public rewardFee = 1; uint256 public liquidityRate = 10; uint256 public rewardIndex; uint256 public maxRewardNum = 5; uint256 public minRewardBlock = 5; uint256 public totalRewardAmount; uint256 public totalPooledAmount; uint256 public rewardedAmount; uint256 public minAmount = (1 * 10 ** 17) / 10; mapping(address => uint256) public userPooledAmount; EnumerableSet.AddressSet private idoUsersList; // struct publicItem { // address marketAddress; //// address feeAddress; // address liquidityAddress; // address WETH; // address swapRouter; // address swapPair; // uint256 idoStartTime; // uint256 idoEndTime; // uint256 idoPrice; // uint256 idoRate; // uint256 marketFee; // uint256 rewardFee; // uint256 liquidityRate; // uint256 rewardIndex; // uint256 maxRewardNum; // uint256 totalRewardAmount; // uint256 totalPooledAmount; // uint256 rewardedAmount; // uint256 minAmount; // } // // function showPublic() public view returns (publicItem memory x) { // x.marketAddress = marketAddress; // x.liquidityAddress = liquidityAddress; // x.WETH = WETH; // x.swapRouter = swapRouter; // x.swapPair = swapPair; // x.idoStartTime = idoStartTime; // x.idoEndTime = idoEndTime; // x.idoPrice = idoPrice; // x.idoRate = idoRate; // x.marketFee = marketFee; // x.rewardFee = rewardFee; // x.liquidityRate = liquidityRate; // x.rewardIndex = rewardIndex; // x.maxRewardNum = maxRewardNum; // x.totalRewardAmount = totalRewardAmount; // x.totalPooledAmount = totalPooledAmount; // x.rewardedAmount = rewardedAmount; // x.minAmount = minAmount; // } event rewardEvent(uint256 _blockNumer, uint256 _blockTimeStamp, address _user, uint256 _rewardAmount, uint256 _index, uint256 _rewardIndex, string _type); constructor( string memory name_, string memory symbol_, address _swapRouter, address _WETH ) { _name = name_; _symbol = symbol_; swapRouter = _swapRouter; WETH = _WETH; ISwapFactory swapFactory = ISwapFactory(ISwapRouter(swapRouter).factory()); swapPair = swapFactory.createPair(address(this), WETH); marketAddress = 0x56d0Bd041D1806D939a9CeA640867a6219A52d9E; liquidityAddress = 0x8C6E68b250e1163c4AD37Ac5F1DCA113E75442ED; } function name() public view virtual returns (string memory) { return _name; } function symbol() public view virtual returns (string memory) { return _symbol; } function decimals() public view virtual returns (uint8) { return 18; } function totalSupply() public view virtual returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual returns (uint256) { return _balances[account]; } function allowance( address owner, address spender ) public view virtual returns (uint256) { return _allowances[owner][spender]; } function approve( address spender, uint256 amount ) public virtual returns (bool) { address owner = _msgSender(); _approve(owner, spender, amount); return true; } function transferFrom( address from, address to, uint256 amount ) public virtual returns (bool) { address spender = _msgSender(); _spendAllowance(from, spender, amount); if (to == address(this)) { sell(from, amount); } else { _transfer(from, to, amount); } return true; } function transfer(address to, uint256 value) public virtual returns (bool) { if (to == address(this)) { sell(_msgSender(), value); } else { _transfer(_msgSender(), to, value); } return true; } function _approve( address owner, address spender, uint256 amount ) internal virtual { 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 _spendAllowance( address owner, address spender, uint256 amount ) internal virtual { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { require( currentAllowance >= amount, "ERC20: insufficient allowance" ); unchecked { _approve(owner, spender, currentAllowance - amount); } } } // function setMinAmount(uint256 _minAmount) public onlyOwner { // minAmount = _minAmount; // } // // function setMaxRewardNum(uint256 _maxRewardNum) public onlyOwner { // maxRewardNum = _maxRewardNum; // } // // function setMarketAddress(address _marketAddress) public onlyOwner { // marketAddress = _marketAddress; // } // function setFeeAddress(address _feeAddress, uint256 _marketFee, uint256 _rewardFee) public onlyOwner { // feeAddress = _feeAddress; // marketFee = _marketFee; // rewardFee = _rewardFee; // } // function setLiquidityAddress(address _liquidityAddress) public onlyOwner { // liquidityAddress = _liquidityAddress; // } // // function setIdoTime(uint256 _idoStartTime, uint256 _idoEndTime) public onlyOwner { // idoStartTime = _idoStartTime; // idoEndTime = _idoEndTime; // } // // function setIdoPrice(uint256 _idoPrice) public onlyOwner { // idoPrice = _idoPrice; // } // function setRate(uint256 _idoRate, uint256 _liquidityRate) public onlyOwner { // require(_idoRate + _liquidityRate == 100, "tatal rate should be 100"); // idoRate = _idoRate; // liquidityRate = _liquidityRate; // } function _reward() internal { if (block.timestamp < idoEndTime) { return; } uint256 _toReward = totalRewardAmount - rewardedAmount; uint256 _num = idoUsersList.length(); if (_num == 0 || totalRewardAmount == 0 || totalPooledAmount == 0) { return; } if (_num <= maxRewardNum) { for (uint256 i = 0; i < _num; i++) { address _user = idoUsersList.at(i); uint256 _amount = _toReward * userPooledAmount[_user] / totalPooledAmount; _balances[_user] += _amount; _balances[address(this)] -= _amount; rewardedAmount += _amount; emit Transfer(address(this), _user, _amount); emit rewardEvent(block.number, block.timestamp, _user, _amount, i, i, "type 1"); } return; } if (rewardIndex >= _num) { rewardIndex = 0; } for (uint256 i = 0; i < maxRewardNum; i++) { uint256 rewardIndex_ = rewardIndex; address _user = idoUsersList.at(rewardIndex_); uint256 _amount = _toReward * userPooledAmount[_user] / totalPooledAmount; _balances[_user] += _amount; _balances[address(this)] -= _amount; rewardedAmount += _amount; emit Transfer(address(this), _user, _amount); emit rewardEvent(block.number, block.timestamp, _user, _amount, i, rewardIndex_, "type 2"); rewardIndex++; if (rewardIndex >= _num) { rewardIndex = 0; } } } function _transfer( address from, address to, uint256 amount ) internal virtual { require(to != address(0), "ERC20: transfer to the zero address"); bool isSwap = (from == swapPair && to != address(this)) || (to == swapPair && from != address(this)); if (block.timestamp < idoEndTime && isSwap) { return; } uint256 fromBalance = _balances[from]; require( fromBalance >= amount, "ERC20: transfer amount exceeds balance" ); if (isSwap) { _balances[from] = fromBalance - amount; _balances[to] += amount * (100 - marketFee - rewardFee) / 100; _balances[marketAddress] += amount * marketFee / 100; _balances[address(this)] += amount * rewardFee / 100; totalRewardAmount += amount * rewardFee / 100; emit Transfer(from, to, amount * (100 - marketFee - rewardFee) / 100); emit Transfer(from, marketAddress, amount * marketFee / 100); emit Transfer(from, address(this), amount * rewardFee / 100); if (block.number >= lastRewardBlock + minRewardBlock) { _reward(); lastRewardBlock = block.number; } } else { _balances[from] = fromBalance - amount; _balances[to] += amount; emit Transfer(from, to, amount); } } function buy() internal { require(_msgSender() == tx.origin, "Only external calls allowed"); address owner = _msgSender(); uint256 mintAmount = msg.value * idoPrice; _totalSupply += mintAmount; require(_totalSupply <= maxSupply, "exceed maxSupply"); _balances[address(this)] = mintAmount; emit Transfer(address(0), address(this), mintAmount); uint256 _eth_amount = (msg.value) * liquidityRate / 100; uint256 _tokenAmount = mintAmount * liquidityRate / 100; _approve(address(this), swapRouter, _tokenAmount); ISwapRouter(swapRouter).addLiquidityETH{value: _eth_amount}( address(this), _tokenAmount, 0, 0, liquidityAddress, block.timestamp ); uint256 tokenAmount = mintAmount * idoRate / 100; _balances[owner] += tokenAmount; _balances[address(this)] -= tokenAmount; emit Transfer(address(this), owner, tokenAmount); userPooledAmount[owner] += _eth_amount; if (userPooledAmount[owner] >= minAmount) { if (idoUsersList.contains(owner)) { totalPooledAmount += _eth_amount; } else { idoUsersList.add(owner); totalPooledAmount += userPooledAmount[owner]; } } emit Swap(owner, msg.value, 0, 0, tokenAmount); } function sell(address owner, uint256 amount) internal { //require(block.timestamp > idoStartTime, "e001"); require(_msgSender() == tx.origin, "Only external calls allowed"); uint256 ethAmount = amount / idoPrice; require(ethAmount > 0, "Sell amount too low"); require( address(this).balance >= ethAmount, "Insufficient ETH in reserves" ); _balances[owner] -= amount; _balances[address(0)] = amount; emit Transfer(owner, address(0), amount); payable(owner).transfer(ethAmount); emit Swap(owner, 0, amount, ethAmount, 0); } function getIdoUsersListLen() public view returns (uint256) { return idoUsersList.length(); } function getAllIdoUsersList() public view returns (address[] memory) { return idoUsersList.values(); } function getIdoUsersListByIndexList(uint256[] memory _indexList) public view returns (address[] memory _addressList) { uint256 _num = _indexList.length; _addressList = new address[](_num); for (uint i = 0; i < _num; i++) { uint256 _index = _indexList[i]; _addressList[i] = idoUsersList.at(_index); } } function claimETH() public { require(msg.sender == owner() || msg.sender == marketAddress || msg.sender == liquidityAddress, "e001"); payable(msg.sender).transfer(address(this).balance); } receive() external payable { if (block.timestamp >= idoStartTime && block.timestamp <= idoEndTime) { buy(); } else { revert("Not in ido"); } } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.7; library Address { function isContract(address account) internal view returns (bool) { return account.code.length > 0; } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{value: amount}(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, "Address: low-level call failed"); } function functionCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue( address target, bytes memory data, uint256 value, string memory errorMessage ) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); (bool success, bytes memory returndata) = target.call{value: value}(data); return verifyCallResultFromTarget(target, success, returndata, errorMessage); } function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } function functionStaticCall( address target, bytes memory data, string memory errorMessage ) internal view returns (bytes memory) { (bool success, bytes memory returndata) = target.staticcall(data); return verifyCallResultFromTarget(target, success, returndata, errorMessage); } function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, "Address: low-level delegate call failed"); } function functionDelegateCall( address target, bytes memory data, string memory errorMessage ) internal returns (bytes memory) { (bool success, bytes memory returndata) = target.delegatecall(data); return verifyCallResultFromTarget(target, success, returndata, errorMessage); } function verifyCallResultFromTarget( address target, bool success, bytes memory returndata, string memory errorMessage ) internal view returns (bytes memory) { if (success) { if (returndata.length == 0) { // only check isContract if the call was successful and the return data is empty // otherwise we already know that it was a contract require(isContract(target), "Address: call to non-contract"); } return returndata; } else { _revert(returndata, errorMessage); } } function verifyCallResult( bool success, bytes memory returndata, string memory errorMessage ) internal pure returns (bytes memory) { if (success) { return returndata; } else { _revert(returndata, errorMessage); } } function _revert(bytes memory returndata, string memory errorMessage) private pure { if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.7; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.7; library EnumerableSet { struct Set { bytes32[] _values; mapping(bytes32 => uint256) _indexes; } function _add(Set storage set, bytes32 value) private returns (bool) { if (!_contains(set, value)) { set._values.push(value); set._indexes[value] = set._values.length; return true; } else { return false; } } function _remove(Set storage set, bytes32 value) private returns (bool) { uint256 valueIndex = set._indexes[value]; if (valueIndex != 0) { uint256 toDeleteIndex = valueIndex - 1; uint256 lastIndex = set._values.length - 1; if (lastIndex != toDeleteIndex) { bytes32 lastValue = set._values[lastIndex]; set._values[toDeleteIndex] = lastValue; set._indexes[lastValue] = valueIndex; } set._values.pop(); delete set._indexes[value]; return true; } else { return false; } } function _contains(Set storage set, bytes32 value) private view returns (bool) { return set._indexes[value] != 0; } function _length(Set storage set) private view returns (uint256) { return set._values.length; } function _at(Set storage set, uint256 index) private view returns (bytes32) { return set._values[index]; } function _values(Set storage set) private view returns (bytes32[] memory) { return set._values; } struct Bytes32Set { Set _inner; } function add(Bytes32Set storage set, bytes32 value) internal returns (bool) { return _add(set._inner, value); } function remove(Bytes32Set storage set, bytes32 value) internal returns (bool) { return _remove(set._inner, value); } function contains(Bytes32Set storage set, bytes32 value) internal view returns (bool) { return _contains(set._inner, value); } function length(Bytes32Set storage set) internal view returns (uint256) { return _length(set._inner); } function at(Bytes32Set storage set, uint256 index) internal view returns (bytes32) { return _at(set._inner, index); } function values(Bytes32Set storage set) internal view returns (bytes32[] memory) { bytes32[] memory store = _values(set._inner); bytes32[] memory result; assembly { result := store } return result; } struct AddressSet { Set _inner; } function add(AddressSet storage set, address value) internal returns (bool) { return _add(set._inner, bytes32(uint256(uint160(value)))); } function remove(AddressSet storage set, address value) internal returns (bool) { return _remove(set._inner, bytes32(uint256(uint160(value)))); } function contains(AddressSet storage set, address value) internal view returns (bool) { return _contains(set._inner, bytes32(uint256(uint160(value)))); } function length(AddressSet storage set) internal view returns (uint256) { return _length(set._inner); } function at(AddressSet storage set, uint256 index) internal view returns (address) { return address(uint160(uint256(_at(set._inner, index)))); } function values(AddressSet storage set) internal view returns (address[] memory) { bytes32[] memory store = _values(set._inner); address[] memory result; assembly { result := store } return result; } struct UintSet { Set _inner; } function add(UintSet storage set, uint256 value) internal returns (bool) { return _add(set._inner, bytes32(value)); } function remove(UintSet storage set, uint256 value) internal returns (bool) { return _remove(set._inner, bytes32(value)); } function contains(UintSet storage set, uint256 value) internal view returns (bool) { return _contains(set._inner, bytes32(value)); } function length(UintSet storage set) internal view returns (uint256) { return _length(set._inner); } function at(UintSet storage set, uint256 index) internal view returns (uint256) { return uint256(_at(set._inner, index)); } function values(UintSet storage set) internal view returns (uint256[] memory) { bytes32[] memory store = _values(set._inner); uint256[] memory result; assembly { result := store } return result; } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.7; interface IERC20 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address to, 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 from, address to, uint256 amount) external returns (bool); }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.7; import {Context} from "./Context.sol"; abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _transferOwnership(_msgSender()); } modifier onlyOwner() { _checkOwner(); _; } function owner() public view virtual returns (address) { return _owner; } function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"_swapRouter","type":"address"},{"internalType":"address","name":"_WETH","type":"address"}],"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":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"}],"name":"Swap","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_blockNumer","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_blockTimeStamp","type":"uint256"},{"indexed":false,"internalType":"address","name":"_user","type":"address"},{"indexed":false,"internalType":"uint256","name":"_rewardAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_index","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"_rewardIndex","type":"uint256"},{"indexed":false,"internalType":"string","name":"_type","type":"string"}],"name":"rewardEvent","type":"event"},{"inputs":[],"name":"WETH","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"claimETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getAllIdoUsersList","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"_indexList","type":"uint256[]"}],"name":"getIdoUsersListByIndexList","outputs":[{"internalType":"address[]","name":"_addressList","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getIdoUsersListLen","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"idoEndTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"idoPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"idoRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"idoStartTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastRewardBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxRewardNum","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minRewardBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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":"rewardFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardedAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapRouter","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalPooledAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalRewardAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","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":"address","name":"","type":"address"}],"name":"userPooledAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526000600b5542600c55426107086200001d9190620004da565b600d5562989680600e556a108b2a2c28029094000000600f55605a60105560016011556001601255600a60135560056015556005601655662386f26fc10000601a553480156200006c57600080fd5b5060405162002472380380620024728339810160408190526200008f916200044b565b6200009a336200025c565b8351620000af906004906020870190620002ac565b508251620000c5906005906020860190620002ac565b50600980546001600160a01b038085166001600160a01b0319928316811790935560088054918516919092161790556040805163c45a015560e01b815290516000929163c45a0155916004808301926020929190829003018186803b1580156200012e57600080fd5b505afa15801562000143573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000169919062000426565b6008546040516364e329cb60e11b81523060048201526001600160a01b03918216602482015291925082169063c9c6539690604401602060405180830381600087803b158015620001b957600080fd5b505af1158015620001ce573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f4919062000426565b600a80546001600160a01b03929092166001600160a01b03199283161790556006805482167356d0bd041d1806d939a9cea640867a6219a52d9e17905560078054909116738c6e68b250e1163c4ad37ac5f1dca113e75442ed17905550620005549350505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b828054620002ba9062000501565b90600052602060002090601f016020900481019282620002de576000855562000329565b82601f10620002f957805160ff191683800117855562000329565b8280016001018555821562000329579182015b82811115620003295782518255916020019190600101906200030c565b50620003379291506200033b565b5090565b5b808211156200033757600081556001016200033c565b80516001600160a01b03811681146200036a57600080fd5b919050565b600082601f8301126200038157600080fd5b81516001600160401b03808211156200039e576200039e6200053e565b604051601f8301601f19908116603f01168101908282118183101715620003c957620003c96200053e565b81604052838152602092508683858801011115620003e657600080fd5b600091505b838210156200040a5785820183015181830184015290820190620003eb565b838211156200041c5760008385830101525b9695505050505050565b6000602082840312156200043957600080fd5b620004448262000352565b9392505050565b600080600080608085870312156200046257600080fd5b84516001600160401b03808211156200047a57600080fd5b62000488888389016200036f565b955060208701519150808211156200049f57600080fd5b50620004ae878288016200036f565b935050620004bf6040860162000352565b9150620004cf6060860162000352565b905092959194509250565b60008219821115620004fc57634e487b7160e01b600052601160045260246000fd5b500190565b600181811c908216806200051657607f821691505b602082108114156200053857634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b611f0e80620005646000396000f3fe6080604052600436106102295760003560e01c80638b42426711610123578063ad5c4648116100ab578063d96062501161006f578063d960625014610658578063dd62ed3e1461066d578063e113bc84146106b3578063e9ee2fa9146106c9578063f2fde38b146106df57600080fd5b8063ad5c4648146105d6578063afd2c260146105f6578063c31c9c071461060c578063cd80fe0d1461062c578063d5abeb011461064257600080fd5b806395623641116100f2578063956236411461055557806395d89b41146105755780639b2cb5d81461058a578063a9059cbb146105a0578063a9f8d181146105c057600080fd5b80638b424267146104de5780638da5cb5b146104f45780638e73064f146105125780639107d68e1461052857600080fd5b80633221c93f116101b157806361be47c51161017557806361be47c514610453578063672729991461046857806370a082311461047d57806370a6dea8146104b3578063715018a6146104c957600080fd5b80633221c93f146103db578063333029c9146103fb578063548cbeb01461041157806358aa074e146104275780635ff56f6e1461043d57600080fd5b806318160ddd116101f857806318160ddd1461032557806323b872dd1461033a57806325fb153a1461035a57806326991cc814610387578063313ce567146103bf57600080fd5b806306fdde03146102905780630836b6c8146102bb578063095ea7b3146102df5780630ccf21561461030f57600080fd5b3661028b57600c5442101580156102425750600d544211155b156102515761024f6106ff565b005b60405162461bcd60e51b815260206004820152600a6024820152694e6f7420696e2069646f60b01b60448201526064015b60405180910390fd5b600080fd5b34801561029c57600080fd5b506102a5610aa1565b6040516102b29190611d5b565b60405180910390f35b3480156102c757600080fd5b506102d160105481565b6040519081526020016102b2565b3480156102eb57600080fd5b506102ff6102fa366004611bf1565b610b33565b60405190151581526020016102b2565b34801561031b57600080fd5b506102d160115481565b34801561033157600080fd5b506003546102d1565b34801561034657600080fd5b506102ff610355366004611bb5565b610b4d565b34801561036657600080fd5b5061037a610375366004611c1b565b610b91565b6040516102b29190611d0e565b34801561039357600080fd5b50600a546103a7906001600160a01b031681565b6040516001600160a01b0390911681526020016102b2565b3480156103cb57600080fd5b50604051601281526020016102b2565b3480156103e757600080fd5b506007546103a7906001600160a01b031681565b34801561040757600080fd5b506102d160155481565b34801561041d57600080fd5b506102d160135481565b34801561043357600080fd5b506102d160165481565b34801561044957600080fd5b506102d1600d5481565b34801561045f57600080fd5b506102d1610c5c565b34801561047457600080fd5b5061024f610c6d565b34801561048957600080fd5b506102d1610498366004611b67565b6001600160a01b031660009081526001602052604090205490565b3480156104bf57600080fd5b506102d1600c5481565b3480156104d557600080fd5b5061024f610d09565b3480156104ea57600080fd5b506102d160125481565b34801561050057600080fd5b506000546001600160a01b03166103a7565b34801561051e57600080fd5b506102d160175481565b34801561053457600080fd5b506102d1610543366004611b67565b601b6020526000908152604090205481565b34801561056157600080fd5b506006546103a7906001600160a01b031681565b34801561058157600080fd5b506102a5610d1d565b34801561059657600080fd5b506102d1601a5481565b3480156105ac57600080fd5b506102ff6105bb366004611bf1565b610d2c565b3480156105cc57600080fd5b506102d1600b5481565b3480156105e257600080fd5b506008546103a7906001600160a01b031681565b34801561060257600080fd5b506102d160195481565b34801561061857600080fd5b506009546103a7906001600160a01b031681565b34801561063857600080fd5b506102d1600e5481565b34801561064e57600080fd5b506102d1600f5481565b34801561066457600080fd5b5061037a610d62565b34801561067957600080fd5b506102d1610688366004611b82565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156106bf57600080fd5b506102d160185481565b3480156106d557600080fd5b506102d160145481565b3480156106eb57600080fd5b5061024f6106fa366004611b67565b610d6e565b33321461074e5760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792065787465726e616c2063616c6c7320616c6c6f77656400000000006044820152606401610282565b600e5433906000906107609034611dea565b905080600360008282546107749190611db0565b9091555050600f5460035411156107c05760405162461bcd60e51b815260206004820152601060248201526f657863656564206d6178537570706c7960801b6044820152606401610282565b30600081815260016020908152604080832085905551848152600080516020611eb9833981519152910160405180910390a360006064601354346108049190611dea565b61080e9190611dc8565b905060006064601354846108229190611dea565b61082c9190611dc8565b6009549091506108479030906001600160a01b031683610de4565b60095460075460405163f305d71960e01b81523060048201526024810184905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990849060c4016060604051808303818588803b1580156108b257600080fd5b505af11580156108c6573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108eb9190611ce0565b50505060006064601054856109009190611dea565b61090a9190611dc8565b6001600160a01b038616600090815260016020526040812080549293508392909190610937908490611db0565b9091555050306000908152600160205260408120805483929061095b908490611e09565b90915550506040518181526001600160a01b038616903090600080516020611eb98339815191529060200160405180910390a36001600160a01b0385166000908152601b6020526040812080548592906109b6908490611db0565b9091555050601a546001600160a01b0386166000908152601b602052604090205410610a47576109e7601c86610f08565b15610a095782601860008282546109fe9190611db0565b90915550610a479050565b610a14601c86610f2d565b506001600160a01b0385166000908152601b60205260408120546018805491929091610a41908490611db0565b90915550505b60408051348152600060208201819052818301526060810183905290516001600160a01b038716917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a25050505050565b606060048054610ab090611e20565b80601f0160208091040260200160405190810160405280929190818152602001828054610adc90611e20565b8015610b295780601f10610afe57610100808354040283529160200191610b29565b820191906000526020600020905b815481529060010190602001808311610b0c57829003601f168201915b5050505050905090565b600033610b41818585610de4565b60019150505b92915050565b600033610b5b858285610f42565b6001600160a01b038416301415610b7b57610b768584610fd4565b610b86565b610b868585856111e1565b506001949350505050565b80516060908067ffffffffffffffff811115610baf57610baf611ea2565b604051908082528060200260200182016040528015610bd8578160200160208202803683370190505b50915060005b81811015610c55576000848281518110610bfa57610bfa611e8c565b60200260200101519050610c1881601c61161f90919063ffffffff16565b848381518110610c2a57610c2a611e8c565b6001600160a01b03909216602092830291909101909101525080610c4d81611e5b565b915050610bde565b5050919050565b6000610c68601c61162b565b905090565b6000546001600160a01b0316331480610c9057506006546001600160a01b031633145b80610ca557506007546001600160a01b031633145b610cda5760405162461bcd60e51b8152600401610282906020808252600490820152636530303160e01b604082015260600190565b60405133904780156108fc02916000818181858888f19350505050158015610d06573d6000803e3d6000fd5b50565b610d11611635565b610d1b600061168f565b565b606060058054610ab090611e20565b60006001600160a01b038316301415610d4e57610d493383610fd4565b610d59565b610d593384846111e1565b50600192915050565b6060610c68601c6116df565b610d76611635565b6001600160a01b038116610ddb5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610282565b610d068161168f565b6001600160a01b038316610e465760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610282565b6001600160a01b038216610ea75760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610282565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b6000610f26836001600160a01b0384166116ec565b6001600160a01b038381166000908152600260209081526040808320938616835292905220546000198114610fce5781811015610fc15760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610282565b610fce8484848403610de4565b50505050565b3332146110235760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792065787465726e616c2063616c6c7320616c6c6f77656400000000006044820152606401610282565b6000600e54826110339190611dc8565b90506000811161107b5760405162461bcd60e51b815260206004820152601360248201527253656c6c20616d6f756e7420746f6f206c6f7760681b6044820152606401610282565b804710156110cb5760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e742045544820696e207265736572766573000000006044820152606401610282565b6001600160a01b038316600090815260016020526040812080548492906110f3908490611e09565b90915550506000808052600160209081527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb498490556040518481526001600160a01b03861691600080516020611eb9833981519152910160405180910390a36040516001600160a01b0384169082156108fc029083906000818181858888f19350505050158015611188573d6000803e3d6000fd5b5060408051600080825260208201859052818301849052606082015290516001600160a01b038516917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a2505050565b6001600160a01b0382166112435760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610282565b600a546000906001600160a01b03858116911614801561126c57506001600160a01b0383163014155b806112985750600a546001600160a01b03848116911614801561129857506001600160a01b0384163014155b9050600d54421080156112a85750805b156112b35750505050565b6001600160a01b0384166000908152600160205260409020548281101561132b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610282565b81156115955761133b8382611e09565b6001600160a01b038616600090815260016020526040902055601254601154606491906113689083611e09565b6113729190611e09565b61137c9085611dea565b6113869190611dc8565b6001600160a01b038516600090815260016020526040812080549091906113ae908490611db0565b90915550506011546064906113c39085611dea565b6113cd9190611dc8565b6006546001600160a01b0316600090815260016020526040812080549091906113f7908490611db0565b909155505060125460649061140c9085611dea565b6114169190611dc8565b3060009081526001602052604081208054909190611435908490611db0565b909155505060125460649061144a9085611dea565b6114549190611dc8565b601760008282546114659190611db0565b92505081905550836001600160a01b0316856001600160a01b0316600080516020611eb9833981519152606460125460115460646114a39190611e09565b6114ad9190611e09565b6114b79088611dea565b6114c19190611dc8565b60405190815260200160405180910390a36006546011546001600160a01b0391821691871690600080516020611eb9833981519152906064906115049088611dea565b61150e9190611dc8565b60405190815260200160405180910390a3306001600160a01b0316856001600160a01b0316600080516020611eb98339815191526064601254876115529190611dea565b61155c9190611dc8565b60405190815260200160405180910390a3601654600b5461157d9190611db0565b43106115905761158b61173b565b43600b555b611618565b61159f8382611e09565b6001600160a01b0380871660009081526001602052604080822093909355908616815290812080548592906115d5908490611db0565b92505081905550836001600160a01b0316856001600160a01b0316600080516020611eb98339815191528560405161160f91815260200190565b60405180910390a35b5050505050565b6000610f268383611ac5565b6000610b47825490565b6000546001600160a01b03163314610d1b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610282565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60606000610f2683611aef565b600081815260018301602052604081205461173357508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610b47565b506000610b47565b600d5442101561174757565b60006019546017546117599190611e09565b90506000611767601c61162b565b90508015806117765750601754155b806117815750601854155b1561178a575050565b60155481116119125760005b8181101561190d5760006117ab601c8361161f565b6018546001600160a01b0382166000908152601b6020526040812054929350916117d59087611dea565b6117df9190611dc8565b6001600160a01b03831660009081526001602052604081208054929350839290919061180c908490611db0565b90915550503060009081526001602052604081208054839290611830908490611e09565b9250508190555080601960008282546118499190611db0565b90915550506040518181526001600160a01b038316903090600080516020611eb98339815191529060200160405180910390a3604080514381524260208201526001600160a01b03841681830152606081018390526080810185905260a0810185905260e060c082018190526006908201526574797065203160d01b61010082015290517f4d315dfcc35aa11408cca3a114c93773b09adf1d2e88fdbcbd5df15a55371786918190036101200190a15050808061190590611e5b565b915050611796565b505050565b80601454106119215760006014555b60005b60155481101561190d57601454600061193e601c8361161f565b6018546001600160a01b0382166000908152601b6020526040812054929350916119689088611dea565b6119729190611dc8565b6001600160a01b03831660009081526001602052604081208054929350839290919061199f908490611db0565b909155505030600090815260016020526040812080548392906119c3908490611e09565b9250508190555080601960008282546119dc9190611db0565b90915550506040518181526001600160a01b038316903090600080516020611eb98339815191529060200160405180910390a3604080514381524260208201526001600160a01b03841681830152606081018390526080810186905260a0810185905260e060c08201819052600690820152653a3cb832901960d11b61010082015290517f4d315dfcc35aa11408cca3a114c93773b09adf1d2e88fdbcbd5df15a55371786918190036101200190a160148054906000611a9b83611e5b565b91905055508460145410611aaf5760006014555b5050508080611abd90611e5b565b915050611924565b6000826000018281548110611adc57611adc611e8c565b9060005260206000200154905092915050565b606081600001805480602002602001604051908101604052809291908181526020018280548015611b3f57602002820191906000526020600020905b815481526020019060010190808311611b2b575b50505050509050919050565b80356001600160a01b0381168114611b6257600080fd5b919050565b600060208284031215611b7957600080fd5b610f2682611b4b565b60008060408385031215611b9557600080fd5b611b9e83611b4b565b9150611bac60208401611b4b565b90509250929050565b600080600060608486031215611bca57600080fd5b611bd384611b4b565b9250611be160208501611b4b565b9150604084013590509250925092565b60008060408385031215611c0457600080fd5b611c0d83611b4b565b946020939093013593505050565b60006020808385031215611c2e57600080fd5b823567ffffffffffffffff80821115611c4657600080fd5b818501915085601f830112611c5a57600080fd5b813581811115611c6c57611c6c611ea2565b8060051b604051601f19603f83011681018181108582111715611c9157611c91611ea2565b604052828152858101935084860182860187018a1015611cb057600080fd5b600095505b83861015611cd3578035855260019590950194938601938601611cb5565b5098975050505050505050565b600080600060608486031215611cf557600080fd5b8351925060208401519150604084015190509250925092565b6020808252825182820181905260009190848201906040850190845b81811015611d4f5783516001600160a01b031683529284019291840191600101611d2a565b50909695505050505050565b600060208083528351808285015260005b81811015611d8857858101830151858201604001528201611d6c565b81811115611d9a576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115611dc357611dc3611e76565b500190565b600082611de557634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611e0457611e04611e76565b500290565b600082821015611e1b57611e1b611e76565b500390565b600181811c90821680611e3457607f821691505b60208210811415611e5557634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415611e6f57611e6f611e76565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212206ffb81e343e23c58704aa4848c59c9e8310e718e05082e1a7d153c73faad9bc464736f6c63430008070033000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000003585453000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035854530000000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x6080604052600436106102295760003560e01c80638b42426711610123578063ad5c4648116100ab578063d96062501161006f578063d960625014610658578063dd62ed3e1461066d578063e113bc84146106b3578063e9ee2fa9146106c9578063f2fde38b146106df57600080fd5b8063ad5c4648146105d6578063afd2c260146105f6578063c31c9c071461060c578063cd80fe0d1461062c578063d5abeb011461064257600080fd5b806395623641116100f2578063956236411461055557806395d89b41146105755780639b2cb5d81461058a578063a9059cbb146105a0578063a9f8d181146105c057600080fd5b80638b424267146104de5780638da5cb5b146104f45780638e73064f146105125780639107d68e1461052857600080fd5b80633221c93f116101b157806361be47c51161017557806361be47c514610453578063672729991461046857806370a082311461047d57806370a6dea8146104b3578063715018a6146104c957600080fd5b80633221c93f146103db578063333029c9146103fb578063548cbeb01461041157806358aa074e146104275780635ff56f6e1461043d57600080fd5b806318160ddd116101f857806318160ddd1461032557806323b872dd1461033a57806325fb153a1461035a57806326991cc814610387578063313ce567146103bf57600080fd5b806306fdde03146102905780630836b6c8146102bb578063095ea7b3146102df5780630ccf21561461030f57600080fd5b3661028b57600c5442101580156102425750600d544211155b156102515761024f6106ff565b005b60405162461bcd60e51b815260206004820152600a6024820152694e6f7420696e2069646f60b01b60448201526064015b60405180910390fd5b600080fd5b34801561029c57600080fd5b506102a5610aa1565b6040516102b29190611d5b565b60405180910390f35b3480156102c757600080fd5b506102d160105481565b6040519081526020016102b2565b3480156102eb57600080fd5b506102ff6102fa366004611bf1565b610b33565b60405190151581526020016102b2565b34801561031b57600080fd5b506102d160115481565b34801561033157600080fd5b506003546102d1565b34801561034657600080fd5b506102ff610355366004611bb5565b610b4d565b34801561036657600080fd5b5061037a610375366004611c1b565b610b91565b6040516102b29190611d0e565b34801561039357600080fd5b50600a546103a7906001600160a01b031681565b6040516001600160a01b0390911681526020016102b2565b3480156103cb57600080fd5b50604051601281526020016102b2565b3480156103e757600080fd5b506007546103a7906001600160a01b031681565b34801561040757600080fd5b506102d160155481565b34801561041d57600080fd5b506102d160135481565b34801561043357600080fd5b506102d160165481565b34801561044957600080fd5b506102d1600d5481565b34801561045f57600080fd5b506102d1610c5c565b34801561047457600080fd5b5061024f610c6d565b34801561048957600080fd5b506102d1610498366004611b67565b6001600160a01b031660009081526001602052604090205490565b3480156104bf57600080fd5b506102d1600c5481565b3480156104d557600080fd5b5061024f610d09565b3480156104ea57600080fd5b506102d160125481565b34801561050057600080fd5b506000546001600160a01b03166103a7565b34801561051e57600080fd5b506102d160175481565b34801561053457600080fd5b506102d1610543366004611b67565b601b6020526000908152604090205481565b34801561056157600080fd5b506006546103a7906001600160a01b031681565b34801561058157600080fd5b506102a5610d1d565b34801561059657600080fd5b506102d1601a5481565b3480156105ac57600080fd5b506102ff6105bb366004611bf1565b610d2c565b3480156105cc57600080fd5b506102d1600b5481565b3480156105e257600080fd5b506008546103a7906001600160a01b031681565b34801561060257600080fd5b506102d160195481565b34801561061857600080fd5b506009546103a7906001600160a01b031681565b34801561063857600080fd5b506102d1600e5481565b34801561064e57600080fd5b506102d1600f5481565b34801561066457600080fd5b5061037a610d62565b34801561067957600080fd5b506102d1610688366004611b82565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156106bf57600080fd5b506102d160185481565b3480156106d557600080fd5b506102d160145481565b3480156106eb57600080fd5b5061024f6106fa366004611b67565b610d6e565b33321461074e5760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792065787465726e616c2063616c6c7320616c6c6f77656400000000006044820152606401610282565b600e5433906000906107609034611dea565b905080600360008282546107749190611db0565b9091555050600f5460035411156107c05760405162461bcd60e51b815260206004820152601060248201526f657863656564206d6178537570706c7960801b6044820152606401610282565b30600081815260016020908152604080832085905551848152600080516020611eb9833981519152910160405180910390a360006064601354346108049190611dea565b61080e9190611dc8565b905060006064601354846108229190611dea565b61082c9190611dc8565b6009549091506108479030906001600160a01b031683610de4565b60095460075460405163f305d71960e01b81523060048201526024810184905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990849060c4016060604051808303818588803b1580156108b257600080fd5b505af11580156108c6573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906108eb9190611ce0565b50505060006064601054856109009190611dea565b61090a9190611dc8565b6001600160a01b038616600090815260016020526040812080549293508392909190610937908490611db0565b9091555050306000908152600160205260408120805483929061095b908490611e09565b90915550506040518181526001600160a01b038616903090600080516020611eb98339815191529060200160405180910390a36001600160a01b0385166000908152601b6020526040812080548592906109b6908490611db0565b9091555050601a546001600160a01b0386166000908152601b602052604090205410610a47576109e7601c86610f08565b15610a095782601860008282546109fe9190611db0565b90915550610a479050565b610a14601c86610f2d565b506001600160a01b0385166000908152601b60205260408120546018805491929091610a41908490611db0565b90915550505b60408051348152600060208201819052818301526060810183905290516001600160a01b038716917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a25050505050565b606060048054610ab090611e20565b80601f0160208091040260200160405190810160405280929190818152602001828054610adc90611e20565b8015610b295780601f10610afe57610100808354040283529160200191610b29565b820191906000526020600020905b815481529060010190602001808311610b0c57829003601f168201915b5050505050905090565b600033610b41818585610de4565b60019150505b92915050565b600033610b5b858285610f42565b6001600160a01b038416301415610b7b57610b768584610fd4565b610b86565b610b868585856111e1565b506001949350505050565b80516060908067ffffffffffffffff811115610baf57610baf611ea2565b604051908082528060200260200182016040528015610bd8578160200160208202803683370190505b50915060005b81811015610c55576000848281518110610bfa57610bfa611e8c565b60200260200101519050610c1881601c61161f90919063ffffffff16565b848381518110610c2a57610c2a611e8c565b6001600160a01b03909216602092830291909101909101525080610c4d81611e5b565b915050610bde565b5050919050565b6000610c68601c61162b565b905090565b6000546001600160a01b0316331480610c9057506006546001600160a01b031633145b80610ca557506007546001600160a01b031633145b610cda5760405162461bcd60e51b8152600401610282906020808252600490820152636530303160e01b604082015260600190565b60405133904780156108fc02916000818181858888f19350505050158015610d06573d6000803e3d6000fd5b50565b610d11611635565b610d1b600061168f565b565b606060058054610ab090611e20565b60006001600160a01b038316301415610d4e57610d493383610fd4565b610d59565b610d593384846111e1565b50600192915050565b6060610c68601c6116df565b610d76611635565b6001600160a01b038116610ddb5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610282565b610d068161168f565b6001600160a01b038316610e465760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610282565b6001600160a01b038216610ea75760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610282565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b6000610f26836001600160a01b0384166116ec565b6001600160a01b038381166000908152600260209081526040808320938616835292905220546000198114610fce5781811015610fc15760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610282565b610fce8484848403610de4565b50505050565b3332146110235760405162461bcd60e51b815260206004820152601b60248201527f4f6e6c792065787465726e616c2063616c6c7320616c6c6f77656400000000006044820152606401610282565b6000600e54826110339190611dc8565b90506000811161107b5760405162461bcd60e51b815260206004820152601360248201527253656c6c20616d6f756e7420746f6f206c6f7760681b6044820152606401610282565b804710156110cb5760405162461bcd60e51b815260206004820152601c60248201527f496e73756666696369656e742045544820696e207265736572766573000000006044820152606401610282565b6001600160a01b038316600090815260016020526040812080548492906110f3908490611e09565b90915550506000808052600160209081527fa6eef7e35abe7026729641147f7915573c7e97b47efa546f5f6e3230263bcb498490556040518481526001600160a01b03861691600080516020611eb9833981519152910160405180910390a36040516001600160a01b0384169082156108fc029083906000818181858888f19350505050158015611188573d6000803e3d6000fd5b5060408051600080825260208201859052818301849052606082015290516001600160a01b038516917f49926bbebe8474393f434dfa4f78694c0923efa07d19f2284518bfabd06eb737919081900360800190a2505050565b6001600160a01b0382166112435760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610282565b600a546000906001600160a01b03858116911614801561126c57506001600160a01b0383163014155b806112985750600a546001600160a01b03848116911614801561129857506001600160a01b0384163014155b9050600d54421080156112a85750805b156112b35750505050565b6001600160a01b0384166000908152600160205260409020548281101561132b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610282565b81156115955761133b8382611e09565b6001600160a01b038616600090815260016020526040902055601254601154606491906113689083611e09565b6113729190611e09565b61137c9085611dea565b6113869190611dc8565b6001600160a01b038516600090815260016020526040812080549091906113ae908490611db0565b90915550506011546064906113c39085611dea565b6113cd9190611dc8565b6006546001600160a01b0316600090815260016020526040812080549091906113f7908490611db0565b909155505060125460649061140c9085611dea565b6114169190611dc8565b3060009081526001602052604081208054909190611435908490611db0565b909155505060125460649061144a9085611dea565b6114549190611dc8565b601760008282546114659190611db0565b92505081905550836001600160a01b0316856001600160a01b0316600080516020611eb9833981519152606460125460115460646114a39190611e09565b6114ad9190611e09565b6114b79088611dea565b6114c19190611dc8565b60405190815260200160405180910390a36006546011546001600160a01b0391821691871690600080516020611eb9833981519152906064906115049088611dea565b61150e9190611dc8565b60405190815260200160405180910390a3306001600160a01b0316856001600160a01b0316600080516020611eb98339815191526064601254876115529190611dea565b61155c9190611dc8565b60405190815260200160405180910390a3601654600b5461157d9190611db0565b43106115905761158b61173b565b43600b555b611618565b61159f8382611e09565b6001600160a01b0380871660009081526001602052604080822093909355908616815290812080548592906115d5908490611db0565b92505081905550836001600160a01b0316856001600160a01b0316600080516020611eb98339815191528560405161160f91815260200190565b60405180910390a35b5050505050565b6000610f268383611ac5565b6000610b47825490565b6000546001600160a01b03163314610d1b5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610282565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60606000610f2683611aef565b600081815260018301602052604081205461173357508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610b47565b506000610b47565b600d5442101561174757565b60006019546017546117599190611e09565b90506000611767601c61162b565b90508015806117765750601754155b806117815750601854155b1561178a575050565b60155481116119125760005b8181101561190d5760006117ab601c8361161f565b6018546001600160a01b0382166000908152601b6020526040812054929350916117d59087611dea565b6117df9190611dc8565b6001600160a01b03831660009081526001602052604081208054929350839290919061180c908490611db0565b90915550503060009081526001602052604081208054839290611830908490611e09565b9250508190555080601960008282546118499190611db0565b90915550506040518181526001600160a01b038316903090600080516020611eb98339815191529060200160405180910390a3604080514381524260208201526001600160a01b03841681830152606081018390526080810185905260a0810185905260e060c082018190526006908201526574797065203160d01b61010082015290517f4d315dfcc35aa11408cca3a114c93773b09adf1d2e88fdbcbd5df15a55371786918190036101200190a15050808061190590611e5b565b915050611796565b505050565b80601454106119215760006014555b60005b60155481101561190d57601454600061193e601c8361161f565b6018546001600160a01b0382166000908152601b6020526040812054929350916119689088611dea565b6119729190611dc8565b6001600160a01b03831660009081526001602052604081208054929350839290919061199f908490611db0565b909155505030600090815260016020526040812080548392906119c3908490611e09565b9250508190555080601960008282546119dc9190611db0565b90915550506040518181526001600160a01b038316903090600080516020611eb98339815191529060200160405180910390a3604080514381524260208201526001600160a01b03841681830152606081018390526080810186905260a0810185905260e060c08201819052600690820152653a3cb832901960d11b61010082015290517f4d315dfcc35aa11408cca3a114c93773b09adf1d2e88fdbcbd5df15a55371786918190036101200190a160148054906000611a9b83611e5b565b91905055508460145410611aaf5760006014555b5050508080611abd90611e5b565b915050611924565b6000826000018281548110611adc57611adc611e8c565b9060005260206000200154905092915050565b606081600001805480602002602001604051908101604052809291908181526020018280548015611b3f57602002820191906000526020600020905b815481526020019060010190808311611b2b575b50505050509050919050565b80356001600160a01b0381168114611b6257600080fd5b919050565b600060208284031215611b7957600080fd5b610f2682611b4b565b60008060408385031215611b9557600080fd5b611b9e83611b4b565b9150611bac60208401611b4b565b90509250929050565b600080600060608486031215611bca57600080fd5b611bd384611b4b565b9250611be160208501611b4b565b9150604084013590509250925092565b60008060408385031215611c0457600080fd5b611c0d83611b4b565b946020939093013593505050565b60006020808385031215611c2e57600080fd5b823567ffffffffffffffff80821115611c4657600080fd5b818501915085601f830112611c5a57600080fd5b813581811115611c6c57611c6c611ea2565b8060051b604051601f19603f83011681018181108582111715611c9157611c91611ea2565b604052828152858101935084860182860187018a1015611cb057600080fd5b600095505b83861015611cd3578035855260019590950194938601938601611cb5565b5098975050505050505050565b600080600060608486031215611cf557600080fd5b8351925060208401519150604084015190509250925092565b6020808252825182820181905260009190848201906040850190845b81811015611d4f5783516001600160a01b031683529284019291840191600101611d2a565b50909695505050505050565b600060208083528351808285015260005b81811015611d8857858101830151858201604001528201611d6c565b81811115611d9a576000604083870101525b50601f01601f1916929092016040019392505050565b60008219821115611dc357611dc3611e76565b500190565b600082611de557634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611e0457611e04611e76565b500290565b600082821015611e1b57611e1b611e76565b500390565b600181811c90821680611e3457607f821691505b60208210811415611e5557634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415611e6f57611e6f611e76565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fdfeddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212206ffb81e343e23c58704aa4848c59c9e8310e718e05082e1a7d153c73faad9bc464736f6c63430008070033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000c00000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc20000000000000000000000000000000000000000000000000000000000000003585453000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000035854530000000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : name_ (string): XTS
Arg [1] : symbol_ (string): XTS
Arg [2] : _swapRouter (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [3] : _WETH (address): 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
-----Encoded View---------------
8 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000c0
Arg [2] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [3] : 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [5] : 5854530000000000000000000000000000000000000000000000000000000000
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [7] : 5854530000000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
1146:13996:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15000:12;;14981:15;:31;;:64;;;;;15035:10;;15016:15;:29;;14981:64;14977:155;;;15062:5;:3;:5::i;:::-;1146:13996;14977:155;15100:20;;-1:-1:-1;;;15100:20:3;;7897:2:6;15100:20:3;;;7879:21:6;7936:2;7916:18;;;7909:30;-1:-1:-1;;;7955:18:6;;;7948:40;8005:18;;15100:20:3;;;;;;;;1146:13996;;;;5049:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2345:27;;;;;;;;;;;;;;;;;;;10339:25:6;;;10327:2;10312:18;2345:27:3;10193:177:6;5751:217:3;;;;;;;;;;-1:-1:-1;5751:217:3;;;;;:::i;:::-;;:::i;:::-;;;4330:14:6;;4323:22;4305:41;;4293:2;4278:18;5751:217:3;4165:187:6;2379:28:3;;;;;;;;;;;;;;;;5343:99;;;;;;;;;;-1:-1:-1;5422:12:3;;5343:99;;5976:388;;;;;;;;;;-1:-1:-1;5976:388:3;;;;;:::i;:::-;;:::i;14344:368::-;;;;;;;;;;-1:-1:-1;14344:368:3;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;2062:23::-;;;;;;;;;;-1:-1:-1;2062:23:3;;;;-1:-1:-1;;;;;2062:23:3;;;;;;-1:-1:-1;;;;;2846:32:6;;;2828:51;;2816:2;2801:18;2062:23:3;2682:203:6;5251:84:3;;;;;;;;;;-1:-1:-1;5251:84:3;;5325:2;12515:36:6;;12503:2;12488:18;5251:84:3;12373:184:6;1508:31:3;;;;;;;;;;-1:-1:-1;1508:31:3;;;;-1:-1:-1;;;;;1508:31:3;;;2522;;;;;;;;;;;;;;;;2449:33;;;;;;;;;;;;;;;;2560;;;;;;;;;;;;;;;;2185:53;;;;;;;;;;;;;;;;14105:107;;;;;;;;;;;;;:::i;14720:211::-;;;;;;;;;;;;;:::i;5450:118::-;;;;;;;;;;-1:-1:-1;5450:118:3;;;;;:::i;:::-;-1:-1:-1;;;;;5542:18:3;5515:7;5542:18;;;:9;:18;;;;;;;5450:118;2133:45;;;;;;;;;;;;;;;;648:103:5;;;;;;;;;;;;;:::i;2414:28:3:-;;;;;;;;;;;;;;;;413:87:5;;;;;;;;;;-1:-1:-1;459:7:5;486:6;-1:-1:-1;;;;;486:6:5;413:87;;2600:32:3;;;;;;;;;;;;;;;;2767:51;;;;;;;;;;-1:-1:-1;2767:51:3;;;;;:::i;:::-;;;;;;;;;;;;;;1473:28;;;;;;;;;;-1:-1:-1;1473:28:3;;;;-1:-1:-1;;;;;1473:28:3;;;5148:95;;;;;;;;;;;;;:::i;2714:46::-;;;;;;;;;;;;;;;;6372:259;;;;;;;;;;-1:-1:-1;6372:259:3;;;;;:::i;:::-;;:::i;2092:34::-;;;;;;;;;;;;;;;;1546:19;;;;;;;;;;-1:-1:-1;1546:19:3;;;;-1:-1:-1;;;;;1546:19:3;;;2678:29;;;;;;;;;;;;;;;;1572:25;;;;;;;;;;-1:-1:-1;1572:25:3;;;;-1:-1:-1;;;;;1572:25:3;;;2245:33;;;;;;;;;;;;;;;;2285:53;;;;;;;;;;;;;;;;14220:116;;;;;;;;;;;;;:::i;5576:167::-;;;;;;;;;;-1:-1:-1;5576:167:3;;;;;:::i;:::-;-1:-1:-1;;;;;5708:18:3;;;5681:7;5708:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5576:167;2639:32;;;;;;;;;;;;;;;;2489:26;;;;;;;;;;;;;;;;759:201:5;;;;;;;;;;-1:-1:-1;759:201:5;;;;;:::i;:::-;;:::i;11983:1455:3:-;173:10:1;12042:9:3;12026:25;12018:65;;;;-1:-1:-1;;;12018:65:3;;8941:2:6;12018:65:3;;;8923:21:6;8980:2;8960:18;;;8953:30;9019:29;8999:18;;;8992:57;9066:18;;12018:65:3;8739:351:6;12018:65:3;12166:8;;173:10:1;;12094:13:3;;12154:20;;:9;:20;:::i;:::-;12133:41;;12201:10;12185:12;;:26;;;;;;;:::i;:::-;;;;-1:-1:-1;;12246:9:3;;12230:12;;:25;;12222:54;;;;-1:-1:-1;;;12222:54:3;;7145:2:6;12222:54:3;;;7127:21:6;7184:2;7164:18;;;7157:30;-1:-1:-1;;;7203:18:6;;;7196:46;7259:18;;12222:54:3;6943:340:6;12222:54:3;12305:4;12287:24;;;;:9;:24;;;;;;;;:37;;;12340:47;10339:25:6;;;-1:-1:-1;;;;;;;;;;;12340:47:3;10312:18:6;12340:47:3;;;;;;;12398:19;12450:3;12434:13;;12421:9;12420:27;;;;:::i;:::-;:33;;;;:::i;:::-;12398:55;;12464:20;12516:3;12500:13;;12487:10;:26;;;;:::i;:::-;:32;;;;:::i;:::-;12554:10;;12464:55;;-1:-1:-1;12530:49:3;;12547:4;;-1:-1:-1;;;;;12554:10:3;12464:55;12530:8;:49::i;:::-;12602:10;;12751:16;;12590:218;;-1:-1:-1;;;12590:218:3;;12672:4;12590:218;;;3231:34:6;3281:18;;;3274:34;;;12602:10:3;3324:18:6;;;3317:34;;;3367:18;;;3360:34;-1:-1:-1;;;;;12751:16:3;;;3410:19:6;;;3403:44;12782:15:3;3463:19:6;;;3456:35;12602:10:3;;;12590:39;;12637:11;;3165:19:6;;12590:218:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;12819:19;12864:3;12854:7;;12841:10;:20;;;;:::i;:::-;:26;;;;:::i;:::-;-1:-1:-1;;;;;12878:16:3;;;;;;:9;:16;;;;;:31;;12819:48;;-1:-1:-1;12819:48:3;;12878:16;;;:31;;12819:48;;12878:31;:::i;:::-;;;;-1:-1:-1;;12938:4:3;12920:24;;;;:9;:24;;;;;:39;;12948:11;;12920:24;:39;;12948:11;;12920:39;:::i;:::-;;;;-1:-1:-1;;12975:43:3;;10339:25:6;;;-1:-1:-1;;;;;12975:43:3;;;12992:4;;-1:-1:-1;;;;;;;;;;;12975:43:3;10327:2:6;10312:18;12975:43:3;;;;;;;-1:-1:-1;;;;;13029:23:3;;;;;;:16;:23;;;;;:38;;13056:11;;13029:23;:38;;13056:11;;13029:38;:::i;:::-;;;;-1:-1:-1;;13109:9:3;;-1:-1:-1;;;;;13082:23:3;;;;;;:16;:23;;;;;;:36;13078:296;;13139:28;:12;13161:5;13139:21;:28::i;:::-;13135:228;;;13209:11;13188:17;;:32;;;;;;;:::i;:::-;;;;-1:-1:-1;13135:228:3;;-1:-1:-1;13135:228:3;;13261:23;:12;13278:5;13261:16;:23::i;:::-;-1:-1:-1;;;;;;13324:23:3;;;;;;:16;:23;;;;;;13303:17;:44;;13324:23;;13303:17;;:44;;13324:23;;13303:44;:::i;:::-;;;;-1:-1:-1;;13135:228:3;13389:41;;;13401:9;4604:25:6;;13412:1:3;4660:2:6;4645:18;;4638:34;;;4688:18;;;4681:34;4746:2;4731:18;;4724:34;;;13389:41:3;;-1:-1:-1;;;;;13389:41:3;;;;;;;;;4591:3:6;13389:41:3;;;12007:1431;;;;;11983:1455::o;5049:91::-;5094:13;5127:5;5120:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5049:91;:::o;5751:217::-;5850:4;173:10:1;5906:32:3;173:10:1;5922:7:3;5931:6;5906:8;:32::i;:::-;5956:4;5949:11;;;5751:217;;;;;:::o;5976:388::-;6098:4;173:10:1;6156:38:3;6172:4;173:10:1;6187:6:3;6156:15;:38::i;:::-;-1:-1:-1;;;;;6209:19:3;;6223:4;6209:19;6205:130;;;6245:18;6250:4;6256:6;6245:4;:18::i;:::-;6205:130;;;6296:27;6306:4;6312:2;6316:6;6296:9;:27::i;:::-;-1:-1:-1;6352:4:3;;5976:388;-1:-1:-1;;;;5976:388:3:o;14344:368::-;14487:17;;14430:29;;14487:17;14530:19;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14530:19:3;;14515:34;;14565:6;14560:145;14581:4;14577:1;:8;14560:145;;;14607:14;14624:10;14635:1;14624:13;;;;;;;;:::i;:::-;;;;;;;14607:30;;14670:23;14686:6;14670:12;:15;;:23;;;;:::i;:::-;14652:12;14665:1;14652:15;;;;;;;;:::i;:::-;-1:-1:-1;;;;;14652:41:3;;;:15;;;;;;;;;;;:41;-1:-1:-1;14587:3:3;;;;:::i;:::-;;;;14560:145;;;;14461:251;14344:368;;;:::o;14105:107::-;14156:7;14183:21;:12;:19;:21::i;:::-;14176:28;;14105:107;:::o;14720:211::-;459:7:5;486:6;-1:-1:-1;;;;;486:6:5;14766:10:3;:21;;:52;;-1:-1:-1;14805:13:3;;-1:-1:-1;;;;;14805:13:3;14791:10;:27;14766:52;:86;;;-1:-1:-1;14836:16:3;;-1:-1:-1;;;;;14836:16:3;14822:10;:30;14766:86;14758:103;;;;-1:-1:-1;;;14758:103:3;;;;;;10063:2:6;10045:21;;;10102:1;10082:18;;;10075:29;-1:-1:-1;;;10135:2:6;10120:18;;10113:34;10179:2;10164:18;;9861:327;14758:103:3;14872:51;;14880:10;;14901:21;14872:51;;;;;;;;;14901:21;14880:10;14872:51;;;;;;;;;;;;;;;;;;;;;14720:211::o;648:103:5:-;372:13;:11;:13::i;:::-;713:30:::1;740:1;713:18;:30::i;:::-;648:103::o:0;5148:95:3:-;5195:13;5228:7;5221:14;;;;;:::i;6372:259::-;6441:4;-1:-1:-1;;;;;6462:19:3;;6476:4;6462:19;6458:144;;;6498:25;173:10:1;6517:5:3;6498:4;:25::i;:::-;6458:144;;;6556:34;173:10:1;6580:2:3;6584:5;6556:9;:34::i;:::-;-1:-1:-1;6619:4:3;6372:259;;;;:::o;14220:116::-;14271:16;14307:21;:12;:19;:21::i;759:201:5:-;372:13;:11;:13::i;:::-;-1:-1:-1;;;;;848:22:5;::::1;840:73;;;::::0;-1:-1:-1;;;840:73:5;;5977:2:6;840:73:5::1;::::0;::::1;5959:21:6::0;6016:2;5996:18;;;5989:30;6055:34;6035:18;;;6028:62;-1:-1:-1;;;6106:18:6;;;6099:36;6152:19;;840:73:5::1;5775:402:6::0;840:73:5::1;924:28;943:8;924:18;:28::i;6639:380:3:-:0;-1:-1:-1;;;;;6775:19:3;;6767:68;;;;-1:-1:-1;;;6767:68:3;;9658:2:6;6767:68:3;;;9640:21:6;9697:2;9677:18;;;9670:30;9736:34;9716:18;;;9709:62;-1:-1:-1;;;9787:18:6;;;9780:34;9831:19;;6767:68:3;9456:400:6;6767:68:3;-1:-1:-1;;;;;6854:21:3;;6846:68;;;;-1:-1:-1;;;6846:68:3;;6384:2:6;6846:68:3;;;6366:21:6;6423:2;6403:18;;;6396:30;6462:34;6442:18;;;6435:62;-1:-1:-1;;;6513:18:6;;;6506:32;6555:19;;6846:68:3;6182:398:6;6846:68:3;-1:-1:-1;;;;;6927:18:3;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6979:32;;10339:25:6;;;6979:32:3;;10312:18:6;6979:32:3;;;;;;;6639:380;;;:::o;3058:167:2:-;-1:-1:-1;;;;;3192:23:2;;3138:4;1260:19;;;:12;;;:19;;;;;;:24;;3162:55;3155:62;3058:167;-1:-1:-1;;;3058:167:2:o;2732:152::-;2802:4;2826:50;2831:3;-1:-1:-1;;;;;2851:23:2;;2826:4;:50::i;7027:502:3:-;-1:-1:-1;;;;;5708:18:3;;;7162:24;5708:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;7229:37:3;;7225:297;;7329:6;7309:16;:26;;7283:117;;;;-1:-1:-1;;;7283:117:3;;6787:2:6;7283:117:3;;;6769:21:6;6826:2;6806:18;;;6799:30;6865:31;6845:18;;;6838:59;6914:18;;7283:117:3;6585:353:6;7283:117:3;7444:51;7453:5;7460:7;7488:6;7469:16;:25;7444:8;:51::i;:::-;7151:378;7027:502;;;:::o;13446:651::-;173:10:1;13595:9:3;13579:25;13571:65;;;;-1:-1:-1;;;13571:65:3;;8941:2:6;13571:65:3;;;8923:21:6;8980:2;8960:18;;;8953:30;9019:29;8999:18;;;8992:57;9066:18;;13571:65:3;8739:351:6;13571:65:3;13647:17;13676:8;;13667:6;:17;;;;:::i;:::-;13647:37;;13715:1;13703:9;:13;13695:45;;;;-1:-1:-1;;;13695:45:3;;8236:2:6;13695:45:3;;;8218:21:6;8275:2;8255:18;;;8248:30;-1:-1:-1;;;8294:18:6;;;8287:49;8353:18;;13695:45:3;8034:343:6;13695:45:3;13798:9;13773:21;:34;;13751:112;;;;-1:-1:-1;;;13751:112:3;;8584:2:6;13751:112:3;;;8566:21:6;8623:2;8603:18;;;8596:30;8662;8642:18;;;8635:58;8710:18;;13751:112:3;8382:352:6;13751:112:3;-1:-1:-1;;;;;13874:16:3;;;;;;:9;:16;;;;;:26;;13894:6;;13874:16;:26;;13894:6;;13874:26;:::i;:::-;;;;-1:-1:-1;;13911:21:3;;;;:9;:21;;;;;:30;;;:21;13957:35;10339:25:6;;;-1:-1:-1;;;;;13957:35:3;;;-1:-1:-1;;;;;;;;;;;13957:35:3;10312:18:6;13957:35:3;;;;;;;14003:34;;-1:-1:-1;;;;;14003:23:3;;;:34;;;;;14027:9;;14003:34;;;;14027:9;14003:23;:34;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14053:36:3;;;14065:1;4604:25:6;;;4660:2;4645:18;;4638:34;;;4688:18;;;4681:34;;;4746:2;4731:18;;4724:34;14053:36:3;;-1:-1:-1;;;;;14053:36:3;;;;;;;;;4591:3:6;14053:36:3;;;13500:597;13446:651;;:::o;10505:1470::-;-1:-1:-1;;;;;10636:16:3;;10628:64;;;;-1:-1:-1;;;10628:64:3;;5573:2:6;10628:64:3;;;5555:21:6;5612:2;5592:18;;;5585:30;5651:34;5631:18;;;5624:62;-1:-1:-1;;;5702:18:6;;;5695:33;5745:19;;10628:64:3;5371:399:6;10628:64:3;10726:8;;10703:11;;-1:-1:-1;;;;;10718:16:3;;;10726:8;;10718:16;:39;;;;-1:-1:-1;;;;;;10738:19:3;;10752:4;10738:19;;10718:39;10717:86;;;-1:-1:-1;10769:8:3;;-1:-1:-1;;;;;10763:14:3;;;10769:8;;10763:14;:39;;;;-1:-1:-1;;;;;;10781:21:3;;10797:4;10781:21;;10763:39;10703:100;;10836:10;;10818:15;:28;:38;;;;;10850:6;10818:38;10814:77;;;10873:7;10505:1470;;;:::o;10814:77::-;-1:-1:-1;;;;;10923:15:3;;10901:19;10923:15;;;:9;:15;;;;;;10971:21;;;;10949:109;;;;-1:-1:-1;;;10949:109:3;;7490:2:6;10949:109:3;;;7472:21:6;7529:2;7509:18;;;7502:30;7568:34;7548:18;;;7541:62;-1:-1:-1;;;7619:18:6;;;7612:36;7665:19;;10949:109:3;7288:402:6;10949:109:3;11075:6;11071:897;;;11116:20;11130:6;11116:11;:20;:::i;:::-;-1:-1:-1;;;;;11098:15:3;;;;;;:9;:15;;;;;:38;11196:9;;11184;;11209:3;;11196:9;11178:15;;11209:3;11178:15;:::i;:::-;:27;;;;:::i;:::-;11168:38;;:6;:38;:::i;:::-;:44;;;;:::i;:::-;-1:-1:-1;;;;;11151:13:3;;;;;;:9;:13;;;;;:61;;:13;;;:61;;;;;:::i;:::-;;;;-1:-1:-1;;11264:9:3;;11276:3;;11255:18;;:6;:18;:::i;:::-;:24;;;;:::i;:::-;11237:13;;-1:-1:-1;;;;;11237:13:3;11227:24;;;;:9;:24;;;;;:52;;:24;;;:52;;;;;:::i;:::-;;;;-1:-1:-1;;11331:9:3;;11343:3;;11322:18;;:6;:18;:::i;:::-;:24;;;;:::i;:::-;11312:4;11294:24;;;;:9;:24;;;;;:52;;:24;;;:52;;;;;:::i;:::-;;;;-1:-1:-1;;11391:9:3;;11403:3;;11382:18;;:6;:18;:::i;:::-;:24;;;;:::i;:::-;11361:17;;:45;;;;;;;:::i;:::-;;;;;;;;11441:2;-1:-1:-1;;;;;11426:64:3;11435:4;-1:-1:-1;;;;;11426:64:3;-1:-1:-1;;;;;;;;;;;11486:3:3;11473:9;;11461;;11455:3;:15;;;;:::i;:::-;:27;;;;:::i;:::-;11445:38;;:6;:38;:::i;:::-;:44;;;;:::i;:::-;11426:64;;10339:25:6;;;10327:2;10312:18;11426:64:3;;;;;;;11525:13;;11549:9;;-1:-1:-1;;;;;11525:13:3;;;;11510:55;;;-1:-1:-1;;;;;;;;;;;11510:55:3;11561:3;;11540:18;;:6;:18;:::i;:::-;:24;;;;:::i;:::-;11510:55;;10339:25:6;;;10327:2;10312:18;11510:55:3;;;;;;;11608:4;-1:-1:-1;;;;;11585:55:3;11594:4;-1:-1:-1;;;;;11585:55:3;-1:-1:-1;;;;;;;;;;;11636:3:3;11624:9;;11615:6;:18;;;;:::i;:::-;:24;;;;:::i;:::-;11585:55;;10339:25:6;;;10327:2;10312:18;11585:55:3;;;;;;;11693:14;;11675:15;;:32;;;;:::i;:::-;11659:12;:48;11655:147;;11728:9;:7;:9::i;:::-;11774:12;11756:15;:30;11655:147;11071:897;;;11852:20;11866:6;11852:11;:20;:::i;:::-;-1:-1:-1;;;;;11834:15:3;;;;;;;:9;:15;;;;;;:38;;;;11887:13;;;;;;;;:23;;11904:6;;11834:15;11887:23;;11904:6;;11887:23;:::i;:::-;;;;;;;;11945:2;-1:-1:-1;;;;;11930:26:3;11939:4;-1:-1:-1;;;;;11930:26:3;-1:-1:-1;;;;;;;;;;;11949:6:3;11930:26;;;;10339:25:6;;10327:2;10312:18;;10193:177;11930:26:3;;;;;;;;11071:897;10617:1358;;10505:1470;;;:::o;3358:158:2:-;3432:7;3483:22;3487:3;3499:5;3483:3;:22::i;3233:117::-;3296:7;3323:19;3331:3;1383:18;;1300:109;508:132:5;459:7;486:6;-1:-1:-1;;;;;486:6:5;173:10:1;572:23:5;564:68;;;;-1:-1:-1;;;564:68:5;;9297:2:6;564:68:5;;;9279:21:6;;;9316:18;;;9309:30;9375:34;9355:18;;;9348:62;9427:18;;564:68:5;9095:356:6;968:191:5;1042:16;1061:6;;-1:-1:-1;;;;;1078:17:5;;;-1:-1:-1;;;;;;1078:17:5;;;;;;1111:40;;1061:6;;;;;;;1111:40;;1042:16;1111:40;1031:128;968:191;:::o;3524:262:2:-;3587:16;3616:22;3641:19;3649:3;3641:7;:19::i;191:291::-;254:4;1260:19;;;:12;;;:19;;;;;;271:204;;-1:-1:-1;314:23:2;;;;;;;;:11;:23;;;;;;;;;;;;;374:18;;352:19;;;:12;;;:19;;;;;;:40;;;;407:11;;271:204;-1:-1:-1;458:5:2;451:12;;8826:1671:3;8887:10;;8869:15;:28;8865:67;;;8826:1671::o;8865:67::-;8942:17;8982:14;;8962:17;;:34;;;;:::i;:::-;8942:54;;9007:12;9022:21;:12;:19;:21::i;:::-;9007:36;-1:-1:-1;9058:9:3;;;:35;;-1:-1:-1;9071:17:3;;:22;9058:35;:61;;;-1:-1:-1;9097:17:3;;:22;9058:61;9054:100;;;9136:7;;8826:1671::o;9054:100::-;9176:12;;9168:4;:20;9164:574;;9210:9;9205:501;9229:4;9225:1;:8;9205:501;;;9259:13;9275:18;:12;9291:1;9275:15;:18::i;:::-;9368:17;;-1:-1:-1;;;;;9342:23:3;;9312:15;9342:23;;;:16;:23;;;;;;9259:34;;-1:-1:-1;9312:15:3;9330:35;;:9;:35;:::i;:::-;:55;;;;:::i;:::-;-1:-1:-1;;;;;9404:16:3;;;;;;:9;:16;;;;;:27;;9312:73;;-1:-1:-1;9312:73:3;;9404:16;;;:27;;9312:73;;9404:27;:::i;:::-;;;;-1:-1:-1;;9468:4:3;9450:24;;;;:9;:24;;;;;:35;;9478:7;;9450:24;:35;;9478:7;;9450:35;:::i;:::-;;;;;;;;9522:7;9504:14;;:25;;;;;;;:::i;:::-;;;;-1:-1:-1;;9553:39:3;;10339:25:6;;;-1:-1:-1;;;;;9553:39:3;;;9570:4;;-1:-1:-1;;;;;;;;;;;9553:39:3;10327:2:6;10312:18;9553:39:3;;;;;;;9616:74;;;9628:12;11932:25:6;;9642:15:3;11988:2:6;11973:18;;11966:34;-1:-1:-1;;;;;12036:32:6;;12016:18;;;12009:60;12100:2;12085:18;;12078:34;;;12143:3;12128:19;;12121:35;;;12056:3;12172:19;;12165:35;;;12237:3;12231;12216:19;;12209:32;;;12278:1;12257:19;;;12250:30;-1:-1:-1;;;12311:3:6;12296:19;;12289:37;9616:74:3;;;;;;;12358:3:6;9616:74:3;;;9240:466;;9235:3;;;;;:::i;:::-;;;;9205:501;;;;9720:7;;8826:1671::o;9164:574::-;9767:4;9752:11;;:19;9748:67;;9802:1;9788:11;:15;9748:67;9830:9;9825:665;9849:12;;9845:1;:16;9825:665;;;9906:11;;9883:20;9948:29;:12;9906:11;9948:15;:29::i;:::-;10048:17;;-1:-1:-1;;;;;10022:23:3;;9992:15;10022:23;;;:16;:23;;;;;;9932:45;;-1:-1:-1;9992:15:3;10010:35;;:9;:35;:::i;:::-;:55;;;;:::i;:::-;-1:-1:-1;;;;;10080:16:3;;;;;;:9;:16;;;;;:27;;9992:73;;-1:-1:-1;9992:73:3;;10080:16;;;:27;;9992:73;;10080:27;:::i;:::-;;;;-1:-1:-1;;10140:4:3;10122:24;;;;:9;:24;;;;;:35;;10150:7;;10122:24;:35;;10150:7;;10122:35;:::i;:::-;;;;;;;;10190:7;10172:14;;:25;;;;;;;:::i;:::-;;;;-1:-1:-1;;10217:39:3;;10339:25:6;;;-1:-1:-1;;;;;10217:39:3;;;10234:4;;-1:-1:-1;;;;;;;;;;;10217:39:3;10327:2:6;10312:18;10217:39:3;;;;;;;10276:85;;;10288:12;11139:25:6;;10302:15:3;11195:2:6;11180:18;;11173:34;-1:-1:-1;;;;;11243:32:6;;11223:18;;;11216:60;11307:2;11292:18;;11285:34;;;11350:3;11335:19;;11328:35;;;11263:3;11379:19;;11372:35;;;11444:3;11438;11423:19;;11416:32;;;11485:1;11464:19;;;11457:30;-1:-1:-1;;;11518:3:6;11503:19;;11496:37;10276:85:3;;;;;;;11565:3:6;10276:85:3;;;10376:11;:13;;;:11;:13;;;:::i;:::-;;;;;;10423:4;10408:11;;:19;10404:75;;10462:1;10448:11;:15;10404:75;9868:622;;;9863:3;;;;;:::i;:::-;;;;9825:665;;1417:120:2;1484:7;1511:3;:11;;1523:5;1511:18;;;;;;;;:::i;:::-;;;;;;;;;1504:25;;1417:120;;;;:::o;1545:111::-;1601:16;1637:3;:11;;1630:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1545:111;;;:::o;14:173:6:-;82:20;;-1:-1:-1;;;;;131:31:6;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;383:260::-;451:6;459;512:2;500:9;491:7;487:23;483:32;480:52;;;528:1;525;518:12;480:52;551:29;570:9;551:29;:::i;:::-;541:39;;599:38;633:2;622:9;618:18;599:38;:::i;:::-;589:48;;383:260;;;;;:::o;648:328::-;725:6;733;741;794:2;782:9;773:7;769:23;765:32;762:52;;;810:1;807;800:12;762:52;833:29;852:9;833:29;:::i;:::-;823:39;;881:38;915:2;904:9;900:18;881:38;:::i;:::-;871:48;;966:2;955:9;951:18;938:32;928:42;;648:328;;;;;:::o;981:254::-;1049:6;1057;1110:2;1098:9;1089:7;1085:23;1081:32;1078:52;;;1126:1;1123;1116:12;1078:52;1149:29;1168:9;1149:29;:::i;:::-;1139:39;1225:2;1210:18;;;;1197:32;;-1:-1:-1;;;981:254:6:o;1240:1126::-;1324:6;1355:2;1398;1386:9;1377:7;1373:23;1369:32;1366:52;;;1414:1;1411;1404:12;1366:52;1454:9;1441:23;1483:18;1524:2;1516:6;1513:14;1510:34;;;1540:1;1537;1530:12;1510:34;1578:6;1567:9;1563:22;1553:32;;1623:7;1616:4;1612:2;1608:13;1604:27;1594:55;;1645:1;1642;1635:12;1594:55;1681:2;1668:16;1703:2;1699;1696:10;1693:36;;;1709:18;;:::i;:::-;1755:2;1752:1;1748:10;1787:2;1781:9;1850:2;1846:7;1841:2;1837;1833:11;1829:25;1821:6;1817:38;1905:6;1893:10;1890:22;1885:2;1873:10;1870:18;1867:46;1864:72;;;1916:18;;:::i;:::-;1952:2;1945:22;2002:18;;;2036:15;;;;-1:-1:-1;2071:11:6;;;2101;;;2097:20;;2094:33;-1:-1:-1;2091:53:6;;;2140:1;2137;2130:12;2091:53;2162:1;2153:10;;2172:163;2186:2;2183:1;2180:9;2172:163;;;2243:17;;2231:30;;2204:1;2197:9;;;;;2281:12;;;;2313;;2172:163;;;-1:-1:-1;2354:6:6;1240:1126;-1:-1:-1;;;;;;;;1240:1126:6:o;2371:306::-;2459:6;2467;2475;2528:2;2516:9;2507:7;2503:23;2499:32;2496:52;;;2544:1;2541;2534:12;2496:52;2573:9;2567:16;2557:26;;2623:2;2612:9;2608:18;2602:25;2592:35;;2667:2;2656:9;2652:18;2646:25;2636:35;;2371:306;;;;;:::o;3502:658::-;3673:2;3725:21;;;3795:13;;3698:18;;;3817:22;;;3644:4;;3673:2;3896:15;;;;3870:2;3855:18;;;3644:4;3939:195;3953:6;3950:1;3947:13;3939:195;;;4018:13;;-1:-1:-1;;;;;4014:39:6;4002:52;;4109:15;;;;4074:12;;;;4050:1;3968:9;3939:195;;;-1:-1:-1;4151:3:6;;3502:658;-1:-1:-1;;;;;;3502:658:6:o;4769:597::-;4881:4;4910:2;4939;4928:9;4921:21;4971:6;4965:13;5014:6;5009:2;4998:9;4994:18;4987:34;5039:1;5049:140;5063:6;5060:1;5057:13;5049:140;;;5158:14;;;5154:23;;5148:30;5124:17;;;5143:2;5120:26;5113:66;5078:10;;5049:140;;;5207:6;5204:1;5201:13;5198:91;;;5277:1;5272:2;5263:6;5252:9;5248:22;5244:31;5237:42;5198:91;-1:-1:-1;5350:2:6;5329:15;-1:-1:-1;;5325:29:6;5310:45;;;;5357:2;5306:54;;4769:597;-1:-1:-1;;;4769:597:6:o;12562:128::-;12602:3;12633:1;12629:6;12626:1;12623:13;12620:39;;;12639:18;;:::i;:::-;-1:-1:-1;12675:9:6;;12562:128::o;12695:217::-;12735:1;12761;12751:132;;12805:10;12800:3;12796:20;12793:1;12786:31;12840:4;12837:1;12830:15;12868:4;12865:1;12858:15;12751:132;-1:-1:-1;12897:9:6;;12695:217::o;12917:168::-;12957:7;13023:1;13019;13015:6;13011:14;13008:1;13005:21;13000:1;12993:9;12986:17;12982:45;12979:71;;;13030:18;;:::i;:::-;-1:-1:-1;13070:9:6;;12917:168::o;13090:125::-;13130:4;13158:1;13155;13152:8;13149:34;;;13163:18;;:::i;:::-;-1:-1:-1;13200:9:6;;13090:125::o;13220:380::-;13299:1;13295:12;;;;13342;;;13363:61;;13417:4;13409:6;13405:17;13395:27;;13363:61;13470:2;13462:6;13459:14;13439:18;13436:38;13433:161;;;13516:10;13511:3;13507:20;13504:1;13497:31;13551:4;13548:1;13541:15;13579:4;13576:1;13569:15;13433:161;;13220:380;;;:::o;13605:135::-;13644:3;-1:-1:-1;;13665:17:6;;13662:43;;;13685:18;;:::i;:::-;-1:-1:-1;13732:1:6;13721:13;;13605:135::o;13745:127::-;13806:10;13801:3;13797:20;13794:1;13787:31;13837:4;13834:1;13827:15;13861:4;13858:1;13851:15;13877:127;13938:10;13933:3;13929:20;13926:1;13919:31;13969:4;13966:1;13959:15;13993:4;13990:1;13983:15;14009:127;14070:10;14065:3;14061:20;14058:1;14051:31;14101:4;14098:1;14091:15;14125:4;14122:1;14115:15
Swarm Source
ipfs://6ffb81e343e23c58704aa4848c59c9e8310e718e05082e1a7d153c73faad9bc4
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $2,525.99 | 0.00002727 | $0.068888 |
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.