Source Code
Overview
ETH Balance
0.030468598816985608 ETH
Token Holdings
More Info
ContractCreator
TokenTracker
Multichain Info
N/A
Loading...
Loading
Contract Name:
OPENGPU
Compiler Version
v0.8.17+commit.8df45f5f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-10-30 */ // SPDX-License-Identifier: MIT pragma solidity 0.8.17; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } function name() public view virtual override returns (string memory) { return _name; } function symbol() public view virtual override returns (string memory) { return _symbol; } function decimals() public view virtual override returns (uint8) { return 18; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { uint256 currentAllowance = _allowances[sender][_msgSender()]; require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); if (currentAllowance != type(uint256).max) { unchecked { _approve(sender, _msgSender(), currentAllowance - amount); } } _transfer(sender, recipient, amount); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(_msgSender(), spender, currentAllowance - subtractedValue); } return true; } function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); uint256 senderBalance = _balances[sender]; if (senderBalance < amount) revert("ERC20: transfer amount exceeds balance"); unchecked { _balances[sender] = senderBalance - amount; } _balances[recipient] += amount; emit Transfer(sender, recipient, amount); _afterTokenTransfer(sender, recipient, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; _balances[account] += amount; emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; } _totalSupply -= amount; emit Transfer(account, address(0), amount); _afterTokenTransfer(account, address(0), amount); } function _approve( address owner, address spender, uint256 amount ) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract OPENGPU is ERC20, Ownable { uint256 public buyFee = 5; uint256 public sellFee = 5; address private marketingWallet; address private stakingWallet; address private developmentWallet; address private liquidityWallet; address private cexListingWallet; uint256 public feeMultiplier; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; address private DEAD = 0x000000000000000000000000000000000000dEaD; bool private swapping; uint256 public swapTokensAtAmount; mapping (address => bool) private _isExcludedFromFees; mapping(address => bool) private _isExcludedFromMaxWalletLimit; uint256 private maxWalletLimitRate = 20; event ExcludeFromFees(address indexed account, bool isExcluded); constructor ( address _marketingWallet, address _stakingWallet, address _developmentWallet, address _liquidityWallet, address _cexListingWallet, uint256 _multiplier ) ERC20("OPEN GPU", "oGPU") { marketingWallet = _marketingWallet; stakingWallet = _stakingWallet; developmentWallet = _developmentWallet; liquidityWallet = _liquidityWallet; cexListingWallet = _cexListingWallet; feeMultiplier = _multiplier; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x548625e4184F59d1AFCe7cbe67A67d5D9eF39029); address _uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); uniswapV2Router = _uniswapV2Router; uniswapV2Pair = _uniswapV2Pair; _approve(address(this), address(uniswapV2Router), type(uint256).max); _isExcludedFromFees[owner()] = true; _isExcludedFromFees[DEAD] = true; _isExcludedFromFees[address(this)] = true; _isExcludedFromMaxWalletLimit[owner()] = true; _isExcludedFromMaxWalletLimit[DEAD] = true; _isExcludedFromMaxWalletLimit[address(this)] = true; _isExcludedFromMaxWalletLimit[address(0)] = true; // Initial distribution based on tokenomics uint256 totalSupplyAmount = 21e6 * (10 ** 18); _mint(_liquidityWallet, (totalSupplyAmount * 75) / 100); _mint(_marketingWallet, (totalSupplyAmount * 10) / 100); _mint(_developmentWallet, (totalSupplyAmount * 5) / 100); _mint(_cexListingWallet, (totalSupplyAmount * 5) / 100); _mint(_stakingWallet, (totalSupplyAmount * 5) / 100); swapTokensAtAmount = totalSupply() / 500; } receive() external payable {} function sendETH(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); (bool success, ) = recipient.call{value: amount}(""); require(success, "Address: unable to send value, recipient may have reverted"); } function reduceFee() external onlyOwner { require(feeMultiplier > 1, "Limits already removed"); feeMultiplier -= 1; } function _transfer( address from, address to, uint256 amount ) internal override { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); if(amount == 0) { super._transfer(from, to, 0); return; } uint256 contractTokenBalance = balanceOf(address(this)); bool canSwap = contractTokenBalance >= swapTokensAtAmount; if( canSwap && !swapping && from != uniswapV2Pair && !_isExcludedFromFees[from] && !_isExcludedFromFees[to] ) { swapping = true; address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( contractTokenBalance, 0, // accept any amount of ETH path, address(this), block.timestamp); uint256 newBalance = address(this).balance; if (newBalance > 0) { uint256 marketingAmount = newBalance * 15 / 100; uint256 stakingAmount = newBalance * 10 / 100; uint256 developmentAmount = newBalance * 10 / 100; uint256 liquidityAmount = newBalance * 15 / 100; sendETH(payable(marketingWallet), marketingAmount); sendETH(payable(stakingWallet), stakingAmount); sendETH(payable(developmentWallet), developmentAmount); sendETH(payable(liquidityWallet), liquidityAmount); } swapping = false; } bool takeFee = !swapping; if((_isExcludedFromFees[from] || _isExcludedFromFees[to]) || ( from != uniswapV2Pair && to != uniswapV2Pair)){ takeFee = false; } if(takeFee) { uint256 _totalFees = 0; if(from == uniswapV2Pair) { _totalFees = buyFee * feeMultiplier; } else if(to == uniswapV2Pair) { _totalFees = sellFee * feeMultiplier; } if (_totalFees > 0) { uint256 fees = amount * _totalFees / 100; amount = amount - fees; super._transfer(from, address(this), fees); } } if (_isExcludedFromMaxWalletLimit[from] == false && _isExcludedFromMaxWalletLimit[to] == false && to != uniswapV2Pair && from == uniswapV2Pair ) { uint256 balance = balanceOf(to); require( balance + amount <= totalSupply() * maxWalletLimitRate / 5000, "MaxWallet: Recipient exceeds the maxWalletAmount" ); } super._transfer(from, to, amount); } }
[{"inputs":[{"internalType":"address","name":"_marketingWallet","type":"address"},{"internalType":"address","name":"_stakingWallet","type":"address"},{"internalType":"address","name":"_developmentWallet","type":"address"},{"internalType":"address","name":"_liquidityWallet","type":"address"},{"internalType":"address","name":"_cexListingWallet","type":"address"},{"internalType":"uint256","name":"_multiplier","type":"uint256"}],"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":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeMultiplier","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reduceFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526005600655600560075561dead601060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601480553480156200006257600080fd5b50604051620041ce380380620041ce833981810160405281019062000088919062000d98565b6040518060400160405280600881526020017f4f50454e204750550000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f6f475055000000000000000000000000000000000000000000000000000000008152508160039081620001059190620010a4565b508060049081620001179190620010a4565b50505060006200012c6200096460201b60201c565b905080600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35085600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555084600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600d81905550600073548625e4184f59d1afce7cbe67a67d5d9ef39029905060008173ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200037e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003a491906200118b565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308473ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200040c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200043291906200118b565b6040518363ffffffff1660e01b815260040162000451929190620011ce565b6020604051808303816000875af115801562000471573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200049791906200118b565b905081600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506200057030600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff167fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6200096c60201b60201c565b6001601260006200058662000b3d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160126000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160136000620006bf62000b3d60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160136000601060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601360003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601360008073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060006a115eec47f6cf7e35000000905062000878866064604b846200086091906200122a565b6200086c9190620012a4565b62000b6760201b60201c565b620008a6896064600a846200088e91906200122a565b6200089a9190620012a4565b62000b6760201b60201c565b620008d4876064600584620008bc91906200122a565b620008c89190620012a4565b62000b6760201b60201c565b62000902856064600584620008ea91906200122a565b620008f69190620012a4565b62000b6760201b60201c565b620009308860646005846200091891906200122a565b620009249190620012a4565b62000b6760201b60201c565b6101f46200094362000cdf60201b60201c565b6200094f9190620012a4565b601181905550505050505050505050620014f8565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603620009de576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620009d59062001363565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000a50576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a4790620013fb565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405162000b3091906200142e565b60405180910390a3505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160362000bd9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000bd0906200149b565b60405180910390fd5b62000bed6000838362000ce960201b60201c565b806002600082825462000c019190620014bd565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000c589190620014bd565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000cbf91906200142e565b60405180910390a362000cdb6000838362000cee60201b60201c565b5050565b6000600254905090565b505050565b505050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000d258262000cf8565b9050919050565b62000d378162000d18565b811462000d4357600080fd5b50565b60008151905062000d578162000d2c565b92915050565b6000819050919050565b62000d728162000d5d565b811462000d7e57600080fd5b50565b60008151905062000d928162000d67565b92915050565b60008060008060008060c0878903121562000db85762000db762000cf3565b5b600062000dc889828a0162000d46565b965050602062000ddb89828a0162000d46565b955050604062000dee89828a0162000d46565b945050606062000e0189828a0162000d46565b935050608062000e1489828a0162000d46565b92505060a062000e2789828a0162000d81565b9150509295509295509295565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000eb657607f821691505b60208210810362000ecc5762000ecb62000e6e565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000f367fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000ef7565b62000f42868362000ef7565b95508019841693508086168417925050509392505050565b6000819050919050565b600062000f8562000f7f62000f798462000d5d565b62000f5a565b62000d5d565b9050919050565b6000819050919050565b62000fa18362000f64565b62000fb962000fb08262000f8c565b84845462000f04565b825550505050565b600090565b62000fd062000fc1565b62000fdd81848462000f96565b505050565b5b81811015620010055762000ff960008262000fc6565b60018101905062000fe3565b5050565b601f82111562001054576200101e8162000ed2565b620010298462000ee7565b8101602085101562001039578190505b62001051620010488562000ee7565b83018262000fe2565b50505b505050565b600082821c905092915050565b6000620010796000198460080262001059565b1980831691505092915050565b600062001094838362001066565b9150826002028217905092915050565b620010af8262000e34565b67ffffffffffffffff811115620010cb57620010ca62000e3f565b5b620010d7825462000e9d565b620010e482828562001009565b600060209050601f8311600181146200111c576000841562001107578287015190505b62001113858262001086565b86555062001183565b601f1984166200112c8662000ed2565b60005b8281101562001156578489015182556001820191506020850194506020810190506200112f565b8683101562001176578489015162001172601f89168262001066565b8355505b6001600288020188555050505b505050505050565b600060208284031215620011a457620011a362000cf3565b5b6000620011b48482850162000d46565b91505092915050565b620011c88162000d18565b82525050565b6000604082019050620011e56000830185620011bd565b620011f46020830184620011bd565b9392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620012378262000d5d565b9150620012448362000d5d565b9250828202620012548162000d5d565b915082820484148315176200126e576200126d620011fb565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000620012b18262000d5d565b9150620012be8362000d5d565b925082620012d157620012d062001275565b5b828204905092915050565b600082825260208201905092915050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006200134b602483620012dc565b91506200135882620012ed565b604082019050919050565b600060208201905081810360008301526200137e816200133c565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000620013e3602283620012dc565b9150620013f08262001385565b604082019050919050565b600060208201905081810360008301526200141681620013d4565b9050919050565b620014288162000d5d565b82525050565b60006020820190506200144560008301846200141d565b92915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062001483601f83620012dc565b915062001490826200144b565b602082019050919050565b60006020820190508181036000830152620014b68162001474565b9050919050565b6000620014ca8262000d5d565b9150620014d78362000d5d565b9250828201905080821115620014f257620014f1620011fb565b5b92915050565b612cc680620015086000396000f3fe60806040526004361061012e5760003560e01c806370a08231116100ab578063a70419d21161006f578063a70419d214610405578063a9059cbb1461041c578063dd62ed3e14610459578063e2f4560514610496578063e5a70ef7146104c1578063f2fde38b146104ec57610135565b806370a082311461031e578063715018a61461035b5780638da5cb5b1461037257806395d89b411461039d578063a457c2d7146103c857610135565b80632b14ca56116100f25780632b14ca5614610235578063313ce56714610260578063395093511461028b57806347062402146102c857806349bd5a5e146102f357610135565b806306fdde031461013a578063095ea7b3146101655780631694505e146101a257806318160ddd146101cd57806323b872dd146101f857610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610515565b60405161015c9190611ed0565b60405180910390f35b34801561017157600080fd5b5061018c60048036038101906101879190611f8b565b6105a7565b6040516101999190611fe6565b60405180910390f35b3480156101ae57600080fd5b506101b76105c5565b6040516101c49190612060565b60405180910390f35b3480156101d957600080fd5b506101e26105eb565b6040516101ef919061208a565b60405180910390f35b34801561020457600080fd5b5061021f600480360381019061021a91906120a5565b6105f5565b60405161022c9190611fe6565b60405180910390f35b34801561024157600080fd5b5061024a610714565b604051610257919061208a565b60405180910390f35b34801561026c57600080fd5b5061027561071a565b6040516102829190612114565b60405180910390f35b34801561029757600080fd5b506102b260048036038101906102ad9190611f8b565b610723565b6040516102bf9190611fe6565b60405180910390f35b3480156102d457600080fd5b506102dd6107cf565b6040516102ea919061208a565b60405180910390f35b3480156102ff57600080fd5b506103086107d5565b604051610315919061213e565b60405180910390f35b34801561032a57600080fd5b5061034560048036038101906103409190612159565b6107fb565b604051610352919061208a565b60405180910390f35b34801561036757600080fd5b50610370610843565b005b34801561037e57600080fd5b5061038761099b565b604051610394919061213e565b60405180910390f35b3480156103a957600080fd5b506103b26109c5565b6040516103bf9190611ed0565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190611f8b565b610a57565b6040516103fc9190611fe6565b60405180910390f35b34801561041157600080fd5b5061041a610b42565b005b34801561042857600080fd5b50610443600480360381019061043e9190611f8b565b610c3a565b6040516104509190611fe6565b60405180910390f35b34801561046557600080fd5b50610480600480360381019061047b9190612186565b610c58565b60405161048d919061208a565b60405180910390f35b3480156104a257600080fd5b506104ab610cdf565b6040516104b8919061208a565b60405180910390f35b3480156104cd57600080fd5b506104d6610ce5565b6040516104e3919061208a565b60405180910390f35b3480156104f857600080fd5b50610513600480360381019061050e9190612159565b610ceb565b005b606060038054610524906121f5565b80601f0160208091040260200160405190810160405280929190818152602001828054610550906121f5565b801561059d5780601f106105725761010080835404028352916020019161059d565b820191906000526020600020905b81548152906001019060200180831161058057829003601f168201915b5050505050905090565b60006105bb6105b4610eb1565b8484610eb9565b6001905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610641610eb1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156106c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b890612298565b60405180910390fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146106fd576106fc856106f4610eb1565b858403610eb9565b5b610708858585611082565b60019150509392505050565b60075481565b60006012905090565b60006107c5610730610eb1565b84846001600061073e610eb1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107c091906122e7565b610eb9565b6001905092915050565b60065481565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61084b610eb1565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d190612367565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546109d4906121f5565b80601f0160208091040260200160405190810160405280929190818152602001828054610a00906121f5565b8015610a4d5780601f10610a2257610100808354040283529160200191610a4d565b820191906000526020600020905b815481529060010190602001808311610a3057829003601f168201915b5050505050905090565b60008060016000610a66610eb1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610b23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1a906123f9565b60405180910390fd5b610b37610b2e610eb1565b85858403610eb9565b600191505092915050565b610b4a610eb1565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd090612367565b60405180910390fd5b6001600d5411610c1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1590612465565b60405180910390fd5b6001600d6000828254610c319190612485565b92505081905550565b6000610c4e610c47610eb1565b8484611082565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60115481565b600d5481565b610cf3610eb1565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7990612367565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610df1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610de89061252b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1f906125bd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8e9061264f565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611075919061208a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e8906126e1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611160576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115790612773565b60405180910390fd5b600081036111795761117483836000611ac3565b611abe565b6000611184306107fb565b9050600060115482101590508080156111aa5750601060149054906101000a900460ff16155b80156112045750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b801561125a5750601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156112b05750601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611637576001601060146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156112ed576112ec612793565b5b60405190808252806020026020018201604052801561131b5781602001602082028036833780820191505090505b5090503081600081518110611333576113326127c2565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113fe9190612806565b81600181518110611412576114116127c2565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b81526004016114b095949392919061292c565b600060405180830381600087803b1580156114ca57600080fd5b505af11580156114de573d6000803e3d6000fd5b50505050600047905060008111156116195760006064600f836115019190612986565b61150b91906129f7565b905060006064600a8461151e9190612986565b61152891906129f7565b905060006064600a8561153b9190612986565b61154591906129f7565b905060006064600f866115589190612986565b61156291906129f7565b9050611590600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685611d42565b6115bc600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611d42565b6115e8600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611d42565b611614600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682611d42565b505050505b6000601060146101000a81548160ff02191690831515021790555050505b6000601060149054906101000a900460ff16159050601260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116ed5750601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806117a05750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415801561179f5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b5b156117aa57600090505b80156118c9576000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff160361181e57600d546006546118179190612986565b9050611887565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361188657600d546007546118839190612986565b90505b5b60008111156118c7576000606482876118a09190612986565b6118aa91906129f7565b905080866118b89190612485565b95506118c5883083611ac3565b505b505b60001515601360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515148015611979575060001515601360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b80156119d35750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611a2c5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b15611aaf576000611a3c866107fb565b9050611388601454611a4c6105eb565b611a569190612986565b611a6091906129f7565b8582611a6c91906122e7565b1115611aad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa490612a9a565b60405180910390fd5b505b611aba868686611ac3565b5050505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611b32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b29906126e1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611ba1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9890612773565b60405180910390fd5b611bac838383611e36565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611c32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2990612b2c565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611cc591906122e7565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d29919061208a565b60405180910390a3611d3c848484611e3b565b50505050565b80471015611d85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7c90612b98565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff1682604051611dab90612be9565b60006040518083038185875af1925050503d8060008114611de8576040519150601f19603f3d011682016040523d82523d6000602084013e611ded565b606091505b5050905080611e31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e2890612c70565b60405180910390fd5b505050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e7a578082015181840152602081019050611e5f565b60008484015250505050565b6000601f19601f8301169050919050565b6000611ea282611e40565b611eac8185611e4b565b9350611ebc818560208601611e5c565b611ec581611e86565b840191505092915050565b60006020820190508181036000830152611eea8184611e97565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f2282611ef7565b9050919050565b611f3281611f17565b8114611f3d57600080fd5b50565b600081359050611f4f81611f29565b92915050565b6000819050919050565b611f6881611f55565b8114611f7357600080fd5b50565b600081359050611f8581611f5f565b92915050565b60008060408385031215611fa257611fa1611ef2565b5b6000611fb085828601611f40565b9250506020611fc185828601611f76565b9150509250929050565b60008115159050919050565b611fe081611fcb565b82525050565b6000602082019050611ffb6000830184611fd7565b92915050565b6000819050919050565b600061202661202161201c84611ef7565b612001565b611ef7565b9050919050565b60006120388261200b565b9050919050565b600061204a8261202d565b9050919050565b61205a8161203f565b82525050565b60006020820190506120756000830184612051565b92915050565b61208481611f55565b82525050565b600060208201905061209f600083018461207b565b92915050565b6000806000606084860312156120be576120bd611ef2565b5b60006120cc86828701611f40565b93505060206120dd86828701611f40565b92505060406120ee86828701611f76565b9150509250925092565b600060ff82169050919050565b61210e816120f8565b82525050565b60006020820190506121296000830184612105565b92915050565b61213881611f17565b82525050565b6000602082019050612153600083018461212f565b92915050565b60006020828403121561216f5761216e611ef2565b5b600061217d84828501611f40565b91505092915050565b6000806040838503121561219d5761219c611ef2565b5b60006121ab85828601611f40565b92505060206121bc85828601611f40565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061220d57607f821691505b6020821081036122205761221f6121c6565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000612282602883611e4b565b915061228d82612226565b604082019050919050565b600060208201905081810360008301526122b181612275565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006122f282611f55565b91506122fd83611f55565b9250828201905080821115612315576123146122b8565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612351602083611e4b565b915061235c8261231b565b602082019050919050565b6000602082019050818103600083015261238081612344565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006123e3602583611e4b565b91506123ee82612387565b604082019050919050565b60006020820190508181036000830152612412816123d6565b9050919050565b7f4c696d69747320616c72656164792072656d6f76656400000000000000000000600082015250565b600061244f601683611e4b565b915061245a82612419565b602082019050919050565b6000602082019050818103600083015261247e81612442565b9050919050565b600061249082611f55565b915061249b83611f55565b92508282039050818111156124b3576124b26122b8565b5b92915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612515602683611e4b565b9150612520826124b9565b604082019050919050565b6000602082019050818103600083015261254481612508565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006125a7602483611e4b565b91506125b28261254b565b604082019050919050565b600060208201905081810360008301526125d68161259a565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612639602283611e4b565b9150612644826125dd565b604082019050919050565b600060208201905081810360008301526126688161262c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006126cb602583611e4b565b91506126d68261266f565b604082019050919050565b600060208201905081810360008301526126fa816126be565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061275d602383611e4b565b915061276882612701565b604082019050919050565b6000602082019050818103600083015261278c81612750565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061280081611f29565b92915050565b60006020828403121561281c5761281b611ef2565b5b600061282a848285016127f1565b91505092915050565b6000819050919050565b600061285861285361284e84612833565b612001565b611f55565b9050919050565b6128688161283d565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6128a381611f17565b82525050565b60006128b5838361289a565b60208301905092915050565b6000602082019050919050565b60006128d98261286e565b6128e38185612879565b93506128ee8361288a565b8060005b8381101561291f57815161290688826128a9565b9750612911836128c1565b9250506001810190506128f2565b5085935050505092915050565b600060a082019050612941600083018861207b565b61294e602083018761285f565b818103604083015261296081866128ce565b905061296f606083018561212f565b61297c608083018461207b565b9695505050505050565b600061299182611f55565b915061299c83611f55565b92508282026129aa81611f55565b915082820484148315176129c1576129c06122b8565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612a0282611f55565b9150612a0d83611f55565b925082612a1d57612a1c6129c8565b5b828204905092915050565b7f4d617857616c6c65743a20526563697069656e7420657863656564732074686560008201527f206d617857616c6c6574416d6f756e7400000000000000000000000000000000602082015250565b6000612a84603083611e4b565b9150612a8f82612a28565b604082019050919050565b60006020820190508181036000830152612ab381612a77565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000612b16602683611e4b565b9150612b2182612aba565b604082019050919050565b60006020820190508181036000830152612b4581612b09565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b6000612b82601d83611e4b565b9150612b8d82612b4c565b602082019050919050565b60006020820190508181036000830152612bb181612b75565b9050919050565b600081905092915050565b50565b6000612bd3600083612bb8565b9150612bde82612bc3565b600082019050919050565b6000612bf482612bc6565b9150819050919050565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b6000612c5a603a83611e4b565b9150612c6582612bfe565b604082019050919050565b60006020820190508181036000830152612c8981612c4d565b905091905056fea26469706673582212203122e93e56509886b476208b5469eebe08020b581d36753abdb49570533bee0f64736f6c63430008110033000000000000000000000000b5c047f5eb9ccc3fe0ca002c23507180fcff53180000000000000000000000002af8cf593833b21d2dc0ae8e6b8b7c54931625f9000000000000000000000000cc4e505d8e9162aae995522d4198da8b1b591856000000000000000000000000d1064e55786d75ecafd3eb57f02f95db97496a7c00000000000000000000000005c8ee627fadad275e273a5edfc6b3aa838dce870000000000000000000000000000000000000000000000000000000000000001
Deployed Bytecode
0x60806040526004361061012e5760003560e01c806370a08231116100ab578063a70419d21161006f578063a70419d214610405578063a9059cbb1461041c578063dd62ed3e14610459578063e2f4560514610496578063e5a70ef7146104c1578063f2fde38b146104ec57610135565b806370a082311461031e578063715018a61461035b5780638da5cb5b1461037257806395d89b411461039d578063a457c2d7146103c857610135565b80632b14ca56116100f25780632b14ca5614610235578063313ce56714610260578063395093511461028b57806347062402146102c857806349bd5a5e146102f357610135565b806306fdde031461013a578063095ea7b3146101655780631694505e146101a257806318160ddd146101cd57806323b872dd146101f857610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f610515565b60405161015c9190611ed0565b60405180910390f35b34801561017157600080fd5b5061018c60048036038101906101879190611f8b565b6105a7565b6040516101999190611fe6565b60405180910390f35b3480156101ae57600080fd5b506101b76105c5565b6040516101c49190612060565b60405180910390f35b3480156101d957600080fd5b506101e26105eb565b6040516101ef919061208a565b60405180910390f35b34801561020457600080fd5b5061021f600480360381019061021a91906120a5565b6105f5565b60405161022c9190611fe6565b60405180910390f35b34801561024157600080fd5b5061024a610714565b604051610257919061208a565b60405180910390f35b34801561026c57600080fd5b5061027561071a565b6040516102829190612114565b60405180910390f35b34801561029757600080fd5b506102b260048036038101906102ad9190611f8b565b610723565b6040516102bf9190611fe6565b60405180910390f35b3480156102d457600080fd5b506102dd6107cf565b6040516102ea919061208a565b60405180910390f35b3480156102ff57600080fd5b506103086107d5565b604051610315919061213e565b60405180910390f35b34801561032a57600080fd5b5061034560048036038101906103409190612159565b6107fb565b604051610352919061208a565b60405180910390f35b34801561036757600080fd5b50610370610843565b005b34801561037e57600080fd5b5061038761099b565b604051610394919061213e565b60405180910390f35b3480156103a957600080fd5b506103b26109c5565b6040516103bf9190611ed0565b60405180910390f35b3480156103d457600080fd5b506103ef60048036038101906103ea9190611f8b565b610a57565b6040516103fc9190611fe6565b60405180910390f35b34801561041157600080fd5b5061041a610b42565b005b34801561042857600080fd5b50610443600480360381019061043e9190611f8b565b610c3a565b6040516104509190611fe6565b60405180910390f35b34801561046557600080fd5b50610480600480360381019061047b9190612186565b610c58565b60405161048d919061208a565b60405180910390f35b3480156104a257600080fd5b506104ab610cdf565b6040516104b8919061208a565b60405180910390f35b3480156104cd57600080fd5b506104d6610ce5565b6040516104e3919061208a565b60405180910390f35b3480156104f857600080fd5b50610513600480360381019061050e9190612159565b610ceb565b005b606060038054610524906121f5565b80601f0160208091040260200160405190810160405280929190818152602001828054610550906121f5565b801561059d5780601f106105725761010080835404028352916020019161059d565b820191906000526020600020905b81548152906001019060200180831161058057829003601f168201915b5050505050905090565b60006105bb6105b4610eb1565b8484610eb9565b6001905092915050565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600254905090565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610641610eb1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050828110156106c1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106b890612298565b60405180910390fd5b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146106fd576106fc856106f4610eb1565b858403610eb9565b5b610708858585611082565b60019150509392505050565b60075481565b60006012905090565b60006107c5610730610eb1565b84846001600061073e610eb1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546107c091906122e7565b610eb9565b6001905092915050565b60065481565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61084b610eb1565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146108da576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108d190612367565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600480546109d4906121f5565b80601f0160208091040260200160405190810160405280929190818152602001828054610a00906121f5565b8015610a4d5780601f10610a2257610100808354040283529160200191610a4d565b820191906000526020600020905b815481529060010190602001808311610a3057829003601f168201915b5050505050905090565b60008060016000610a66610eb1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610b23576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b1a906123f9565b60405180910390fd5b610b37610b2e610eb1565b85858403610eb9565b600191505092915050565b610b4a610eb1565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610bd9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd090612367565b60405180910390fd5b6001600d5411610c1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1590612465565b60405180910390fd5b6001600d6000828254610c319190612485565b92505081905550565b6000610c4e610c47610eb1565b8484611082565b6001905092915050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60115481565b600d5481565b610cf3610eb1565b73ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d82576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7990612367565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610df1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610de89061252b565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f1f906125bd565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f8e9061264f565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611075919061208a565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036110f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e8906126e1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611160576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161115790612773565b60405180910390fd5b600081036111795761117483836000611ac3565b611abe565b6000611184306107fb565b9050600060115482101590508080156111aa5750601060149054906101000a900460ff16155b80156112045750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b801561125a5750601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156112b05750601260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611637576001601060146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff8111156112ed576112ec612793565b5b60405190808252806020026020018201604052801561131b5781602001602082028036833780820191505090505b5090503081600081518110611333576113326127c2565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156113da573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113fe9190612806565b81600181518110611412576114116127c2565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b81526004016114b095949392919061292c565b600060405180830381600087803b1580156114ca57600080fd5b505af11580156114de573d6000803e3d6000fd5b50505050600047905060008111156116195760006064600f836115019190612986565b61150b91906129f7565b905060006064600a8461151e9190612986565b61152891906129f7565b905060006064600a8561153b9190612986565b61154591906129f7565b905060006064600f866115589190612986565b61156291906129f7565b9050611590600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685611d42565b6115bc600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684611d42565b6115e8600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683611d42565b611614600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682611d42565b505050505b6000601060146101000a81548160ff02191690831515021790555050505b6000601060149054906101000a900460ff16159050601260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16806116ed5750601260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b806117a05750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff161415801561179f5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b5b156117aa57600090505b80156118c9576000600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff160361181e57600d546006546118179190612986565b9050611887565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff160361188657600d546007546118839190612986565b90505b5b60008111156118c7576000606482876118a09190612986565b6118aa91906129f7565b905080866118b89190612485565b95506118c5883083611ac3565b505b505b60001515601360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515148015611979575060001515601360008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515145b80156119d35750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611a2c5750600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b15611aaf576000611a3c866107fb565b9050611388601454611a4c6105eb565b611a569190612986565b611a6091906129f7565b8582611a6c91906122e7565b1115611aad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa490612a9a565b60405180910390fd5b505b611aba868686611ac3565b5050505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611b32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b29906126e1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611ba1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9890612773565b60405180910390fd5b611bac838383611e36565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015611c32576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2990612b2c565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254611cc591906122e7565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611d29919061208a565b60405180910390a3611d3c848484611e3b565b50505050565b80471015611d85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d7c90612b98565b60405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff1682604051611dab90612be9565b60006040518083038185875af1925050503d8060008114611de8576040519150601f19603f3d011682016040523d82523d6000602084013e611ded565b606091505b5050905080611e31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e2890612c70565b60405180910390fd5b505050565b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611e7a578082015181840152602081019050611e5f565b60008484015250505050565b6000601f19601f8301169050919050565b6000611ea282611e40565b611eac8185611e4b565b9350611ebc818560208601611e5c565b611ec581611e86565b840191505092915050565b60006020820190508181036000830152611eea8184611e97565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f2282611ef7565b9050919050565b611f3281611f17565b8114611f3d57600080fd5b50565b600081359050611f4f81611f29565b92915050565b6000819050919050565b611f6881611f55565b8114611f7357600080fd5b50565b600081359050611f8581611f5f565b92915050565b60008060408385031215611fa257611fa1611ef2565b5b6000611fb085828601611f40565b9250506020611fc185828601611f76565b9150509250929050565b60008115159050919050565b611fe081611fcb565b82525050565b6000602082019050611ffb6000830184611fd7565b92915050565b6000819050919050565b600061202661202161201c84611ef7565b612001565b611ef7565b9050919050565b60006120388261200b565b9050919050565b600061204a8261202d565b9050919050565b61205a8161203f565b82525050565b60006020820190506120756000830184612051565b92915050565b61208481611f55565b82525050565b600060208201905061209f600083018461207b565b92915050565b6000806000606084860312156120be576120bd611ef2565b5b60006120cc86828701611f40565b93505060206120dd86828701611f40565b92505060406120ee86828701611f76565b9150509250925092565b600060ff82169050919050565b61210e816120f8565b82525050565b60006020820190506121296000830184612105565b92915050565b61213881611f17565b82525050565b6000602082019050612153600083018461212f565b92915050565b60006020828403121561216f5761216e611ef2565b5b600061217d84828501611f40565b91505092915050565b6000806040838503121561219d5761219c611ef2565b5b60006121ab85828601611f40565b92505060206121bc85828601611f40565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061220d57607f821691505b6020821081036122205761221f6121c6565b5b50919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206160008201527f6c6c6f77616e6365000000000000000000000000000000000000000000000000602082015250565b6000612282602883611e4b565b915061228d82612226565b604082019050919050565b600060208201905081810360008301526122b181612275565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006122f282611f55565b91506122fd83611f55565b9250828201905080821115612315576123146122b8565b5b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612351602083611e4b565b915061235c8261231b565b602082019050919050565b6000602082019050818103600083015261238081612344565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b60006123e3602583611e4b565b91506123ee82612387565b604082019050919050565b60006020820190508181036000830152612412816123d6565b9050919050565b7f4c696d69747320616c72656164792072656d6f76656400000000000000000000600082015250565b600061244f601683611e4b565b915061245a82612419565b602082019050919050565b6000602082019050818103600083015261247e81612442565b9050919050565b600061249082611f55565b915061249b83611f55565b92508282039050818111156124b3576124b26122b8565b5b92915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612515602683611e4b565b9150612520826124b9565b604082019050919050565b6000602082019050818103600083015261254481612508565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b60006125a7602483611e4b565b91506125b28261254b565b604082019050919050565b600060208201905081810360008301526125d68161259a565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612639602283611e4b565b9150612644826125dd565b604082019050919050565b600060208201905081810360008301526126688161262c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b60006126cb602583611e4b565b91506126d68261266f565b604082019050919050565b600060208201905081810360008301526126fa816126be565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061275d602383611e4b565b915061276882612701565b604082019050919050565b6000602082019050818103600083015261278c81612750565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60008151905061280081611f29565b92915050565b60006020828403121561281c5761281b611ef2565b5b600061282a848285016127f1565b91505092915050565b6000819050919050565b600061285861285361284e84612833565b612001565b611f55565b9050919050565b6128688161283d565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6128a381611f17565b82525050565b60006128b5838361289a565b60208301905092915050565b6000602082019050919050565b60006128d98261286e565b6128e38185612879565b93506128ee8361288a565b8060005b8381101561291f57815161290688826128a9565b9750612911836128c1565b9250506001810190506128f2565b5085935050505092915050565b600060a082019050612941600083018861207b565b61294e602083018761285f565b818103604083015261296081866128ce565b905061296f606083018561212f565b61297c608083018461207b565b9695505050505050565b600061299182611f55565b915061299c83611f55565b92508282026129aa81611f55565b915082820484148315176129c1576129c06122b8565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612a0282611f55565b9150612a0d83611f55565b925082612a1d57612a1c6129c8565b5b828204905092915050565b7f4d617857616c6c65743a20526563697069656e7420657863656564732074686560008201527f206d617857616c6c6574416d6f756e7400000000000000000000000000000000602082015250565b6000612a84603083611e4b565b9150612a8f82612a28565b604082019050919050565b60006020820190508181036000830152612ab381612a77565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000612b16602683611e4b565b9150612b2182612aba565b604082019050919050565b60006020820190508181036000830152612b4581612b09565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e6365000000600082015250565b6000612b82601d83611e4b565b9150612b8d82612b4c565b602082019050919050565b60006020820190508181036000830152612bb181612b75565b9050919050565b600081905092915050565b50565b6000612bd3600083612bb8565b9150612bde82612bc3565b600082019050919050565b6000612bf482612bc6565b9150819050919050565b7f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260008201527f6563697069656e74206d61792068617665207265766572746564000000000000602082015250565b6000612c5a603a83611e4b565b9150612c6582612bfe565b604082019050919050565b60006020820190508181036000830152612c8981612c4d565b905091905056fea26469706673582212203122e93e56509886b476208b5469eebe08020b581d36753abdb49570533bee0f64736f6c63430008110033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000b5c047f5eb9ccc3fe0ca002c23507180fcff53180000000000000000000000002af8cf593833b21d2dc0ae8e6b8b7c54931625f9000000000000000000000000cc4e505d8e9162aae995522d4198da8b1b591856000000000000000000000000d1064e55786d75ecafd3eb57f02f95db97496a7c00000000000000000000000005c8ee627fadad275e273a5edfc6b3aa838dce870000000000000000000000000000000000000000000000000000000000000001
-----Decoded View---------------
Arg [0] : _marketingWallet (address): 0xb5C047F5eb9cCC3FE0Ca002c23507180FCff5318
Arg [1] : _stakingWallet (address): 0x2af8cf593833B21d2dc0ae8e6b8B7C54931625F9
Arg [2] : _developmentWallet (address): 0xCc4E505D8E9162AAE995522d4198Da8b1B591856
Arg [3] : _liquidityWallet (address): 0xD1064e55786D75ECaFd3eB57f02f95Db97496a7c
Arg [4] : _cexListingWallet (address): 0x05c8Ee627FaDAd275E273a5Edfc6b3aA838Dce87
Arg [5] : _multiplier (uint256): 1
-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 000000000000000000000000b5c047f5eb9ccc3fe0ca002c23507180fcff5318
Arg [1] : 0000000000000000000000002af8cf593833b21d2dc0ae8e6b8b7c54931625f9
Arg [2] : 000000000000000000000000cc4e505d8e9162aae995522d4198da8b1b591856
Arg [3] : 000000000000000000000000d1064e55786d75ecafd3eb57f02f95db97496a7c
Arg [4] : 00000000000000000000000005c8ee627fadad275e273a5edfc6b3aa838dce87
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000001
Deployed Bytecode Sourcemap
7913:6221:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2713:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3627:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8257:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3034:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3804:569;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7991:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2933:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4381:215;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7957:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8305:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3150:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1900:148;;;;;;;;;;;;;:::i;:::-;;1686:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2821:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4604:413;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10964:140;;;;;;;;;;;;;:::i;:::-;;3285:175;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3468:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8452:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8220:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2056:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2713:100;2767:13;2800:5;2793:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2713:100;:::o;3627:169::-;3710:4;3727:39;3736:12;:10;:12::i;:::-;3750:7;3759:6;3727:8;:39::i;:::-;3784:4;3777:11;;3627:169;;;;:::o;8257:41::-;;;;;;;;;;;;;:::o;3034:108::-;3095:7;3122:12;;3115:19;;3034:108;:::o;3804:569::-;3944:4;3961:24;3988:11;:19;4000:6;3988:19;;;;;;;;;;;;;;;:33;4008:12;:10;:12::i;:::-;3988:33;;;;;;;;;;;;;;;;3961:60;;4060:6;4040:16;:26;;4032:79;;;;;;;;;;;;:::i;:::-;;;;;;;;;4146:17;4126:16;:37;4122:171;;4209:57;4218:6;4226:12;:10;:12::i;:::-;4259:6;4240:16;:25;4209:8;:57::i;:::-;4122:171;4305:36;4315:6;4323:9;4334:6;4305:9;:36::i;:::-;4361:4;4354:11;;;3804:569;;;;;:::o;7991:27::-;;;;:::o;2933:93::-;2991:5;3016:2;3009:9;;2933:93;:::o;4381:215::-;4469:4;4486:80;4495:12;:10;:12::i;:::-;4509:7;4555:10;4518:11;:25;4530:12;:10;:12::i;:::-;4518:25;;;;;;;;;;;;;;;:34;4544:7;4518:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;4486:8;:80::i;:::-;4584:4;4577:11;;4381:215;;;;:::o;7957:27::-;;;;:::o;8305:29::-;;;;;;;;;;;;;:::o;3150:127::-;3224:7;3251:9;:18;3261:7;3251:18;;;;;;;;;;;;;;;;3244:25;;3150:127;;;:::o;1900:148::-;1823:12;:10;:12::i;:::-;1813:22;;:6;;;;;;;;;;;:22;;;1805:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2007:1:::1;1970:40;;1991:6;;;;;;;;;;;1970:40;;;;;;;;;;;;2038:1;2021:6;;:19;;;;;;;;;;;;;;;;;;1900:148::o:0;1686:79::-;1724:7;1751:6;;;;;;;;;;;1744:13;;1686:79;:::o;2821:104::-;2877:13;2910:7;2903:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2821:104;:::o;4604:413::-;4697:4;4714:24;4741:11;:25;4753:12;:10;:12::i;:::-;4741:25;;;;;;;;;;;;;;;:34;4767:7;4741:34;;;;;;;;;;;;;;;;4714:61;;4814:15;4794:16;:35;;4786:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;4907:67;4916:12;:10;:12::i;:::-;4930:7;4958:15;4939:16;:34;4907:8;:67::i;:::-;5005:4;4998:11;;;4604:413;;;;:::o;10964:140::-;1823:12;:10;:12::i;:::-;1813:22;;:6;;;;;;;;;;;:22;;;1805:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11039:1:::1;11023:13;;:17;11015:52;;;;;;;;;;;;:::i;:::-;;;;;;;;;11095:1;11078:13;;:18;;;;;;;:::i;:::-;;;;;;;;10964:140::o:0;3285:175::-;3371:4;3388:42;3398:12;:10;:12::i;:::-;3412:9;3423:6;3388:9;:42::i;:::-;3448:4;3441:11;;3285:175;;;;:::o;3468:151::-;3557:7;3584:11;:18;3596:5;3584:18;;;;;;;;;;;;;;;:27;3603:7;3584:27;;;;;;;;;;;;;;;;3577:34;;3468:151;;;;:::o;8452:33::-;;;;:::o;8220:28::-;;;;:::o;2056:244::-;1823:12;:10;:12::i;:::-;1813:22;;:6;;;;;;;;;;;:22;;;1805:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;2165:1:::1;2145:22;;:8;:22;;::::0;2137:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2255:8;2226:38;;2247:6;;;;;;;;;;;2226:38;;;;;;;;;;;;2284:8;2275:6;;:17;;;;;;;;;;;;;;;;;;2056:244:::0;:::o;1009:98::-;1062:7;1089:10;1082:17;;1009:98;:::o;6774:380::-;6927:1;6910:19;;:5;:19;;;6902:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7008:1;6989:21;;:7;:21;;;6981:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7092:6;7062:11;:18;7074:5;7062:18;;;;;;;;;;;;;;;:27;7081:7;7062:27;;;;;;;;;;;;;;;:36;;;;7130:7;7114:32;;7123:5;7114:32;;;7139:6;7114:32;;;;;;:::i;:::-;;;;;;;;6774:380;;;:::o;11112:3019::-;11261:1;11245:18;;:4;:18;;;11237:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;11338:1;11324:16;;:2;:16;;;11316:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;11406:1;11396:6;:11;11393:92;;11424:28;11440:4;11446:2;11450:1;11424:15;:28::i;:::-;11467:7;;11393:92;11489:28;11520:24;11538:4;11520:9;:24::i;:::-;11489:55;;11557:12;11596:18;;11572:20;:42;;11557:57;;11631:7;:33;;;;;11656:8;;;;;;;;;;;11655:9;11631:33;:71;;;;;11689:13;;;;;;;;;;;11681:21;;:4;:21;;;;11631:71;:114;;;;;11720:19;:25;11740:4;11720:25;;;;;;;;;;;;;;;;;;;;;;;;;11719:26;11631:114;:155;;;;;11763:19;:23;11783:2;11763:23;;;;;;;;;;;;;;;;;;;;;;;;;11762:24;11631:155;11627:1311;;;11824:4;11813:8;;:15;;;;;;;;;;;;;;;;;;11845:21;11883:1;11869:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11845:40;;11918:4;11900;11905:1;11900:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;11948:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11938:4;11943:1;11938:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;11987:15;;;;;;;;;;;:66;;;12072:20;12111:1;12159:4;12190;12214:15;11987:243;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12247:18;12268:21;12247:42;;12323:1;12310:10;:14;12306:576;;;12345:23;12389:3;12384:2;12371:10;:15;;;;:::i;:::-;:21;;;;:::i;:::-;12345:47;;12411:21;12453:3;12448:2;12435:10;:15;;;;:::i;:::-;:21;;;;:::i;:::-;12411:45;;12475:25;12521:3;12516:2;12503:10;:15;;;;:::i;:::-;:21;;;;:::i;:::-;12475:49;;12543:23;12587:3;12582:2;12569:10;:15;;;;:::i;:::-;:21;;;;:::i;:::-;12543:47;;12609:50;12625:15;;;;;;;;;;;12643;12609:7;:50::i;:::-;12678:46;12694:13;;;;;;;;;;;12710;12678:7;:46::i;:::-;12743:54;12759:17;;;;;;;;;;;12779;12743:7;:54::i;:::-;12816:50;12832:15;;;;;;;;;;;12850;12816:7;:50::i;:::-;12326:556;;;;12306:576;12921:5;12910:8;;:16;;;;;;;;;;;;;;;;;;11798:1140;;11627:1311;12950:12;12966:8;;;;;;;;;;;12965:9;12950:24;;12991:19;:25;13011:4;12991:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;13020:19;:23;13040:2;13020:23;;;;;;;;;;;;;;;;;;;;;;;;;12991:52;12990:105;;;;13058:13;;;;;;;;;;;13050:21;;:4;:21;;;;:44;;;;;13081:13;;;;;;;;;;;13075:19;;:2;:19;;;;13050:44;12990:105;12987:151;;;13121:5;13111:15;;12987:151;13153:7;13150:485;;;13177:18;13225:13;;;;;;;;;;;13217:21;;:4;:21;;;13214:197;;13281:13;;13272:6;;:22;;;;:::i;:::-;13259:35;;13214:197;;;13325:13;;;;;;;;;;;13319:19;;:2;:19;;;13316:95;;13382:13;;13372:7;;:23;;;;:::i;:::-;13359:36;;13316:95;13214:197;13444:1;13431:10;:14;13427:197;;;13466:12;13503:3;13490:10;13481:6;:19;;;;:::i;:::-;:25;;;;:::i;:::-;13466:40;;13543:4;13534:6;:13;;;;:::i;:::-;13525:22;;13566:42;13582:4;13596;13603;13566:15;:42::i;:::-;13447:177;13427:197;13162:473;13150:485;13691:5;13651:45;;:29;:35;13681:4;13651:35;;;;;;;;;;;;;;;;;;;;;;;;;:45;;;:108;;;;;13754:5;13714:45;;:29;:33;13744:2;13714:33;;;;;;;;;;;;;;;;;;;;;;;;;:45;;;13651:108;:144;;;;;13782:13;;;;;;;;;;;13776:19;;:2;:19;;;;13651:144;:169;;;;;13807:13;;;;;;;;;;;13799:21;;:4;:21;;;13651:169;13647:429;;;13847:15;13865:13;13875:2;13865:9;:13::i;:::-;13847:31;;13976:4;13955:18;;13939:13;:11;:13::i;:::-;:34;;;;:::i;:::-;:41;;;;:::i;:::-;13929:6;13919:7;:16;;;;:::i;:::-;:61;;13893:171;;;;;;;;;;;;:::i;:::-;;;;;;;;;13832:244;13647:429;14088:33;14104:4;14110:2;14114:6;14088:15;:33::i;:::-;11226:2905;;;11112:3019;;;;:::o;5025:735::-;5183:1;5165:20;;:6;:20;;;5157:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;5267:1;5246:23;;:9;:23;;;5238:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;5322:47;5343:6;5351:9;5362:6;5322:20;:47::i;:::-;5382:21;5406:9;:17;5416:6;5406:17;;;;;;;;;;;;;;;;5382:41;;5454:6;5438:13;:22;5434:76;;;5462:48;;;;;;;;;;:::i;:::-;;;;;;;;5434:76;5582:6;5566:13;:22;5546:9;:17;5556:6;5546:17;;;;;;;;;;;;;;;:42;;;;5634:6;5610:9;:20;5620:9;5610:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;5675:9;5658:35;;5667:6;5658:35;;;5686:6;5658:35;;;;;;:::i;:::-;;;;;;;;5706:46;5726:6;5734:9;5745:6;5706:19;:46::i;:::-;5146:614;5025:735;;;:::o;10641:315::-;10754:6;10729:21;:31;;10721:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;10808:12;10826:9;:14;;10848:6;10826:33;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10807:52;;;10878:7;10870:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;10710:246;10641:315;;:::o;7162:125::-;;;;:::o;7295:124::-;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:60::-;3474:3;3495:5;3488:12;;3446:60;;;:::o;3512:142::-;3562:9;3595:53;3613:34;3622:24;3640:5;3622:24;:::i;:::-;3613:34;:::i;:::-;3595:53;:::i;:::-;3582:66;;3512:142;;;:::o;3660:126::-;3710:9;3743:37;3774:5;3743:37;:::i;:::-;3730:50;;3660:126;;;:::o;3792:152::-;3868:9;3901:37;3932:5;3901:37;:::i;:::-;3888:50;;3792:152;;;:::o;3950:183::-;4063:63;4120:5;4063:63;:::i;:::-;4058:3;4051:76;3950:183;;:::o;4139:274::-;4258:4;4296:2;4285:9;4281:18;4273:26;;4309:97;4403:1;4392:9;4388:17;4379:6;4309:97;:::i;:::-;4139:274;;;;:::o;4419:118::-;4506:24;4524:5;4506:24;:::i;:::-;4501:3;4494:37;4419:118;;:::o;4543:222::-;4636:4;4674:2;4663:9;4659:18;4651:26;;4687:71;4755:1;4744:9;4740:17;4731:6;4687:71;:::i;:::-;4543:222;;;;:::o;4771:619::-;4848:6;4856;4864;4913:2;4901:9;4892:7;4888:23;4884:32;4881:119;;;4919:79;;:::i;:::-;4881:119;5039:1;5064:53;5109:7;5100:6;5089:9;5085:22;5064:53;:::i;:::-;5054:63;;5010:117;5166:2;5192:53;5237:7;5228:6;5217:9;5213:22;5192:53;:::i;:::-;5182:63;;5137:118;5294:2;5320:53;5365:7;5356:6;5345:9;5341:22;5320:53;:::i;:::-;5310:63;;5265:118;4771:619;;;;;:::o;5396:86::-;5431:7;5471:4;5464:5;5460:16;5449:27;;5396:86;;;:::o;5488:112::-;5571:22;5587:5;5571:22;:::i;:::-;5566:3;5559:35;5488:112;;:::o;5606:214::-;5695:4;5733:2;5722:9;5718:18;5710:26;;5746:67;5810:1;5799:9;5795:17;5786:6;5746:67;:::i;:::-;5606:214;;;;:::o;5826:118::-;5913:24;5931:5;5913:24;:::i;:::-;5908:3;5901:37;5826:118;;:::o;5950:222::-;6043:4;6081:2;6070:9;6066:18;6058:26;;6094:71;6162:1;6151:9;6147:17;6138:6;6094:71;:::i;:::-;5950:222;;;;:::o;6178:329::-;6237:6;6286:2;6274:9;6265:7;6261:23;6257:32;6254:119;;;6292:79;;:::i;:::-;6254:119;6412:1;6437:53;6482:7;6473:6;6462:9;6458:22;6437:53;:::i;:::-;6427:63;;6383:117;6178:329;;;;:::o;6513:474::-;6581:6;6589;6638:2;6626:9;6617:7;6613:23;6609:32;6606:119;;;6644:79;;:::i;:::-;6606:119;6764:1;6789:53;6834:7;6825:6;6814:9;6810:22;6789:53;:::i;:::-;6779:63;;6735:117;6891:2;6917:53;6962:7;6953:6;6942:9;6938:22;6917:53;:::i;:::-;6907:63;;6862:118;6513:474;;;;;:::o;6993:180::-;7041:77;7038:1;7031:88;7138:4;7135:1;7128:15;7162:4;7159:1;7152:15;7179:320;7223:6;7260:1;7254:4;7250:12;7240:22;;7307:1;7301:4;7297:12;7328:18;7318:81;;7384:4;7376:6;7372:17;7362:27;;7318:81;7446:2;7438:6;7435:14;7415:18;7412:38;7409:84;;7465:18;;:::i;:::-;7409:84;7230:269;7179:320;;;:::o;7505:227::-;7645:34;7641:1;7633:6;7629:14;7622:58;7714:10;7709:2;7701:6;7697:15;7690:35;7505:227;:::o;7738:366::-;7880:3;7901:67;7965:2;7960:3;7901:67;:::i;:::-;7894:74;;7977:93;8066:3;7977:93;:::i;:::-;8095:2;8090:3;8086:12;8079:19;;7738:366;;;:::o;8110:419::-;8276:4;8314:2;8303:9;8299:18;8291:26;;8363:9;8357:4;8353:20;8349:1;8338:9;8334:17;8327:47;8391:131;8517:4;8391:131;:::i;:::-;8383:139;;8110:419;;;:::o;8535:180::-;8583:77;8580:1;8573:88;8680:4;8677:1;8670:15;8704:4;8701:1;8694:15;8721:191;8761:3;8780:20;8798:1;8780:20;:::i;:::-;8775:25;;8814:20;8832:1;8814:20;:::i;:::-;8809:25;;8857:1;8854;8850:9;8843:16;;8878:3;8875:1;8872:10;8869:36;;;8885:18;;:::i;:::-;8869:36;8721:191;;;;:::o;8918:182::-;9058:34;9054:1;9046:6;9042:14;9035:58;8918:182;:::o;9106:366::-;9248:3;9269:67;9333:2;9328:3;9269:67;:::i;:::-;9262:74;;9345:93;9434:3;9345:93;:::i;:::-;9463:2;9458:3;9454:12;9447:19;;9106:366;;;:::o;9478:419::-;9644:4;9682:2;9671:9;9667:18;9659:26;;9731:9;9725:4;9721:20;9717:1;9706:9;9702:17;9695:47;9759:131;9885:4;9759:131;:::i;:::-;9751:139;;9478:419;;;:::o;9903:224::-;10043:34;10039:1;10031:6;10027:14;10020:58;10112:7;10107:2;10099:6;10095:15;10088:32;9903:224;:::o;10133:366::-;10275:3;10296:67;10360:2;10355:3;10296:67;:::i;:::-;10289:74;;10372:93;10461:3;10372:93;:::i;:::-;10490:2;10485:3;10481:12;10474:19;;10133:366;;;:::o;10505:419::-;10671:4;10709:2;10698:9;10694:18;10686:26;;10758:9;10752:4;10748:20;10744:1;10733:9;10729:17;10722:47;10786:131;10912:4;10786:131;:::i;:::-;10778:139;;10505:419;;;:::o;10930:172::-;11070:24;11066:1;11058:6;11054:14;11047:48;10930:172;:::o;11108:366::-;11250:3;11271:67;11335:2;11330:3;11271:67;:::i;:::-;11264:74;;11347:93;11436:3;11347:93;:::i;:::-;11465:2;11460:3;11456:12;11449:19;;11108:366;;;:::o;11480:419::-;11646:4;11684:2;11673:9;11669:18;11661:26;;11733:9;11727:4;11723:20;11719:1;11708:9;11704:17;11697:47;11761:131;11887:4;11761:131;:::i;:::-;11753:139;;11480:419;;;:::o;11905:194::-;11945:4;11965:20;11983:1;11965:20;:::i;:::-;11960:25;;11999:20;12017:1;11999:20;:::i;:::-;11994:25;;12043:1;12040;12036:9;12028:17;;12067:1;12061:4;12058:11;12055:37;;;12072:18;;:::i;:::-;12055:37;11905:194;;;;:::o;12105:225::-;12245:34;12241:1;12233:6;12229:14;12222:58;12314:8;12309:2;12301:6;12297:15;12290:33;12105:225;:::o;12336:366::-;12478:3;12499:67;12563:2;12558:3;12499:67;:::i;:::-;12492:74;;12575:93;12664:3;12575:93;:::i;:::-;12693:2;12688:3;12684:12;12677:19;;12336:366;;;:::o;12708:419::-;12874:4;12912:2;12901:9;12897:18;12889:26;;12961:9;12955:4;12951:20;12947:1;12936:9;12932:17;12925:47;12989:131;13115:4;12989:131;:::i;:::-;12981:139;;12708:419;;;:::o;13133:223::-;13273:34;13269:1;13261:6;13257:14;13250:58;13342:6;13337:2;13329:6;13325:15;13318:31;13133:223;:::o;13362:366::-;13504:3;13525:67;13589:2;13584:3;13525:67;:::i;:::-;13518:74;;13601:93;13690:3;13601:93;:::i;:::-;13719:2;13714:3;13710:12;13703:19;;13362:366;;;:::o;13734:419::-;13900:4;13938:2;13927:9;13923:18;13915:26;;13987:9;13981:4;13977:20;13973:1;13962:9;13958:17;13951:47;14015:131;14141:4;14015:131;:::i;:::-;14007:139;;13734:419;;;:::o;14159:221::-;14299:34;14295:1;14287:6;14283:14;14276:58;14368:4;14363:2;14355:6;14351:15;14344:29;14159:221;:::o;14386:366::-;14528:3;14549:67;14613:2;14608:3;14549:67;:::i;:::-;14542:74;;14625:93;14714:3;14625:93;:::i;:::-;14743:2;14738:3;14734:12;14727:19;;14386:366;;;:::o;14758:419::-;14924:4;14962:2;14951:9;14947:18;14939:26;;15011:9;15005:4;15001:20;14997:1;14986:9;14982:17;14975:47;15039:131;15165:4;15039:131;:::i;:::-;15031:139;;14758:419;;;:::o;15183:224::-;15323:34;15319:1;15311:6;15307:14;15300:58;15392:7;15387:2;15379:6;15375:15;15368:32;15183:224;:::o;15413:366::-;15555:3;15576:67;15640:2;15635:3;15576:67;:::i;:::-;15569:74;;15652:93;15741:3;15652:93;:::i;:::-;15770:2;15765:3;15761:12;15754:19;;15413:366;;;:::o;15785:419::-;15951:4;15989:2;15978:9;15974:18;15966:26;;16038:9;16032:4;16028:20;16024:1;16013:9;16009:17;16002:47;16066:131;16192:4;16066:131;:::i;:::-;16058:139;;15785:419;;;:::o;16210:222::-;16350:34;16346:1;16338:6;16334:14;16327:58;16419:5;16414:2;16406:6;16402:15;16395:30;16210:222;:::o;16438:366::-;16580:3;16601:67;16665:2;16660:3;16601:67;:::i;:::-;16594:74;;16677:93;16766:3;16677:93;:::i;:::-;16795:2;16790:3;16786:12;16779:19;;16438:366;;;:::o;16810:419::-;16976:4;17014:2;17003:9;16999:18;16991:26;;17063:9;17057:4;17053:20;17049:1;17038:9;17034:17;17027:47;17091:131;17217:4;17091:131;:::i;:::-;17083:139;;16810:419;;;:::o;17235:180::-;17283:77;17280:1;17273:88;17380:4;17377:1;17370:15;17404:4;17401:1;17394:15;17421:180;17469:77;17466:1;17459:88;17566:4;17563:1;17556:15;17590:4;17587:1;17580:15;17607:143;17664:5;17695:6;17689:13;17680:22;;17711:33;17738:5;17711:33;:::i;:::-;17607:143;;;;:::o;17756:351::-;17826:6;17875:2;17863:9;17854:7;17850:23;17846:32;17843:119;;;17881:79;;:::i;:::-;17843:119;18001:1;18026:64;18082:7;18073:6;18062:9;18058:22;18026:64;:::i;:::-;18016:74;;17972:128;17756:351;;;;:::o;18113:85::-;18158:7;18187:5;18176:16;;18113:85;;;:::o;18204:158::-;18262:9;18295:61;18313:42;18322:32;18348:5;18322:32;:::i;:::-;18313:42;:::i;:::-;18295:61;:::i;:::-;18282:74;;18204:158;;;:::o;18368:147::-;18463:45;18502:5;18463:45;:::i;:::-;18458:3;18451:58;18368:147;;:::o;18521:114::-;18588:6;18622:5;18616:12;18606:22;;18521:114;;;:::o;18641:184::-;18740:11;18774:6;18769:3;18762:19;18814:4;18809:3;18805:14;18790:29;;18641:184;;;;:::o;18831:132::-;18898:4;18921:3;18913:11;;18951:4;18946:3;18942:14;18934:22;;18831:132;;;:::o;18969:108::-;19046:24;19064:5;19046:24;:::i;:::-;19041:3;19034:37;18969:108;;:::o;19083:179::-;19152:10;19173:46;19215:3;19207:6;19173:46;:::i;:::-;19251:4;19246:3;19242:14;19228:28;;19083:179;;;;:::o;19268:113::-;19338:4;19370;19365:3;19361:14;19353:22;;19268:113;;;:::o;19417:732::-;19536:3;19565:54;19613:5;19565:54;:::i;:::-;19635:86;19714:6;19709:3;19635:86;:::i;:::-;19628:93;;19745:56;19795:5;19745:56;:::i;:::-;19824:7;19855:1;19840:284;19865:6;19862:1;19859:13;19840:284;;;19941:6;19935:13;19968:63;20027:3;20012:13;19968:63;:::i;:::-;19961:70;;20054:60;20107:6;20054:60;:::i;:::-;20044:70;;19900:224;19887:1;19884;19880:9;19875:14;;19840:284;;;19844:14;20140:3;20133:10;;19541:608;;;19417:732;;;;:::o;20155:831::-;20418:4;20456:3;20445:9;20441:19;20433:27;;20470:71;20538:1;20527:9;20523:17;20514:6;20470:71;:::i;:::-;20551:80;20627:2;20616:9;20612:18;20603:6;20551:80;:::i;:::-;20678:9;20672:4;20668:20;20663:2;20652:9;20648:18;20641:48;20706:108;20809:4;20800:6;20706:108;:::i;:::-;20698:116;;20824:72;20892:2;20881:9;20877:18;20868:6;20824:72;:::i;:::-;20906:73;20974:3;20963:9;20959:19;20950:6;20906:73;:::i;:::-;20155:831;;;;;;;;:::o;20992:410::-;21032:7;21055:20;21073:1;21055:20;:::i;:::-;21050:25;;21089:20;21107:1;21089:20;:::i;:::-;21084:25;;21144:1;21141;21137:9;21166:30;21184:11;21166:30;:::i;:::-;21155:41;;21345:1;21336:7;21332:15;21329:1;21326:22;21306:1;21299:9;21279:83;21256:139;;21375:18;;:::i;:::-;21256:139;21040:362;20992:410;;;;:::o;21408:180::-;21456:77;21453:1;21446:88;21553:4;21550:1;21543:15;21577:4;21574:1;21567:15;21594:185;21634:1;21651:20;21669:1;21651:20;:::i;:::-;21646:25;;21685:20;21703:1;21685:20;:::i;:::-;21680:25;;21724:1;21714:35;;21729:18;;:::i;:::-;21714:35;21771:1;21768;21764:9;21759:14;;21594:185;;;;:::o;21785:235::-;21925:34;21921:1;21913:6;21909:14;21902:58;21994:18;21989:2;21981:6;21977:15;21970:43;21785:235;:::o;22026:366::-;22168:3;22189:67;22253:2;22248:3;22189:67;:::i;:::-;22182:74;;22265:93;22354:3;22265:93;:::i;:::-;22383:2;22378:3;22374:12;22367:19;;22026:366;;;:::o;22398:419::-;22564:4;22602:2;22591:9;22587:18;22579:26;;22651:9;22645:4;22641:20;22637:1;22626:9;22622:17;22615:47;22679:131;22805:4;22679:131;:::i;:::-;22671:139;;22398:419;;;:::o;22823:225::-;22963:34;22959:1;22951:6;22947:14;22940:58;23032:8;23027:2;23019:6;23015:15;23008:33;22823:225;:::o;23054:366::-;23196:3;23217:67;23281:2;23276:3;23217:67;:::i;:::-;23210:74;;23293:93;23382:3;23293:93;:::i;:::-;23411:2;23406:3;23402:12;23395:19;;23054:366;;;:::o;23426:419::-;23592:4;23630:2;23619:9;23615:18;23607:26;;23679:9;23673:4;23669:20;23665:1;23654:9;23650:17;23643:47;23707:131;23833:4;23707:131;:::i;:::-;23699:139;;23426:419;;;:::o;23851:179::-;23991:31;23987:1;23979:6;23975:14;23968:55;23851:179;:::o;24036:366::-;24178:3;24199:67;24263:2;24258:3;24199:67;:::i;:::-;24192:74;;24275:93;24364:3;24275:93;:::i;:::-;24393:2;24388:3;24384:12;24377:19;;24036:366;;;:::o;24408:419::-;24574:4;24612:2;24601:9;24597:18;24589:26;;24661:9;24655:4;24651:20;24647:1;24636:9;24632:17;24625:47;24689:131;24815:4;24689:131;:::i;:::-;24681:139;;24408:419;;;:::o;24833:147::-;24934:11;24971:3;24956:18;;24833:147;;;;:::o;24986:114::-;;:::o;25106:398::-;25265:3;25286:83;25367:1;25362:3;25286:83;:::i;:::-;25279:90;;25378:93;25467:3;25378:93;:::i;:::-;25496:1;25491:3;25487:11;25480:18;;25106:398;;;:::o;25510:379::-;25694:3;25716:147;25859:3;25716:147;:::i;:::-;25709:154;;25880:3;25873:10;;25510:379;;;:::o;25895:245::-;26035:34;26031:1;26023:6;26019:14;26012:58;26104:28;26099:2;26091:6;26087:15;26080:53;25895:245;:::o;26146:366::-;26288:3;26309:67;26373:2;26368:3;26309:67;:::i;:::-;26302:74;;26385:93;26474:3;26385:93;:::i;:::-;26503:2;26498:3;26494:12;26487:19;;26146:366;;;:::o;26518:419::-;26684:4;26722:2;26711:9;26707:18;26699:26;;26771:9;26765:4;26761:20;26757:1;26746:9;26742:17;26735:47;26799:131;26925:4;26799:131;:::i;:::-;26791:139;;26518:419;;;:::o
Swarm Source
ipfs://3122e93e56509886b476208b5469eebe08020b581d36753abdb49570533bee0f
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.