BscScan - Sponsored slots available. Book your slot here!
BEP-20
Overview
Max Total Supply
10,000,000,000,000X
Holders
100,844 ( 0.001%)
Market
Price
$0.00 @ 0.000000 BNB (-23.53%)
Onchain Market Cap
$72,712.05
Circulating Supply Market Cap
$0.00
Other Info
Token Contract (WITH 9 Decimals)
Balance
231,667.313003825 XValue
$0.00 ( ~0 BNB) [0.0000%]Loading...
Loading
Loading...
Loading
Loading...
Loading
Contract Name:
XDOGE
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at BscScan.com on 2022-04-28 */ // SPDX-License-Identifier: MIT pragma solidity ^0.6.12; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } interface IERC20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * Returns a boolean value indicating whether the operation succeeded. * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * This value changes when {approve} or {transferFrom} are called. */ function allowance(address owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * Returns a boolean value indicating whether the operation succeeded. * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * Returns a boolean value indicating whether the operation succeeded. * Emits a {Transfer} event. */ function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * Counterpart to Solidity's `+` operator. * Requirements: * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } library Address { /** * @dev Returns true if `account` is a contract. * * [IMPORTANT] * ==== * It is unsafe to assume that an address for which this function returns * false is an externally-owned account (EOA) and not a contract. * Among others, `isContract` will return false for the following * types of addresses: * * - an externally-owned account * - a contract in construction * - an address where a contract will be created * - an address where a contract lived, but was destroyed * ==== */ function isContract(address account) internal view returns (bool) { // According to EIP-1052, 0x0 is the value returned for not-yet created accounts // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned // for accounts without code, i.e. `keccak256('')` bytes32 codehash; bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; // solhint-disable-next-line no-inline-assembly assembly { codehash := extcodehash(account) } return (codehash != accountHash && codehash != 0x0); } /** * @dev Replacement for Solidity's `transfer`: sends `amount` wei to * `recipient`, forwarding all available gas and reverting on errors. * * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost * of certain opcodes, possibly making contracts go over the 2300 gas limit * imposed by `transfer`, making them unable to receive funds via * `transfer`. {sendValue} removes this limitation. * * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more]. * IMPORTANT: because control is transferred to `recipient`, care must be * taken to not create reentrancy vulnerabilities. Consider using * {ReentrancyGuard} or the * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]. */ function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } /** * @dev Performs a Solidity function call using a low level `call`. A * plain`call` is an unsafe replacement for a function call: use this * function instead. * * If `target` reverts with a revert reason, it is bubbled up by this * function (like regular Solidity function calls). * * Returns the raw returned data. To convert to the expected return value, * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`]. * * Requirements: * * - `target` must be a contract. * - calling `target` with `data` must not revert. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with * `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return _functionCallWithValue(target, data, 0, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but also transferring `value` wei to `target`. * * Requirements: * * - the calling contract must have an ETH balance of at least `value`. * - the called Solidity function must be `payable`. * * _Available since v3.1._ */ 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"); } /** * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but * with `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ 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"); return _functionCallWithValue(target, data, value, errorMessage); } function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) { require(isContract(target), "Address: call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.call{ value: weiValue }(data); if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { // The easiest way to bubble the revert reason is using memory via assembly // solhint-disable-next-line no-inline-assembly assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor () internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } contract XDOGE is Context, IERC20, Ownable { using SafeMath for uint256; using Address for address; mapping (address => uint256) private _rOwned; mapping (address => uint256) private _tOwned; mapping (address => mapping (address => uint256)) private _allowances; uint256 _rOwnedExcluded; uint256 _tOwnedExcluded; mapping (address => bool) private _isExcluded; address[] private _excluded; mapping (address => uint256) private _excludedIndex; mapping (address => bool) private _isWhitelisted; address[] private _whitelisted; mapping (address => uint256) private _whitelistIndex; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 10000000 * 10**6 * 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; string private constant _name = 'X Doge'; string private constant _symbol = 'X'; uint8 private constant _decimals = 9; uint256 public _maxTxAmount = 100000 * 10**6 * 10**9; mapping (address => uint256) private lastBuy; mapping (address => uint256) private lastBuyCounter; uint256 private _buyCounter = 0; constructor () public { _rOwned[_msgSender()] = _rTotal; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { if (_isExcluded[account]) return _tOwned[account]; return tokenFromReflection(_rOwned[account]); } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function isExcluded(address account) public view returns (bool) { return _isExcluded[account]; } function totalFees() public view returns (uint256) { return _tFeeTotal; } function reflect(uint256 tAmount) public { address sender = _msgSender(); require(!_isExcluded[sender], "Excluded addresses cannot call this function"); (uint256 rAmount,,,,) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); if (_isExcluded[sender]) { _rOwnedExcluded = _rOwnedExcluded.sub(rAmount); } _rTotal = _rTotal.sub(rAmount); _tFeeTotal = _tFeeTotal.add(tAmount); } function reflectionFromToken(uint256 tAmount, bool deductTransferFee) public view returns(uint256) { require(tAmount <= _tTotal, "Amount must be less than supply"); if (!deductTransferFee) { (uint256 rAmount,,,,) = _getValues(tAmount); return rAmount; } else { (,uint256 rTransferAmount,,,) = _getValues(tAmount); return rTransferAmount; } } function tokenFromReflection(uint256 rAmount) public view returns(uint256) { require(rAmount <= _rTotal, "Amount must be less than total reflections"); uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function excludeAccount(address account) external onlyOwner() { require(!_isExcluded[account], "Account is already excluded"); if(_rOwned[account] > 0) { _tOwned[account] = tokenFromReflection(_rOwned[account]); _tOwnedExcluded = _tOwnedExcluded.add(_tOwned[account]); } _isExcluded[account] = true; _excludedIndex[account] = _excluded.length; _excluded.push(account); } function includeAccount(address account) external onlyOwner() { require(_isExcluded[account], "Account is already excluded"); uint256 i = _excludedIndex[account]; _excluded[i] = _excluded[_excluded.length - 1]; _excludedIndex[_excluded[i]] = i; _excluded.pop(); delete _excludedIndex[account]; _tOwnedExcluded = _tOwnedExcluded.sub(_tOwned[account]); _tOwned[account] = 0; _isExcluded[account] = false; } function addToWhitelist(address account) external onlyOwner() { require(!_isWhitelisted[account], "Account is already whitelisted"); _isWhitelisted[account] = true; _whitelistIndex[account] = _whitelisted.length; _whitelisted.push(account); } function removeFromWhitelist(address account) external onlyOwner() { require(_isWhitelisted[account], "Account is not whitelisted"); uint256 i = _whitelistIndex[account]; _whitelisted[i] = _whitelisted[_whitelisted.length - 1]; _whitelistIndex[_whitelisted[i]] = i; _whitelisted.pop(); _isWhitelisted[account] = false; delete _whitelistIndex[account]; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer(address sender, address recipient, uint256 amount) private { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if(sender != owner() && recipient != owner()) { require(amount <= _maxTxAmount, "Transfer amount exceeds the maxTxAmount."); } if (sender != owner() && recipient != owner() && !_isWhitelisted[sender] && !_isWhitelisted[recipient]) { if (lastBuyCounter[sender] != _buyCounter) { require(lastBuy[sender] != block.number, "Bot detected"); } _buyCounter += 1; lastBuy[recipient] = block.number; lastBuyCounter[recipient] = _buyCounter; } if (_isExcluded[sender]) { if (_isExcluded[recipient]) { _transferBothExcluded(sender, recipient, amount); } else { _transferFromExcluded(sender, recipient, amount); } } else { if (_isExcluded[recipient]) { _transferToExcluded(sender, recipient, amount); } else { _transferStandard(sender, recipient, amount); } } } function _transferStandard(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _transferToExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _tOwnedExcluded = _tOwnedExcluded.add(tTransferAmount); _rOwnedExcluded = _rOwnedExcluded.add(rTransferAmount); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _transferFromExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount); _tOwned[sender] = _tOwned[sender].sub(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _tOwnedExcluded = _tOwnedExcluded.sub(tAmount); _rOwnedExcluded = _rOwnedExcluded.sub(rAmount); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _transferBothExcluded(address sender, address recipient, uint256 tAmount) private { (uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee) = _getValues(tAmount); _tOwned[sender] = _tOwned[sender].sub(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _tOwned[recipient] = _tOwned[recipient].add(tTransferAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _tOwnedExcluded = _tOwnedExcluded.sub(tAmount); _rOwnedExcluded = _rOwnedExcluded.sub(rAmount); _tOwnedExcluded = _tOwnedExcluded.add(tTransferAmount); _rOwnedExcluded = _rOwnedExcluded.add(rTransferAmount); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } function _getValues(uint256 tAmount) private view returns (uint256, uint256, uint256, uint256, uint256) { address sender = _msgSender(); uint256 tFee; uint256 tTransferAmount; if (_isWhitelisted[sender]) { tTransferAmount = tAmount; } else { tFee = tAmount.div(1000).mul(9); tTransferAmount = tAmount.sub(tFee); } uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee); } function _getRValues(uint256 tAmount, uint256 tFee, uint256 currentRate) private pure returns (uint256, uint256, uint256) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee); return (rAmount, rTransferAmount, rFee); } function _getRate() private view returns(uint256) { uint256 defaultRate = _rTotal.div(_tTotal); if (_rOwnedExcluded > _rTotal || _tOwnedExcluded > _tTotal) { return defaultRate; } uint256 rSupply = _rTotal.sub(_rOwnedExcluded); if (rSupply < defaultRate) { return defaultRate; } uint256 tSupply = _tTotal.sub(_tOwnedExcluded); return rSupply.div(tSupply); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addToWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"includeAccount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcluded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"reflect","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"},{"internalType":"bool","name":"deductTransferFee","type":"bool"}],"name":"reflectionFromToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"removeFromWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFees","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":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
6080604052690200b25812c4f53fffff19600c5568056bc75e2d63100000600e5560006011553480156200003257600080fd5b5060006200003f62000119565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600c54600160006200009a62000119565b6001600160a01b03168152602081019190915260400160002055620000be62000119565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef69021e19e0c9bab24000006040518082815260200191505060405180910390a36200011d565b3390565b611e57806200012d6000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80637d1db4a5116100b8578063cba0e9961161007c578063cba0e9961461038f578063dd62ed3e146103b5578063e43252d7146103e3578063f2cc0c1814610409578063f2fde38b1461042f578063f84354f11461045557610142565b80637d1db4a5146103095780638ab1d681146103115780638da5cb5b1461033757806395d89b411461035b578063a9059cbb1461036357610142565b806323b872dd1161010a57806323b872dd146102455780632d8381191461027b578063313ce567146102985780634549b039146102b657806370a08231146102db578063715018a61461030157610142565b8063053ab1821461014757806306fdde0314610166578063095ea7b3146101e357806313114a9d1461022357806318160ddd1461023d575b600080fd5b6101646004803603602081101561015d57600080fd5b503561047b565b005b61016e610578565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101a8578181015183820152602001610190565b50505050905090810190601f1680156101d55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61020f600480360360408110156101f957600080fd5b506001600160a01b038135169060200135610599565b604080519115158252519081900360200190f35b61022b6105b7565b60408051918252519081900360200190f35b61022b6105bd565b61020f6004803603606081101561025b57600080fd5b506001600160a01b038135811691602081013590911690604001356105cb565b61022b6004803603602081101561029157600080fd5b5035610652565b6102a06106b4565b6040805160ff9092168252519081900360200190f35b61022b600480360360408110156102cc57600080fd5b508035906020013515156106b9565b61022b600480360360208110156102f157600080fd5b50356001600160a01b0316610751565b6101646107b3565b61022b610855565b6101646004803603602081101561032757600080fd5b50356001600160a01b031661085b565b61033f610a35565b604080516001600160a01b039092168252519081900360200190f35b61016e610a44565b61020f6004803603604081101561037957600080fd5b506001600160a01b038135169060200135610a5f565b61020f600480360360208110156103a557600080fd5b50356001600160a01b0316610a73565b61022b600480360360408110156103cb57600080fd5b506001600160a01b0381358116916020013516610a91565b610164600480360360208110156103f957600080fd5b50356001600160a01b0316610abc565b6101646004803603602081101561041f57600080fd5b50356001600160a01b0316610bf5565b6101646004803603602081101561044557600080fd5b50356001600160a01b0316610d99565b6101646004803603602081101561046b57600080fd5b50356001600160a01b0316610e91565b600061048561109b565b6001600160a01b03811660009081526006602052604090205490915060ff16156104e05760405162461bcd60e51b815260040180806020018281038252602c815260200180611df6602c913960400191505060405180910390fd5b60006104eb8361109f565b505050506001600160a01b0383166000908152600160205260409020549091506105159082611139565b6001600160a01b03831660009081526001602090815260408083209390935560069052205460ff16156105535760045461054f9082611139565b6004555b600c546105609082611139565b600c55600d546105709084611182565b600d55505050565b6040805180820190915260068152655820446f676560d01b60208201525b90565b60006105ad6105a661109b565b84846111dc565b5060015b92915050565b600d5490565b69021e19e0c9bab240000090565b60006105d88484846112c8565b610648846105e461109b565b61064385604051806060016040528060288152602001611d3c602891396001600160a01b038a1660009081526003602052604081209061062261109b565b6001600160a01b0316815260208101919091526040016000205491906115f8565b6111dc565b5060019392505050565b6000600c548211156106955760405162461bcd60e51b815260040180806020018281038252602a815260200180611c81602a913960400191505060405180910390fd5b600061069f61168f565b90506106ab838261173c565b9150505b919050565b600990565b600069021e19e0c9bab240000083111561071a576040805162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c7900604482015290519081900360640190fd5b8161073857600061072a8461109f565b509294506105b19350505050565b60006107438461109f565b509194506105b19350505050565b6001600160a01b03811660009081526006602052604081205460ff161561079157506001600160a01b0381166000908152600260205260409020546106af565b6001600160a01b0382166000908152600160205260409020546105b190610652565b6107bb61109b565b6000546001600160a01b0390811691161461080b576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600e5481565b61086361109b565b6000546001600160a01b039081169116146108b3576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526009602052604090205460ff16610920576040805162461bcd60e51b815260206004820152601a60248201527f4163636f756e74206973206e6f742077686974656c6973746564000000000000604482015290519081900360640190fd5b6001600160a01b0381166000908152600b6020526040902054600a8054600019810190811061094b57fe5b600091825260209091200154600a80546001600160a01b03909216918390811061097157fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555080600b6000600a84815481106109b157fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902055600a8054806109e157fe5b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03939093168152600983526040808220805460ff19169055600b9093529182209190915550565b6000546001600160a01b031690565b6040805180820190915260018152600b60fb1b602082015290565b60006105ad610a6c61109b565b84846112c8565b6001600160a01b031660009081526006602052604090205460ff1690565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b610ac461109b565b6000546001600160a01b03908116911614610b14576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526009602052604090205460ff1615610b82576040805162461bcd60e51b815260206004820152601e60248201527f4163636f756e7420697320616c72656164792077686974656c69737465640000604482015290519081900360640190fd5b6001600160a01b03166000818152600960209081526040808320805460ff19166001908117909155600a8054600b909452918420839055820181559091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80180546001600160a01b0319169091179055565b610bfd61109b565b6000546001600160a01b03908116911614610c4d576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526006602052604090205460ff1615610cbb576040805162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604482015290519081900360640190fd5b6001600160a01b03811660009081526001602052604090205415610d26576001600160a01b038116600090815260016020526040902054610cfb90610652565b6001600160a01b0382166000908152600260205260409020819055600554610d2291611182565b6005555b6001600160a01b03166000818152600660209081526040808320805460ff19166001908117909155600780546008909452918420839055820181559091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b0319169091179055565b610da161109b565b6000546001600160a01b03908116911614610df1576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b038116610e365760405162461bcd60e51b8152600401808060200182810382526026815260200180611cab6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b610e9961109b565b6000546001600160a01b03908116911614610ee9576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526006602052604090205460ff16610f56576040805162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604482015290519081900360640190fd5b6001600160a01b038116600090815260086020526040902054600780546000198101908110610f8157fe5b600091825260209091200154600780546001600160a01b039092169183908110610fa757fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550806008600060078481548110610fe757fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902055600780548061101757fe5b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b0384168252600881526040808320839055600290915290205460055461106991611139565b600555506001600160a01b0316600090815260026020908152604080832083905560069091529020805460ff19169055565b3390565b6000806000806000806110b061109b565b6001600160a01b03811660009081526009602052604081205491925090819060ff16156110de575087611104565b6110f560096110ef8b6103e861173c565b9061177e565b91506111018983611139565b90505b600061110e61168f565b905060008060006111208d87866117d7565b919f909e50909c50949a50949850929650505050505050565b600061117b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115f8565b9392505050565b60008282018381101561117b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b0383166112215760405162461bcd60e51b8152600401808060200182810382526024815260200180611dd26024913960400191505060405180910390fd5b6001600160a01b0382166112665760405162461bcd60e51b8152600401808060200182810382526022815260200180611cd16022913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661130d5760405162461bcd60e51b8152600401808060200182810382526025815260200180611dad6025913960400191505060405180910390fd5b6001600160a01b0382166113525760405162461bcd60e51b8152600401808060200182810382526023815260200180611c5e6023913960400191505060405180910390fd5b600081116113915760405162461bcd60e51b8152600401808060200182810382526029815260200180611d846029913960400191505060405180910390fd5b611399610a35565b6001600160a01b0316836001600160a01b0316141580156113d357506113bd610a35565b6001600160a01b0316826001600160a01b031614155b1561141957600e548111156114195760405162461bcd60e51b8152600401808060200182810382526028815260200180611cf36028913960400191505060405180910390fd5b611421610a35565b6001600160a01b0316836001600160a01b03161415801561145b5750611445610a35565b6001600160a01b0316826001600160a01b031614155b801561148057506001600160a01b03831660009081526009602052604090205460ff16155b80156114a557506001600160a01b03821660009081526009602052604090205460ff16155b1561155a576011546001600160a01b03841660009081526010602052604090205414611527576001600160a01b0383166000908152600f6020526040902054431415611527576040805162461bcd60e51b815260206004820152600c60248201526b109bdd0819195d1958dd195960a21b604482015290519081900360640190fd5b6011805460010181556001600160a01b0383166000908152600f6020908152604080832043905592546010909152919020555b6001600160a01b03831660009081526006602052604090205460ff16156115bc576001600160a01b03821660009081526006602052604090205460ff16156115ac576115a7838383611813565b6115b7565b6115b78383836119a0565b6115f3565b6001600160a01b03821660009081526006602052604090205460ff16156115e8576115b7838383611a75565b6115f3838383611b41565b505050565b600081848411156116875760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561164c578181015183820152602001611634565b50505050905090810190601f1680156116795780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000806116b169021e19e0c9bab2400000600c5461173c90919063ffffffff16565b9050600c5460045411806116d0575069021e19e0c9bab2400000600554115b156116dc579050610596565b60006116f5600454600c5461113990919063ffffffff16565b90508181101561170757509050610596565b600061172860055469021e19e0c9bab240000061113990919063ffffffff16565b9050611734828261173c565b935050505090565b600061117b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611bd4565b60008261178d575060006105b1565b8282028284828161179a57fe5b041461117b5760405162461bcd60e51b8152600401808060200182810382526021815260200180611d1b6021913960400191505060405180910390fd5b60008080806117e6878661177e565b905060006117f4878761177e565b905060006118028383611139565b929992985090965090945050505050565b60008060008060006118248661109f565b6001600160a01b038d16600090815260026020526040902054949950929750909550935091506118549087611139565b6001600160a01b0389166000908152600260209081526040808320939093556001905220546118839086611139565b6001600160a01b03808a16600090815260016020908152604080832094909455918a168152600290915220546118b99083611182565b6001600160a01b0388166000908152600260209081526040808320939093556001905220546118e89085611182565b6001600160a01b03881660009081526001602052604090205560055461190e9087611139565b60055560045461191e9086611139565b60045560055461192e9083611182565b60055560045461193e9085611182565b60045561194b8382611c39565b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b60008060008060006119b18661109f565b6001600160a01b038d16600090815260026020526040902054949950929750909550935091506119e19087611139565b6001600160a01b038916600090815260026020908152604080832093909355600190522054611a109086611139565b6001600160a01b03808a166000908152600160205260408082209390935590891681522054611a3f9085611182565b6001600160a01b038816600090815260016020526040902055600554611a659087611139565b60055560045461193e9086611139565b6000806000806000611a868661109f565b6001600160a01b038d1660009081526001602052604090205494995092975090955093509150611ab69086611139565b6001600160a01b03808a16600090815260016020908152604080832094909455918a16815260029091522054611aec9083611182565b6001600160a01b038816600090815260026020908152604080832093909355600190522054611b1b9085611182565b6001600160a01b03881660009081526001602052604090205560055461192e9083611182565b6000806000806000611b528661109f565b6001600160a01b038d1660009081526001602052604090205494995092975090955093509150611b829086611139565b6001600160a01b03808a166000908152600160205260408082209390935590891681522054611bb19085611182565b6001600160a01b03881660009081526001602052604090205561194b8382611c39565b60008183611c235760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561164c578181015183820152602001611634565b506000838581611c2f57fe5b0495945050505050565b600c54611c469083611139565b600c55600d54611c569082611182565b600d55505056fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373416d6f756e74206d757374206265206c657373207468616e20746f74616c207265666c656374696f6e734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f20616464726573735472616e7366657220616d6f756e74206578636565647320746865206d61785478416d6f756e742e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734578636c75646564206164647265737365732063616e6e6f742063616c6c20746869732066756e6374696f6ea26469706673582212206a8210436545aa469240cf43927884992e1ea77c99cb0a7d28c953019a6d581364736f6c634300060c0033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101425760003560e01c80637d1db4a5116100b8578063cba0e9961161007c578063cba0e9961461038f578063dd62ed3e146103b5578063e43252d7146103e3578063f2cc0c1814610409578063f2fde38b1461042f578063f84354f11461045557610142565b80637d1db4a5146103095780638ab1d681146103115780638da5cb5b1461033757806395d89b411461035b578063a9059cbb1461036357610142565b806323b872dd1161010a57806323b872dd146102455780632d8381191461027b578063313ce567146102985780634549b039146102b657806370a08231146102db578063715018a61461030157610142565b8063053ab1821461014757806306fdde0314610166578063095ea7b3146101e357806313114a9d1461022357806318160ddd1461023d575b600080fd5b6101646004803603602081101561015d57600080fd5b503561047b565b005b61016e610578565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101a8578181015183820152602001610190565b50505050905090810190601f1680156101d55780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61020f600480360360408110156101f957600080fd5b506001600160a01b038135169060200135610599565b604080519115158252519081900360200190f35b61022b6105b7565b60408051918252519081900360200190f35b61022b6105bd565b61020f6004803603606081101561025b57600080fd5b506001600160a01b038135811691602081013590911690604001356105cb565b61022b6004803603602081101561029157600080fd5b5035610652565b6102a06106b4565b6040805160ff9092168252519081900360200190f35b61022b600480360360408110156102cc57600080fd5b508035906020013515156106b9565b61022b600480360360208110156102f157600080fd5b50356001600160a01b0316610751565b6101646107b3565b61022b610855565b6101646004803603602081101561032757600080fd5b50356001600160a01b031661085b565b61033f610a35565b604080516001600160a01b039092168252519081900360200190f35b61016e610a44565b61020f6004803603604081101561037957600080fd5b506001600160a01b038135169060200135610a5f565b61020f600480360360208110156103a557600080fd5b50356001600160a01b0316610a73565b61022b600480360360408110156103cb57600080fd5b506001600160a01b0381358116916020013516610a91565b610164600480360360208110156103f957600080fd5b50356001600160a01b0316610abc565b6101646004803603602081101561041f57600080fd5b50356001600160a01b0316610bf5565b6101646004803603602081101561044557600080fd5b50356001600160a01b0316610d99565b6101646004803603602081101561046b57600080fd5b50356001600160a01b0316610e91565b600061048561109b565b6001600160a01b03811660009081526006602052604090205490915060ff16156104e05760405162461bcd60e51b815260040180806020018281038252602c815260200180611df6602c913960400191505060405180910390fd5b60006104eb8361109f565b505050506001600160a01b0383166000908152600160205260409020549091506105159082611139565b6001600160a01b03831660009081526001602090815260408083209390935560069052205460ff16156105535760045461054f9082611139565b6004555b600c546105609082611139565b600c55600d546105709084611182565b600d55505050565b6040805180820190915260068152655820446f676560d01b60208201525b90565b60006105ad6105a661109b565b84846111dc565b5060015b92915050565b600d5490565b69021e19e0c9bab240000090565b60006105d88484846112c8565b610648846105e461109b565b61064385604051806060016040528060288152602001611d3c602891396001600160a01b038a1660009081526003602052604081209061062261109b565b6001600160a01b0316815260208101919091526040016000205491906115f8565b6111dc565b5060019392505050565b6000600c548211156106955760405162461bcd60e51b815260040180806020018281038252602a815260200180611c81602a913960400191505060405180910390fd5b600061069f61168f565b90506106ab838261173c565b9150505b919050565b600990565b600069021e19e0c9bab240000083111561071a576040805162461bcd60e51b815260206004820152601f60248201527f416d6f756e74206d757374206265206c657373207468616e20737570706c7900604482015290519081900360640190fd5b8161073857600061072a8461109f565b509294506105b19350505050565b60006107438461109f565b509194506105b19350505050565b6001600160a01b03811660009081526006602052604081205460ff161561079157506001600160a01b0381166000908152600260205260409020546106af565b6001600160a01b0382166000908152600160205260409020546105b190610652565b6107bb61109b565b6000546001600160a01b0390811691161461080b576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600e5481565b61086361109b565b6000546001600160a01b039081169116146108b3576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526009602052604090205460ff16610920576040805162461bcd60e51b815260206004820152601a60248201527f4163636f756e74206973206e6f742077686974656c6973746564000000000000604482015290519081900360640190fd5b6001600160a01b0381166000908152600b6020526040902054600a8054600019810190811061094b57fe5b600091825260209091200154600a80546001600160a01b03909216918390811061097157fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555080600b6000600a84815481106109b157fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902055600a8054806109e157fe5b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b03939093168152600983526040808220805460ff19169055600b9093529182209190915550565b6000546001600160a01b031690565b6040805180820190915260018152600b60fb1b602082015290565b60006105ad610a6c61109b565b84846112c8565b6001600160a01b031660009081526006602052604090205460ff1690565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b610ac461109b565b6000546001600160a01b03908116911614610b14576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526009602052604090205460ff1615610b82576040805162461bcd60e51b815260206004820152601e60248201527f4163636f756e7420697320616c72656164792077686974656c69737465640000604482015290519081900360640190fd5b6001600160a01b03166000818152600960209081526040808320805460ff19166001908117909155600a8054600b909452918420839055820181559091527fc65a7bb8d6351c1cf70c95a316cc6a92839c986682d98bc35f958f4883f9d2a80180546001600160a01b0319169091179055565b610bfd61109b565b6000546001600160a01b03908116911614610c4d576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526006602052604090205460ff1615610cbb576040805162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604482015290519081900360640190fd5b6001600160a01b03811660009081526001602052604090205415610d26576001600160a01b038116600090815260016020526040902054610cfb90610652565b6001600160a01b0382166000908152600260205260409020819055600554610d2291611182565b6005555b6001600160a01b03166000818152600660209081526040808320805460ff19166001908117909155600780546008909452918420839055820181559091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880180546001600160a01b0319169091179055565b610da161109b565b6000546001600160a01b03908116911614610df1576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b038116610e365760405162461bcd60e51b8152600401808060200182810382526026815260200180611cab6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b610e9961109b565b6000546001600160a01b03908116911614610ee9576040805162461bcd60e51b81526020600482018190526024820152600080516020611d64833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526006602052604090205460ff16610f56576040805162461bcd60e51b815260206004820152601b60248201527f4163636f756e7420697320616c7265616479206578636c756465640000000000604482015290519081900360640190fd5b6001600160a01b038116600090815260086020526040902054600780546000198101908110610f8157fe5b600091825260209091200154600780546001600160a01b039092169183908110610fa757fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550806008600060078481548110610fe757fe5b60009182526020808320909101546001600160a01b03168352820192909252604001902055600780548061101757fe5b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b0384168252600881526040808320839055600290915290205460055461106991611139565b600555506001600160a01b0316600090815260026020908152604080832083905560069091529020805460ff19169055565b3390565b6000806000806000806110b061109b565b6001600160a01b03811660009081526009602052604081205491925090819060ff16156110de575087611104565b6110f560096110ef8b6103e861173c565b9061177e565b91506111018983611139565b90505b600061110e61168f565b905060008060006111208d87866117d7565b919f909e50909c50949a50949850929650505050505050565b600061117b83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115f8565b9392505050565b60008282018381101561117b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6001600160a01b0383166112215760405162461bcd60e51b8152600401808060200182810382526024815260200180611dd26024913960400191505060405180910390fd5b6001600160a01b0382166112665760405162461bcd60e51b8152600401808060200182810382526022815260200180611cd16022913960400191505060405180910390fd5b6001600160a01b03808416600081815260036020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b03831661130d5760405162461bcd60e51b8152600401808060200182810382526025815260200180611dad6025913960400191505060405180910390fd5b6001600160a01b0382166113525760405162461bcd60e51b8152600401808060200182810382526023815260200180611c5e6023913960400191505060405180910390fd5b600081116113915760405162461bcd60e51b8152600401808060200182810382526029815260200180611d846029913960400191505060405180910390fd5b611399610a35565b6001600160a01b0316836001600160a01b0316141580156113d357506113bd610a35565b6001600160a01b0316826001600160a01b031614155b1561141957600e548111156114195760405162461bcd60e51b8152600401808060200182810382526028815260200180611cf36028913960400191505060405180910390fd5b611421610a35565b6001600160a01b0316836001600160a01b03161415801561145b5750611445610a35565b6001600160a01b0316826001600160a01b031614155b801561148057506001600160a01b03831660009081526009602052604090205460ff16155b80156114a557506001600160a01b03821660009081526009602052604090205460ff16155b1561155a576011546001600160a01b03841660009081526010602052604090205414611527576001600160a01b0383166000908152600f6020526040902054431415611527576040805162461bcd60e51b815260206004820152600c60248201526b109bdd0819195d1958dd195960a21b604482015290519081900360640190fd5b6011805460010181556001600160a01b0383166000908152600f6020908152604080832043905592546010909152919020555b6001600160a01b03831660009081526006602052604090205460ff16156115bc576001600160a01b03821660009081526006602052604090205460ff16156115ac576115a7838383611813565b6115b7565b6115b78383836119a0565b6115f3565b6001600160a01b03821660009081526006602052604090205460ff16156115e8576115b7838383611a75565b6115f3838383611b41565b505050565b600081848411156116875760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561164c578181015183820152602001611634565b50505050905090810190601f1680156116795780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000806116b169021e19e0c9bab2400000600c5461173c90919063ffffffff16565b9050600c5460045411806116d0575069021e19e0c9bab2400000600554115b156116dc579050610596565b60006116f5600454600c5461113990919063ffffffff16565b90508181101561170757509050610596565b600061172860055469021e19e0c9bab240000061113990919063ffffffff16565b9050611734828261173c565b935050505090565b600061117b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611bd4565b60008261178d575060006105b1565b8282028284828161179a57fe5b041461117b5760405162461bcd60e51b8152600401808060200182810382526021815260200180611d1b6021913960400191505060405180910390fd5b60008080806117e6878661177e565b905060006117f4878761177e565b905060006118028383611139565b929992985090965090945050505050565b60008060008060006118248661109f565b6001600160a01b038d16600090815260026020526040902054949950929750909550935091506118549087611139565b6001600160a01b0389166000908152600260209081526040808320939093556001905220546118839086611139565b6001600160a01b03808a16600090815260016020908152604080832094909455918a168152600290915220546118b99083611182565b6001600160a01b0388166000908152600260209081526040808320939093556001905220546118e89085611182565b6001600160a01b03881660009081526001602052604090205560055461190e9087611139565b60055560045461191e9086611139565b60045560055461192e9083611182565b60055560045461193e9085611182565b60045561194b8382611c39565b866001600160a01b0316886001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a35050505050505050565b60008060008060006119b18661109f565b6001600160a01b038d16600090815260026020526040902054949950929750909550935091506119e19087611139565b6001600160a01b038916600090815260026020908152604080832093909355600190522054611a109086611139565b6001600160a01b03808a166000908152600160205260408082209390935590891681522054611a3f9085611182565b6001600160a01b038816600090815260016020526040902055600554611a659087611139565b60055560045461193e9086611139565b6000806000806000611a868661109f565b6001600160a01b038d1660009081526001602052604090205494995092975090955093509150611ab69086611139565b6001600160a01b03808a16600090815260016020908152604080832094909455918a16815260029091522054611aec9083611182565b6001600160a01b038816600090815260026020908152604080832093909355600190522054611b1b9085611182565b6001600160a01b03881660009081526001602052604090205560055461192e9083611182565b6000806000806000611b528661109f565b6001600160a01b038d1660009081526001602052604090205494995092975090955093509150611b829086611139565b6001600160a01b03808a166000908152600160205260408082209390935590891681522054611bb19085611182565b6001600160a01b03881660009081526001602052604090205561194b8382611c39565b60008183611c235760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561164c578181015183820152602001611634565b506000838581611c2f57fe5b0495945050505050565b600c54611c469083611139565b600c55600d54611c569082611182565b600d55505056fe45524332303a207472616e7366657220746f20746865207a65726f2061646472657373416d6f756e74206d757374206265206c657373207468616e20746f74616c207265666c656374696f6e734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f20616464726573735472616e7366657220616d6f756e74206578636565647320746865206d61785478416d6f756e742e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e63654f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f20616464726573734578636c75646564206164647265737365732063616e6e6f742063616c6c20746869732066756e6374696f6ea26469706673582212206a8210436545aa469240cf43927884992e1ea77c99cb0a7d28c953019a6d581364736f6c634300060c0033
Deployed Bytecode Sourcemap
15487:11790:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18452:484;;;;;;;;;;;;;;;;-1:-1:-1;18452:484:0;;:::i;:::-;;16837:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17749:161;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;17749:161:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;18357:87;;;:::i;:::-;;;;;;;;;;;;;;;;17114:95;;;:::i;17918:313::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;17918:313:0;;;;;;;;;;;;;;;;;:::i;19386:253::-;;;;;;;;;;;;;;;;-1:-1:-1;19386:253:0;;:::i;17023:83::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18944:434;;;;;;;;;;;;;;;;-1:-1:-1;18944:434:0;;;;;;;;;:::i;17217:198::-;;;;;;;;;;;;;;;;-1:-1:-1;17217:198:0;-1:-1:-1;;;;;17217:198:0;;:::i;14931:148::-;;;:::i;16488:52::-;;;:::i;20899:421::-;;;;;;;;;;;;;;;;-1:-1:-1;20899:421:0;-1:-1:-1;;;;;20899:421:0;;:::i;14289:79::-;;;:::i;:::-;;;;-1:-1:-1;;;;;14289:79:0;;;;;;;;;;;;;;16928:87;;;:::i;17423:167::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;17423:167:0;;;;;;;;:::i;18239:110::-;;;;;;;;;;;;;;;;-1:-1:-1;18239:110:0;-1:-1:-1;;;;;18239:110:0;;:::i;17598:143::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;17598:143:0;;;;;;;;;;:::i;20608:283::-;;;;;;;;;;;;;;;;-1:-1:-1;20608:283:0;-1:-1:-1;;;;;20608:283:0;;:::i;19647:455::-;;;;;;;;;;;;;;;;-1:-1:-1;19647:455:0;-1:-1:-1;;;;;19647:455:0;;:::i;15234:244::-;;;;;;;;;;;;;;;;-1:-1:-1;15234:244:0;-1:-1:-1;;;;;15234:244:0;;:::i;20110:490::-;;;;;;;;;;;;;;;;-1:-1:-1;20110:490:0;-1:-1:-1;;;;;20110:490:0;;:::i;18452:484::-;18504:14;18521:12;:10;:12::i;:::-;-1:-1:-1;;;;;18553:19:0;;;;;;:11;:19;;;;;;18504:29;;-1:-1:-1;18553:19:0;;18552:20;18544:77;;;;-1:-1:-1;;;18544:77:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18633:15;18656:19;18667:7;18656:10;:19::i;:::-;-1:-1:-1;;;;;;;;;18704:15:0;;;;;;:7;:15;;;;;;18632:43;;-1:-1:-1;18704:28:0;;18632:43;18704:19;:28::i;:::-;-1:-1:-1;;;;;18686:15:0;;;;;;:7;:15;;;;;;;;:46;;;;18747:11;:19;;;;;;18743:98;;;18801:15;;:28;;18821:7;18801:19;:28::i;:::-;18783:15;:46;18743:98;18861:7;;:20;;18873:7;18861:11;:20::i;:::-;18851:7;:30;18905:10;;:23;;18920:7;18905:14;:23::i;:::-;18892:10;:36;-1:-1:-1;;;18452:484:0:o;16837:83::-;16907:5;;;;;;;;;;;;-1:-1:-1;;;16907:5:0;;;;16837:83;;:::o;17749:161::-;17824:4;17841:39;17850:12;:10;:12::i;:::-;17864:7;17873:6;17841:8;:39::i;:::-;-1:-1:-1;17898:4:0;17749:161;;;;;:::o;18357:87::-;18426:10;;18357:87;:::o;17114:95::-;16232:24;17114:95;:::o;17918:313::-;18016:4;18033:36;18043:6;18051:9;18062:6;18033:9;:36::i;:::-;18080:121;18089:6;18097:12;:10;:12::i;:::-;18111:89;18149:6;18111:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;18111:19:0;;;;;;:11;:19;;;;;;18131:12;:10;:12::i;:::-;-1:-1:-1;;;;;18111:33:0;;;;;;;;;;;;-1:-1:-1;18111:33:0;;;:89;:37;:89::i;:::-;18080:8;:121::i;:::-;-1:-1:-1;18219:4:0;17918:313;;;;;:::o;19386:253::-;19452:7;19491;;19480;:18;;19472:73;;;;-1:-1:-1;;;19472:73:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19556:19;19579:10;:8;:10::i;:::-;19556:33;-1:-1:-1;19607:24:0;:7;19556:33;19607:11;:24::i;:::-;19600:31;;;19386:253;;;;:::o;17023:83::-;16480:1;17023:83;:::o;18944:434::-;19034:7;16232:24;19062:7;:18;;19054:62;;;;;-1:-1:-1;;;19054:62:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;19132:17;19127:244;;19167:15;19190:19;19201:7;19190:10;:19::i;:::-;-1:-1:-1;19166:43:0;;-1:-1:-1;19224:14:0;;-1:-1:-1;;;;19224:14:0;19127:244;19273:23;19303:19;19314:7;19303:10;:19::i;:::-;-1:-1:-1;19271:51:0;;-1:-1:-1;19337:22:0;;-1:-1:-1;;;;19337:22:0;17217:198;-1:-1:-1;;;;;17307:20:0;;17283:7;17307:20;;;:11;:20;;;;;;;;17303:49;;;-1:-1:-1;;;;;;17336:16:0;;;;;;:7;:16;;;;;;17329:23;;17303:49;-1:-1:-1;;;;;17390:16:0;;;;;;:7;:16;;;;;;17370:37;;:19;:37::i;14931:148::-;14511:12;:10;:12::i;:::-;14501:6;;-1:-1:-1;;;;;14501:6:0;;;:22;;;14493:67;;;;;-1:-1:-1;;;14493:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;14493:67:0;;;;;;;;;;;;;;;15038:1:::1;15022:6:::0;;15001:40:::1;::::0;-1:-1:-1;;;;;15022:6:0;;::::1;::::0;15001:40:::1;::::0;15038:1;;15001:40:::1;15069:1;15052:19:::0;;-1:-1:-1;;;;;;15052:19:0::1;::::0;;14931:148::o;16488:52::-;;;;:::o;20899:421::-;14511:12;:10;:12::i;:::-;14501:6;;-1:-1:-1;;;;;14501:6:0;;;:22;;;14493:67;;;;;-1:-1:-1;;;14493:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;14493:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;20985:23:0;::::1;;::::0;;;:14:::1;:23;::::0;;;;;::::1;;20977:62;;;::::0;;-1:-1:-1;;;20977:62:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;21062:24:0;::::1;21050:9;21062:24:::0;;;:15:::1;:24;::::0;;;;;21115:12:::1;21128:19:::0;;-1:-1:-1;;21128:23:0;;;21115:37;::::1;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;21097:12:::1;:15:::0;;-1:-1:-1;;;;;21115:37:0;;::::1;::::0;21110:1;;21097:15;::::1;;;;;;;;;;;;;:55;;;;;-1:-1:-1::0;;;;;21097:55:0::1;;;;;-1:-1:-1::0;;;;;21097:55:0::1;;;;;;21198:1;21163:15;:32;21179:12;21192:1;21179:15;;;;;;;;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;21179:15:0::1;21163:32:::0;;;::::1;::::0;;;;;;;;:36;21210:12:::1;:18:::0;;;::::1;;;;;::::0;;;::::1;::::0;;;;;-1:-1:-1;;21210:18:0;;;;;-1:-1:-1;;;;;;21210:18:0::1;::::0;;;;;;;;-1:-1:-1;;;;;21239:23:0;;;::::1;::::0;;:14:::1;:23:::0;;;;;;:31;;-1:-1:-1;;21239:31:0::1;::::0;;21288:15:::1;:24:::0;;;;;;21281:31;;;;-1:-1:-1;20899:421:0:o;14289:79::-;14327:7;14354:6;-1:-1:-1;;;;;14354:6:0;14289:79;:::o;16928:87::-;17000:7;;;;;;;;;;;;-1:-1:-1;;;17000:7:0;;;;16928:87;:::o;17423:167::-;17501:4;17518:42;17528:12;:10;:12::i;:::-;17542:9;17553:6;17518:9;:42::i;18239:110::-;-1:-1:-1;;;;;18321:20:0;18297:4;18321:20;;;:11;:20;;;;;;;;;18239:110::o;17598:143::-;-1:-1:-1;;;;;17706:18:0;;;17679:7;17706:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;17598:143::o;20608:283::-;14511:12;:10;:12::i;:::-;14501:6;;-1:-1:-1;;;;;14501:6:0;;;:22;;;14493:67;;;;;-1:-1:-1;;;14493:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;14493:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;20690:23:0;::::1;;::::0;;;:14:::1;:23;::::0;;;;;::::1;;20689:24;20681:67;;;::::0;;-1:-1:-1;;;20681:67:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;20759:23:0::1;;::::0;;;:14:::1;:23;::::0;;;;;;;:30;;-1:-1:-1;;20759:30:0::1;20785:4;20759:30:::0;;::::1;::::0;;;20827:12:::1;:19:::0;;20800:15:::1;:24:::0;;;;;;:46;;;20857:26;::::1;::::0;;;;;;::::1;::::0;;-1:-1:-1;;;;;;20857:26:0::1;::::0;;::::1;::::0;;20608:283::o;19647:455::-;14511:12;:10;:12::i;:::-;14501:6;;-1:-1:-1;;;;;14501:6:0;;;:22;;;14493:67;;;;;-1:-1:-1;;;14493:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;14493:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;19729:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;19728:21;19720:61;;;::::0;;-1:-1:-1;;;19720:61:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;19795:16:0;::::1;19814:1;19795:16:::0;;;:7:::1;:16;::::0;;;;;:20;19792:178:::1;;-1:-1:-1::0;;;;;19871:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;;19851:37:::1;::::0;:19:::1;:37::i;:::-;-1:-1:-1::0;;;;;19832:16:0;::::1;;::::0;;;:7:::1;:16;::::0;;;;:56;;;19921:15:::1;::::0;:37:::1;::::0;:19:::1;:37::i;:::-;19903:15;:55:::0;19792:178:::1;-1:-1:-1::0;;;;;19980:20:0::1;;::::0;;;:11:::1;:20;::::0;;;;;;;:27;;-1:-1:-1;;19980:27:0::1;20003:4;19980:27:::0;;::::1;::::0;;;20044:9:::1;:16:::0;;20018:14:::1;:23:::0;;;;;;:42;;;20071:23;::::1;::::0;;;;;;::::1;::::0;;-1:-1:-1;;;;;;20071:23:0::1;::::0;;::::1;::::0;;19647:455::o;15234:244::-;14511:12;:10;:12::i;:::-;14501:6;;-1:-1:-1;;;;;14501:6:0;;;:22;;;14493:67;;;;;-1:-1:-1;;;14493:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;14493:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;15323:22:0;::::1;15315:73;;;;-1:-1:-1::0;;;15315:73:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15425:6;::::0;;15404:38:::1;::::0;-1:-1:-1;;;;;15404:38:0;;::::1;::::0;15425:6;::::1;::::0;15404:38:::1;::::0;::::1;15453:6;:17:::0;;-1:-1:-1;;;;;;15453:17:0::1;-1:-1:-1::0;;;;;15453:17:0;;;::::1;::::0;;;::::1;::::0;;15234:244::o;20110:490::-;14511:12;:10;:12::i;:::-;14501:6;;-1:-1:-1;;;;;14501:6:0;;;:22;;;14493:67;;;;;-1:-1:-1;;;14493:67:0;;;;;;;;;;;;;-1:-1:-1;;;;;;;;;;;14493:67:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;20191:20:0;::::1;;::::0;;;:11:::1;:20;::::0;;;;;::::1;;20183:60;;;::::0;;-1:-1:-1;;;20183:60:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;20266:23:0;::::1;20254:9;20266:23:::0;;;:14:::1;:23;::::0;;;;;20315:9:::1;20325:16:::0;;-1:-1:-1;;20325:20:0;;;20315:31;::::1;;;;;;::::0;;;::::1;::::0;;;::::1;::::0;20300:9:::1;:12:::0;;-1:-1:-1;;;;;20315:31:0;;::::1;::::0;20310:1;;20300:12;::::1;;;;;;;;;;;;;:46;;;;;-1:-1:-1::0;;;;;20300:46:0::1;;;;;-1:-1:-1::0;;;;;20300:46:0::1;;;;;;20388:1;20357:14;:28;20372:9;20382:1;20372:12;;;;;;;;;::::0;;;::::1;::::0;;;;;::::1;::::0;-1:-1:-1;;;;;20372:12:0::1;20357:28:::0;;;::::1;::::0;;;;;;;;:32;20400:9:::1;:15:::0;;;::::1;;;;;::::0;;;::::1;::::0;;;;;-1:-1:-1;;20400:15:0;;;;;-1:-1:-1;;;;;;20400:15:0::1;::::0;;;;;;;;-1:-1:-1;;;;;20433:23:0;::::1;::::0;;:14:::1;:23:::0;;;;;;20426:30;;;20505:7:::1;:16:::0;;;;;;20485:15:::1;::::0;:37:::1;::::0;:19:::1;:37::i;:::-;20467:15;:55:::0;-1:-1:-1;;;;;;20533:16:0::1;20552:1;20533:16:::0;;;:7:::1;:16;::::0;;;;;;;:20;;;20564:11:::1;:20:::0;;;;;:28;;-1:-1:-1;;20564:28:0::1;::::0;;20110:490::o;96:106::-;184:10;96:106;:::o;25825:639::-;25884:7;25893;25902;25911;25920;25940:14;25957:12;:10;:12::i;:::-;-1:-1:-1;;;;;26041:22:0;;25980:12;26041:22;;;:14;:22;;;;;;25940:29;;-1:-1:-1;25980:12:0;;;26041:22;;26037:194;;;-1:-1:-1;26098:7:0;26037:194;;;26145:24;26167:1;26145:17;:7;26157:4;26145:11;:17::i;:::-;:21;;:24::i;:::-;26138:31;-1:-1:-1;26202:17:0;:7;26138:31;26202:11;:17::i;:::-;26184:35;;26037:194;26241:19;26264:10;:8;:10::i;:::-;26241:33;;26286:15;26303:23;26328:12;26344:39;26356:7;26365:4;26371:11;26344;:39::i;:::-;26285:98;;;;-1:-1:-1;26285:98:0;;-1:-1:-1;26434:15:0;;-1:-1:-1;26451:4:0;;-1:-1:-1;25825:639:0;;-1:-1:-1;;;;;;;25825:639:0:o;3720:136::-;3778:7;3805:43;3809:1;3812;3805:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;3798:50;3720:136;-1:-1:-1;;;3720:136:0:o;3256:181::-;3314:7;3346:5;;;3370:6;;;;3362:46;;;;;-1:-1:-1;;;3362:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;21328:337;-1:-1:-1;;;;;21421:19:0;;21413:68;;;;-1:-1:-1;;;21413:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21500:21:0;;21492:68;;;;-1:-1:-1;;;21492:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21573:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;21625:32;;;;;;;;;;;;;;;;;21328:337;;;:::o;21673:1388::-;-1:-1:-1;;;;;21770:20:0;;21762:70;;;;-1:-1:-1;;;21762:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;21851:23:0;;21843:71;;;;-1:-1:-1;;;21843:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21942:1;21933:6;:10;21925:64;;;;-1:-1:-1;;;21925:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22013:7;:5;:7::i;:::-;-1:-1:-1;;;;;22003:17:0;:6;-1:-1:-1;;;;;22003:17:0;;;:41;;;;;22037:7;:5;:7::i;:::-;-1:-1:-1;;;;;22024:20:0;:9;-1:-1:-1;;;;;22024:20:0;;;22003:41;22000:148;;;22079:12;;22069:6;:22;;22061:75;;;;-1:-1:-1;;;22061:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22182:7;:5;:7::i;:::-;-1:-1:-1;;;;;22172:17:0;:6;-1:-1:-1;;;;;22172:17:0;;;:41;;;;;22206:7;:5;:7::i;:::-;-1:-1:-1;;;;;22193:20:0;:9;-1:-1:-1;;;;;22193:20:0;;;22172:41;:68;;;;-1:-1:-1;;;;;;22218:22:0;;;;;;:14;:22;;;;;;;;22217:23;22172:68;:98;;;;-1:-1:-1;;;;;;22245:25:0;;;;;;:14;:25;;;;;;;;22244:26;22172:98;22168:397;;;22317:11;;-1:-1:-1;;;;;22291:22:0;;;;;;:14;:22;;;;;;:37;22287:134;;-1:-1:-1;;;;;22357:15:0;;;;;;:7;:15;;;;;;22376:12;22357:31;;22349:56;;;;;-1:-1:-1;;;22349:56:0;;;;;;;;;;;;-1:-1:-1;;;22349:56:0;;;;;;;;;;;;;;;22435:11;:16;;22450:1;22435:16;;;-1:-1:-1;;;;;22466:18:0;;22435:11;22466:18;;;:7;:18;;;;;;;;22487:12;22466:33;;22542:11;;22514:14;:25;;;;;;:39;22168:397;-1:-1:-1;;;;;22581:19:0;;;;;;:11;:19;;;;;;;;22577:477;;;-1:-1:-1;;;;;22621:22:0;;;;;;:11;:22;;;;;;;;22617:200;;;22664:48;22686:6;22694:9;22705:6;22664:21;:48::i;:::-;22617:200;;;22753:48;22775:6;22783:9;22794:6;22753:21;:48::i;:::-;22577:477;;;-1:-1:-1;;;;;22853:22:0;;;;;;:11;:22;;;;;;;;22849:194;;;22896:46;22916:6;22924:9;22935:6;22896:19;:46::i;22849:194::-;22983:44;23001:6;23009:9;23020:6;22983:17;:44::i;:::-;21673:1388;;;:::o;4159:192::-;4245:7;4281:12;4273:6;;;;4265:29;;;;-1:-1:-1;;;4265:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4317:5:0;;;4159:192::o;26814:460::-;26855:7;26875:19;26897:20;16232:24;26897:7;;:11;;:20;;;;:::i;:::-;26875:42;;26950:7;;26932:15;;:25;:54;;;;16232:24;26961:15;;:25;26932:54;26928:105;;;27010:11;-1:-1:-1;27003:18:0;;26928:105;27043:15;27061:28;27073:15;;27061:7;;:11;;:28;;;;:::i;:::-;27043:46;;27114:11;27104:7;:21;27100:72;;;-1:-1:-1;27149:11:0;-1:-1:-1;27142:18:0;;27100:72;27182:15;27200:28;27212:15;;16232:24;27200:11;;:28;;;;:::i;:::-;27182:46;-1:-1:-1;27246:20:0;:7;27182:46;27246:11;:20::i;:::-;27239:27;;;;;26814:460;:::o;5557:132::-;5615:7;5642:39;5646:1;5649;5642:39;;;;;;;;;;;;;;;;;:3;:39::i;4610:471::-;4668:7;4913:6;4909:47;;-1:-1:-1;4943:1:0;4936:8;;4909:47;4980:5;;;4984:1;4980;:5;:1;5004:5;;;;;:10;4996:56;;;;-1:-1:-1;;;4996:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26472:334;26567:7;;;;26623:24;:7;26635:11;26623;:24::i;:::-;26605:42;-1:-1:-1;26658:12:0;26673:21;:4;26682:11;26673:8;:21::i;:::-;26658:36;-1:-1:-1;26705:23:0;26731:17;:7;26658:36;26731:11;:17::i;:::-;26767:7;;;;-1:-1:-1;26793:4:0;;-1:-1:-1;26472:334:0;;-1:-1:-1;;;;;26472:334:0:o;24837:825::-;24940:15;24957:23;24982:12;24996:23;25021:12;25037:19;25048:7;25037:10;:19::i;:::-;-1:-1:-1;;;;;25085:15:0;;;;;;:7;:15;;;;;;24939:117;;-1:-1:-1;24939:117:0;;-1:-1:-1;24939:117:0;;-1:-1:-1;24939:117:0;-1:-1:-1;24939:117:0;-1:-1:-1;25085:28:0;;25105:7;25085:19;:28::i;:::-;-1:-1:-1;;;;;25067:15:0;;;;;;:7;:15;;;;;;;;:46;;;;25142:7;:15;;;;:28;;25162:7;25142:19;:28::i;:::-;-1:-1:-1;;;;;25124:15:0;;;;;;;:7;:15;;;;;;;;:46;;;;25202:18;;;;;:7;:18;;;;;:39;;25225:15;25202:22;:39::i;:::-;-1:-1:-1;;;;;25181:18:0;;;;;;:7;:18;;;;;;;;:60;;;;25273:7;:18;;;;:39;;25296:15;25273:22;:39::i;:::-;-1:-1:-1;;;;;25252:18:0;;;;;;:7;:18;;;;;:60;25345:15;;:28;;25365:7;25345:19;:28::i;:::-;25327:15;:46;25402:15;;:28;;25422:7;25402:19;:28::i;:::-;25384:15;:46;25459:15;;:36;;25479:15;25459:19;:36::i;:::-;25441:15;:54;25524:15;;:36;;25544:15;25524:19;:36::i;:::-;25506:15;:54;25571:23;25583:4;25589;25571:11;:23::i;:::-;25627:9;-1:-1:-1;;;;;25610:44:0;25619:6;-1:-1:-1;;;;;25610:44:0;;25638:15;25610:44;;;;;;;;;;;;;;;;;;24837:825;;;;;;;;:::o;24195:634::-;24298:15;24315:23;24340:12;24354:23;24379:12;24395:19;24406:7;24395:10;:19::i;:::-;-1:-1:-1;;;;;24443:15:0;;;;;;:7;:15;;;;;;24297:117;;-1:-1:-1;24297:117:0;;-1:-1:-1;24297:117:0;;-1:-1:-1;24297:117:0;-1:-1:-1;24297:117:0;-1:-1:-1;24443:28:0;;24463:7;24443:19;:28::i;:::-;-1:-1:-1;;;;;24425:15:0;;;;;;:7;:15;;;;;;;;:46;;;;24500:7;:15;;;;:28;;24520:7;24500:19;:28::i;:::-;-1:-1:-1;;;;;24482:15:0;;;;;;;:7;:15;;;;;;:46;;;;24560:18;;;;;;;:39;;24583:15;24560:22;:39::i;:::-;-1:-1:-1;;;;;24539:18:0;;;;;;:7;:18;;;;;:60;24640:15;;:28;;24660:7;24640:19;:28::i;:::-;24622:15;:46;24697:15;;:28;;24717:7;24697:19;:28::i;23530:657::-;23631:15;23648:23;23673:12;23687:23;23712:12;23728:19;23739:7;23728:10;:19::i;:::-;-1:-1:-1;;;;;23776:15:0;;;;;;:7;:15;;;;;;23630:117;;-1:-1:-1;23630:117:0;;-1:-1:-1;23630:117:0;;-1:-1:-1;23630:117:0;-1:-1:-1;23630:117:0;-1:-1:-1;23776:28:0;;23630:117;23776:19;:28::i;:::-;-1:-1:-1;;;;;23758:15:0;;;;;;;:7;:15;;;;;;;;:46;;;;23836:18;;;;;:7;:18;;;;;:39;;23859:15;23836:22;:39::i;:::-;-1:-1:-1;;;;;23815:18:0;;;;;;:7;:18;;;;;;;;:60;;;;23907:7;:18;;;;:39;;23930:15;23907:22;:39::i;:::-;-1:-1:-1;;;;;23886:18:0;;;;;;:7;:18;;;;;:60;23979:15;;:36;;23999:15;23979:19;:36::i;23069:453::-;23168:15;23185:23;23210:12;23224:23;23249:12;23265:19;23276:7;23265:10;:19::i;:::-;-1:-1:-1;;;;;23313:15:0;;;;;;:7;:15;;;;;;23167:117;;-1:-1:-1;23167:117:0;;-1:-1:-1;23167:117:0;;-1:-1:-1;23167:117:0;-1:-1:-1;23167:117:0;-1:-1:-1;23313:28:0;;23167:117;23313:19;:28::i;:::-;-1:-1:-1;;;;;23295:15:0;;;;;;;:7;:15;;;;;;:46;;;;23373:18;;;;;;;:39;;23396:15;23373:22;:39::i;:::-;-1:-1:-1;;;;;23352:18:0;;;;;;:7;:18;;;;;:60;23431:23;23443:4;23449;23431:11;:23::i;6185:278::-;6271:7;6306:12;6299:5;6291:28;;;;-1:-1:-1;;;6291:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6330:9;6346:1;6342;:5;;;;;;;6185:278;-1:-1:-1;;;;;6185:278:0:o;25670:147::-;25748:7;;:17;;25760:4;25748:11;:17::i;:::-;25738:7;:27;25789:10;;:20;;25804:4;25789:14;:20::i;:::-;25776:10;:33;-1:-1:-1;;25670:147:0:o
Swarm Source
ipfs://6a8210436545aa469240cf43927884992e1ea77c99cb0a7d28c953019a6d5813
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.