More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 96,340 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 329198565 | 2 hrs ago | IN | 0 ETH | 0.00000064 | ||||
Approve | 329198528 | 2 hrs ago | IN | 0 ETH | 0.00000064 | ||||
Approve | 329198495 | 2 hrs ago | IN | 0 ETH | 0.00000062 | ||||
Approve | 329197266 | 2 hrs ago | IN | 0 ETH | 0.00000085 | ||||
Approve | 329197207 | 2 hrs ago | IN | 0 ETH | 0.00000083 | ||||
Approve | 329197166 | 2 hrs ago | IN | 0 ETH | 0.00000086 | ||||
Approve | 329197120 | 2 hrs ago | IN | 0 ETH | 0.00000085 | ||||
Approve | 329197071 | 2 hrs ago | IN | 0 ETH | 0.00000083 | ||||
Approve | 329197010 | 2 hrs ago | IN | 0 ETH | 0.00000083 | ||||
Approve | 329193061 | 2 hrs ago | IN | 0 ETH | 0.00000123 | ||||
Approve | 329192951 | 2 hrs ago | IN | 0 ETH | 0.00000125 | ||||
Approve | 329192904 | 2 hrs ago | IN | 0 ETH | 0.00000123 | ||||
Approve | 329186448 | 3 hrs ago | IN | 0 ETH | 0.00000076 | ||||
Transfer | 329071750 | 11 hrs ago | IN | 0 ETH | 0.0000427 | ||||
Approve | 329069223 | 11 hrs ago | IN | 0 ETH | 0.00003443 | ||||
Approve | 329067423 | 11 hrs ago | IN | 0 ETH | 0.0000281 | ||||
Approve | 329064800 | 11 hrs ago | IN | 0 ETH | 0.00000942 | ||||
Approve | 329064703 | 11 hrs ago | IN | 0 ETH | 0.00000981 | ||||
Approve | 329060229 | 12 hrs ago | IN | 0 ETH | 0.00001133 | ||||
Approve | 329039850 | 13 hrs ago | IN | 0 ETH | 0.00001333 | ||||
Transfer | 328987891 | 17 hrs ago | IN | 0 ETH | 0.0000004 | ||||
Transfer | 328987344 | 17 hrs ago | IN | 0 ETH | 0.00000037 | ||||
Transfer | 328986439 | 17 hrs ago | IN | 0 ETH | 0.00000044 | ||||
Transfer | 328985980 | 17 hrs ago | IN | 0 ETH | 0.0000004 | ||||
Transfer | 328985789 | 17 hrs ago | IN | 0 ETH | 0.00000044 |
Loading...
Loading
Contract Name:
BUFF
Compiler Version
v0.5.17+commit.d19bba13
Contract Source Code (Solidity)
/** *Submitted for verification at Arbiscan.io on 2025-02-24 */ pragma solidity ^0.5.17; interface IBEP20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the token decimals. */ function decimals() external view returns (uint8); /** * @dev Returns the token symbol. */ function symbol() external view returns (string memory); /** * @dev Returns the token name. */ function name() external view returns (string memory); /** * @dev Returns the bep token owner. */ function getOwner() external view returns (address); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `recipient`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address recipient, uint256 amount) external payable returns (bool); /** * @dev Returns the remaining number of tokens that `spender` will be * allowed to spend on behalf of `owner` through {transferFrom}. This is * zero by default. * * This value changes when {approve} or {transferFrom} are called. */ function allowance(address _owner, address spender) external view returns (uint256); /** * @dev Sets `amount` as the allowance of `spender` over the caller's tokens. * * Returns a boolean value indicating whether the operation succeeded. * * IMPORTANT: Beware that changing an allowance with this method brings the risk * that someone may use both the old and the new allowance by unfortunate * transaction ordering. One possible solution to mitigate this race * condition is to first reduce the spender's allowance to 0 and set the * desired value afterwards: * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 * * Emits an {Approval} event. */ function approve(address spender, uint256 amount) external returns (bool); /** * @dev Moves `amount` tokens from `sender` to `recipient` using the * allowance mechanism. `amount` is then deducted from the caller's * allowance. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval( address indexed owner, address indexed spender, uint256 value ); } /* * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with GSN meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ contract Context { // Empty internal constructor, to prevent people from mistakenly deploying // an instance of this contract, which should be used via inheritance. constructor() internal {} function _msgSender() internal view returns (address payable) { return msg.sender; } function _msgData() internal view returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public onlyOwner { _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). */ function _transferOwnership(address newOwner) internal { require( newOwner != address(0), "Ownable: new owner is the zero address" ); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } 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 swapExactTokensForTokensSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); function addLiquidity( address tokenA, address tokenB, uint256 amountADesired, uint256 amountBDesired, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline ) external returns ( uint256 amountA, uint256 amountB, uint256 liquidity ); function getAmountsOut(uint256 amountIn, address[] calldata path) external view returns (uint256[] memory amounts); } interface IUniswapV2Pair { function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns ( uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast ); function sync() external; } contract Wrap is Ownable { function withdraw(address ct, address to) public onlyOwner { IBEP20(ct).transfer(to, IBEP20(ct).balanceOf(address(this))); } } contract BUFF is Context, IBEP20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; uint8 private _decimals; string private _symbol; string private _name; address public _pairAddress; address public _deadAddress = 0x000000000000000000000000000000000000dEaD; address public wethAddress = 0x82aF49447D8a07e3bd95BD0d56f35241523fBab1; address public receiveAddress = 0xCE2fF34f88dF2E77caf640772B2BDc95de82aD81; address public routerAddress = 0x4752ba5DBc23f44D87826276BF6Fd6b1C372aD24; IUniswapV2Router02 public _uniswapV2Router; uint256 public _buyFeeRatio = 100; uint256 public _sellFeeRatio = 100; string public mode; mapping(address => bool) private _isExcluded; mapping(address => bool) private _isBlack; constructor() public { _name = "BUFF"; _symbol = "BUFF"; _decimals = 18; _totalSupply = 13000000000 * (10**uint256(_decimals)); _balances[msg.sender] = _totalSupply; emit Transfer(address(0), msg.sender, _totalSupply); _isExcluded[address(this)] = true; _uniswapV2Router = IUniswapV2Router02(routerAddress); wethAddress = _uniswapV2Router.WETH(); _pairAddress = IUniswapV2Factory(_uniswapV2Router.factory()).createPair( address(this), wethAddress ); } /** * @dev Returns the bep token owner. */ function getOwner() external view returns (address) { return owner(); } /** * @dev Returns the token decimals. */ function decimals() external view returns (uint8) { return _decimals; } /** * @dev Returns the token symbol. */ function symbol() external view returns (string memory) { return _symbol; } /** * @dev Returns the token name. */ function name() external view returns (string memory) { return _name; } /** * @dev See {BEP20-totalSupply}. */ function totalSupply() external view returns (uint256) { return _totalSupply; } /** * @dev See {BEP20-balanceOf}. */ function balanceOf(address account) public view returns (uint256) { return _balances[account]; } /** * @dev See {BEP20-transfer}. * * Requirements: * * - `recipient` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address recipient, uint256 amount) external payable returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } /** * @dev See {BEP20-allowance}. */ function allowance(address owner, address spender) external view returns (uint256) { return _allowances[owner][spender]; } /** * @dev See {BEP20-approve}. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) public returns (bool) { _approve(_msgSender(), spender, amount); return true; } /** * @dev See {BEP20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {BEP20}; * * Requirements: * - `sender` and `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. * - the caller must have allowance for `sender`'s tokens of at least * `amount`. */ function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } /** * @dev Atomically increases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {BEP20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. */ function increaseAllowance(address spender, uint256 addedValue) public returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue) ); return true; } /** * @dev Atomically decreases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {BEP20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. * - `spender` must have allowance for the caller of at least * `subtractedValue`. */ function decreaseAllowance(address spender, uint256 subtractedValue) public returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender].sub( subtractedValue, "ERC20: decreased allowance below zero" ) ); return true; } /** * @dev Creates `amount` tokens and assigns them to `msg.sender`, increasing * the total supply. * * Requirements * * - `msg.sender` must be the token owner */ // function mint(uint256 amount) public onlyOwner returns (bool) { // _mint(_msgSender(), amount); // return true; // } /** * @dev Moves tokens `amount` from `sender` to `recipient`. * * This is internal function is equivalent to {transfer}, and can be used to * e.g. implement automatic token fees, slashing mechanisms, etc. * * Emits a {Transfer} event. * * Requirements: * * - `sender` cannot be the zero address. * - `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. */ function _transfer( address sender, address recipient, uint256 amount ) internal { bool takeFee; bool isSell; bool isBuy; require(!_isBlack[sender], "transfer error"); if (recipient == _pairAddress || sender == _pairAddress) { if (recipient == _pairAddress) { isSell = true; } else if (sender == _pairAddress) { isBuy = true; } if ( (isSell || isBuy) && !_isExcluded[sender] && !_isExcluded[recipient] ) { takeFee = true; } } _tokenTransfer(sender, recipient, amount, takeFee); } /** @dev Creates `amount` tokens and assigns them to `account`, increasing * the total supply. * * Emits a {Transfer} event with `from` set to the zero address. * * Requirements * * - `to` cannot be the zero address. */ function _mint(address account, uint256 amount) internal { require(account != address(0), "ERC20: mint to the zero address"); _totalSupply = _totalSupply.add(amount); _balances[account] = _balances[account].add(amount); emit Transfer(address(0), account, amount); } /** * @dev Destroys `amount` tokens from `account`, reducing the * total supply. * * Emits a {Transfer} event with `to` set to the zero address. * * Requirements * * - `account` cannot be the zero address. * - `account` must have at least `amount` tokens. */ function _burn(address account, uint256 amount) internal { require(account != address(0), "ERC20: burn from the zero address"); _balances[account] = _balances[account].sub( amount, "ERC20: burn amount exceeds balance" ); _totalSupply = _totalSupply.sub(amount); emit Transfer(account, address(0), amount); } /** * @dev Sets `amount` as the allowance of `spender` over the `owner`s tokens. * * This is internal function is equivalent to `approve`, and can be used to * e.g. set automatic allowances for certain subsystems, etc. * * Emits an {Approval} event. * * Requirements: * * - `owner` cannot be the zero address. * - `spender` cannot be the zero address. */ function _approve( address owner, address spender, uint256 amount ) internal { 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); } /** * @dev Destroys `amount` tokens from `account`.`amount` is then deducted * from the caller's allowance. * * See {_burn} and {_approve}. */ function _burnFrom(address account, uint256 amount) internal { _burn(account, amount); _approve( account, _msgSender(), _allowances[account][_msgSender()].sub( amount, "ERC20: burn amount exceeds allowance" ) ); } function _basicTransfer( address sender, address recipient, uint256 amount ) internal returns (bool) { _balances[sender] = _balances[sender].sub( amount, "ERC20: transfer amount exceeds balance" ); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function _takeTransfer( address sender, address recipient, uint256 amount ) private { _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); } function _tokenTransfer( address sender, address recipient, uint256 amount, bool takeFee ) private { _balances[sender] = _balances[sender].sub(amount); uint256 subAmount = amount; if (takeFee) { uint256 fee; if (sender == _pairAddress) { fee = amount.mul(_buyFeeRatio).div(100); } else if (recipient == _pairAddress) { fee = amount.mul(_sellFeeRatio).div(100); } if (fee > 0) { _takeTransfer(sender, receiveAddress, fee); } subAmount = amount.sub(fee); } if (subAmount > 0) { _takeTransfer(sender, recipient, subAmount); } } function setBuyFeeRatio(uint256 ratio) public onlyOwner { _buyFeeRatio = ratio; } function setSellFeeRatio(uint256 ratio) public onlyOwner { _sellFeeRatio = ratio; } function setPairAddress(address addr) public onlyOwner { _pairAddress = addr; } function setWethAddress(address addr) public onlyOwner { wethAddress = addr; } function setRouterAddress(address addr) public onlyOwner { routerAddress = addr; } function setReceiveAddress(address addr) public onlyOwner { receiveAddress = addr; } function setExcluded(address[] calldata accounts, bool flag) external onlyOwner { for (uint256 i = 0; i < accounts.length; i++) { _isExcluded[accounts[i]] = flag; } } function setBlack(address[] calldata accounts, bool flag) external onlyOwner { for (uint256 i = 0; i < accounts.length; i++) { _isBlack[accounts[i]] = flag; } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"constant":true,"inputs":[],"name":"_buyFeeRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"_deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"_pairAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"_sellFeeRatio","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"mode","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"receiveAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"routerAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"flag","type":"bool"}],"name":"setBlack","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"ratio","type":"uint256"}],"name":"setBuyFeeRatio","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"flag","type":"bool"}],"name":"setExcluded","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"setPairAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"setReceiveAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"setRouterAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"uint256","name":"ratio","type":"uint256"}],"name":"setSellFeeRatio","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"setWethAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"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"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"wethAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405261dead600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507382af49447d8a07e3bd95bd0d56f35241523fbab1600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073ce2ff34f88df2e77caf640772b2bdc95de82ad81600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550734752ba5dbc23f44d87826276bf6fd6b1c372ad24600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506064600d556064600e553480156200015d57600080fd5b506000620001706200073660201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506040518060400160405280600481526020017f4255464600000000000000000000000000000000000000000000000000000000815250600690805190602001906200025b9291906200073e565b506040518060400160405280600481526020017f425546460000000000000000000000000000000000000000000000000000000081525060059080519060200190620002a99291906200073e565b506012600460006101000a81548160ff021916908360ff160217905550600460009054906101000a900460ff1660ff16600a0a640306dc420002600381905550600354600160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6003546040518082815260200191505060405180910390a36001601060003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b158015620004bb57600080fd5b505afa158015620004d0573d6000803e3d6000fd5b505050506040513d6020811015620004e757600080fd5b8101908080519060200190929190505050600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620005a157600080fd5b505afa158015620005b6573d6000803e3d6000fd5b505050506040513d6020811015620005cd57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff1663c9c6539630600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b158015620006b357600080fd5b505af1158015620006c8573d6000803e3d6000fd5b505050506040513d6020811015620006df57600080fd5b8101908080519060200190929190505050600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620007ed565b600033905090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200078157805160ff1916838001178555620007b2565b82800160010185558215620007b2579182015b82811115620007b157825182559160200191906001019062000794565b5b509050620007c19190620007c5565b5090565b620007ea91905b80821115620007e6576000816000905550600101620007cc565b5090565b90565b612cb180620007fd6000396000f3fe6080604052600436106101e35760003560e01c8063715018a611610102578063a457c2d711610095578063dd62ed3e11610064578063dd62ed3e14610c1c578063e3ac03f314610ca1578063f2fde38b14610cdc578063fffe42e914610d2d576101e3565b8063a457c2d714610a9b578063a9059cbb14610b0e578063a96e242314610b74578063c93eb86614610bc5576101e3565b80638e47b88c116100d15780638e47b88c1461095457806395d89b411461097f5780639da39df914610a0f578063a22d483214610a4a576101e3565b8063715018a6146108645780637ec502a41461087b578063893d20e8146108a65780638da5cb5b146108fd576101e3565b80633268cc561161017a5780634f0e0ef3116101495780634f0e0ef314610700578063583e0568146107575780635ec4b7a8146107ae57806370a08231146107ff576101e3565b80633268cc561461055357806339509351146105aa5780633d36cd331461061d57806341cb87fc146106af576101e3565b80631b355427116101b65780631b355427146103a857806323b872dd146103ff578063295a521214610492578063313ce56714610522576101e3565b806306fdde03146101e857806307c4357314610278578063095ea7b31461030a57806318160ddd1461037d575b600080fd5b3480156101f457600080fd5b506101fd610d84565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561023d578082015181840152602081019050610222565b50505050905090810190601f16801561026a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561028457600080fd5b506103086004803603604081101561029b57600080fd5b81019080803590602001906401000000008111156102b857600080fd5b8201836020820111156102ca57600080fd5b803590602001918460208302840111640100000000831117156102ec57600080fd5b9091929391929390803515159060200190929190505050610e26565b005b34801561031657600080fd5b506103636004803603604081101561032d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f92565b604051808215151515815260200191505060405180910390f35b34801561038957600080fd5b50610392610fb0565b6040518082815260200191505060405180910390f35b3480156103b457600080fd5b506103bd610fba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561040b57600080fd5b506104786004803603606081101561042257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610fe0565b604051808215151515815260200191505060405180910390f35b34801561049e57600080fd5b506104a76110b9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104e75780820151818401526020810190506104cc565b50505050905090810190601f1680156105145780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561052e57600080fd5b50610537611157565b604051808260ff1660ff16815260200191505060405180910390f35b34801561055f57600080fd5b5061056861116e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156105b657600080fd5b50610603600480360360408110156105cd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611194565b604051808215151515815260200191505060405180910390f35b34801561062957600080fd5b506106ad6004803603604081101561064057600080fd5b810190808035906020019064010000000081111561065d57600080fd5b82018360208201111561066f57600080fd5b8035906020019184602083028401116401000000008311171561069157600080fd5b9091929391929390803515159060200190929190505050611247565b005b3480156106bb57600080fd5b506106fe600480360360208110156106d257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113b3565b005b34801561070c57600080fd5b506107156114c0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561076357600080fd5b5061076c6114e6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107ba57600080fd5b506107fd600480360360208110156107d157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061150c565b005b34801561080b57600080fd5b5061084e6004803603602081101561082257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611619565b6040518082815260200191505060405180910390f35b34801561087057600080fd5b50610879611662565b005b34801561088757600080fd5b506108906117ea565b6040518082815260200191505060405180910390f35b3480156108b257600080fd5b506108bb6117f0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561090957600080fd5b506109126117ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561096057600080fd5b50610969611828565b6040518082815260200191505060405180910390f35b34801561098b57600080fd5b5061099461182e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109d45780820151818401526020810190506109b9565b50505050905090810190601f168015610a015780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610a1b57600080fd5b50610a4860048036036020811015610a3257600080fd5b81019080803590602001909291905050506118d0565b005b348015610a5657600080fd5b50610a9960048036036020811015610a6d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a3565b005b348015610aa757600080fd5b50610af460048036036040811015610abe57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611ab0565b604051808215151515815260200191505060405180910390f35b610b5a60048036036040811015610b2457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b7d565b604051808215151515815260200191505060405180910390f35b348015610b8057600080fd5b50610bc360048036036020811015610b9757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b9b565b005b348015610bd157600080fd5b50610bda611ca8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c2857600080fd5b50610c8b60048036036040811015610c3f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cce565b6040518082815260200191505060405180910390f35b348015610cad57600080fd5b50610cda60048036036020811015610cc457600080fd5b8101908080359060200190929190505050611d55565b005b348015610ce857600080fd5b50610d2b60048036036020811015610cff57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e28565b005b348015610d3957600080fd5b50610d42611efd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b606060068054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e1c5780601f10610df157610100808354040283529160200191610e1c565b820191906000526020600020905b815481529060010190602001808311610dff57829003601f168201915b5050505050905090565b610e2e611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610eef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b60008090505b83839050811015610f8c578160106000868685818110610f1157fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080600101915050610ef5565b50505050565b6000610fa6610f9f611f23565b8484611f2b565b6001905092915050565b6000600354905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610fed848484612122565b6110ae84610ff9611f23565b6110a985604051806060016040528060288152602001612c0c60289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061105f611f23565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124249092919063ffffffff16565b611f2b565b600190509392505050565b600f8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b505050505081565b6000600460009054906101000a900460ff16905090565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061123d6111a1611f23565b8461123885600260006111b2611f23565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e490919063ffffffff16565b611f2b565b6001905092915050565b61124f611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611310576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b60008090505b838390508110156113ad57816011600086868581811061133257fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080600101915050611316565b50505050565b6113bb611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461147c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611514611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146115d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61166a611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461172b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600d5481565b60006117fa6117ff565b905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600e5481565b606060058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156118c65780601f1061189b576101008083540402835291602001916118c6565b820191906000526020600020905b8154815290600101906020018083116118a957829003601f168201915b5050505050905090565b6118d8611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611999576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600d8190555050565b6119ab611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a6c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000611b73611abd611f23565b84611b6e85604051806060016040528060258152602001612c586025913960026000611ae7611f23565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124249092919063ffffffff16565b611f2b565b6001905092915050565b6000611b91611b8a611f23565b8484612122565b6001905092915050565b611ba3611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c64576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611d5d611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e1e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600e8190555050565b611e30611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ef1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b611efa8161256c565b50565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611fb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612c346024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612037576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612bc96022913960400191505060405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b6000806000601160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156121e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f7472616e73666572206572726f7200000000000000000000000000000000000081525060200191505060405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614806122905750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b1561241057600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156122f45760019150612350565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141561234f57600190505b5b81806123595750805b80156123af5750601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156124055750601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561240f57600192505b5b61241c868686866126b0565b505050505050565b60008383111582906124d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561249657808201518184015260208101905061247b565b50505050905090810190601f1680156124c35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080828401905083811015612562576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156125f2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612ba36026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61270282600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128c390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600082905081156128a7576000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156127d7576127d060646127c2600d548761290d90919063ffffffff16565b61299390919063ffffffff16565b9050612859565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612858576128556064612847600e548761290d90919063ffffffff16565b61299390919063ffffffff16565b90505b5b60008111156128905761288f86600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836129dd565b5b6128a381856128c390919063ffffffff16565b9150505b60008111156128bc576128bb8585836129dd565b5b5050505050565b600061290583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612424565b905092915050565b600080831415612920576000905061298d565b600082840290508284828161293157fe5b0414612988576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612beb6021913960400191505060405180910390fd5b809150505b92915050565b60006129d583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612adc565b905092915050565b612a2f81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e490919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60008083118290612b88576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612b4d578082015181840152602081019050612b32565b50505050905090810190601f168015612b7a5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581612b9457fe5b04905080915050939250505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a72315820c67a10481535f404d297ae4fb318f97c489fd7a2ec2a1e5b782721c8fb2a2bee64736f6c63430005110032
Deployed Bytecode
0x6080604052600436106101e35760003560e01c8063715018a611610102578063a457c2d711610095578063dd62ed3e11610064578063dd62ed3e14610c1c578063e3ac03f314610ca1578063f2fde38b14610cdc578063fffe42e914610d2d576101e3565b8063a457c2d714610a9b578063a9059cbb14610b0e578063a96e242314610b74578063c93eb86614610bc5576101e3565b80638e47b88c116100d15780638e47b88c1461095457806395d89b411461097f5780639da39df914610a0f578063a22d483214610a4a576101e3565b8063715018a6146108645780637ec502a41461087b578063893d20e8146108a65780638da5cb5b146108fd576101e3565b80633268cc561161017a5780634f0e0ef3116101495780634f0e0ef314610700578063583e0568146107575780635ec4b7a8146107ae57806370a08231146107ff576101e3565b80633268cc561461055357806339509351146105aa5780633d36cd331461061d57806341cb87fc146106af576101e3565b80631b355427116101b65780631b355427146103a857806323b872dd146103ff578063295a521214610492578063313ce56714610522576101e3565b806306fdde03146101e857806307c4357314610278578063095ea7b31461030a57806318160ddd1461037d575b600080fd5b3480156101f457600080fd5b506101fd610d84565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561023d578082015181840152602081019050610222565b50505050905090810190601f16801561026a5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561028457600080fd5b506103086004803603604081101561029b57600080fd5b81019080803590602001906401000000008111156102b857600080fd5b8201836020820111156102ca57600080fd5b803590602001918460208302840111640100000000831117156102ec57600080fd5b9091929391929390803515159060200190929190505050610e26565b005b34801561031657600080fd5b506103636004803603604081101561032d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f92565b604051808215151515815260200191505060405180910390f35b34801561038957600080fd5b50610392610fb0565b6040518082815260200191505060405180910390f35b3480156103b457600080fd5b506103bd610fba565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561040b57600080fd5b506104786004803603606081101561042257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610fe0565b604051808215151515815260200191505060405180910390f35b34801561049e57600080fd5b506104a76110b9565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156104e75780820151818401526020810190506104cc565b50505050905090810190601f1680156105145780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561052e57600080fd5b50610537611157565b604051808260ff1660ff16815260200191505060405180910390f35b34801561055f57600080fd5b5061056861116e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156105b657600080fd5b50610603600480360360408110156105cd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611194565b604051808215151515815260200191505060405180910390f35b34801561062957600080fd5b506106ad6004803603604081101561064057600080fd5b810190808035906020019064010000000081111561065d57600080fd5b82018360208201111561066f57600080fd5b8035906020019184602083028401116401000000008311171561069157600080fd5b9091929391929390803515159060200190929190505050611247565b005b3480156106bb57600080fd5b506106fe600480360360208110156106d257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506113b3565b005b34801561070c57600080fd5b506107156114c0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561076357600080fd5b5061076c6114e6565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156107ba57600080fd5b506107fd600480360360208110156107d157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061150c565b005b34801561080b57600080fd5b5061084e6004803603602081101561082257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611619565b6040518082815260200191505060405180910390f35b34801561087057600080fd5b50610879611662565b005b34801561088757600080fd5b506108906117ea565b6040518082815260200191505060405180910390f35b3480156108b257600080fd5b506108bb6117f0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561090957600080fd5b506109126117ff565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561096057600080fd5b50610969611828565b6040518082815260200191505060405180910390f35b34801561098b57600080fd5b5061099461182e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156109d45780820151818401526020810190506109b9565b50505050905090810190601f168015610a015780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b348015610a1b57600080fd5b50610a4860048036036020811015610a3257600080fd5b81019080803590602001909291905050506118d0565b005b348015610a5657600080fd5b50610a9960048036036020811015610a6d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a3565b005b348015610aa757600080fd5b50610af460048036036040811015610abe57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611ab0565b604051808215151515815260200191505060405180910390f35b610b5a60048036036040811015610b2457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611b7d565b604051808215151515815260200191505060405180910390f35b348015610b8057600080fd5b50610bc360048036036020811015610b9757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b9b565b005b348015610bd157600080fd5b50610bda611ca8565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610c2857600080fd5b50610c8b60048036036040811015610c3f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611cce565b6040518082815260200191505060405180910390f35b348015610cad57600080fd5b50610cda60048036036020811015610cc457600080fd5b8101908080359060200190929190505050611d55565b005b348015610ce857600080fd5b50610d2b60048036036020811015610cff57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611e28565b005b348015610d3957600080fd5b50610d42611efd565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b606060068054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610e1c5780601f10610df157610100808354040283529160200191610e1c565b820191906000526020600020905b815481529060010190602001808311610dff57829003601f168201915b5050505050905090565b610e2e611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610eef576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b60008090505b83839050811015610f8c578160106000868685818110610f1157fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080600101915050610ef5565b50505050565b6000610fa6610f9f611f23565b8484611f2b565b6001905092915050565b6000600354905090565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610fed848484612122565b6110ae84610ff9611f23565b6110a985604051806060016040528060288152602001612c0c60289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061105f611f23565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124249092919063ffffffff16565b611f2b565b600190509392505050565b600f8054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561114f5780601f106111245761010080835404028352916020019161114f565b820191906000526020600020905b81548152906001019060200180831161113257829003601f168201915b505050505081565b6000600460009054906101000a900460ff16905090565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061123d6111a1611f23565b8461123885600260006111b2611f23565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e490919063ffffffff16565b611f2b565b6001905092915050565b61124f611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611310576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b60008090505b838390508110156113ad57816011600086868581811061133257fe5b9050602002013573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080600101915050611316565b50505050565b6113bb611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461147c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611514611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146115d5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61166a611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461172b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600d5481565b60006117fa6117ff565b905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600e5481565b606060058054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156118c65780601f1061189b576101008083540402835291602001916118c6565b820191906000526020600020905b8154815290600101906020018083116118a957829003601f168201915b5050505050905090565b6118d8611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611999576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600d8190555050565b6119ab611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611a6c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000611b73611abd611f23565b84611b6e85604051806060016040528060258152602001612c586025913960026000611ae7611f23565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124249092919063ffffffff16565b611f2b565b6001905092915050565b6000611b91611b8a611f23565b8484612122565b6001905092915050565b611ba3611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c64576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611d5d611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e1e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b80600e8190555050565b611e30611f23565b73ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ef1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b611efa8161256c565b50565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611fb1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180612c346024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612037576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612bc96022913960400191505060405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b6000806000601160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156121e7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600e8152602001807f7472616e73666572206572726f7200000000000000000000000000000000000081525060200191505060405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614806122905750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16145b1561241057600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614156122f45760019150612350565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff16141561234f57600190505b5b81806123595750805b80156123af5750601060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156124055750601060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b1561240f57600192505b5b61241c868686866126b0565b505050505050565b60008383111582906124d1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561249657808201518184015260208101905061247b565b50505050905090810190601f1680156124c35780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600080828401905083811015612562576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156125f2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612ba36026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff166000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61270282600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546128c390919063ffffffff16565b600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600082905081156128a7576000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff1614156127d7576127d060646127c2600d548761290d90919063ffffffff16565b61299390919063ffffffff16565b9050612859565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415612858576128556064612847600e548761290d90919063ffffffff16565b61299390919063ffffffff16565b90505b5b60008111156128905761288f86600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16836129dd565b5b6128a381856128c390919063ffffffff16565b9150505b60008111156128bc576128bb8585836129dd565b5b5050505050565b600061290583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250612424565b905092915050565b600080831415612920576000905061298d565b600082840290508284828161293157fe5b0414612988576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180612beb6021913960400191505060405180910390fd5b809150505b92915050565b60006129d583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612adc565b905092915050565b612a2f81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546124e490919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b60008083118290612b88576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612b4d578082015181840152602081019050612b32565b50505050905090810190601f168015612b7a5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506000838581612b9457fe5b04905080915050939250505056fe4f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa265627a7a72315820c67a10481535f404d297ae4fb318f97c489fd7a2ec2a1e5b782721c8fb2a2bee64736f6c63430005110032
Deployed Bytecode Sourcemap
14474:12687:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16530:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16530:85:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;16530:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26706:225;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26706:225:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26706:225:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;26706:225:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;26706:225:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;26706:225:0;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;17732:152;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17732:152:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17732:152:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;16679:93;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16679:93:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14811:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14811:27:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;18355:439;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18355:439:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18355:439:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15297:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15297:18:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;15297:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16228:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16228:85:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15083:73;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15083:73:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;19202:283;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19202:283:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19202:283:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;26939:219;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26939:219:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26939:219:0;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;26939:219:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;26939:219:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;26939:219:0;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;26496:96;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26496:96:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26496:96:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;14924:71;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14924:71:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15165:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15165:42:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;26600:98;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26600:98:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26600:98:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;16834:110;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16834:110:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16834:110:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11413:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11413:140:0;;;:::i;:::-;;15216:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15216:33:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16076:85;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16076:85:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;10771:79;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10771:79:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;15256:34;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15256:34:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16378:89;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16378:89:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;16378:89:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26087:95;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26087:95:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26087:95:0;;;;;;;;;;;;;;;;;:::i;:::-;;26295:93;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26295:93:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26295:93:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;19987:383;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19987:383:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19987:383:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;17156:200;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17156:200:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;26396:92;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26396:92:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26396:92:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;14845:72;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14845:72:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;17418:168;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17418:168:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;17418:168:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26190:97;;8:9:-1;5:2;;;30:1;27;20:12;5:2;26190:97:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;26190:97:0;;;;;;;;;;;;;;;;;:::i;:::-;;11708:109;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11708:109:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11708:109:0;;;;;;;;;;;;;;;;;;;:::i;:::-;;15002:74;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15002:74:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;16530:85;16569:13;16602:5;16595:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16530:85;:::o;26706:225::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26825:9;26837:1;26825:13;;26820:104;26844:8;;:15;;26840:1;:19;26820:104;;;26908:4;26881:11;:24;26893:8;;26902:1;26893:11;;;;;;;;;;;;;;;26881:24;;;;;;;;;;;;;;;;:31;;;;;;;;;;;;;;;;;;26861:3;;;;;;;26820:104;;;;26706:225;;;:::o;17732:152::-;17798:4;17815:39;17824:12;:10;:12::i;:::-;17838:7;17847:6;17815:8;:39::i;:::-;17872:4;17865:11;;17732:152;;;;:::o;16679:93::-;16725:7;16752:12;;16745:19;;16679:93;:::o;14811:27::-;;;;;;;;;;;;;:::o;18355:439::-;18480:4;18497:36;18507:6;18515:9;18526:6;18497:9;:36::i;:::-;18544:220;18567:6;18588:12;:10;:12::i;:::-;18615:138;18671:6;18615:138;;;;;;;;;;;;;;;;;:11;:19;18627:6;18615:19;;;;;;;;;;;;;;;:33;18635:12;:10;:12::i;:::-;18615:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;18544:8;:220::i;:::-;18782:4;18775:11;;18355:439;;;;;:::o;15297:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;16228:85::-;16271:5;16296:9;;;;;;;;;;;16289:16;;16228:85;:::o;15083:73::-;;;;;;;;;;;;;:::o;19202:283::-;19300:4;19322:133;19345:12;:10;:12::i;:::-;19372:7;19394:50;19433:10;19394:11;:25;19406:12;:10;:12::i;:::-;19394:25;;;;;;;;;;;;;;;:34;19420:7;19394:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;19322:8;:133::i;:::-;19473:4;19466:11;;19202:283;;;;:::o;26939:219::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27055:9;27067:1;27055:13;;27050:101;27074:8;;:15;;27070:1;:19;27050:101;;;27135:4;27111:8;:21;27120:8;;27129:1;27120:11;;;;;;;;;;;;;;;27111:21;;;;;;;;;;;;;;;;:28;;;;;;;;;;;;;;;;;;27091:3;;;;;;;27050:101;;;;26939:219;;;:::o;26496:96::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26580:4;26564:13;;:20;;;;;;;;;;;;;;;;;;26496:96;:::o;14924:71::-;;;;;;;;;;;;;:::o;15165:42::-;;;;;;;;;;;;;:::o;26600:98::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26686:4;26669:14;;:21;;;;;;;;;;;;;;;;;;26600:98;:::o;16834:110::-;16891:7;16918:9;:18;16928:7;16918:18;;;;;;;;;;;;;;;;16911:25;;16834:110;;;:::o;11413:140::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11512:1;11475:40;;11496:6;;;;;;;;;;;11475:40;;;;;;;;;;;;11543:1;11526:6;;:19;;;;;;;;;;;;;;;;;;11413:140::o;15216:33::-;;;;:::o;16076:85::-;16119:7;16146;:5;:7::i;:::-;16139:14;;16076:85;:::o;10771:79::-;10809:7;10836:6;;;;;;;;;;;10829:13;;10771:79;:::o;15256:34::-;;;;:::o;16378:89::-;16419:13;16452:7;16445:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16378:89;:::o;26087:95::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26169:5;26154:12;:20;;;;26087:95;:::o;26295:93::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26376:4;26361:12;;:19;;;;;;;;;;;;;;;;;;26295:93;:::o;19987:383::-;20090:4;20112:228;20135:12;:10;:12::i;:::-;20162:7;20184:145;20241:15;20184:145;;;;;;;;;;;;;;;;;:11;:25;20196:12;:10;:12::i;:::-;20184:25;;;;;;;;;;;;;;;:34;20210:7;20184:34;;;;;;;;;;;;;;;;:38;;:145;;;;;:::i;:::-;20112:8;:228::i;:::-;20358:4;20351:11;;19987:383;;;;:::o;17156:200::-;17262:4;17284:42;17294:12;:10;:12::i;:::-;17308:9;17319:6;17284:9;:42::i;:::-;17344:4;17337:11;;17156:200;;;;:::o;26396:92::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26476:4;26462:11;;:18;;;;;;;;;;;;;;;;;;26396:92;:::o;14845:72::-;;;;;;;;;;;;;:::o;17418:168::-;17519:7;17551:11;:18;17563:5;17551:18;;;;;;;;;;;;;;;:27;17570:7;17551:27;;;;;;;;;;;;;;;;17544:34;;17418:168;;;;:::o;26190:97::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26274:5;26258:13;:21;;;;26190:97;:::o;11708:109::-;10993:12;:10;:12::i;:::-;10983:22;;:6;;;;;;;;;;;:22;;;10975:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11781:28;11800:8;11781:18;:28::i;:::-;11708:109;:::o;15002:74::-;;;;;;;;;;;;;:::o;3996:98::-;4041:15;4076:10;4069:17;;3996:98;:::o;23725:372::-;23870:1;23853:19;;:5;:19;;;;23845:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23951:1;23932:21;;:7;:21;;;;23924:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24035:6;24005:11;:18;24017:5;24005:18;;;;;;;;;;;;;;;:27;24024:7;24005:27;;;;;;;;;;;;;;;:36;;;;24073:7;24057:32;;24066:5;24057:32;;;24082:6;24057:32;;;;;;;;;;;;;;;;;;23725:372;;;:::o;21216:763::-;21340:12;21363:11;21385:10;21415:8;:16;21424:6;21415:16;;;;;;;;;;;;;;;;;;;;;;;;;21414:17;21406:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21478:12;;;;;;;;;;;21465:25;;:9;:25;;;:51;;;;21504:12;;;;;;;;;;;21494:22;;:6;:22;;;21465:51;21461:448;;;21550:12;;;;;;;;;;;21537:25;;:9;:25;;;21533:160;;;21592:4;21583:13;;21533:160;;;21632:12;;;;;;;;;;;21622:22;;:6;:22;;;21618:75;;;21673:4;21665:12;;21618:75;21533:160;21732:6;:15;;;;21742:5;21732:15;21731:58;;;;;21770:11;:19;21782:6;21770:19;;;;;;;;;;;;;;;;;;;;;;;;;21769:20;21731:58;:102;;;;;21811:11;:22;21823:9;21811:22;;;;;;;;;;;;;;;;;;;;;;;;;21810:23;21731:102;21709:189;;;21878:4;21868:14;;21709:189;21461:448;21921:50;21936:6;21944:9;21955:6;21963:7;21921:14;:50::i;:::-;21216:763;;;;;;:::o;6053:226::-;6173:7;6206:1;6201;:6;;6209:12;6193:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;6193:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6233:9;6249:1;6245;:5;6233:17;;6270:1;6263:8;;;6053:226;;;;;:::o;5166:181::-;5224:7;5244:9;5260:1;5256;:5;5244:17;;5285:1;5280;:6;;5272:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5338:1;5331:8;;;5166:181;;;;:::o;11923:266::-;12031:1;12011:22;;:8;:22;;;;11989:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12144:8;12115:38;;12136:6;;;;;;;;;;;12115:38;;;;;;;;;;;;12173:8;12164:6;;:17;;;;;;;;;;;;;;;;;;11923:266;:::o;25298:779::-;25469:29;25491:6;25469:9;:17;25479:6;25469:17;;;;;;;;;;;;;;;;:21;;:29;;;;:::i;:::-;25449:9;:17;25459:6;25449:17;;;;;;;;;;;;;;;:49;;;;25509:17;25529:6;25509:26;;25550:7;25546:425;;;25574:11;25614:12;;;;;;;;;;;25604:22;;:6;:22;;;25600:214;;;25653:33;25682:3;25653:24;25664:12;;25653:6;:10;;:24;;;;:::i;:::-;:28;;:33;;;;:::i;:::-;25647:39;;25600:214;;;25725:12;;;;;;;;;;;25712:25;;:9;:25;;;25708:106;;;25764:34;25794:3;25764:25;25775:13;;25764:6;:10;;:25;;;;:::i;:::-;:29;;:34;;;;:::i;:::-;25758:40;;25708:106;25600:214;25838:1;25832:3;:7;25828:90;;;25860:42;25874:6;25882:14;;;;;;;;;;;25898:3;25860:13;:42::i;:::-;25828:90;25944:15;25955:3;25944:6;:10;;:15;;;;:::i;:::-;25932:27;;25546:425;;25997:1;25985:9;:13;25981:89;;;26015:43;26029:6;26037:9;26048;26015:13;:43::i;:::-;25981:89;25298:779;;;;;:::o;5622:136::-;5680:7;5707:43;5711:1;5714;5707:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;5700:50;;5622:136;;;;:::o;6530:471::-;6588:7;6838:1;6833;:6;6829:47;;;6863:1;6856:8;;;;6829:47;6888:9;6904:1;6900;:5;6888:17;;6933:1;6928;6924;:5;;;;;;:10;6916:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6992:1;6985:8;;;6530:471;;;;;:::o;7469:132::-;7527:7;7554:39;7558:1;7561;7554:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;7547:46;;7469:132;;;;:::o;25049:241::-;25199:32;25224:6;25199:9;:20;25209:9;25199:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;25176:9;:20;25186:9;25176:20;;;;;;;;;;;;;;;:55;;;;25264:9;25247:35;;25256:6;25247:35;;;25275:6;25247:35;;;;;;;;;;;;;;;;;;25049:241;;;:::o;8089:379::-;8209:7;8308:1;8304;:5;8311:12;8296:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;8296:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8335:9;8351:1;8347;:5;;;;;;8335:17;;8459:1;8452:8;;;8089:379;;;;;:::o
Swarm Source
bzzr://c67a10481535f404d297ae4fb318f97c489fd7a2ec2a1e5b782721c8fb2a2bee
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.