Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 28 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 20191769 | 131 days ago | IN | 0 ETH | 0.0001615 | ||||
Transfer | 17702467 | 480 days ago | IN | 0 ETH | 0.00081261 | ||||
Approve | 17652796 | 487 days ago | IN | 0 ETH | 0.00041438 | ||||
Approve | 17611947 | 493 days ago | IN | 0 ETH | 0.00078253 | ||||
Transfer | 17524000 | 505 days ago | IN | 0 ETH | 0.00096106 | ||||
Approve | 17462066 | 514 days ago | IN | 0 ETH | 0.00082122 | ||||
Transfer | 17421662 | 520 days ago | IN | 0 ETH | 0.00209812 | ||||
Transfer | 17258581 | 543 days ago | IN | 0 ETH | 0.00330777 | ||||
Transfer | 16942666 | 587 days ago | IN | 0 ETH | 0.00166404 | ||||
Approve | 16597717 | 636 days ago | IN | 0 ETH | 0.00115027 | ||||
Approve | 16381151 | 666 days ago | IN | 0 ETH | 0.00081977 | ||||
Approve | 16188348 | 693 days ago | IN | 0 ETH | 0.00069288 | ||||
Approve | 16119687 | 703 days ago | IN | 0 ETH | 0.00159611 | ||||
Approve | 13837955 | 1053 days ago | IN | 0 ETH | 0.00206192 | ||||
Approve | 13836818 | 1053 days ago | IN | 0 ETH | 0.00304002 | ||||
Approve | 13836763 | 1053 days ago | IN | 0 ETH | 0.00421978 | ||||
Approve | 13831443 | 1054 days ago | IN | 0 ETH | 0.00200669 | ||||
Transfer | 13830307 | 1054 days ago | IN | 0 ETH | 0.00249372 | ||||
Transfer | 13829645 | 1055 days ago | IN | 0 ETH | 0.00253579 | ||||
Approve | 13829309 | 1055 days ago | IN | 0 ETH | 0.00196591 | ||||
Transfer | 13829309 | 1055 days ago | IN | 0 ETH | 0.00185206 | ||||
Transfer | 13829309 | 1055 days ago | IN | 0 ETH | 0.0018292 | ||||
Issue | 13829029 | 1055 days ago | IN | 0 ETH | 0.00204367 | ||||
Transfer | 13810649 | 1058 days ago | IN | 0 ETH | 0.00978641 | ||||
Transfer | 13809615 | 1058 days ago | IN | 0 ETH | 0.00447112 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
TetherToken
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2021-12-14 */ // SPDX-License-Identifier: MIT library SafeMath { function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a % b); } } function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return a % b; } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a % b; } } } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _setOwner(_msgSender()); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { _setOwner(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _setOwner(newOwner); } function _setOwner(address newOwner) private { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } // Dependency file: @openzeppelin/contracts/token/ERC20/IERC20.sol // pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ 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); } interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) internal _balances; mapping(address => mapping(address => uint256)) internal _allowances; uint256 private _totalSupply; string private _name; string private _symbol; constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } function name() public view virtual override returns (string memory) { return _name; } function symbol() public view virtual override returns (string memory) { return _symbol; } function decimals() public view virtual override returns (uint8) { return 18; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(_msgSender(), spender, currentAllowance - subtractedValue); } return true; } function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); uint256 senderBalance = _balances[sender]; require(senderBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[sender] = senderBalance - amount; } _balances[recipient] += amount; emit Transfer(sender, recipient, amount); _afterTokenTransfer(sender, recipient, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; _balances[account] += amount; emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; } _totalSupply -= amount; emit Transfer(account, address(0), amount); _afterTokenTransfer(account, address(0), amount); } 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 _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } // Root file: contracts/TetherToken.sol pragma solidity ^0.8.4; /** * @title Standard ERC20 token * * @dev Implementation of the basic standard token. * @dev https://github.com/ethereum/EIPs/issues/20 * @dev Based oncode by FirstBlood: https://github.com/Firstbloodio/token/blob/master/smart_contract/FirstBloodToken.sol */ contract StandardToken is ERC20, Ownable { using SafeMath for uint; uint public constant MAX_UINT = 2**256 - 1; // additional variables for use if transaction fees ever became necessary uint public basisPointsRate = 0; uint public maximumFee = 0; /** * @dev Fix for the ERC20 short address attack. */ modifier onlyPayloadSize(uint size) { require(!(msg.data.length < size + 4)); _; } constructor(string memory name_, string memory symbol_) ERC20(name_, symbol_) {} /** * @dev transfer token for a specified address * @param _to The address to transfer to. * @param _value The amount to be transferred. */ function transfer(address _to, uint _value) public virtual override onlyPayloadSize(2 * 32) returns (bool) { uint fee = (_value.mul(basisPointsRate)).div(10000); if (fee > maximumFee) { fee = maximumFee; } uint sendAmount = _value.sub(fee); _balances[msg.sender] = _balances[msg.sender].sub(_value); _balances[_to] = _balances[_to].add(sendAmount); if (fee > 0) { _balances[owner()] = _balances[owner()].add(fee); emit Transfer(msg.sender, owner(), fee); } emit Transfer(msg.sender, _to, sendAmount); return true; } /** * @dev Gets the balance of the specified address. * @param _owner The address to query the the balance of. * @return balance An uint representing the amount owned by the passed address. */ function balanceOf(address _owner) public view virtual override returns (uint balance) { return _balances[_owner]; } /** * @dev Transfer tokens from one address to another * @param _from address The address which you want to send tokens from * @param _to address The address which you want to transfer to * @param _value uint the amount of tokens to be transferred */ function transferFrom(address _from, address _to, uint _value) public virtual override onlyPayloadSize(3 * 32) returns (bool) { uint _allowance = _allowances[_from][msg.sender]; // Check is not needed because sub(_allowance, _value) will already throw if this condition is not met // if (_value > _allowance) throw; uint fee = (_value.mul(basisPointsRate)).div(10000); if (fee > maximumFee) { fee = maximumFee; } if (_allowance < MAX_UINT) { _allowances[_from][msg.sender] = _allowance.sub(_value); } uint sendAmount = _value.sub(fee); _balances[_from] = _balances[_from].sub(_value); _balances[_to] = _balances[_to].add(sendAmount); if (fee > 0) { _balances[owner()] = _balances[owner()].add(fee); emit Transfer(_from, owner(), fee); } emit Transfer(_from, _to, sendAmount); return true; } /** * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender. * @param _spender The address which will spend the funds. * @param _value The amount of tokens to be spent. */ function approve(address _spender, uint _value) public virtual override onlyPayloadSize(2 * 32) returns (bool) { // To change the approve amount you first have to reduce the addresses` // allowance to zero by calling `approve(_spender, 0)` if it is not // already 0 to mitigate the race condition described here: // https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 require(!((_value != 0) && (_allowances[msg.sender][_spender] != 0))); _allowances[msg.sender][_spender] = _value; emit Approval(msg.sender, _spender, _value); return true; } /** * @dev Function to check the amount of tokens than an owner() allowed to a spender. * @param _owner address The address which owns the funds. * @param _spender address The address which will spend the funds. * @return remaining A uint specifying the amount of tokens still available for the spender. */ function allowance(address _owner, address _spender) public view virtual override returns (uint remaining) { return _allowances[_owner][_spender]; } } /** * @title Pausable * @dev Base contract which allows children to implement an emergency stop mechanism. */ abstract contract Pausable is Ownable { event Pause(); event Unpause(); bool public paused = false; /** * @dev Modifier to make a function callable only when the contract is not paused. */ modifier whenNotPaused() { require(!paused); _; } /** * @dev Modifier to make a function callable only when the contract is paused. */ modifier whenPaused() { require(paused); _; } /** * @dev called by the owner() to pause, triggers stopped state */ function pause() onlyOwner whenNotPaused public { paused = true; emit Pause(); } /** * @dev called by the owner() to unpause, returns to normal state */ function unpause() onlyOwner whenPaused public { paused = false; emit Unpause(); } } abstract contract BlackList is Ownable, StandardToken { event DestroyedBlackFunds(address _blackListedUser, uint _balance); event AddedBlackList(address _user); event RemovedBlackList(address _user); mapping (address => bool) public isBlackListed; /////// Getters to allow the same blacklist to be used also by other contracts (including upgraded Tether) /////// function getBlackListStatus(address _maker) external view returns (bool) { return isBlackListed[_maker]; } function addBlackList(address _evilUser) public onlyOwner { isBlackListed[_evilUser] = true; emit AddedBlackList(_evilUser); } function removeBlackList(address _clearedUser) public onlyOwner { isBlackListed[_clearedUser] = false; emit RemovedBlackList(_clearedUser); } function destroyBlackFunds(address _blackListedUser) public onlyOwner { require(isBlackListed[_blackListedUser]); uint dirtyFunds = balanceOf(_blackListedUser); _burn(_blackListedUser, dirtyFunds); emit DestroyedBlackFunds(_blackListedUser, dirtyFunds); } } interface UpgradedStandardToken is IERC20 { // those methods are called by the legacy contract // and they must ensure msg.sender to be the contract address function transferByLegacy(address from, address to, uint value) external; function transferFromByLegacy(address sender, address from, address spender, uint value) external; function approveByLegacy(address from, address spender, uint value) external; } contract TetherToken is Pausable, StandardToken, BlackList { using SafeMath for uint; uint8 private _decimals; address public upgradedAddress; bool public deprecated; // Called when new token are issued event Issue(uint amount); // Called when tokens are redeemed event Redeem(uint amount); // Called when contract is deprecated event Deprecate(address newAddress); // Called if contract ever adds fees event Params(uint feeBasisPoints, uint maxFee); // The contract can be initialized with a number of tokens // All the tokens are deposited to the owner() address // // @param _balance Initial supply of the contract // @param _name Token Name // @param _symbol Token symbol // @param _decimals Token decimals constructor(string memory _name, string memory _symbol, uint8 __decimals) StandardToken(_name, _symbol) { require(__decimals <= 18, "Very high decimal"); _decimals = __decimals; deprecated = false; } function decimals() public view virtual override returns (uint8) { return _decimals; } // Forward ERC20 methods to upgraded contract if this one is deprecated function transfer(address _to, uint _value) public override whenNotPaused returns (bool) { require(!isBlackListed[msg.sender]); if (deprecated) { UpgradedStandardToken(upgradedAddress).transferByLegacy(msg.sender, _to, _value); } else { return super.transfer(_to, _value); } return true; } // Forward ERC20 methods to upgraded contract if this one is deprecated function transferFrom(address _from, address _to, uint _value) public override whenNotPaused returns (bool) { require(!isBlackListed[_from]); if (deprecated) { UpgradedStandardToken(upgradedAddress).transferFromByLegacy(msg.sender, _from, _to, _value); } else { return super.transferFrom(_from, _to, _value); } return true; } // Forward ERC20 methods to upgraded contract if this one is deprecated function balanceOf(address who) public view override returns (uint) { if (deprecated) { return UpgradedStandardToken(upgradedAddress).balanceOf(who); } else { return super.balanceOf(who); } } // Forward ERC20 methods to upgraded contract if this one is deprecated function approve(address _spender, uint _value) public override onlyPayloadSize(2 * 32) returns (bool) { if (deprecated) { UpgradedStandardToken(upgradedAddress).approveByLegacy(msg.sender, _spender, _value); } else { return super.approve(_spender, _value); } return true; } // Forward ERC20 methods to upgraded contract if this one is deprecated function allowance(address _owner, address _spender) public view override returns (uint remaining) { if (deprecated) { return StandardToken(upgradedAddress).allowance(_owner, _spender); } else { return super.allowance(_owner, _spender); } } // deprecate current contract in favour of a new one function deprecate(address _upgradedAddress) public onlyOwner { deprecated = true; upgradedAddress = _upgradedAddress; emit Deprecate(_upgradedAddress); } // deprecate current contract if favour of a new one function totalSupply() public view override returns (uint) { if (deprecated) { return StandardToken(upgradedAddress).totalSupply(); } else { return super.totalSupply(); } } // Issue a new amount of tokens // these tokens are deposited into the owner() address // // @param _amount Number of tokens to be issued function issue(uint amount) public onlyOwner { _mint(owner(), amount); emit Issue(amount); } // Redeem tokens. // These tokens are withdrawn from the owner() address // if the balance must be enough to cover the redeem // or the call will fail. // @param _amount Number of tokens to be issued function redeem(uint amount) public onlyOwner { _burn(owner(), amount); emit Redeem(amount); } function setParams(uint newBasisPoints, uint newMaxFee) public onlyOwner { // Ensure transparency by hardcoding limit beyond which fees can never be added require(newBasisPoints < 20); require(newMaxFee < 50); basisPointsRate = newBasisPoints; maximumFee = newMaxFee.mul(10**decimals()); emit Params(basisPointsRate, maximumFee); } }
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":"uint8","name":"__decimals","type":"uint8"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_user","type":"address"}],"name":"AddedBlackList","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"newAddress","type":"address"}],"name":"Deprecate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_blackListedUser","type":"address"},{"indexed":false,"internalType":"uint256","name":"_balance","type":"uint256"}],"name":"DestroyedBlackFunds","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Issue","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":false,"internalType":"uint256","name":"feeBasisPoints","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"maxFee","type":"uint256"}],"name":"Params","type":"event"},{"anonymous":false,"inputs":[],"name":"Pause","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Redeem","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"_user","type":"address"}],"name":"RemovedBlackList","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":[],"name":"Unpause","type":"event"},{"inputs":[],"name":"MAX_UINT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_evilUser","type":"address"}],"name":"addBlackList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"remaining","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"who","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"basisPointsRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_upgradedAddress","type":"address"}],"name":"deprecate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deprecated","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_blackListedUser","type":"address"}],"name":"destroyBlackFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_maker","type":"address"}],"name":"getBlackListStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBlackListed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"issue","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maximumFee","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":"pause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"paused","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"redeem","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_clearedUser","type":"address"}],"name":"removeBlackList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBasisPoints","type":"uint256"},{"internalType":"uint256","name":"newMaxFee","type":"uint256"}],"name":"setParams","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"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":"_value","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":[],"name":"unpause","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"upgradedAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040526005805460ff60a01b19169055600060068190556007553480156200002857600080fd5b506040516200255a3803806200255a8339810160408190526200004b91620002be565b8282818181600390805190602001906200006792919062000161565b5080516200007d90600490602084019062000161565b5050506200009a620000946200010b60201b60201c565b6200010f565b505060128160ff161115620000e95760405162461bcd60e51b815260206004820152601160248201527015995c9e481a1a59da08191958da5b585b607a1b604482015260640160405180910390fd5b6009805460ff60ff60a81b01191660ff90921691909117905550620003969050565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b8280546200016f9062000343565b90600052602060002090601f016020900481019282620001935760008555620001de565b82601f10620001ae57805160ff1916838001178555620001de565b82800160010185558215620001de579182015b82811115620001de578251825591602001919060010190620001c1565b50620001ec929150620001f0565b5090565b5b80821115620001ec5760008155600101620001f1565b600082601f8301126200021957600080fd5b81516001600160401b038082111562000236576200023662000380565b604051601f8301601f19908116603f0116810190828211818310171562000261576200026162000380565b816040528381526020925086838588010111156200027e57600080fd5b600091505b83821015620002a2578582018301518183018401529082019062000283565b83821115620002b45760008385830101525b9695505050505050565b600080600060608486031215620002d457600080fd5b83516001600160401b0380821115620002ec57600080fd5b620002fa8783880162000207565b945060208601519150808211156200031157600080fd5b50620003208682870162000207565b925050604084015160ff811681146200033857600080fd5b809150509250925092565b600181811c908216806200035857607f821691505b602082108114156200037a57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052604160045260246000fd5b6121b480620003a66000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c8063715018a61161010f578063db006a75116100a2578063e4997dc511610071578063e4997dc514610436578063e5b5019a14610449578063f2fde38b14610470578063f3bdc2281461048357600080fd5b8063db006a75146103e4578063dd62ed3e146103f7578063dd644f721461040a578063e47d60601461041357600080fd5b8063a457c2d7116100de578063a457c2d714610398578063a9059cbb146103ab578063c0324c77146103be578063cc872b66146103d157600080fd5b8063715018a61461036f5780638456cb59146103775780638da5cb5b1461037f57806395d89b411461039057600080fd5b806326976e3f116101875780633f4ba83a116101565780633f4ba83a1461030357806359bf1abe1461030b5780635c975abb1461033757806370a082311461035c57600080fd5b806326976e3f146102a2578063313ce567146102d257806335390714146102e757806339509351146102f057600080fd5b80630e136b19116101c35780630e136b19146102405780630ecb93c01461026657806318160ddd1461027957806323b872dd1461028f57600080fd5b806306fdde03146101ea5780630753c30c14610208578063095ea7b31461021d575b600080fd5b6101f2610496565b6040516101ff9190611eb7565b60405180910390f35b61021b610216366004611daf565b610528565b005b61023061022b366004611e39565b610622565b60405190151581526020016101ff565b600954610230907501000000000000000000000000000000000000000000900460ff1681565b61021b610274366004611daf565b61070e565b6102816107da565b6040519081526020016101ff565b61023061029d366004611dfd565b610893565b6009546102ba9061010090046001600160a01b031681565b6040516001600160a01b0390911681526020016101ff565b60095460405160ff90911681526020016101ff565b61028160075481565b6102306102fe366004611e39565b6109bd565b61021b610a03565b610230610319366004611daf565b6001600160a01b031660009081526008602052604090205460ff1690565b6005546102309074010000000000000000000000000000000000000000900460ff1681565b61028161036a366004611daf565b610ad7565b61021b610bbd565b61021b610c23565b6005546001600160a01b03166102ba565b6101f2610d0f565b6102306103a6366004611e39565b610d1e565b6102306103b9366004611e39565b610dc5565b61021b6103cc366004611e95565b610ed2565b61021b6103df366004611e63565b610fb6565b61021b6103f2366004611e63565b61105b565b610281610405366004611dca565b611100565b61028160065481565b610230610421366004611daf565b60086020526000908152604090205460ff1681565b61021b610444366004611daf565b6111f6565b6102817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b61021b61047e366004611daf565b6112bf565b61021b610491366004611daf565b6113a1565b6060600380546104a5906120fb565b80601f01602080910402602001604051908101604052809291908181526020018280546104d1906120fb565b801561051e5780601f106104f35761010080835404028352916020019161051e565b820191906000526020600020905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b6005546001600160a01b031633146105875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600980546001600160a01b038316610100027fffffffffffffffffffff000000000000000000000000000000000000000000ff9091161775010000000000000000000000000000000000000000001790556040517fcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e906106179083906001600160a01b0391909116815260200190565b60405180910390a150565b60006040610631816004611f2a565b36101561063d57600080fd5b6009547501000000000000000000000000000000000000000000900460ff16156106f1576009546040517faee92d330000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038681166024830152604482018690526101009092049091169063aee92d3390606401600060405180830381600087803b1580156106d457600080fd5b505af11580156106e8573d6000803e3d6000fd5b50505050610702565b6106fb8484611476565b9150610707565b600191505b5092915050565b6005546001600160a01b031633146107685760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6001600160a01b03811660008181526008602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905590519182527f42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc9101610617565b6009546000907501000000000000000000000000000000000000000000900460ff161561088c57600960019054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561084f57600080fd5b505afa158015610863573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108879190611e7c565b905090565b5060025490565b60055460009074010000000000000000000000000000000000000000900460ff16156108be57600080fd5b6001600160a01b03841660009081526008602052604090205460ff16156108e457600080fd5b6009547501000000000000000000000000000000000000000000900460ff16156109a0576009546040517f8b477adb0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b03868116602483015285811660448301526064820185905261010090920490911690638b477adb90608401600060405180830381600087803b15801561098357600080fd5b505af1158015610997573d6000803e3d6000fd5b505050506109b2565b6109ab848484611531565b90506109b6565b5060015b9392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109f99185906109f4908690611f2a565b611799565b5060015b92915050565b6005546001600160a01b03163314610a5d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b60055474010000000000000000000000000000000000000000900460ff16610a8457600080fd5b600580547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b6009546000907501000000000000000000000000000000000000000000900460ff1615610b9a576009546040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152610100909204909116906370a082319060240160206040518083038186803b158015610b6257600080fd5b505afa158015610b76573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fd9190611e7c565b6001600160a01b0382166000908152602081905260409020546109fd565b919050565b6005546001600160a01b03163314610c175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b610c2160006118f2565b565b6005546001600160a01b03163314610c7d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b60055474010000000000000000000000000000000000000000900460ff1615610ca557600080fd5b600580547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b6060600480546104a5906120fb565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610db85760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f000000000000000000000000000000000000000000000000000000606482015260840161057e565b6107023385858403611799565b60055460009074010000000000000000000000000000000000000000900460ff1615610df057600080fd5b3360009081526008602052604090205460ff1615610e0d57600080fd5b6009547501000000000000000000000000000000000000000000900460ff1615610ec1576009546040517f6e18980a0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0385811660248301526044820185905261010090920490911690636e18980a90606401600060405180830381600087803b158015610ea457600080fd5b505af1158015610eb8573d6000803e3d6000fd5b505050506109f9565b610ecb838361195c565b90506109fd565b6005546001600160a01b03163314610f2c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b60148210610f3957600080fd5b60328110610f4657600080fd5b6006829055610f6c610f5a60095460ff1690565b610f6590600a611fde565b8290611b0c565b60078190556006546040517fb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e92610faa928252602082015260400190565b60405180910390a15050565b6005546001600160a01b031633146110105760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b61102b6110256005546001600160a01b031690565b82611b18565b6040518181527fcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a90602001610617565b6005546001600160a01b031633146110b55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6110d06110ca6005546001600160a01b031690565b82611bf7565b6040518181527f702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a4490602001610617565b6009546000907501000000000000000000000000000000000000000000900460ff16156111cb576009546040517fdd62ed3e0000000000000000000000000000000000000000000000000000000081526001600160a01b03858116600483015284811660248301526101009092049091169063dd62ed3e9060440160206040518083038186803b15801561119357600080fd5b505afa1580156111a7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ecb9190611e7c565b6001600160a01b03808416600090815260016020908152604080832093861683529290522054610ecb565b6005546001600160a01b031633146112505760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6001600160a01b03811660008181526008602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905590519182527fd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c9101610617565b6005546001600160a01b031633146113195760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6001600160a01b0381166113955760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161057e565b61139e816118f2565b50565b6005546001600160a01b031633146113fb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6001600160a01b03811660009081526008602052604090205460ff1661142057600080fd5b600061142b82610ad7565b90506114378282611bf7565b604080516001600160a01b0384168152602081018390527f61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c69101610faa565b60006040611485816004611f2a565b36101561149157600080fd5b82158015906114c257503360009081526001602090815260408083206001600160a01b038816845290915290205415155b156114cc57600080fd5b3360008181526001602090815260408083206001600160a01b03891680855290835292819020879055518681529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060019392505050565b60006060611540816004611f2a565b36101561154c57600080fd5b6001600160a01b038516600090815260016020908152604080832033845290915281205460065490919061158f9061271090611589908890611b0c565b90611d74565b90506007548111156115a057506007545b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8210156115f7576115d28286611d80565b6001600160a01b03881660009081526001602090815260408083203384529091529020555b60006116038683611d80565b6001600160a01b0389166000908152602081905260409020549091506116299087611d80565b6001600160a01b03808a1660009081526020819052604080822093909355908916815220546116589082611d8c565b6001600160a01b038816600090815260208190526040902055811561173e576116b0826000806116906005546001600160a01b031690565b6001600160a01b0316815260208101919091526040016000205490611d8c565b6000806116c56005546001600160a01b031690565b6001600160a01b031681526020810191909152604001600020556116f16005546001600160a01b031690565b6001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161173591815260200190565b60405180910390a35b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161178391815260200190565b60405180910390a3506001979650505050505050565b6001600160a01b0383166118145760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161057e565b6001600160a01b0382166118905760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161057e565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000604061196b816004611f2a565b36101561197757600080fd5b600061199461271061158960065487611b0c90919063ffffffff16565b90506007548111156119a557506007545b60006119b18583611d80565b336000908152602081905260409020549091506119ce9086611d80565b33600090815260208190526040808220929092556001600160a01b038816815220546119fa9082611d8c565b6001600160a01b0387166000908152602081905260409020558115611ac057611a32826000806116906005546001600160a01b031690565b600080611a476005546001600160a01b031690565b6001600160a01b03168152602081019190915260400160002055611a736005546001600160a01b031690565b6001600160a01b0316336001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611ab791815260200190565b60405180910390a35b6040518181526001600160a01b0387169033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350600195945050505050565b60006109b682846120a7565b6001600160a01b038216611b6e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161057e565b8060026000828254611b809190611f2a565b90915550506001600160a01b03821660009081526020819052604081208054839290611bad908490611f2a565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b038216611c735760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015260840161057e565b6001600160a01b03821660009081526020819052604090205481811015611d025760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f6365000000000000000000000000000000000000000000000000000000000000606482015260840161057e565b6001600160a01b0383166000908152602081905260408120838303905560028054849290611d319084906120e4565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020016118e5565b60006109b68284611f42565b60006109b682846120e4565b60006109b68284611f2a565b80356001600160a01b0381168114610bb857600080fd5b600060208284031215611dc157600080fd5b6109b682611d98565b60008060408385031215611ddd57600080fd5b611de683611d98565b9150611df460208401611d98565b90509250929050565b600080600060608486031215611e1257600080fd5b611e1b84611d98565b9250611e2960208501611d98565b9150604084013590509250925092565b60008060408385031215611e4c57600080fd5b611e5583611d98565b946020939093013593505050565b600060208284031215611e7557600080fd5b5035919050565b600060208284031215611e8e57600080fd5b5051919050565b60008060408385031215611ea857600080fd5b50508035926020909101359150565b600060208083528351808285015260005b81811015611ee457858101830151858201604001528201611ec8565b81811115611ef6576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b60008219821115611f3d57611f3d61214f565b500190565b600082611f78577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600181815b80851115611fd657817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611fbc57611fbc61214f565b80851615611fc957918102915b93841c9390800290611f82565b509250929050565b60006109b660ff841683600082611ff7575060016109fd565b81612004575060006109fd565b816001811461201a576002811461202457612040565b60019150506109fd565b60ff8411156120355761203561214f565b50506001821b6109fd565b5060208310610133831016604e8410600b8410161715612063575081810a6109fd565b61206d8383611f7d565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561209f5761209f61214f565b029392505050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156120df576120df61214f565b500290565b6000828210156120f6576120f661214f565b500390565b600181811c9082168061210f57607f821691505b60208210811415612149577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea264697066735822122068db92241a97d707545b5518478b739c3fae8ceacf67d2d5bc4968ca90b57eae64736f6c63430008070033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a546574686572205553440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045553445400000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101e55760003560e01c8063715018a61161010f578063db006a75116100a2578063e4997dc511610071578063e4997dc514610436578063e5b5019a14610449578063f2fde38b14610470578063f3bdc2281461048357600080fd5b8063db006a75146103e4578063dd62ed3e146103f7578063dd644f721461040a578063e47d60601461041357600080fd5b8063a457c2d7116100de578063a457c2d714610398578063a9059cbb146103ab578063c0324c77146103be578063cc872b66146103d157600080fd5b8063715018a61461036f5780638456cb59146103775780638da5cb5b1461037f57806395d89b411461039057600080fd5b806326976e3f116101875780633f4ba83a116101565780633f4ba83a1461030357806359bf1abe1461030b5780635c975abb1461033757806370a082311461035c57600080fd5b806326976e3f146102a2578063313ce567146102d257806335390714146102e757806339509351146102f057600080fd5b80630e136b19116101c35780630e136b19146102405780630ecb93c01461026657806318160ddd1461027957806323b872dd1461028f57600080fd5b806306fdde03146101ea5780630753c30c14610208578063095ea7b31461021d575b600080fd5b6101f2610496565b6040516101ff9190611eb7565b60405180910390f35b61021b610216366004611daf565b610528565b005b61023061022b366004611e39565b610622565b60405190151581526020016101ff565b600954610230907501000000000000000000000000000000000000000000900460ff1681565b61021b610274366004611daf565b61070e565b6102816107da565b6040519081526020016101ff565b61023061029d366004611dfd565b610893565b6009546102ba9061010090046001600160a01b031681565b6040516001600160a01b0390911681526020016101ff565b60095460405160ff90911681526020016101ff565b61028160075481565b6102306102fe366004611e39565b6109bd565b61021b610a03565b610230610319366004611daf565b6001600160a01b031660009081526008602052604090205460ff1690565b6005546102309074010000000000000000000000000000000000000000900460ff1681565b61028161036a366004611daf565b610ad7565b61021b610bbd565b61021b610c23565b6005546001600160a01b03166102ba565b6101f2610d0f565b6102306103a6366004611e39565b610d1e565b6102306103b9366004611e39565b610dc5565b61021b6103cc366004611e95565b610ed2565b61021b6103df366004611e63565b610fb6565b61021b6103f2366004611e63565b61105b565b610281610405366004611dca565b611100565b61028160065481565b610230610421366004611daf565b60086020526000908152604090205460ff1681565b61021b610444366004611daf565b6111f6565b6102817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81565b61021b61047e366004611daf565b6112bf565b61021b610491366004611daf565b6113a1565b6060600380546104a5906120fb565b80601f01602080910402602001604051908101604052809291908181526020018280546104d1906120fb565b801561051e5780601f106104f35761010080835404028352916020019161051e565b820191906000526020600020905b81548152906001019060200180831161050157829003601f168201915b5050505050905090565b6005546001600160a01b031633146105875760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b600980546001600160a01b038316610100027fffffffffffffffffffff000000000000000000000000000000000000000000ff9091161775010000000000000000000000000000000000000000001790556040517fcc358699805e9a8b7f77b522628c7cb9abd07d9efb86b6fb616af1609036a99e906106179083906001600160a01b0391909116815260200190565b60405180910390a150565b60006040610631816004611f2a565b36101561063d57600080fd5b6009547501000000000000000000000000000000000000000000900460ff16156106f1576009546040517faee92d330000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b038681166024830152604482018690526101009092049091169063aee92d3390606401600060405180830381600087803b1580156106d457600080fd5b505af11580156106e8573d6000803e3d6000fd5b50505050610702565b6106fb8484611476565b9150610707565b600191505b5092915050565b6005546001600160a01b031633146107685760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6001600160a01b03811660008181526008602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905590519182527f42e160154868087d6bfdc0ca23d96a1c1cfa32f1b72ba9ba27b69b98a0d819dc9101610617565b6009546000907501000000000000000000000000000000000000000000900460ff161561088c57600960019054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561084f57600080fd5b505afa158015610863573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108879190611e7c565b905090565b5060025490565b60055460009074010000000000000000000000000000000000000000900460ff16156108be57600080fd5b6001600160a01b03841660009081526008602052604090205460ff16156108e457600080fd5b6009547501000000000000000000000000000000000000000000900460ff16156109a0576009546040517f8b477adb0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b03868116602483015285811660448301526064820185905261010090920490911690638b477adb90608401600060405180830381600087803b15801561098357600080fd5b505af1158015610997573d6000803e3d6000fd5b505050506109b2565b6109ab848484611531565b90506109b6565b5060015b9392505050565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916109f99185906109f4908690611f2a565b611799565b5060015b92915050565b6005546001600160a01b03163314610a5d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b60055474010000000000000000000000000000000000000000900460ff16610a8457600080fd5b600580547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff1690556040517f7805862f689e2f13df9f062ff482ad3ad112aca9e0847911ed832e158c525b3390600090a1565b6009546000907501000000000000000000000000000000000000000000900460ff1615610b9a576009546040517f70a082310000000000000000000000000000000000000000000000000000000081526001600160a01b038481166004830152610100909204909116906370a082319060240160206040518083038186803b158015610b6257600080fd5b505afa158015610b76573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109fd9190611e7c565b6001600160a01b0382166000908152602081905260409020546109fd565b919050565b6005546001600160a01b03163314610c175760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b610c2160006118f2565b565b6005546001600160a01b03163314610c7d5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b60055474010000000000000000000000000000000000000000900460ff1615610ca557600080fd5b600580547fffffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000001790556040517f6985a02210a168e66602d3235cb6db0e70f92b3ba4d376a33c0f3d9434bff62590600090a1565b6060600480546104a5906120fb565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610db85760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f000000000000000000000000000000000000000000000000000000606482015260840161057e565b6107023385858403611799565b60055460009074010000000000000000000000000000000000000000900460ff1615610df057600080fd5b3360009081526008602052604090205460ff1615610e0d57600080fd5b6009547501000000000000000000000000000000000000000000900460ff1615610ec1576009546040517f6e18980a0000000000000000000000000000000000000000000000000000000081523360048201526001600160a01b0385811660248301526044820185905261010090920490911690636e18980a90606401600060405180830381600087803b158015610ea457600080fd5b505af1158015610eb8573d6000803e3d6000fd5b505050506109f9565b610ecb838361195c565b90506109fd565b6005546001600160a01b03163314610f2c5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b60148210610f3957600080fd5b60328110610f4657600080fd5b6006829055610f6c610f5a60095460ff1690565b610f6590600a611fde565b8290611b0c565b60078190556006546040517fb044a1e409eac5c48e5af22d4af52670dd1a99059537a78b31b48c6500a6354e92610faa928252602082015260400190565b60405180910390a15050565b6005546001600160a01b031633146110105760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b61102b6110256005546001600160a01b031690565b82611b18565b6040518181527fcb8241adb0c3fdb35b70c24ce35c5eb0c17af7431c99f827d44a445ca624176a90602001610617565b6005546001600160a01b031633146110b55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6110d06110ca6005546001600160a01b031690565b82611bf7565b6040518181527f702d5967f45f6513a38ffc42d6ba9bf230bd40e8f53b16363c7eb4fd2deb9a4490602001610617565b6009546000907501000000000000000000000000000000000000000000900460ff16156111cb576009546040517fdd62ed3e0000000000000000000000000000000000000000000000000000000081526001600160a01b03858116600483015284811660248301526101009092049091169063dd62ed3e9060440160206040518083038186803b15801561119357600080fd5b505afa1580156111a7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ecb9190611e7c565b6001600160a01b03808416600090815260016020908152604080832093861683529290522054610ecb565b6005546001600160a01b031633146112505760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6001600160a01b03811660008181526008602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905590519182527fd7e9ec6e6ecd65492dce6bf513cd6867560d49544421d0783ddf06e76c24470c9101610617565b6005546001600160a01b031633146113195760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6001600160a01b0381166113955760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f6464726573730000000000000000000000000000000000000000000000000000606482015260840161057e565b61139e816118f2565b50565b6005546001600160a01b031633146113fb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161057e565b6001600160a01b03811660009081526008602052604090205460ff1661142057600080fd5b600061142b82610ad7565b90506114378282611bf7565b604080516001600160a01b0384168152602081018390527f61e6e66b0d6339b2980aecc6ccc0039736791f0ccde9ed512e789a7fbdd698c69101610faa565b60006040611485816004611f2a565b36101561149157600080fd5b82158015906114c257503360009081526001602090815260408083206001600160a01b038816845290915290205415155b156114cc57600080fd5b3360008181526001602090815260408083206001600160a01b03891680855290835292819020879055518681529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060019392505050565b60006060611540816004611f2a565b36101561154c57600080fd5b6001600160a01b038516600090815260016020908152604080832033845290915281205460065490919061158f9061271090611589908890611b0c565b90611d74565b90506007548111156115a057506007545b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8210156115f7576115d28286611d80565b6001600160a01b03881660009081526001602090815260408083203384529091529020555b60006116038683611d80565b6001600160a01b0389166000908152602081905260409020549091506116299087611d80565b6001600160a01b03808a1660009081526020819052604080822093909355908916815220546116589082611d8c565b6001600160a01b038816600090815260208190526040902055811561173e576116b0826000806116906005546001600160a01b031690565b6001600160a01b0316815260208101919091526040016000205490611d8c565b6000806116c56005546001600160a01b031690565b6001600160a01b031681526020810191909152604001600020556116f16005546001600160a01b031690565b6001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161173591815260200190565b60405180910390a35b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161178391815260200190565b60405180910390a3506001979650505050505050565b6001600160a01b0383166118145760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460448201527f7265737300000000000000000000000000000000000000000000000000000000606482015260840161057e565b6001600160a01b0382166118905760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201527f7373000000000000000000000000000000000000000000000000000000000000606482015260840161057e565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b600580546001600160a01b038381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6000604061196b816004611f2a565b36101561197757600080fd5b600061199461271061158960065487611b0c90919063ffffffff16565b90506007548111156119a557506007545b60006119b18583611d80565b336000908152602081905260409020549091506119ce9086611d80565b33600090815260208190526040808220929092556001600160a01b038816815220546119fa9082611d8c565b6001600160a01b0387166000908152602081905260409020558115611ac057611a32826000806116906005546001600160a01b031690565b600080611a476005546001600160a01b031690565b6001600160a01b03168152602081019190915260400160002055611a736005546001600160a01b031690565b6001600160a01b0316336001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611ab791815260200190565b60405180910390a35b6040518181526001600160a01b0387169033907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350600195945050505050565b60006109b682846120a7565b6001600160a01b038216611b6e5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161057e565b8060026000828254611b809190611f2a565b90915550506001600160a01b03821660009081526020819052604081208054839290611bad908490611f2a565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b6001600160a01b038216611c735760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360448201527f7300000000000000000000000000000000000000000000000000000000000000606482015260840161057e565b6001600160a01b03821660009081526020819052604090205481811015611d025760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60448201527f6365000000000000000000000000000000000000000000000000000000000000606482015260840161057e565b6001600160a01b0383166000908152602081905260408120838303905560028054849290611d319084906120e4565b90915550506040518281526000906001600160a01b038516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906020016118e5565b60006109b68284611f42565b60006109b682846120e4565b60006109b68284611f2a565b80356001600160a01b0381168114610bb857600080fd5b600060208284031215611dc157600080fd5b6109b682611d98565b60008060408385031215611ddd57600080fd5b611de683611d98565b9150611df460208401611d98565b90509250929050565b600080600060608486031215611e1257600080fd5b611e1b84611d98565b9250611e2960208501611d98565b9150604084013590509250925092565b60008060408385031215611e4c57600080fd5b611e5583611d98565b946020939093013593505050565b600060208284031215611e7557600080fd5b5035919050565b600060208284031215611e8e57600080fd5b5051919050565b60008060408385031215611ea857600080fd5b50508035926020909101359150565b600060208083528351808285015260005b81811015611ee457858101830151858201604001528201611ec8565b81811115611ef6576000604083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016929092016040019392505050565b60008219821115611f3d57611f3d61214f565b500190565b600082611f78577f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b500490565b600181815b80851115611fd657817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04821115611fbc57611fbc61214f565b80851615611fc957918102915b93841c9390800290611f82565b509250929050565b60006109b660ff841683600082611ff7575060016109fd565b81612004575060006109fd565b816001811461201a576002811461202457612040565b60019150506109fd565b60ff8411156120355761203561214f565b50506001821b6109fd565b5060208310610133831016604e8410600b8410161715612063575081810a6109fd565b61206d8383611f7d565b807fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0482111561209f5761209f61214f565b029392505050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156120df576120df61214f565b500290565b6000828210156120f6576120f661214f565b500390565b600181811c9082168061210f57607f821691505b60208210811415612149577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fdfea264697066735822122068db92241a97d707545b5518478b739c3fae8ceacf67d2d5bc4968ca90b57eae64736f6c63430008070033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a546574686572205553440000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000045553445400000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : _name (string): Tether USD
Arg [1] : _symbol (string): USDT
Arg [2] : __decimals (uint8): 6
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000006
Arg [3] : 000000000000000000000000000000000000000000000000000000000000000a
Arg [4] : 5465746865722055534400000000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [6] : 5553445400000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
17140:4837:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5165:100;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20459:186;;;;;;:::i;:::-;;:::i;:::-;;19669:341;;;;;;:::i;:::-;;:::i;:::-;;;3807:14:1;;3800:22;3782:41;;3770:2;3755:18;19669:341:0;3642:187:1;17305:22:0;;;;;;;;;;;;16069:149;;;;;;:::i;:::-;;:::i;20711:230::-;;;:::i;:::-;;;7788:25:1;;;7776:2;7761:18;20711:230:0;7642:177:1;18849:401:0;;;;;;:::i;:::-;;:::i;17268:30::-;;;;;;;;-1:-1:-1;;;;;17268:30:0;;;;;;-1:-1:-1;;;;;2054:55:1;;;2036:74;;2024:2;2009:18;17268:30:0;1890:226:1;18214:100:0;18297:9;;18214:100;;18297:9;;;;8219:36:1;;8207:2;8192:18;18214:100:0;8077:184:1;10392:26:0;;;;;;6756:215;;;;;;:::i;:::-;;:::i;15430:105::-;;;:::i;15941:120::-;;;;;;:::i;:::-;-1:-1:-1;;;;;16032:21:0;16008:4;16032:21;;;:13;:21;;;;;;;;;15941:120;14753:26;;;;;;;;;;;;19335:249;;;;;;:::i;:::-;;:::i;3147:94::-;;;:::i;15232:103::-;;;:::i;2924:87::-;2997:6;;-1:-1:-1;;;;;2997:6:0;2924:87;;5273:104;;;:::i;6979:413::-;;;;;;:::i;:::-;;:::i;18399:365::-;;;;;;:::i;:::-;;:::i;21580:394::-;;;;;;:::i;:::-;;:::i;21107:115::-;;;;;;:::i;:::-;;:::i;21455:117::-;;;;;;:::i;:::-;;:::i;20095:298::-;;;;;;:::i;:::-;;:::i;10354:31::-;;;;;;15766:46;;;;;;:::i;:::-;;;;;;;;;;;;;;;;16226:164;;;;;;:::i;:::-;;:::i;10224:42::-;;10256:10;10224:42;;3249:192;;;;;;:::i;:::-;;:::i;16398:296::-;;;;;;:::i;:::-;;:::i;5165:100::-;5219:13;5252:5;5245:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5165:100;:::o;20459:186::-;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;;;;;;;;;20532:10:::1;:17:::0;;-1:-1:-1;;;;;20560:34:0;::::1;20532:17;20560:34;::::0;;;;;20532:17;20560:34;;;20610:27:::1;::::0;::::1;::::0;::::1;::::0;20578:16;;-1:-1:-1;;;;;2054:55:1;;;;2036:74;;2024:2;2009:18;;1890:226;20610:27:0::1;;;;;;;;20459:186:::0;:::o;19669:341::-;19766:4;19749:6;10571:8;19749:6;10578:1;10571:8;:::i;:::-;10553;:26;10551:29;10543:38;;;;;;19787:10:::1;::::0;;;::::1;;;19783:198;;;19836:15;::::0;19814:84:::1;::::0;;;;19869:10:::1;19814:84;::::0;::::1;3200:34:1::0;-1:-1:-1;;;;;3270:15:1;;;3250:18;;;3243:43;3302:18;;;3295:34;;;19836:15:0::1;::::0;;::::1;::::0;;::::1;::::0;19814:54:::1;::::0;3112:18:1;;19814:84:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;19783:198;;;19938:31;19952:8;19962:6;19938:13;:31::i;:::-;19931:38;;;;19783:198;19998:4;19991:11;;10592:1;19669:341:::0;;;;;:::o;16069:149::-;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;-1:-1:-1;;;;;16138:24:0;::::1;;::::0;;;:13:::1;:24;::::0;;;;;;;;:31;;;::::1;16165:4;16138:31;::::0;;16185:25;;2036:74:1;;;16185:25:0::1;::::0;2009:18:1;16185:25:0::1;1890:226:1::0;20711:230:0;20785:10;;20764:4;;20785:10;;;;;20781:153;;;20833:15;;;;;;;;;-1:-1:-1;;;;;20833:15:0;-1:-1:-1;;;;;20819:42:0;;:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20812:51;;20711:230;:::o;20781:153::-;-1:-1:-1;5574:12:0;;;20711:230::o;18849:401::-;14937:6;;18951:4;;14937:6;;;;;14936:7;14928:16;;;;;;-1:-1:-1;;;;;18977:20:0;::::1;;::::0;;;:13:::1;:20;::::0;;;;;::::1;;18976:21;18968:30;;;::::0;::::1;;19013:10;::::0;;;::::1;;;19009:212;;;19062:15;::::0;19040:91:::1;::::0;;;;19100:10:::1;19040:91;::::0;::::1;2745:34:1::0;-1:-1:-1;;;;;2815:15:1;;;2795:18;;;2788:43;2867:15;;;2847:18;;;2840:43;2899:18;;;2892:34;;;19062:15:0::1;::::0;;::::1;::::0;;::::1;::::0;19040:59:::1;::::0;2656:19:1;;19040:91:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;19009:212;;;19171:38;19190:5;19197:3;19202:6;19171:18;:38::i;:::-;19164:45;;;;19009:212;-1:-1:-1::0;19238:4:0::1;14955:1;18849:401:::0;;;;;:::o;6756:215::-;2559:10;6844:4;6893:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;6893:34:0;;;;;;;;;;6844:4;;6861:80;;6884:7;;6893:47;;6930:10;;6893:47;:::i;:::-;6861:8;:80::i;:::-;-1:-1:-1;6959:4:0;6756:215;;;;;:::o;15430:105::-;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;15113:6:::1;::::0;;;::::1;;;15105:15;;;::::0;::::1;;15488:6:::2;:14:::0;;;::::2;::::0;;15518:9:::2;::::0;::::2;::::0;15497:5:::2;::::0;15518:9:::2;15430:105::o:0;19335:249::-;19418:10;;19397:4;;19418:10;;;;;19414:163;;;19474:15;;19452:53;;;;;-1:-1:-1;;;;;2054:55:1;;;19452:53:0;;;2036:74:1;19474:15:0;;;;;;;;19452:48;;2009:18:1;;19452:53:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;19414:163::-;-1:-1:-1;;;;;11842:17:0;;11810:12;11842:17;;;;;;;;;;;19545:20;11737:130;19414:163;19335:249;;;:::o;3147:94::-;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;3212:21:::1;3230:1;3212:9;:21::i;:::-;3147:94::o:0;15232:103::-;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;14937:6:::1;::::0;;;::::1;;;14936:7;14928:16;;;::::0;::::1;;15291:6:::2;:13:::0;;;::::2;::::0;::::2;::::0;;15320:7:::2;::::0;::::2;::::0;15291:13;;15320:7:::2;15232:103::o:0;5273:104::-;5329:13;5362:7;5355:14;;;;;:::i;6979:413::-;2559:10;7072:4;7116:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;7116:34:0;;;;;;;;;;7169:35;;;;7161:85;;;;-1:-1:-1;;;7161:85:0;;7078:2:1;7161:85:0;;;7060:21:1;7117:2;7097:18;;;7090:30;7156:34;7136:18;;;7129:62;7227:7;7207:18;;;7200:35;7252:19;;7161:85:0;6876:401:1;7161:85:0;7282:67;2559:10;7305:7;7333:15;7314:16;:34;7282:8;:67::i;18399:365::-;14937:6;;18482:4;;14937:6;;;;;14936:7;14928:16;;;;;;18522:10:::1;18508:25;::::0;;;:13:::1;:25;::::0;;;;;::::1;;18507:26;18499:35;;;::::0;::::1;;18549:10;::::0;;;::::1;;;18545:190;;;18598:15;::::0;18576:80:::1;::::0;;;;18632:10:::1;18576:80;::::0;::::1;3200:34:1::0;-1:-1:-1;;;;;3270:15:1;;;3250:18;;;3243:43;3302:18;;;3295:34;;;18598:15:0::1;::::0;;::::1;::::0;;::::1;::::0;18576:55:::1;::::0;3112:18:1;;18576:80:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;18545:190;;;18696:27;18711:3;18716:6;18696:14;:27::i;:::-;18689:34;;;;21580:394:::0;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;21778:2:::1;21761:14;:19;21753:28;;;::::0;::::1;;21812:2;21800:9;:14;21792:23;;;::::0;::::1;;21828:15;:32:::0;;;21884:29:::1;21902:10;18297:9:::0;;;;;18214:100;21902:10:::1;21898:14;::::0;:2:::1;:14;:::i;:::-;21884:9:::0;;:13:::1;:29::i;:::-;21871:10;:42:::0;;;21938:15:::1;::::0;21931:35:::1;::::0;::::1;::::0;::::1;::::0;7998:25:1;;8054:2;8039:18;;8032:34;7986:2;7971:18;;7824:248;21931:35:0::1;;;;;;;;21580:394:::0;;:::o;21107:115::-;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;21163:22:::1;21169:7;2997:6:::0;;-1:-1:-1;;;;;2997:6:0;;2924:87;21169:7:::1;21178:6;21163:5;:22::i;:::-;21201:13;::::0;7788:25:1;;;21201:13:0::1;::::0;7776:2:1;7761:18;21201:13:0::1;7642:177:1::0;21455:117:0;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;21512:22:::1;21518:7;2997:6:::0;;-1:-1:-1;;;;;2997:6:0;;2924:87;21518:7:::1;21527:6;21512:5;:22::i;:::-;21550:14;::::0;7788:25:1;;;21550:14:0::1;::::0;7776:2:1;7761:18;21550:14:0::1;7642:177:1::0;20095:298:0;20209:10;;20178:14;;20209:10;;;;;20205:181;;;20257:15;;20243:58;;;;;-1:-1:-1;;;;;2374:15:1;;;20243:58:0;;;2356:34:1;2426:15;;;2406:18;;;2399:43;20257:15:0;;;;;;;;20243:40;;2268:18:1;;20243:58:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;20205:181::-;-1:-1:-1;;;;;14499:19:0;;;14465:14;14499:19;;;:11;:19;;;;;;;;:29;;;;;;;;;;20341:33;14374:162;16226:164;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;-1:-1:-1;;;;;16301:27:0;::::1;16331:5;16301:27:::0;;;:13:::1;:27;::::0;;;;;;;;:35;;;::::1;::::0;;16352:30;;2036:74:1;;;16352:30:0::1;::::0;2009:18:1;16352:30:0::1;1890:226:1::0;3249:192:0;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;-1:-1:-1;;;;;3338:22:0;::::1;3330:73;;;::::0;-1:-1:-1;;;3330:73:0;;5100:2:1;3330:73:0::1;::::0;::::1;5082:21:1::0;5139:2;5119:18;;;5112:30;5178:34;5158:18;;;5151:62;5249:8;5229:18;;;5222:36;5275:19;;3330:73:0::1;4898:402:1::0;3330:73:0::1;3414:19;3424:8;3414:9;:19::i;:::-;3249:192:::0;:::o;16398:296::-;2997:6;;-1:-1:-1;;;;;2997:6:0;2559:10;3059:23;3051:68;;;;-1:-1:-1;;;3051:68:0;;5910:2:1;3051:68:0;;;5892:21:1;;;5929:18;;;5922:30;5988:34;5968:18;;;5961:62;6040:18;;3051:68:0;5708:356:1;3051:68:0;-1:-1:-1;;;;;16487:31:0;::::1;;::::0;;;:13:::1;:31;::::0;;;;;::::1;;16479:40;;;::::0;::::1;;16530:15;16548:27;16558:16;16548:9;:27::i;:::-;16530:45;;16586:35;16592:16;16610:10;16586:5;:35::i;:::-;16637:49;::::0;;-1:-1:-1;;;;;3532:55:1;;3514:74;;3619:2;3604:18;;3597:34;;;16637:49:0::1;::::0;3487:18:1;16637:49:0::1;3340:297:1::0;13389:640:0;13494:4;13477:6;10571:8;13477:6;10578:1;10571:8;:::i;:::-;10553;:26;10551:29;10543:38;;;;;;13832:11;;;::::1;::::0;13831:57:::1;;-1:-1:-1::0;13861:10:0::1;13849:23;::::0;;;:11:::1;:23;::::0;;;;;;;-1:-1:-1;;;;;13849:33:0;::::1;::::0;;;;;;;;:38;::::1;13831:57;13829:60;13821:69;;;::::0;::::1;;13915:10;13903:23;::::0;;;:11:::1;:23;::::0;;;;;;;-1:-1:-1;;;;;13903:33:0;::::1;::::0;;;;;;;;;;:42;;;13961:38;7788:25:1;;;13903:33:0;;13915:10;13961:38:::1;::::0;7761:18:1;13961:38:0::1;;;;;;;-1:-1:-1::0;14017:4:0::1;::::0;13389:640;-1:-1:-1;;;13389:640:0:o;12156:986::-;12276:4;12259:6;10571:8;12259:6;10578:1;10571:8;:::i;:::-;10553;:26;10551:29;10543:38;;;;;;-1:-1:-1;;;;;12311:18:0;::::1;12293:15;12311:18:::0;;;:11:::1;:18;::::0;;;;;;;12330:10:::1;12311:30:::0;;;;;;;;12535:15:::1;::::0;12311:30;;12293:15;12523:40:::1;::::0;12557:5:::1;::::0;12524:27:::1;::::0;:6;;:10:::1;:27::i;:::-;12523:33:::0;::::1;:40::i;:::-;12512:51;;12584:10;;12578:3;:16;12574:65;;;-1:-1:-1::0;12617:10:0::1;::::0;12574:65:::1;10256:10;12653;:21;12649:109;;;12724:22;:10:::0;12739:6;12724:14:::1;:22::i;:::-;-1:-1:-1::0;;;;;12691:18:0;::::1;;::::0;;;:11:::1;:18;::::0;;;;;;;12710:10:::1;12691:30:::0;;;;;;;:55;12649:109:::1;12768:15;12786;:6:::0;12797:3;12786:10:::1;:15::i;:::-;-1:-1:-1::0;;;;;12831:16:0;::::1;:9;:16:::0;;;::::1;::::0;;;;;;;12768:33;;-1:-1:-1;12831:28:0::1;::::0;12852:6;12831:20:::1;:28::i;:::-;-1:-1:-1::0;;;;;12812:16:0;;::::1;:9;:16:::0;;;::::1;::::0;;;;;;;:47;;;;12887:14;;::::1;::::0;;;;:30:::1;::::0;12906:10;12887:18:::1;:30::i;:::-;-1:-1:-1::0;;;;;12870:14:0;::::1;:9;:14:::0;;;::::1;::::0;;;;;;:47;12932:7;;12928:137:::1;;12977:27;13000:3;12977:9;:18:::0;12987:7:::1;2997:6:::0;;-1:-1:-1;;;;;2997:6:0;;2924:87;12987:7:::1;-1:-1:-1::0;;;;;12977:18:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;12977:18:0;;;:22:::1;:27::i;:::-;12956:9;:18:::0;12966:7:::1;2997:6:::0;;-1:-1:-1;;;;;2997:6:0;;2924:87;12966:7:::1;-1:-1:-1::0;;;;;12956:18:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;12956:18:0;:48;13040:7:::1;2997:6:::0;;-1:-1:-1;;;;;2997:6:0;;2924:87;13040:7:::1;-1:-1:-1::0;;;;;13024:29:0::1;13033:5;-1:-1:-1::0;;;;;13024:29:0::1;;13049:3;13024:29;;;;7788:25:1::0;;7776:2;7761:18;;7642:177;13024:29:0::1;;;;;;;;12928:137;13096:3;-1:-1:-1::0;;;;;13080:32:0::1;13089:5;-1:-1:-1::0;;;;;13080:32:0::1;;13101:10;13080:32;;;;7788:25:1::0;;7776:2;7761:18;;7642:177;13080:32:0::1;;;;;;;;-1:-1:-1::0;13130:4:0::1;::::0;12156:986;-1:-1:-1;;;;;;;12156:986:0:o;9147:380::-;-1:-1:-1;;;;;9283:19:0;;9275:68;;;;-1:-1:-1;;;9275:68:0;;6673:2:1;9275:68:0;;;6655:21:1;6712:2;6692:18;;;6685:30;6751:34;6731:18;;;6724:62;6822:6;6802:18;;;6795:34;6846:19;;9275:68:0;6471:400:1;9275:68:0;-1:-1:-1;;;;;9362:21:0;;9354:68;;;;-1:-1:-1;;;9354:68:0;;5507:2:1;9354:68:0;;;5489:21:1;5546:2;5526:18;;;5519:30;5585:34;5565:18;;;5558:62;5656:4;5636:18;;;5629:32;5678:19;;9354:68:0;5305:398:1;9354:68:0;-1:-1:-1;;;;;9435:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9487:32;;7788:25:1;;;9487:32:0;;7761:18:1;9487:32:0;;;;;;;;9147:380;;;:::o;3449:173::-;3524:6;;;-1:-1:-1;;;;;3541:17:0;;;;;;;;;;;3574:40;;3524:6;;;3541:17;3524:6;;3574:40;;3505:16;;3574:40;3494:128;3449:173;:::o;10862:649::-;10963:4;10946:6;10571:8;10946:6;10578:1;10571:8;:::i;:::-;10553;:26;10551:29;10543:38;;;;;;10980:8:::1;10991:40;11025:5;10992:27;11003:15;;10992:6;:10;;:27;;;;:::i;10991:40::-;10980:51;;11052:10;;11046:3;:16;11042:65;;;-1:-1:-1::0;11085:10:0::1;::::0;11042:65:::1;11117:15;11135;:6:::0;11146:3;11135:10:::1;:15::i;:::-;11195:10;11185:9;:21:::0;;;::::1;::::0;;;;;;;11117:33;;-1:-1:-1;11185:33:0::1;::::0;11211:6;11185:25:::1;:33::i;:::-;11171:10;11161:9;:21:::0;;;::::1;::::0;;;;;;;:57;;;;-1:-1:-1;;;;;11246:14:0;::::1;::::0;;;;:30:::1;::::0;11265:10;11246:18:::1;:30::i;:::-;-1:-1:-1::0;;;;;11229:14:0;::::1;:9;:14:::0;;;::::1;::::0;;;;;;:47;11291:7;;11287:142:::1;;11336:27;11359:3;11336:9;:18:::0;11346:7:::1;2997:6:::0;;-1:-1:-1;;;;;2997:6:0;;2924:87;11336:27:::1;11315:9;:18:::0;11325:7:::1;2997:6:::0;;-1:-1:-1;;;;;2997:6:0;;2924:87;11325:7:::1;-1:-1:-1::0;;;;;11315:18:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;11315:18:0;:48;11404:7:::1;2997:6:::0;;-1:-1:-1;;;;;2997:6:0;;2924:87;11404:7:::1;-1:-1:-1::0;;;;;11383:34:0::1;11392:10;-1:-1:-1::0;;;;;11383:34:0::1;;11413:3;11383:34;;;;7788:25:1::0;;7776:2;7761:18;;7642:177;11383:34:0::1;;;;;;;;11287:142;11444:37;::::0;7788:25:1;;;-1:-1:-1;;;;;11444:37:0;::::1;::::0;11453:10:::1;::::0;11444:37:::1;::::0;7776:2:1;7761:18;11444:37:0::1;;;;;;;-1:-1:-1::0;11499:4:0::1;::::0;10862:649;-1:-1:-1;;;;;10862:649:0:o;1389:98::-;1447:7;1474:5;1478:1;1474;:5;:::i;8141:399::-;-1:-1:-1;;;;;8225:21:0;;8217:65;;;;-1:-1:-1;;;8217:65:0;;7484:2:1;8217:65:0;;;7466:21:1;7523:2;7503:18;;;7496:30;7562:33;7542:18;;;7535:61;7613:18;;8217:65:0;7282:355:1;8217:65:0;8373:6;8357:12;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;8390:18:0;;:9;:18;;;;;;;;;;:28;;8412:6;;8390:9;:28;;8412:6;;8390:28;:::i;:::-;;;;-1:-1:-1;;8434:37:0;;7788:25:1;;;-1:-1:-1;;;;;8434:37:0;;;8451:1;;8434:37;;7776:2:1;7761:18;8434:37:0;;;;;;;8141:399;;:::o;8548:591::-;-1:-1:-1;;;;;8632:21:0;;8624:67;;;;-1:-1:-1;;;8624:67:0;;6271:2:1;8624:67:0;;;6253:21:1;6310:2;6290:18;;;6283:30;6349:34;6329:18;;;6322:62;6420:3;6400:18;;;6393:31;6441:19;;8624:67:0;6069:397:1;8624:67:0;-1:-1:-1;;;;;8791:18:0;;8766:22;8791:18;;;;;;;;;;;8828:24;;;;8820:71;;;;-1:-1:-1;;;8820:71:0;;4697:2:1;8820:71:0;;;4679:21:1;4736:2;4716:18;;;4709:30;4775:34;4755:18;;;4748:62;4846:4;4826:18;;;4819:32;4868:19;;8820:71:0;4495:398:1;8820:71:0;-1:-1:-1;;;;;8927:18:0;;:9;:18;;;;;;;;;;8948:23;;;8927:44;;8993:12;:22;;8965:6;;8927:9;8993:22;;8965:6;;8993:22;:::i;:::-;;;;-1:-1:-1;;9033:37:0;;7788:25:1;;;9059:1:0;;-1:-1:-1;;;;;9033:37:0;;;;;7776:2:1;7761:18;9033:37:0;7642:177:1;1493:98:0;1551:7;1578:5;1582:1;1578;:5;:::i;1283:98::-;1341:7;1368:5;1372:1;1368;:5;:::i;1177:98::-;1235:7;1262:5;1266:1;1262;:5;:::i;14:196:1:-;82:20;;-1:-1:-1;;;;;131:54:1;;121:65;;111:93;;200:1;197;190:12;215:186;274:6;327:2;315:9;306:7;302:23;298:32;295:52;;;343:1;340;333:12;295:52;366:29;385:9;366:29;:::i;406:260::-;474:6;482;535:2;523:9;514:7;510:23;506:32;503:52;;;551:1;548;541:12;503:52;574:29;593:9;574:29;:::i;:::-;564:39;;622:38;656:2;645:9;641:18;622:38;:::i;:::-;612:48;;406:260;;;;;:::o;671:328::-;748:6;756;764;817:2;805:9;796:7;792:23;788:32;785:52;;;833:1;830;823:12;785:52;856:29;875:9;856:29;:::i;:::-;846:39;;904:38;938:2;927:9;923:18;904:38;:::i;:::-;894:48;;989:2;978:9;974:18;961:32;951:42;;671:328;;;;;:::o;1004:254::-;1072:6;1080;1133:2;1121:9;1112:7;1108:23;1104:32;1101:52;;;1149:1;1146;1139:12;1101:52;1172:29;1191:9;1172:29;:::i;:::-;1162:39;1248:2;1233:18;;;;1220:32;;-1:-1:-1;;;1004:254:1:o;1263:180::-;1322:6;1375:2;1363:9;1354:7;1350:23;1346:32;1343:52;;;1391:1;1388;1381:12;1343:52;-1:-1:-1;1414:23:1;;1263:180;-1:-1:-1;1263:180:1:o;1448:184::-;1518:6;1571:2;1559:9;1550:7;1546:23;1542:32;1539:52;;;1587:1;1584;1577:12;1539:52;-1:-1:-1;1610:16:1;;1448:184;-1:-1:-1;1448:184:1:o;1637:248::-;1705:6;1713;1766:2;1754:9;1745:7;1741:23;1737:32;1734:52;;;1782:1;1779;1772:12;1734:52;-1:-1:-1;;1805:23:1;;;1875:2;1860:18;;;1847:32;;-1:-1:-1;1637:248:1:o;3834:656::-;3946:4;3975:2;4004;3993:9;3986:21;4036:6;4030:13;4079:6;4074:2;4063:9;4059:18;4052:34;4104:1;4114:140;4128:6;4125:1;4122:13;4114:140;;;4223:14;;;4219:23;;4213:30;4189:17;;;4208:2;4185:26;4178:66;4143:10;;4114:140;;;4272:6;4269:1;4266:13;4263:91;;;4342:1;4337:2;4328:6;4317:9;4313:22;4309:31;4302:42;4263:91;-1:-1:-1;4406:2:1;4394:15;4411:66;4390:88;4375:104;;;;4481:2;4371:113;;3834:656;-1:-1:-1;;;3834:656:1:o;8266:128::-;8306:3;8337:1;8333:6;8330:1;8327:13;8324:39;;;8343:18;;:::i;:::-;-1:-1:-1;8379:9:1;;8266:128::o;8399:274::-;8439:1;8465;8455:189;;8500:77;8497:1;8490:88;8601:4;8598:1;8591:15;8629:4;8626:1;8619:15;8455:189;-1:-1:-1;8658:9:1;;8399:274::o;8678:482::-;8767:1;8810:5;8767:1;8824:330;8845:7;8835:8;8832:21;8824:330;;;8964:4;8896:66;8892:77;8886:4;8883:87;8880:113;;;8973:18;;:::i;:::-;9023:7;9013:8;9009:22;9006:55;;;9043:16;;;;9006:55;9122:22;;;;9082:15;;;;8824:330;;;8828:3;8678:482;;;;;:::o;9165:140::-;9223:5;9252:47;9293:4;9283:8;9279:19;9273:4;9359:5;9389:8;9379:80;;-1:-1:-1;9430:1:1;9444:5;;9379:80;9478:4;9468:76;;-1:-1:-1;9515:1:1;9529:5;;9468:76;9560:4;9578:1;9573:59;;;;9646:1;9641:130;;;;9553:218;;9573:59;9603:1;9594:10;;9617:5;;;9641:130;9678:3;9668:8;9665:17;9662:43;;;9685:18;;:::i;:::-;-1:-1:-1;;9741:1:1;9727:16;;9756:5;;9553:218;;9855:2;9845:8;9842:16;9836:3;9830:4;9827:13;9823:36;9817:2;9807:8;9804:16;9799:2;9793:4;9790:12;9786:35;9783:77;9780:159;;;-1:-1:-1;9892:19:1;;;9924:5;;9780:159;9971:34;9996:8;9990:4;9971:34;:::i;:::-;10101:6;10033:66;10029:79;10020:7;10017:92;10014:118;;;10112:18;;:::i;:::-;10150:20;;9310:866;-1:-1:-1;;;9310:866:1:o;10181:228::-;10221:7;10347:1;10279:66;10275:74;10272:1;10269:81;10264:1;10257:9;10250:17;10246:105;10243:131;;;10354:18;;:::i;:::-;-1:-1:-1;10394:9:1;;10181:228::o;10414:125::-;10454:4;10482:1;10479;10476:8;10473:34;;;10487:18;;:::i;:::-;-1:-1:-1;10524:9:1;;10414:125::o;10544:437::-;10623:1;10619:12;;;;10666;;;10687:61;;10741:4;10733:6;10729:17;10719:27;;10687:61;10794:2;10786:6;10783:14;10763:18;10760:38;10757:218;;;10831:77;10828:1;10821:88;10932:4;10929:1;10922:15;10960:4;10957:1;10950:15;10757:218;;10544:437;;;:::o;10986:184::-;11038:77;11035:1;11028:88;11135:4;11132:1;11125:15;11159:4;11156:1;11149:15
Swarm Source
ipfs://68db92241a97d707545b5518478b739c3fae8ceacf67d2d5bc4968ca90b57eae
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ 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.