Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
0xa9f29ba86f84e966d07c243643cfb2249f14c707d2ad4dc9323a77d4f91b93de | - | (pending) | 3 hrs ago | IN | 0 ETH | (Pending) | |||
0x593b7d740c49d5d4c128fdaa60faac8fda6d1ba140eb92db4efea053f767139d | - | (pending) | 3 hrs ago | IN | 0 ETH | (Pending) | |||
0x1757258a1021156a7ca1d7d3122f5b9818eb38ca8b45b2276307e31264983231 | - | (pending) | 3 hrs ago | IN | 0 ETH | (Pending) | |||
0xe2161c037e0bcb51f22bb66e85ca830920cd47053e4f9122d5ab306146db25a6 | - | (pending) | 3 hrs ago | IN | 0 ETH | (Pending) | |||
0x552bb78de3a338fa5d5214b380fa37ff9c9a62343c9e9050b5543cfde084553f | - | (pending) | 3 hrs ago | IN | 0 ETH | (Pending) | |||
0x82037b989121379a3d316b2fa64cb6326035c9ba421ff2fb49ab5e3ed7b41dbc | - | (pending) | 6 hrs ago | IN | 0 ETH | (Pending) | |||
0x556bea31a4fd750ed659414eb8f5b857ad306a19b3f99cf36c091f623f1670b5 | - | (pending) | 2 days ago | IN | 0 ETH | (Pending) | |||
0x0de69aa497edfe823b43d04270039821ee74edae040b608f2f6ebbe8637bff63 | - | (pending) | 10 days ago | IN | 0 ETH | (Pending) | |||
0x6c4a190bbe695b2bc11ac20c738720763c95ed3bd069d5b90498b138b3332973 | - | (pending) | 14 days ago | IN | 0 ETH | (Pending) | |||
Approve | 12967788 | 41 mins ago | IN | 0 ETH | 0.00000493 | ||||
Approve | 12954263 | 8 hrs ago | IN | 0 ETH | 0.00000477 | ||||
Approve | 12954252 | 8 hrs ago | IN | 0 ETH | 0.00000468 | ||||
Approve | 12943369 | 15 hrs ago | IN | 0 ETH | 0.0000065 | ||||
Transfer | 12941686 | 16 hrs ago | IN | 0 ETH | 0.00000897 | ||||
Transfer | 12941594 | 16 hrs ago | IN | 0 ETH | 0.0000229 | ||||
Approve | 12938337 | 18 hrs ago | IN | 0 ETH | 0.0000109 | ||||
Approve | 12935074 | 20 hrs ago | IN | 0 ETH | 0.00000687 | ||||
Approve | 12909767 | 35 hrs ago | IN | 0 ETH | 0.00001452 | ||||
Approve | 12909447 | 35 hrs ago | IN | 0 ETH | 0.00001456 | ||||
Approve | 12909218 | 35 hrs ago | IN | 0 ETH | 0.00001464 | ||||
Approve | 12908782 | 35 hrs ago | IN | 0 ETH | 0.00001475 | ||||
Approve | 12908560 | 35 hrs ago | IN | 0 ETH | 0.00001472 | ||||
Approve | 12897106 | 42 hrs ago | IN | 0 ETH | 0.0000071 | ||||
Transfer | 12896954 | 42 hrs ago | IN | 0 ETH | 0.00001141 | ||||
Approve | 12896666 | 43 hrs ago | IN | 0 ETH | 0.00000707 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
12960190 | 5 hrs ago | 0 ETH | ||||
12957074 | 7 hrs ago | 0 ETH | ||||
12957074 | 7 hrs ago | 0 ETH | ||||
12957074 | 7 hrs ago | 0 ETH | ||||
12954275 | 8 hrs ago | 0 ETH | ||||
12954275 | 8 hrs ago | 0 ETH | ||||
12954275 | 8 hrs ago | 0 ETH | ||||
12949996 | 11 hrs ago | 0 ETH | ||||
12943383 | 15 hrs ago | 0 ETH | ||||
12943383 | 15 hrs ago | 0 ETH | ||||
12943348 | 15 hrs ago | 0 ETH | ||||
12941568 | 16 hrs ago | 0 ETH | ||||
12941271 | 16 hrs ago | 0 ETH | ||||
12941271 | 16 hrs ago | 0 ETH | ||||
12941271 | 16 hrs ago | 0 ETH | ||||
12941271 | 16 hrs ago | 0 ETH | ||||
12938356 | 18 hrs ago | 0 ETH | ||||
12938356 | 18 hrs ago | 0 ETH | ||||
12935424 | 20 hrs ago | 0 ETH | ||||
12935424 | 20 hrs ago | 0 ETH | ||||
12935424 | 20 hrs ago | 0 ETH | ||||
12935402 | 20 hrs ago | 0 ETH | ||||
12935402 | 20 hrs ago | 0 ETH | ||||
12935402 | 20 hrs ago | 0 ETH | ||||
12935402 | 20 hrs ago | 0 ETH |
Loading...
Loading
Contract Name:
LUBE
Compiler Version
v0.8.11+commit.d7f03943
Contract Source Code (Solidity)
/** *Submitted for verification at lineascan.build/ on 2023-11-16 */ // SPDX-License-Identifier: MIT // Social Info // website: https://joelube.xyz // telegram: t.me/JoeLubeCoin // x: https://twitter.com/JoeLubeCoin // File: @openzeppelin/[email protected]/utils/Context.sol // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } // File: @openzeppelin/[email protected]/access/Ownable.sol // OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol) pragma solidity ^0.8.0; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } // File: @openzeppelin/[email protected]/token/ERC20/IERC20.sol // OpenZeppelin Contracts (last updated v4.9.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @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); /** * @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 `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, 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 `from` to `to` 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 from, address to, uint256 amount) external returns (bool); } // File: contracts/Lube.sol pragma solidity 0.8.11; // import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol"; // import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol"; /** * @title LUBE token contract * @dev The LUBE token has a simple tax assessed on it. * @notice website: https://joelube.xyz * @notice telegram: t.me/JoeLubeCoin * @notice x: https://twitter.com/JoeLubeCoin */ contract LUBE is IERC20, Ownable { /// @dev Registry of user token balances. mapping(address => uint256) private _balances; /// @dev Registry of addresses users have given allowances to. mapping(address => mapping(address => uint256)) private _allowances; /// @notice The EIP-712 typehash for the contract's domain. bytes32 public constant DOMAIN_TYPEHASH = keccak256("EIP712Domain(string name,uint256 chainId,address verifyingContract)"); /// @notice address of tax multisig address private _taxAddress; /// @notice address of taxed pool address private _taxedPoolAddress; /// @notice address of tax exempt address, if one is added address private _taxExemptAddress; /// @notice basis points of tax to charge (10,000 = 100%, 100 = 1%) uint256 private _taxBasisPoints = 150; /// @dev Name of the token. string private _name; /// @dev Symbol of the token. string private _symbol; /** * @param name_ Name of the token. * @param symbol_ Symbol of the token. * @param taxAddress_ Initial tax handler contract. */ constructor(string memory name_, string memory symbol_, address taxAddress_) { _name = name_; _symbol = symbol_; _taxAddress = taxAddress_; _balances[_msgSender()] = totalSupply(); emit Transfer(address(0), _msgSender(), totalSupply()); } /** * @notice Get token name. * @return Name of the token. */ function name() public view returns (string memory) { return _name; } /** * @notice Get token symbol. * @return Symbol of the token. */ function symbol() external view returns (string memory) { return _symbol; } /** * @notice Get number of decimals used by the token. * @return Number of decimals used by the token. */ function decimals() external pure returns (uint8) { return 18; } /** * @notice Get the maximum number of tokens. * @return The maximum number of tokens that will ever be in existence. */ function totalSupply() public pure override returns (uint256) { // 69 billion, i.e. 69,000,000,000 tokens return 69 * 1e9 * 1e18; } /** * @notice Get token balance of given account. * @param account Address to retrieve balance for. * @return The number of tokens owned by `account`. */ function balanceOf(address account) external view override returns (uint256) { return _balances[account]; } /** * @notice Get destination wallet for taxes. * @return Address of the tax wallet. */ function taxAddress() external view returns (address) { return _taxAddress; } /** * @notice Get the pool on which taxes are charged. * @return Address of the pool. */ function taxedPoolAddress() external view returns (address) { return _taxedPoolAddress; } /** * @notice Get the tax exempt address. * @return Tax exempt address for adding liquidity. */ function taxExemptAddress() external view returns (address) { return _taxExemptAddress; } /** * @notice Transfer tokens from caller's address to another. * @param recipient Address to send the caller's tokens to. * @param amount The number of tokens to transfer to recipient. * @return True if transfer succeeds, else an error is raised. */ function transfer(address recipient, uint256 amount) external override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } /** * @notice Get the allowance `owner` has given `spender`. * @param owner The address on behalf of whom tokens can be spent by `spender`. * @param spender The address authorized to spend tokens on behalf of `owner`. * @return The allowance `owner` has given `spender`. */ function allowance(address owner, address spender) external view override returns (uint256) { return _allowances[owner][spender]; } /** * @notice Approve address to spend caller's tokens. * @dev This method can be exploited by malicious spenders if their allowance is already non-zero. See the following * document for details: https://docs.google.com/document/d/1YLPtQxZu1UAvO9cZ1O2RPXBbT0mooh4DYKjA_jp-RLM/edit. * Ensure the spender can be trusted before calling this method if they've already been approved before. Otherwise * use either the `increaseAllowance`/`decreaseAllowance` functions, or first set their allowance to zero, before * setting a new allowance. * @param spender Address to authorize for token expenditure. * @param amount The number of tokens `spender` is allowed to spend. * @return True if the approval succeeds, else an error is raised. */ function approve(address spender, uint256 amount) external override returns (bool) { _approve(_msgSender(), spender, amount); return true; } /** * @notice Transfer tokens from one address to another. * @param sender Address to move tokens from. * @param recipient Address to send the caller's tokens to. * @param amount The number of tokens to transfer to recipient. * @return True if the transfer succeeds, else an error is raised. */ function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "LUBE:transferFrom:ALLOWANCE_EXCEEDED: Transfer amount exceeds allowance."); unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } return true; } /** * @notice Increase spender's allowance. * @param spender Address of user authorized to spend caller's tokens. * @param addedValue The number of tokens to add to `spender`'s allowance. * @return True if the allowance is successfully increased, else an error is raised. */ function increaseAllowance(address spender, uint256 addedValue) external returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } /** * @notice Decrease spender's allowance. * @param spender Address of user authorized to spend caller's tokens. * @param subtractedValue The number of tokens to remove from `spender`'s allowance. * @return True if the allowance is successfully decreased, else an error is raised. */ function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require( currentAllowance >= subtractedValue, "LUBE:decreaseAllowance:ALLOWANCE_UNDERFLOW: Subtraction results in sub-zero allowance." ); unchecked { _approve(_msgSender(), spender, currentAllowance - subtractedValue); } return true; } /** * @notice Sets the taxed pool address. * @param poolAddress address of the constand product pool to tax */ function setPoolAddress(address poolAddress) external onlyOwner { _taxedPoolAddress = poolAddress; } /** * @notice Sets the tax exempt address. * @param exemptAddress address of the constand product pool to tax */ function setTaxExemptAddress(address exemptAddress) external onlyOwner { _taxExemptAddress = exemptAddress; } /** * @notice Approve spender on behalf of owner. * @param owner Address on behalf of whom tokens can be spent by `spender`. * @param spender Address to authorize for token expenditure. * @param amount The number of tokens `spender` is allowed to spend. */ function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "LUBE:_approve:OWNER_ZERO: Cannot approve for the zero address."); require(spender != address(0), "LUBE:_approve:SPENDER_ZERO: Cannot approve to the zero address."); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function getTax(address benefactor, address beneficiary, uint256 amount) private view returns (uint256) { if (benefactor == _taxExemptAddress || beneficiary == _taxExemptAddress) { return 0; } // Transactions between regular users (this includes contracts) aren't taxed. if (benefactor != _taxedPoolAddress && beneficiary != _taxedPoolAddress) { return 0; } // Don't tax the tax destination address, as it is pointless if (benefactor == _taxAddress || beneficiary == _taxAddress) { return 0; } return (amount * _taxBasisPoints) / 10000; } /** * @notice Transfer `amount` tokens from account `from` to account `to`. * @param from Address the tokens are moved out of. * @param to Address the tokens are moved to. * @param amount The number of tokens to transfer. */ function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "LUBE:_transfer:FROM_ZERO: Cannot transfer from the zero address."); require(to != address(0), "LUBE:_transfer:TO_ZERO: Cannot transfer to the zero address."); require(amount > 0, "LUBE:_transfer:ZERO_AMOUNT: Transfer amount must be greater than zero."); require(amount <= _balances[from], "LUBE:_transfer:INSUFFICIENT_BALANCE: Transfer amount exceeds balance."); uint256 tax = getTax(from, to, amount); uint256 taxedAmount = amount - tax; _balances[from] -= amount; _balances[to] += taxedAmount; if (tax > 0) { _balances[address(_taxAddress)] += tax; emit Transfer(from, address(_taxAddress), tax); } emit Transfer(from, to, taxedAmount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"},{"internalType":"address","name":"taxAddress_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"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":"DOMAIN_TYPEHASH","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"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":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"poolAddress","type":"address"}],"name":"setPoolAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"exemptAddress","type":"address"}],"name":"setTaxExemptAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxExemptAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxedPoolAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405260966006553480156200001657600080fd5b506040516200261f3803806200261f83398181016040528101906200003c919062000552565b6200005c62000050620001c060201b60201c565b620001c860201b60201c565b826007908051906020019062000074929190620002a0565b5081600890805190602001906200008d929190620002a0565b5080600360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000df6200028c60201b60201c565b60016000620000f3620001c060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000141620001c060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001a06200028c60201b60201c565b604051620001af919062000607565b60405180910390a350505062000689565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006bdef376571332906a88000000905090565b828054620002ae9062000653565b90600052602060002090601f016020900481019282620002d257600085556200031e565b82601f10620002ed57805160ff19168380011785556200031e565b828001600101855582156200031e579182015b828111156200031d57825182559160200191906001019062000300565b5b5090506200032d919062000331565b5090565b5b808211156200034c57600081600090555060010162000332565b5090565b6000604051905090565b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b620003b9826200036e565b810181811067ffffffffffffffff82111715620003db57620003da6200037f565b5b80604052505050565b6000620003f062000350565b9050620003fe8282620003ae565b919050565b600067ffffffffffffffff8211156200042157620004206200037f565b5b6200042c826200036e565b9050602081019050919050565b60005b83811015620004595780820151818401526020810190506200043c565b8381111562000469576000848401525b50505050565b600062000486620004808462000403565b620003e4565b905082815260208101848484011115620004a557620004a462000369565b5b620004b284828562000439565b509392505050565b600082601f830112620004d257620004d162000364565b5b8151620004e48482602086016200046f565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200051a82620004ed565b9050919050565b6200052c816200050d565b81146200053857600080fd5b50565b6000815190506200054c8162000521565b92915050565b6000806000606084860312156200056e576200056d6200035a565b5b600084015167ffffffffffffffff8111156200058f576200058e6200035f565b5b6200059d86828701620004ba565b935050602084015167ffffffffffffffff811115620005c157620005c06200035f565b5b620005cf86828701620004ba565b9250506040620005e2868287016200053b565b9150509250925092565b6000819050919050565b6200060181620005ec565b82525050565b60006020820190506200061e6000830184620005f6565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200066c57607f821691505b6020821081141562000683576200068262000624565b5b50919050565b611f8680620006996000396000f3fe608060405234801561001057600080fd5b506004361061012c5760003560e01c8063715018a6116100ad578063b7bda68f11610071578063b7bda68f1461034b578063c635995914610369578063dd62ed3e14610385578063e9e15b4f146103b5578063f2fde38b146103d15761012c565b8063715018a6146102a55780638da5cb5b146102af57806395d89b41146102cd578063a457c2d7146102eb578063a9059cbb1461031b5761012c565b8063305d0a6f116100f4578063305d0a6f146101eb578063313ce5671461020957806339509351146102275780634795bca51461025757806370a08231146102755761012c565b806306fdde0314610131578063095ea7b31461014f57806318160ddd1461017f57806320606b701461019d57806323b872dd146101bb575b600080fd5b6101396103ed565b60405161014691906114a6565b60405180910390f35b61016960048036038101906101649190611561565b61047f565b60405161017691906115bc565b60405180910390f35b61018761049d565b60405161019491906115e6565b60405180910390f35b6101a56104b1565b6040516101b2919061161a565b60405180910390f35b6101d560048036038101906101d09190611635565b6104d5565b6040516101e291906115bc565b60405180910390f35b6101f36105cd565b6040516102009190611697565b60405180910390f35b6102116105f7565b60405161021e91906116ce565b60405180910390f35b610241600480360381019061023c9190611561565b610600565b60405161024e91906115bc565b60405180910390f35b61025f6106ac565b60405161026c9190611697565b60405180910390f35b61028f600480360381019061028a91906116e9565b6106d6565b60405161029c91906115e6565b60405180910390f35b6102ad61071f565b005b6102b7610733565b6040516102c49190611697565b60405180910390f35b6102d561075c565b6040516102e291906114a6565b60405180910390f35b61030560048036038101906103009190611561565b6107ee565b60405161031291906115bc565b60405180910390f35b61033560048036038101906103309190611561565b6108d9565b60405161034291906115bc565b60405180910390f35b6103536108f7565b6040516103609190611697565b60405180910390f35b610383600480360381019061037e91906116e9565b610921565b005b61039f600480360381019061039a9190611716565b61096d565b6040516103ac91906115e6565b60405180910390f35b6103cf60048036038101906103ca91906116e9565b6109f4565b005b6103eb60048036038101906103e691906116e9565b610a40565b005b6060600780546103fc90611785565b80601f016020809104026020016040519081016040528092919081815260200182805461042890611785565b80156104755780601f1061044a57610100808354040283529160200191610475565b820191906000526020600020905b81548152906001019060200180831161045857829003601f168201915b5050505050905090565b600061049361048c610ac4565b8484610acc565b6001905092915050565b60006bdef376571332906a88000000905090565b7f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681565b60006104e2848484610c97565b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061052d610ac4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156105ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a49061184f565b60405180910390fd5b6105c1856105b9610ac4565b858403610acc565b60019150509392505050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006012905090565b60006106a261060d610ac4565b84846002600061061b610ac4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461069d919061189e565b610acc565b6001905092915050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61072761107c565b61073160006110fa565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606008805461076b90611785565b80601f016020809104026020016040519081016040528092919081815260200182805461079790611785565b80156107e45780601f106107b9576101008083540402835291602001916107e4565b820191906000526020600020905b8154815290600101906020018083116107c757829003601f168201915b5050505050905090565b600080600260006107fd610ac4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156108ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b19061198c565b60405180910390fd5b6108ce6108c5610ac4565b85858403610acc565b600191505092915050565b60006108ed6108e6610ac4565b8484610c97565b6001905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61092961107c565b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6109fc61107c565b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610a4861107c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ab8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aaf90611a1e565b60405180910390fd5b610ac1816110fa565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610b3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3390611ab0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610bac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba390611b42565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610c8a91906115e6565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cfe90611bd4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6e90611c66565b60405180910390fd5b60008111610dba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db190611d1e565b60405180910390fd5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610e3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3390611dd6565b60405180910390fd5b6000610e498484846111be565b905060008183610e599190611df6565b905082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610eaa9190611df6565b9250508190555080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f00919061189e565b925050819055506000821115611010578160016000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f81919061189e565b92505081905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161100791906115e6565b60405180910390a35b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161106d91906115e6565b60405180910390a35050505050565b611084610ac4565b73ffffffffffffffffffffffffffffffffffffffff166110a2610733565b73ffffffffffffffffffffffffffffffffffffffff16146110f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ef90611e76565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806112695750600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156112775760009050611406565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156113235750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156113315760009050611406565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806113da5750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156113e85760009050611406565b612710600654836113f99190611e96565b6114039190611f1f565b90505b9392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561144757808201518184015260208101905061142c565b83811115611456576000848401525b50505050565b6000601f19601f8301169050919050565b60006114788261140d565b6114828185611418565b9350611492818560208601611429565b61149b8161145c565b840191505092915050565b600060208201905081810360008301526114c0818461146d565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006114f8826114cd565b9050919050565b611508816114ed565b811461151357600080fd5b50565b600081359050611525816114ff565b92915050565b6000819050919050565b61153e8161152b565b811461154957600080fd5b50565b60008135905061155b81611535565b92915050565b60008060408385031215611578576115776114c8565b5b600061158685828601611516565b92505060206115978582860161154c565b9150509250929050565b60008115159050919050565b6115b6816115a1565b82525050565b60006020820190506115d160008301846115ad565b92915050565b6115e08161152b565b82525050565b60006020820190506115fb60008301846115d7565b92915050565b6000819050919050565b61161481611601565b82525050565b600060208201905061162f600083018461160b565b92915050565b60008060006060848603121561164e5761164d6114c8565b5b600061165c86828701611516565b935050602061166d86828701611516565b925050604061167e8682870161154c565b9150509250925092565b611691816114ed565b82525050565b60006020820190506116ac6000830184611688565b92915050565b600060ff82169050919050565b6116c8816116b2565b82525050565b60006020820190506116e360008301846116bf565b92915050565b6000602082840312156116ff576116fe6114c8565b5b600061170d84828501611516565b91505092915050565b6000806040838503121561172d5761172c6114c8565b5b600061173b85828601611516565b925050602061174c85828601611516565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061179d57607f821691505b602082108114156117b1576117b0611756565b5b50919050565b7f4c5542453a7472616e7366657246726f6d3a414c4c4f57414e43455f4558434560008201527f454445443a205472616e7366657220616d6f756e74206578636565647320616c60208201527f6c6f77616e63652e000000000000000000000000000000000000000000000000604082015250565b6000611839604883611418565b9150611844826117b7565b606082019050919050565b600060208201905081810360008301526118688161182c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006118a98261152b565b91506118b48361152b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156118e9576118e861186f565b5b828201905092915050565b7f4c5542453a6465637265617365416c6c6f77616e63653a414c4c4f57414e434560008201527f5f554e444552464c4f573a205375627472616374696f6e20726573756c74732060208201527f696e207375622d7a65726f20616c6c6f77616e63652e00000000000000000000604082015250565b6000611976605683611418565b9150611981826118f4565b606082019050919050565b600060208201905081810360008301526119a581611969565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000611a08602683611418565b9150611a13826119ac565b604082019050919050565b60006020820190508181036000830152611a37816119fb565b9050919050565b7f4c5542453a5f617070726f76653a4f574e45525f5a45524f3a2043616e6e6f7460008201527f20617070726f766520666f7220746865207a65726f20616464726573732e0000602082015250565b6000611a9a603e83611418565b9150611aa582611a3e565b604082019050919050565b60006020820190508181036000830152611ac981611a8d565b9050919050565b7f4c5542453a5f617070726f76653a5350454e4445525f5a45524f3a2043616e6e60008201527f6f7420617070726f766520746f20746865207a65726f20616464726573732e00602082015250565b6000611b2c603f83611418565b9150611b3782611ad0565b604082019050919050565b60006020820190508181036000830152611b5b81611b1f565b9050919050565b7f4c5542453a5f7472616e736665723a46524f4d5f5a45524f3a2043616e6e6f7460008201527f207472616e736665722066726f6d20746865207a65726f20616464726573732e602082015250565b6000611bbe604083611418565b9150611bc982611b62565b604082019050919050565b60006020820190508181036000830152611bed81611bb1565b9050919050565b7f4c5542453a5f7472616e736665723a544f5f5a45524f3a2043616e6e6f74207460008201527f72616e7366657220746f20746865207a65726f20616464726573732e00000000602082015250565b6000611c50603c83611418565b9150611c5b82611bf4565b604082019050919050565b60006020820190508181036000830152611c7f81611c43565b9050919050565b7f4c5542453a5f7472616e736665723a5a45524f5f414d4f554e543a205472616e60008201527f7366657220616d6f756e74206d7573742062652067726561746572207468616e60208201527f207a65726f2e0000000000000000000000000000000000000000000000000000604082015250565b6000611d08604683611418565b9150611d1382611c86565b606082019050919050565b60006020820190508181036000830152611d3781611cfb565b9050919050565b7f4c5542453a5f7472616e736665723a494e53554646494349454e545f42414c4160008201527f4e43453a205472616e7366657220616d6f756e7420657863656564732062616c60208201527f616e63652e000000000000000000000000000000000000000000000000000000604082015250565b6000611dc0604583611418565b9150611dcb82611d3e565b606082019050919050565b60006020820190508181036000830152611def81611db3565b9050919050565b6000611e018261152b565b9150611e0c8361152b565b925082821015611e1f57611e1e61186f565b5b828203905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611e60602083611418565b9150611e6b82611e2a565b602082019050919050565b60006020820190508181036000830152611e8f81611e53565b9050919050565b6000611ea18261152b565b9150611eac8361152b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611ee557611ee461186f565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611f2a8261152b565b9150611f358361152b565b925082611f4557611f44611ef0565b5b82820490509291505056fea26469706673582212206bddc7b05ddbe673494d4cec66b3fe0ce339b8b408e29b25865600c123d9462664736f6c634300080b0033000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000fc02a10b4d2e2a21394876f7ab03f2b2b268c4400000000000000000000000000000000000000000000000000000000000000044c5542450000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044c55424500000000000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061012c5760003560e01c8063715018a6116100ad578063b7bda68f11610071578063b7bda68f1461034b578063c635995914610369578063dd62ed3e14610385578063e9e15b4f146103b5578063f2fde38b146103d15761012c565b8063715018a6146102a55780638da5cb5b146102af57806395d89b41146102cd578063a457c2d7146102eb578063a9059cbb1461031b5761012c565b8063305d0a6f116100f4578063305d0a6f146101eb578063313ce5671461020957806339509351146102275780634795bca51461025757806370a08231146102755761012c565b806306fdde0314610131578063095ea7b31461014f57806318160ddd1461017f57806320606b701461019d57806323b872dd146101bb575b600080fd5b6101396103ed565b60405161014691906114a6565b60405180910390f35b61016960048036038101906101649190611561565b61047f565b60405161017691906115bc565b60405180910390f35b61018761049d565b60405161019491906115e6565b60405180910390f35b6101a56104b1565b6040516101b2919061161a565b60405180910390f35b6101d560048036038101906101d09190611635565b6104d5565b6040516101e291906115bc565b60405180910390f35b6101f36105cd565b6040516102009190611697565b60405180910390f35b6102116105f7565b60405161021e91906116ce565b60405180910390f35b610241600480360381019061023c9190611561565b610600565b60405161024e91906115bc565b60405180910390f35b61025f6106ac565b60405161026c9190611697565b60405180910390f35b61028f600480360381019061028a91906116e9565b6106d6565b60405161029c91906115e6565b60405180910390f35b6102ad61071f565b005b6102b7610733565b6040516102c49190611697565b60405180910390f35b6102d561075c565b6040516102e291906114a6565b60405180910390f35b61030560048036038101906103009190611561565b6107ee565b60405161031291906115bc565b60405180910390f35b61033560048036038101906103309190611561565b6108d9565b60405161034291906115bc565b60405180910390f35b6103536108f7565b6040516103609190611697565b60405180910390f35b610383600480360381019061037e91906116e9565b610921565b005b61039f600480360381019061039a9190611716565b61096d565b6040516103ac91906115e6565b60405180910390f35b6103cf60048036038101906103ca91906116e9565b6109f4565b005b6103eb60048036038101906103e691906116e9565b610a40565b005b6060600780546103fc90611785565b80601f016020809104026020016040519081016040528092919081815260200182805461042890611785565b80156104755780601f1061044a57610100808354040283529160200191610475565b820191906000526020600020905b81548152906001019060200180831161045857829003601f168201915b5050505050905090565b600061049361048c610ac4565b8484610acc565b6001905092915050565b60006bdef376571332906a88000000905090565b7f8cad95687ba82c2ce50e74f7b754645e5117c3a5bec8151c0726d5857980a86681565b60006104e2848484610c97565b6000600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061052d610ac4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156105ad576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a49061184f565b60405180910390fd5b6105c1856105b9610ac4565b858403610acc565b60019150509392505050565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006012905090565b60006106a261060d610ac4565b84846002600061061b610ac4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461069d919061189e565b610acc565b6001905092915050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61072761107c565b61073160006110fa565b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60606008805461076b90611785565b80601f016020809104026020016040519081016040528092919081815260200182805461079790611785565b80156107e45780601f106107b9576101008083540402835291602001916107e4565b820191906000526020600020905b8154815290600101906020018083116107c757829003601f168201915b5050505050905090565b600080600260006107fd610ac4565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156108ba576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b19061198c565b60405180910390fd5b6108ce6108c5610ac4565b85858403610acc565b600191505092915050565b60006108ed6108e6610ac4565b8484610c97565b6001905092915050565b6000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61092961107c565b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6109fc61107c565b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b610a4861107c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610ab8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aaf90611a1e565b60405180910390fd5b610ac1816110fa565b50565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610b3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b3390611ab0565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610bac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba390611b42565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610c8a91906115e6565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610d07576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cfe90611bd4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415610d77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6e90611c66565b60405180910390fd5b60008111610dba576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610db190611d1e565b60405180910390fd5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054811115610e3c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e3390611dd6565b60405180910390fd5b6000610e498484846111be565b905060008183610e599190611df6565b905082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610eaa9190611df6565b9250508190555080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f00919061189e565b925050819055506000821115611010578160016000600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f81919061189e565b92505081905550600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161100791906115e6565b60405180910390a35b8373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161106d91906115e6565b60405180910390a35050505050565b611084610ac4565b73ffffffffffffffffffffffffffffffffffffffff166110a2610733565b73ffffffffffffffffffffffffffffffffffffffff16146110f8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ef90611e76565b60405180910390fd5b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806112695750600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156112775760009050611406565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16141580156113235750600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b156113315760009050611406565b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614806113da5750600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b156113e85760009050611406565b612710600654836113f99190611e96565b6114039190611f1f565b90505b9392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561144757808201518184015260208101905061142c565b83811115611456576000848401525b50505050565b6000601f19601f8301169050919050565b60006114788261140d565b6114828185611418565b9350611492818560208601611429565b61149b8161145c565b840191505092915050565b600060208201905081810360008301526114c0818461146d565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006114f8826114cd565b9050919050565b611508816114ed565b811461151357600080fd5b50565b600081359050611525816114ff565b92915050565b6000819050919050565b61153e8161152b565b811461154957600080fd5b50565b60008135905061155b81611535565b92915050565b60008060408385031215611578576115776114c8565b5b600061158685828601611516565b92505060206115978582860161154c565b9150509250929050565b60008115159050919050565b6115b6816115a1565b82525050565b60006020820190506115d160008301846115ad565b92915050565b6115e08161152b565b82525050565b60006020820190506115fb60008301846115d7565b92915050565b6000819050919050565b61161481611601565b82525050565b600060208201905061162f600083018461160b565b92915050565b60008060006060848603121561164e5761164d6114c8565b5b600061165c86828701611516565b935050602061166d86828701611516565b925050604061167e8682870161154c565b9150509250925092565b611691816114ed565b82525050565b60006020820190506116ac6000830184611688565b92915050565b600060ff82169050919050565b6116c8816116b2565b82525050565b60006020820190506116e360008301846116bf565b92915050565b6000602082840312156116ff576116fe6114c8565b5b600061170d84828501611516565b91505092915050565b6000806040838503121561172d5761172c6114c8565b5b600061173b85828601611516565b925050602061174c85828601611516565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061179d57607f821691505b602082108114156117b1576117b0611756565b5b50919050565b7f4c5542453a7472616e7366657246726f6d3a414c4c4f57414e43455f4558434560008201527f454445443a205472616e7366657220616d6f756e74206578636565647320616c60208201527f6c6f77616e63652e000000000000000000000000000000000000000000000000604082015250565b6000611839604883611418565b9150611844826117b7565b606082019050919050565b600060208201905081810360008301526118688161182c565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006118a98261152b565b91506118b48361152b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156118e9576118e861186f565b5b828201905092915050565b7f4c5542453a6465637265617365416c6c6f77616e63653a414c4c4f57414e434560008201527f5f554e444552464c4f573a205375627472616374696f6e20726573756c74732060208201527f696e207375622d7a65726f20616c6c6f77616e63652e00000000000000000000604082015250565b6000611976605683611418565b9150611981826118f4565b606082019050919050565b600060208201905081810360008301526119a581611969565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000611a08602683611418565b9150611a13826119ac565b604082019050919050565b60006020820190508181036000830152611a37816119fb565b9050919050565b7f4c5542453a5f617070726f76653a4f574e45525f5a45524f3a2043616e6e6f7460008201527f20617070726f766520666f7220746865207a65726f20616464726573732e0000602082015250565b6000611a9a603e83611418565b9150611aa582611a3e565b604082019050919050565b60006020820190508181036000830152611ac981611a8d565b9050919050565b7f4c5542453a5f617070726f76653a5350454e4445525f5a45524f3a2043616e6e60008201527f6f7420617070726f766520746f20746865207a65726f20616464726573732e00602082015250565b6000611b2c603f83611418565b9150611b3782611ad0565b604082019050919050565b60006020820190508181036000830152611b5b81611b1f565b9050919050565b7f4c5542453a5f7472616e736665723a46524f4d5f5a45524f3a2043616e6e6f7460008201527f207472616e736665722066726f6d20746865207a65726f20616464726573732e602082015250565b6000611bbe604083611418565b9150611bc982611b62565b604082019050919050565b60006020820190508181036000830152611bed81611bb1565b9050919050565b7f4c5542453a5f7472616e736665723a544f5f5a45524f3a2043616e6e6f74207460008201527f72616e7366657220746f20746865207a65726f20616464726573732e00000000602082015250565b6000611c50603c83611418565b9150611c5b82611bf4565b604082019050919050565b60006020820190508181036000830152611c7f81611c43565b9050919050565b7f4c5542453a5f7472616e736665723a5a45524f5f414d4f554e543a205472616e60008201527f7366657220616d6f756e74206d7573742062652067726561746572207468616e60208201527f207a65726f2e0000000000000000000000000000000000000000000000000000604082015250565b6000611d08604683611418565b9150611d1382611c86565b606082019050919050565b60006020820190508181036000830152611d3781611cfb565b9050919050565b7f4c5542453a5f7472616e736665723a494e53554646494349454e545f42414c4160008201527f4e43453a205472616e7366657220616d6f756e7420657863656564732062616c60208201527f616e63652e000000000000000000000000000000000000000000000000000000604082015250565b6000611dc0604583611418565b9150611dcb82611d3e565b606082019050919050565b60006020820190508181036000830152611def81611db3565b9050919050565b6000611e018261152b565b9150611e0c8361152b565b925082821015611e1f57611e1e61186f565b5b828203905092915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000611e60602083611418565b9150611e6b82611e2a565b602082019050919050565b60006020820190508181036000830152611e8f81611e53565b9050919050565b6000611ea18261152b565b9150611eac8361152b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0483118215151615611ee557611ee461186f565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000611f2a8261152b565b9150611f358361152b565b925082611f4557611f44611ef0565b5b82820490509291505056fea26469706673582212206bddc7b05ddbe673494d4cec66b3fe0ce339b8b408e29b25865600c123d9462664736f6c634300080b0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000fc02a10b4d2e2a21394876f7ab03f2b2b268c4400000000000000000000000000000000000000000000000000000000000000044c5542450000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044c55424500000000000000000000000000000000000000000000000000000000
-----Decoded View---------------
Arg [0] : name_ (string): LUBE
Arg [1] : symbol_ (string): LUBE
Arg [2] : taxAddress_ (address): 0x0Fc02a10b4D2e2A21394876f7Ab03f2B2b268c44
-----Encoded View---------------
7 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [1] : 00000000000000000000000000000000000000000000000000000000000000a0
Arg [2] : 0000000000000000000000000fc02a10b4d2e2a21394876f7ab03f2b2b268c44
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [4] : 4c55424500000000000000000000000000000000000000000000000000000000
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [6] : 4c55424500000000000000000000000000000000000000000000000000000000
Deployed Bytecode Sourcemap
7047:10428:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8592:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12091:163;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9230:154;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7397:131;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12598:484;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10026:103;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8999:78;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13400:211;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10256:103;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9575:121;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2937:103;;;:::i;:::-;;2296:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8772:89;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13939:493;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10653:169;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9815:91;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14832:123;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;11139:145;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14574:114;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3195:201;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8592:83;8629:13;8662:5;8655:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8592:83;:::o;12091:163::-;12168:4;12185:39;12194:12;:10;:12::i;:::-;12208:7;12217:6;12185:8;:39::i;:::-;12242:4;12235:11;;12091:163;;;;:::o;9230:154::-;9283:7;9361:15;9354:22;;9230:154;:::o;7397:131::-;7448:80;7397:131;:::o;12598:484::-;12698:4;12715:36;12725:6;12733:9;12744:6;12715:9;:36::i;:::-;12764:24;12791:11;:19;12803:6;12791:19;;;;;;;;;;;;;;;:33;12811:12;:10;:12::i;:::-;12791:33;;;;;;;;;;;;;;;;12764:60;;12863:6;12843:16;:26;;12835:111;;;;;;;;;;;;:::i;:::-;;;;;;;;;12982:57;12991:6;12999:12;:10;:12::i;:::-;13032:6;13013:16;:25;12982:8;:57::i;:::-;13070:4;13063:11;;;12598:484;;;;;:::o;10026:103::-;10077:7;10104:17;;;;;;;;;;;10097:24;;10026:103;:::o;8999:78::-;9042:5;9067:2;9060:9;;8999:78;:::o;13400:211::-;13482:4;13499:80;13508:12;:10;:12::i;:::-;13522:7;13568:10;13531:11;:25;13543:12;:10;:12::i;:::-;13531:25;;;;;;;;;;;;;;;:34;13557:7;13531:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;13499:8;:80::i;:::-;13599:4;13592:11;;13400:211;;;;:::o;10256:103::-;10307:7;10334:17;;;;;;;;;;;10327:24;;10256:103;:::o;9575:121::-;9643:7;9670:9;:18;9680:7;9670:18;;;;;;;;;;;;;;;;9663:25;;9575:121;;;:::o;2937:103::-;2182:13;:11;:13::i;:::-;3002:30:::1;3029:1;3002:18;:30::i;:::-;2937:103::o:0;2296:87::-;2342:7;2369:6;;;;;;;;;;;2362:13;;2296:87;:::o;8772:89::-;8813:13;8846:7;8839:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8772:89;:::o;13939:493::-;14026:4;14043:24;14070:11;:25;14082:12;:10;:12::i;:::-;14070:25;;;;;;;;;;;;;;;:34;14096:7;14070:34;;;;;;;;;;;;;;;;14043:61;;14157:15;14137:16;:35;;14115:171;;;;;;;;;;;;:::i;:::-;;;;;;;;;14322:67;14331:12;:10;:12::i;:::-;14345:7;14373:15;14354:16;:34;14322:8;:67::i;:::-;14420:4;14413:11;;;13939:493;;;;:::o;10653:169::-;10733:4;10750:42;10760:12;:10;:12::i;:::-;10774:9;10785:6;10750:9;:42::i;:::-;10810:4;10803:11;;10653:169;;;;:::o;9815:91::-;9860:7;9887:11;;;;;;;;;;;9880:18;;9815:91;:::o;14832:123::-;2182:13;:11;:13::i;:::-;14934::::1;14914:17;;:33;;;;;;;;;;;;;;;;;;14832:123:::0;:::o;11139:145::-;11222:7;11249:11;:18;11261:5;11249:18;;;;;;;;;;;;;;;:27;11268:7;11249:27;;;;;;;;;;;;;;;;11242:34;;11139:145;;;;:::o;14574:114::-;2182:13;:11;:13::i;:::-;14669:11:::1;14649:17;;:31;;;;;;;;;;;;;;;;;;14574:114:::0;:::o;3195:201::-;2182:13;:11;:13::i;:::-;3304:1:::1;3284:22;;:8;:22;;;;3276:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3360:28;3379:8;3360:18;:28::i;:::-;3195:201:::0;:::o;841:98::-;894:7;921:10;914:17;;841:98;:::o;15255:394::-;15365:1;15348:19;;:5;:19;;;;15340:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;15472:1;15453:21;;:7;:21;;;;15445:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;15585:6;15555:11;:18;15567:5;15555:18;;;;;;;;;;;;;;;:27;15574:7;15555:27;;;;;;;;;;;;;;;:36;;;;15625:7;15609:32;;15618:5;15609:32;;;15634:6;15609:32;;;;;;:::i;:::-;;;;;;;;15255:394;;;:::o;16594:878::-;16698:1;16682:18;;:4;:18;;;;16674:95;;;;;;;;;;;;:::i;:::-;;;;;;;;;16802:1;16788:16;;:2;:16;;;;16780:89;;;;;;;;;;;;:::i;:::-;;;;;;;;;16897:1;16888:6;:10;16880:93;;;;;;;;;;;;:::i;:::-;;;;;;;;;17002:9;:15;17012:4;17002:15;;;;;;;;;;;;;;;;16992:6;:25;;16984:107;;;;;;;;;;;;:::i;:::-;;;;;;;;;17104:11;17118:24;17125:4;17131:2;17135:6;17118;:24::i;:::-;17104:38;;17153:19;17184:3;17175:6;:12;;;;:::i;:::-;17153:34;;17219:6;17200:9;:15;17210:4;17200:15;;;;;;;;;;;;;;;;:25;;;;;;;:::i;:::-;;;;;;;;17253:11;17236:9;:13;17246:2;17236:13;;;;;;;;;;;;;;;;:28;;;;;;;:::i;:::-;;;;;;;;17287:1;17281:3;:7;17277:139;;;17340:3;17305:9;:31;17323:11;;;;;;;;;;;17305:31;;;;;;;;;;;;;;;;:38;;;;;;;:::i;:::-;;;;;;;;17386:11;;;;;;;;;;;17363:41;;17372:4;17363:41;;;17400:3;17363:41;;;;;;:::i;:::-;;;;;;;;17277:139;17448:2;17433:31;;17442:4;17433:31;;;17452:11;17433:31;;;;;;:::i;:::-;;;;;;;;16663:809;;16594:878;;;:::o;2461:132::-;2536:12;:10;:12::i;:::-;2525:23;;:7;:5;:7::i;:::-;:23;;;2517:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;2461:132::o;3556:191::-;3630:16;3649:6;;;;;;;;;;;3630:25;;3675:8;3666:6;;:17;;;;;;;;;;;;;;;;;;3730:8;3699:40;;3720:8;3699:40;;;;;;;;;;;;3619:128;3556:191;:::o;15657:669::-;15752:7;15790:17;;;;;;;;;;;15776:31;;:10;:31;;;:67;;;;15826:17;;;;;;;;;;;15811:32;;:11;:32;;;15776:67;15772:108;;;15867:1;15860:8;;;;15772:108;15997:17;;;;;;;;;;;15983:31;;:10;:31;;;;:67;;;;;16033:17;;;;;;;;;;;16018:32;;:11;:32;;;;15983:67;15979:108;;;16074:1;16067:8;;;;15979:108;16187:11;;;;;;;;;;;16173:25;;:10;:25;;;:55;;;;16217:11;;;;;;;;;;;16202:26;;:11;:26;;;16173:55;16169:96;;;16252:1;16245:8;;;;16169:96;16313:5;16294:15;;16285:6;:24;;;;:::i;:::-;16284:34;;;;:::i;:::-;16277:41;;15657:669;;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:307::-;355:1;365:113;379:6;376:1;373:13;365:113;;;464:1;459:3;455:11;449:18;445:1;440:3;436:11;429:39;401:2;398:1;394:10;389:15;;365:113;;;496:6;493:1;490:13;487:101;;;576:1;567:6;562:3;558:16;551:27;487:101;336:258;287:307;;;:::o;600:102::-;641:6;692:2;688:7;683:2;676:5;672:14;668:28;658:38;;600:102;;;:::o;708:364::-;796:3;824:39;857:5;824:39;:::i;:::-;879:71;943:6;938:3;879:71;:::i;:::-;872:78;;959:52;1004:6;999:3;992:4;985:5;981:16;959:52;:::i;:::-;1036:29;1058:6;1036:29;:::i;:::-;1031:3;1027:39;1020:46;;800:272;708:364;;;;:::o;1078:313::-;1191:4;1229:2;1218:9;1214:18;1206:26;;1278:9;1272:4;1268:20;1264:1;1253:9;1249:17;1242:47;1306:78;1379:4;1370:6;1306:78;:::i;:::-;1298:86;;1078:313;;;;:::o;1478:117::-;1587:1;1584;1577:12;1724:126;1761:7;1801:42;1794:5;1790:54;1779:65;;1724:126;;;:::o;1856:96::-;1893:7;1922:24;1940:5;1922:24;:::i;:::-;1911:35;;1856:96;;;:::o;1958:122::-;2031:24;2049:5;2031:24;:::i;:::-;2024:5;2021:35;2011:63;;2070:1;2067;2060:12;2011:63;1958:122;:::o;2086:139::-;2132:5;2170:6;2157:20;2148:29;;2186:33;2213:5;2186:33;:::i;:::-;2086:139;;;;:::o;2231:77::-;2268:7;2297:5;2286:16;;2231:77;;;:::o;2314:122::-;2387:24;2405:5;2387:24;:::i;:::-;2380:5;2377:35;2367:63;;2426:1;2423;2416:12;2367:63;2314:122;:::o;2442:139::-;2488:5;2526:6;2513:20;2504:29;;2542:33;2569:5;2542:33;:::i;:::-;2442:139;;;;:::o;2587:474::-;2655:6;2663;2712:2;2700:9;2691:7;2687:23;2683:32;2680:119;;;2718:79;;:::i;:::-;2680:119;2838:1;2863:53;2908:7;2899:6;2888:9;2884:22;2863:53;:::i;:::-;2853:63;;2809:117;2965:2;2991:53;3036:7;3027:6;3016:9;3012:22;2991:53;:::i;:::-;2981:63;;2936:118;2587:474;;;;;:::o;3067:90::-;3101:7;3144:5;3137:13;3130:21;3119:32;;3067:90;;;:::o;3163:109::-;3244:21;3259:5;3244:21;:::i;:::-;3239:3;3232:34;3163:109;;:::o;3278:210::-;3365:4;3403:2;3392:9;3388:18;3380:26;;3416:65;3478:1;3467:9;3463:17;3454:6;3416:65;:::i;:::-;3278:210;;;;:::o;3494:118::-;3581:24;3599:5;3581:24;:::i;:::-;3576:3;3569:37;3494:118;;:::o;3618:222::-;3711:4;3749:2;3738:9;3734:18;3726:26;;3762:71;3830:1;3819:9;3815:17;3806:6;3762:71;:::i;:::-;3618:222;;;;:::o;3846:77::-;3883:7;3912:5;3901:16;;3846:77;;;:::o;3929:118::-;4016:24;4034:5;4016:24;:::i;:::-;4011:3;4004:37;3929:118;;:::o;4053:222::-;4146:4;4184:2;4173:9;4169:18;4161:26;;4197:71;4265:1;4254:9;4250:17;4241:6;4197:71;:::i;:::-;4053:222;;;;:::o;4281:619::-;4358:6;4366;4374;4423:2;4411:9;4402:7;4398:23;4394:32;4391:119;;;4429:79;;:::i;:::-;4391:119;4549:1;4574:53;4619:7;4610:6;4599:9;4595:22;4574:53;:::i;:::-;4564:63;;4520:117;4676:2;4702:53;4747:7;4738:6;4727:9;4723:22;4702:53;:::i;:::-;4692:63;;4647:118;4804:2;4830:53;4875:7;4866:6;4855:9;4851:22;4830:53;:::i;:::-;4820:63;;4775:118;4281:619;;;;;:::o;4906:118::-;4993:24;5011:5;4993:24;:::i;:::-;4988:3;4981:37;4906:118;;:::o;5030:222::-;5123:4;5161:2;5150:9;5146:18;5138:26;;5174:71;5242:1;5231:9;5227:17;5218:6;5174:71;:::i;:::-;5030:222;;;;:::o;5258:86::-;5293:7;5333:4;5326:5;5322:16;5311:27;;5258:86;;;:::o;5350:112::-;5433:22;5449:5;5433:22;:::i;:::-;5428:3;5421:35;5350:112;;:::o;5468:214::-;5557:4;5595:2;5584:9;5580:18;5572:26;;5608:67;5672:1;5661:9;5657:17;5648:6;5608:67;:::i;:::-;5468:214;;;;:::o;5688:329::-;5747:6;5796:2;5784:9;5775:7;5771:23;5767:32;5764:119;;;5802:79;;:::i;:::-;5764:119;5922:1;5947:53;5992:7;5983:6;5972:9;5968:22;5947:53;:::i;:::-;5937:63;;5893:117;5688:329;;;;:::o;6023:474::-;6091:6;6099;6148:2;6136:9;6127:7;6123:23;6119:32;6116:119;;;6154:79;;:::i;:::-;6116:119;6274:1;6299:53;6344:7;6335:6;6324:9;6320:22;6299:53;:::i;:::-;6289:63;;6245:117;6401:2;6427:53;6472:7;6463:6;6452:9;6448:22;6427:53;:::i;:::-;6417:63;;6372:118;6023:474;;;;;:::o;6503:180::-;6551:77;6548:1;6541:88;6648:4;6645:1;6638:15;6672:4;6669:1;6662:15;6689:320;6733:6;6770:1;6764:4;6760:12;6750:22;;6817:1;6811:4;6807:12;6838:18;6828:81;;6894:4;6886:6;6882:17;6872:27;;6828:81;6956:2;6948:6;6945:14;6925:18;6922:38;6919:84;;;6975:18;;:::i;:::-;6919:84;6740:269;6689:320;;;:::o;7015:296::-;7155:34;7151:1;7143:6;7139:14;7132:58;7224:34;7219:2;7211:6;7207:15;7200:59;7293:10;7288:2;7280:6;7276:15;7269:35;7015:296;:::o;7317:366::-;7459:3;7480:67;7544:2;7539:3;7480:67;:::i;:::-;7473:74;;7556:93;7645:3;7556:93;:::i;:::-;7674:2;7669:3;7665:12;7658:19;;7317:366;;;:::o;7689:419::-;7855:4;7893:2;7882:9;7878:18;7870:26;;7942:9;7936:4;7932:20;7928:1;7917:9;7913:17;7906:47;7970:131;8096:4;7970:131;:::i;:::-;7962:139;;7689:419;;;:::o;8114:180::-;8162:77;8159:1;8152:88;8259:4;8256:1;8249:15;8283:4;8280:1;8273:15;8300:305;8340:3;8359:20;8377:1;8359:20;:::i;:::-;8354:25;;8393:20;8411:1;8393:20;:::i;:::-;8388:25;;8547:1;8479:66;8475:74;8472:1;8469:81;8466:107;;;8553:18;;:::i;:::-;8466:107;8597:1;8594;8590:9;8583:16;;8300:305;;;;:::o;8611:310::-;8751:34;8747:1;8739:6;8735:14;8728:58;8820:34;8815:2;8807:6;8803:15;8796:59;8889:24;8884:2;8876:6;8872:15;8865:49;8611:310;:::o;8927:366::-;9069:3;9090:67;9154:2;9149:3;9090:67;:::i;:::-;9083:74;;9166:93;9255:3;9166:93;:::i;:::-;9284:2;9279:3;9275:12;9268:19;;8927:366;;;:::o;9299:419::-;9465:4;9503:2;9492:9;9488:18;9480:26;;9552:9;9546:4;9542:20;9538:1;9527:9;9523:17;9516:47;9580:131;9706:4;9580:131;:::i;:::-;9572:139;;9299:419;;;:::o;9724:225::-;9864:34;9860:1;9852:6;9848:14;9841:58;9933:8;9928:2;9920:6;9916:15;9909:33;9724:225;:::o;9955:366::-;10097:3;10118:67;10182:2;10177:3;10118:67;:::i;:::-;10111:74;;10194:93;10283:3;10194:93;:::i;:::-;10312:2;10307:3;10303:12;10296:19;;9955:366;;;:::o;10327:419::-;10493:4;10531:2;10520:9;10516:18;10508:26;;10580:9;10574:4;10570:20;10566:1;10555:9;10551:17;10544:47;10608:131;10734:4;10608:131;:::i;:::-;10600:139;;10327:419;;;:::o;10752:249::-;10892:34;10888:1;10880:6;10876:14;10869:58;10961:32;10956:2;10948:6;10944:15;10937:57;10752:249;:::o;11007:366::-;11149:3;11170:67;11234:2;11229:3;11170:67;:::i;:::-;11163:74;;11246:93;11335:3;11246:93;:::i;:::-;11364:2;11359:3;11355:12;11348:19;;11007:366;;;:::o;11379:419::-;11545:4;11583:2;11572:9;11568:18;11560:26;;11632:9;11626:4;11622:20;11618:1;11607:9;11603:17;11596:47;11660:131;11786:4;11660:131;:::i;:::-;11652:139;;11379:419;;;:::o;11804:250::-;11944:34;11940:1;11932:6;11928:14;11921:58;12013:33;12008:2;12000:6;11996:15;11989:58;11804:250;:::o;12060:366::-;12202:3;12223:67;12287:2;12282:3;12223:67;:::i;:::-;12216:74;;12299:93;12388:3;12299:93;:::i;:::-;12417:2;12412:3;12408:12;12401:19;;12060:366;;;:::o;12432:419::-;12598:4;12636:2;12625:9;12621:18;12613:26;;12685:9;12679:4;12675:20;12671:1;12660:9;12656:17;12649:47;12713:131;12839:4;12713:131;:::i;:::-;12705:139;;12432:419;;;:::o;12857:251::-;12997:34;12993:1;12985:6;12981:14;12974:58;13066:34;13061:2;13053:6;13049:15;13042:59;12857:251;:::o;13114:366::-;13256:3;13277:67;13341:2;13336:3;13277:67;:::i;:::-;13270:74;;13353:93;13442:3;13353:93;:::i;:::-;13471:2;13466:3;13462:12;13455:19;;13114:366;;;:::o;13486:419::-;13652:4;13690:2;13679:9;13675:18;13667:26;;13739:9;13733:4;13729:20;13725:1;13714:9;13710:17;13703:47;13767:131;13893:4;13767:131;:::i;:::-;13759:139;;13486:419;;;:::o;13911:247::-;14051:34;14047:1;14039:6;14035:14;14028:58;14120:30;14115:2;14107:6;14103:15;14096:55;13911:247;:::o;14164:366::-;14306:3;14327:67;14391:2;14386:3;14327:67;:::i;:::-;14320:74;;14403:93;14492:3;14403:93;:::i;:::-;14521:2;14516:3;14512:12;14505:19;;14164:366;;;:::o;14536:419::-;14702:4;14740:2;14729:9;14725:18;14717:26;;14789:9;14783:4;14779:20;14775:1;14764:9;14760:17;14753:47;14817:131;14943:4;14817:131;:::i;:::-;14809:139;;14536:419;;;:::o;14961:294::-;15101:34;15097:1;15089:6;15085:14;15078:58;15170:34;15165:2;15157:6;15153:15;15146:59;15239:8;15234:2;15226:6;15222:15;15215:33;14961:294;:::o;15261:366::-;15403:3;15424:67;15488:2;15483:3;15424:67;:::i;:::-;15417:74;;15500:93;15589:3;15500:93;:::i;:::-;15618:2;15613:3;15609:12;15602:19;;15261:366;;;:::o;15633:419::-;15799:4;15837:2;15826:9;15822:18;15814:26;;15886:9;15880:4;15876:20;15872:1;15861:9;15857:17;15850:47;15914:131;16040:4;15914:131;:::i;:::-;15906:139;;15633:419;;;:::o;16058:293::-;16198:34;16194:1;16186:6;16182:14;16175:58;16267:34;16262:2;16254:6;16250:15;16243:59;16336:7;16331:2;16323:6;16319:15;16312:32;16058:293;:::o;16357:366::-;16499:3;16520:67;16584:2;16579:3;16520:67;:::i;:::-;16513:74;;16596:93;16685:3;16596:93;:::i;:::-;16714:2;16709:3;16705:12;16698:19;;16357:366;;;:::o;16729:419::-;16895:4;16933:2;16922:9;16918:18;16910:26;;16982:9;16976:4;16972:20;16968:1;16957:9;16953:17;16946:47;17010:131;17136:4;17010:131;:::i;:::-;17002:139;;16729:419;;;:::o;17154:191::-;17194:4;17214:20;17232:1;17214:20;:::i;:::-;17209:25;;17248:20;17266:1;17248:20;:::i;:::-;17243:25;;17287:1;17284;17281:8;17278:34;;;17292:18;;:::i;:::-;17278:34;17337:1;17334;17330:9;17322:17;;17154:191;;;;:::o;17351:182::-;17491:34;17487:1;17479:6;17475:14;17468:58;17351:182;:::o;17539:366::-;17681:3;17702:67;17766:2;17761:3;17702:67;:::i;:::-;17695:74;;17778:93;17867:3;17778:93;:::i;:::-;17896:2;17891:3;17887:12;17880:19;;17539:366;;;:::o;17911:419::-;18077:4;18115:2;18104:9;18100:18;18092:26;;18164:9;18158:4;18154:20;18150:1;18139:9;18135:17;18128:47;18192:131;18318:4;18192:131;:::i;:::-;18184:139;;17911:419;;;:::o;18336:348::-;18376:7;18399:20;18417:1;18399:20;:::i;:::-;18394:25;;18433:20;18451:1;18433:20;:::i;:::-;18428:25;;18621:1;18553:66;18549:74;18546:1;18543:81;18538:1;18531:9;18524:17;18520:105;18517:131;;;18628:18;;:::i;:::-;18517:131;18676:1;18673;18669:9;18658:20;;18336:348;;;;:::o;18690:180::-;18738:77;18735:1;18728:88;18835:4;18832:1;18825:15;18859:4;18856:1;18849:15;18876:185;18916:1;18933:20;18951:1;18933:20;:::i;:::-;18928:25;;18967:20;18985:1;18967:20;:::i;:::-;18962:25;;19006:1;18996:35;;19011:18;;:::i;:::-;18996:35;19053:1;19050;19046:9;19041:14;;18876:185;;;;:::o
Swarm Source
ipfs://6bddc7b05ddbe673494d4cec66b3fe0ce339b8b408e29b25865600c123d94626
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.