More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 6 from a total of 6 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Remove Limits | 20433488 | 237 days ago | IN | 0 ETH | 0.00020977 | ||||
Approve | 20433368 | 237 days ago | IN | 0 ETH | 0.00029588 | ||||
Enable Trading | 20433364 | 237 days ago | IN | 0 ETH | 0.00016048 | ||||
Add Liquidity | 20433357 | 237 days ago | IN | 0 ETH | 0.01710031 | ||||
Transfer | 20433251 | 237 days ago | IN | 1 ETH | 0.0001089 | ||||
Transfer | 20433246 | 237 days ago | IN | 0 ETH | 0.00033195 |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Fwog0x42069
Compiler Version
v0.8.25+commit.b61c2a91
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: UNLICENSE /** https://fwog0x42069.vip https://x.com/fwog0x42069 https://t.me/fwog0x42069 */ pragma solidity 0.8.25; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function transferOwnership(address newOwner) public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = newOwner; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function factory() external pure returns (address); function WETH() external pure returns (address); function swapExactTokensForETHSupportingFeeOnTransferTokens(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); } contract Fwog0x42069 is Ownable, IERC20 { string private constant _name = unicode"🐸FWOG🐸0x42069"; string private constant _symbol = unicode"FWOG0x42069"; uint8 private constant _decimals = 9; uint256 private constant _tSupply = 420_690_000_000 * 10**_decimals; uint256 private maxTransactionAmount = 2 * _tSupply / 100; uint256 private maxWallet = 2 * _tSupply / 100; uint256 private taxSwapThreshold = 11 * _tSupply / 1000; uint256 private maxTaxSwap= 11 * _tSupply / 1000; address payable private revWallet; uint256 private initialBuyFee = 80; uint256 private initialSellFee = 0; uint256 private finalBuyFee = 0; uint256 private finalSellFee = 0; uint256 private _reduceBuyTaxAt=5; uint256 private _reduceSellTaxAt=5; uint256 private _preventSwapBefore=5; uint256 private _buyCount=0; bool private isSwapping; bool public limitsInEffect = true; bool private _isLaunched; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFees; mapping(address => bool) private _isExcludedMaxTransactionAmount; mapping(address => bool) private _ammPairs; IUniswapV2Router02 public immutable uniswapV2Router; address public uniswapV2Pair; constructor(address owner_, address router_, address payable revWallet_) { uniswapV2Router= IUniswapV2Router02(router_); revWallet = revWallet_; excludedFromFees(owner_, true); excludedFromFees(address(this), true); excludedFromFees(revWallet, true); excludedFromMaxTransaction(owner_, true); excludedFromMaxTransaction(address(uniswapV2Router), true); excludedFromMaxTransaction(address(this), true); excludedFromMaxTransaction(revWallet, true); _balances[owner_] = _tSupply; transferOwnership(owner_); emit Transfer(address(0), owner_, _tSupply); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure returns (uint256) { return _tSupply; } function balanceOf(address account) public view returns (uint256) { return _balances[account]; } function allowance(address owner, address spender) public view returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) external returns (bool) { _approve(msg.sender, spender, amount); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function transfer(address recipient, uint256 amount) external returns (bool) { fight(msg.sender, recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) external returns (bool) { uint256 currentAllowance = _allowances[sender][msg.sender]; if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance"); unchecked { _approve(sender, msg.sender, currentAllowance - amount); } } fight(sender, recipient, amount); return true; } function fight(address cat, address dog, uint256 trend) private { require(cat != address(0), "ERC20: transfer from the zero address"); require(dog != address(0), "ERC20: transfer to the zero address"); require(trend > 0, "Transfer amount must be greater than zero"); if (!_isLaunched && (cat != owner() && cat != address(this) && dog != owner())) { revert("Trading not enabled"); } bool inSwap = (_ammPairs[cat] || _ammPairs[dog]) && (cat == revWallet); if (limitsInEffect) { if (cat != owner() && dog != owner() && dog != address(0) && dog != address(0xdead) && !isSwapping) { if (_ammPairs[cat] && !_isExcludedMaxTransactionAmount[dog]) { require(trend <= maxTransactionAmount, "Buy transfer amount exceeds the maxTx"); require(trend + balanceOf(dog) <= maxWallet, "Max wallet exceeded"); } else if (_ammPairs[dog] && !_isExcludedMaxTransactionAmount[cat]) { require(trend <= maxTransactionAmount,"Sell transfer amount exceeds the maxTx"); } else if (!_isExcludedMaxTransactionAmount[dog]) { require(trend + balanceOf(dog) <= maxWallet, "Max wallet exceeded"); } } } bool canSwap = balanceOf(address(this)) >= taxSwapThreshold; if (canSwap && !isSwapping && !_ammPairs[dog] && !_isExcludedFromFees[cat] && !_isExcludedFromFees[dog]) { isSwapping = true; swapBack(); isSwapping = false; } if(_isLaunched && _ammPairs[dog]) _getRev(address(this).balance); bool takeFee = !isSwapping; if (_isExcludedFromFees[cat] || _isExcludedFromFees[dog]) { takeFee = false; } uint256 fee = 0; if (takeFee) { if (_ammPairs[dog]) { fee = trend * (_buyCount > _reduceSellTaxAt ? finalSellFee : initialSellFee) / 100; } else if (_ammPairs[cat]) { fee = trend * (_buyCount > _reduceBuyTaxAt ? finalBuyFee : initialBuyFee) / 100; _buyCount ++; } } uint256 senderBalance = _balances[cat]; require(senderBalance >= trend || inSwap, "ERC20: transfer amount exceeds balance"); if (fee > 0) { unchecked { trend = trend - fee; _balances[cat] -= fee; _balances[address(this)] += fee; } emit Transfer(cat, address(this), fee); } unchecked { _balances[cat] -= trend; _balances[dog] += trend; } emit Transfer(cat, dog, trend); } function _getRev(uint256 amount) private { revWallet.transfer(amount); } function removeLimits() external onlyOwner { limitsInEffect = false; } function excludedFromFees(address account, bool excluded) public onlyOwner { _isExcludedFromFees[account] = excluded; } function excludedFromMaxTransaction(address account, bool excluded) public onlyOwner { _isExcludedMaxTransactionAmount[account] = excluded; } function enableTrading() external onlyOwner { require(!_isLaunched, "Already launched"); _isLaunched = true; } function addLiquidity() external onlyOwner { require(!_isLaunched, "Already launched"); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); _ammPairs[uniswapV2Pair] = true; excludedFromMaxTransaction(address(uniswapV2Pair), true); _approve(address(this), address(uniswapV2Router), type(uint256).max); uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), _balances[address(this)], 0, 0, owner(), block.timestamp ); } function setAutomatedMarketMakerPair(address pair, bool value) external onlyOwner { require(pair != uniswapV2Pair, "The pair cannot be removed"); _ammPairs[pair] = value; } function excludedFromFee(address account) public view returns (bool) { return _isExcludedFromFees[account]; } function swapBack() private { uint256 swapThreshold = maxTaxSwap; address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(swapThreshold, 0, path, address(this), block.timestamp); } receive() external payable {} function rescueERC20(address _address, uint256 percent) external onlyOwner { uint256 _amount = IERC20(_address) .balanceOf(address(this)) * percent / 100; IERC20(_address).transfer(owner(), _amount); } function rescueETH() external onlyOwner { require(address(this).balance > 0); payable(owner()).transfer(address(this).balance); } } contract Fwog0x42069Factory is Context{ function getCreationBytecode(bytes memory initData) public pure returns (bytes memory) { bytes memory bytecode = type(Fwog0x42069).creationCode; return abi.encodePacked(bytecode, initData); } function getAddress(bytes32 bytecodeHash, uint256 salt) public view virtual returns (address) { bytes32 hash = keccak256( abi.encodePacked(bytes1(0xff), address(this), salt, bytecodeHash) ); return address(uint160(uint256(hash))); } function getCreationBytecodeHash(address owner, address router, address taxWallet) public pure returns (bytes32) { bytes memory initData = abi.encode(owner, router, taxWallet); return keccak256(getCreationBytecode(initData)); } function deploy2( address owner, address router, address taxWallet, uint256 salt, address targetAddress ) external { bytes memory initData = abi.encode(owner, router, taxWallet); bytes memory bytecode = getCreationBytecode(initData); bytes32 bytecodeHash = keccak256(bytecode); require( getAddress(bytecodeHash, salt) == targetAddress, "Expected address is different for that combination of bytecode and salt" ); address token; assembly { token := create2(0, add(bytecode, 32), mload(bytecode), salt) if iszero(extcodesize(token)) { revert(0, 0) } } } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"owner_","type":"address"},{"internalType":"address","name":"router_","type":"address"},{"internalType":"address payable","name":"revWallet_","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"addLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"excludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludedFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludedFromMaxTransaction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"limitsInEffect","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"rescueERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a060405260646100126009600a6104f6565b610021906461f313f88061050b565b61002c90600261050b565b6100369190610522565b60015560646100476009600a6104f6565b610056906461f313f88061050b565b61006190600261050b565b61006b9190610522565b6002556103e861007d6009600a6104f6565b61008c906461f313f88061050b565b61009790600b61050b565b6100a19190610522565b6003556103e86100b36009600a6104f6565b6100c2906461f313f88061050b565b6100cd90600b61050b565b6100d79190610522565b60045560506006555f6007819055600881905560098190556005600a819055600b819055600c55600d55600e805461ff00191661010017905534801561011b575f80fd5b5060405161230638038061230683398101604081905261013a91610558565b5f80546001600160a01b031916339081178255604051909182915f805160206122e6833981519152908290a3506001600160a01b03828116608052600580546001600160a01b031916918316919091179055610197836001610290565b6101a2306001610290565b6005546101b9906001600160a01b03166001610290565b6101c4836001610305565b6080516101d2906001610305565b6101dd306001610305565b6005546101f4906001600160a01b03166001610305565b6102006009600a6104f6565b61020f906461f313f88061050b565b6001600160a01b0384165f908152600f602052604090205561023083610375565b6001600160a01b0383165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6102686009600a6104f6565b610277906461f313f88061050b565b60405190815260200160405180910390a35050506105a2565b5f546001600160a01b031633146102db5760405162461bcd60e51b815260206004820181905260248201525f805160206122c683398151915260448201526064015b60405180910390fd5b6001600160a01b03919091165f908152601160205260409020805460ff1916911515919091179055565b5f546001600160a01b0316331461034b5760405162461bcd60e51b815260206004820181905260248201525f805160206122c683398151915260448201526064016102d2565b6001600160a01b03919091165f908152601260205260409020805460ff1916911515919091179055565b5f546001600160a01b031633146103bb5760405162461bcd60e51b815260206004820181905260248201525f805160206122c683398151915260448201526064016102d2565b5f80546040516001600160a01b03909116905f805160206122e6833981519152908390a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561044e57815f190482111561043457610434610400565b8085161561044157918102915b93841c9390800290610419565b509250929050565b5f82610464575060016104f0565b8161047057505f6104f0565b81600181146104865760028114610490576104ac565b60019150506104f0565b60ff8411156104a1576104a1610400565b50506001821b6104f0565b5060208310610133831016604e8410600b84101617156104cf575081810a6104f0565b6104d98383610414565b805f19048211156104ec576104ec610400565b0290505b92915050565b5f61050460ff841683610456565b9392505050565b80820281158282048414176104f0576104f0610400565b5f8261053c57634e487b7160e01b5f52601260045260245ffd5b500490565b6001600160a01b0381168114610555575f80fd5b50565b5f805f6060848603121561056a575f80fd5b835161057581610541565b602085015190935061058681610541565b604085015190925061059781610541565b809150509250925092565b608051611ce26105e45f395f818161020301528181610a7901528181610b0801528181610c4001528181610c7f0152818161177301526118290152611ce25ff3fe60806040526004361061014a575f3560e01c8063751039fc116100b35780639a7a23d61161006d5780639a7a23d6146103ff578063a9059cbb1461041e578063dd62ed3e1461043d578063e27f99b014610481578063e8078d94146104a0578063f2fde38b146104b4575f80fd5b8063751039fc1461033257806385ecafd7146103465780638a8c523c1461037d5780638cd4426d146103915780638da5cb5b146103b057806395d89b41146103cc575f80fd5b806323b872dd1161010457806323b872dd14610273578063313ce5671461029257806349bd5a5e146102ad5780634a62bb65146102cc57806370a08231146102ea578063715018a61461031e575f80fd5b806306fdde0314610155578063095ea7b3146101a257806316697fc5146101d15780631694505e146101f257806318160ddd1461023d57806320800a001461025f575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b50604080518082019091526013815272f09f90b846574f47f09f90b83078343230363960681b60208201525b60405161019991906118d4565b60405180910390f35b3480156101ad575f80fd5b506101c16101bc36600461191d565b6104d3565b6040519015158152602001610199565b3480156101dc575f80fd5b506101f06101eb366004611954565b6104e9565b005b3480156101fd575f80fd5b506102257f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610199565b348015610248575f80fd5b50610251610545565b604051908152602001610199565b34801561026a575f80fd5b506101f0610566565b34801561027e575f80fd5b506101c161028d36600461198b565b6105d4565b34801561029d575f80fd5b5060405160098152602001610199565b3480156102b8575f80fd5b50601454610225906001600160a01b031681565b3480156102d7575f80fd5b50600e546101c190610100900460ff1681565b3480156102f5575f80fd5b506102516103043660046119c9565b6001600160a01b03165f908152600f602052604090205490565b348015610329575f80fd5b506101f0610683565b34801561033d575f80fd5b506101f06106f4565b348015610351575f80fd5b506101c16103603660046119c9565b6001600160a01b03165f9081526011602052604090205460ff1690565b348015610388575f80fd5b506101f061072a565b34801561039c575f80fd5b506101f06103ab36600461191d565b6107b2565b3480156103bb575f80fd5b505f546001600160a01b0316610225565b3480156103d7575f80fd5b5060408051808201909152600b81526a46574f473078343230363960a81b602082015261018c565b34801561040a575f80fd5b506101f0610419366004611954565b6108f2565b348015610429575f80fd5b506101c161043836600461191d565b6109a3565b348015610448575f80fd5b506102516104573660046119eb565b6001600160a01b039182165f90815260106020908152604080832093909416825291909152205490565b34801561048c575f80fd5b506101f061049b366004611954565b6109af565b3480156104ab575f80fd5b506101f0610a02565b3480156104bf575f80fd5b506101f06104ce3660046119c9565b610d4b565b5f6104df338484610dcc565b5060015b92915050565b5f546001600160a01b0316331461051b5760405162461bcd60e51b815260040161051290611a17565b60405180910390fd5b6001600160a01b03919091165f908152601160205260409020805460ff1916911515919091179055565b5f6105526009600a611b40565b610561906461f313f880611b4e565b905090565b5f546001600160a01b0316331461058f5760405162461bcd60e51b815260040161051290611a17565b5f471161059a575f80fd5b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156105d1573d5f803e3d5ffd5b50565b6001600160a01b0383165f9081526010602090815260408083203384529091528120545f19811461066d57828110156106605760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610512565b61066d8533858403610dcc565b610678858585610eef565b506001949350505050565b5f546001600160a01b031633146106ac5760405162461bcd60e51b815260040161051290611a17565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461071d5760405162461bcd60e51b815260040161051290611a17565b600e805461ff0019169055565b5f546001600160a01b031633146107535760405162461bcd60e51b815260040161051290611a17565b600e5462010000900460ff161561079f5760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b6044820152606401610512565b600e805462ff0000191662010000179055565b5f546001600160a01b031633146107db5760405162461bcd60e51b815260040161051290611a17565b6040516370a0823160e01b81523060048201525f9060649083906001600160a01b038616906370a0823190602401602060405180830381865afa158015610824573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190611b65565b6108529190611b4e565b61085c9190611b7c565b9050826001600160a01b031663a9059cbb61087e5f546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af11580156108c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ec9190611b9b565b50505050565b5f546001600160a01b0316331461091b5760405162461bcd60e51b815260040161051290611a17565b6014546001600160a01b03908116908316036109795760405162461bcd60e51b815260206004820152601a60248201527f54686520706169722063616e6e6f742062652072656d6f7665640000000000006044820152606401610512565b6001600160a01b03919091165f908152601360205260409020805460ff1916911515919091179055565b5f6104df338484610eef565b5f546001600160a01b031633146109d85760405162461bcd60e51b815260040161051290611a17565b6001600160a01b03919091165f908152601260205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610a2b5760405162461bcd60e51b815260040161051290611a17565b600e5462010000900460ff1615610a775760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b6044820152606401610512565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ad3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af79190611bb6565b6001600160a01b031663c9c65396307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b62573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b869190611bb6565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610bd0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bf49190611bb6565b601480546001600160a01b0319166001600160a01b0392831690811782555f908152601360205260409020805460ff191660019081179091559054610c3a9216906109af565b610c66307f00000000000000000000000000000000000000000000000000000000000000005f19610dcc565b305f818152600f60205260408120546001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169263f305d7199247929080610cbb5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610d21573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610d469190611bd1565b505050565b5f546001600160a01b03163314610d745760405162461bcd60e51b815260040161051290611a17565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e2e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610512565b6001600160a01b038216610e8f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610512565b6001600160a01b038381165f8181526010602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f535760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610512565b6001600160a01b038216610fb55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610512565b5f81116110165760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610512565b600e5462010000900460ff1615801561106957505f546001600160a01b0384811691161480159061105057506001600160a01b0383163014155b801561106957505f546001600160a01b03838116911614155b156110ac5760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b6044820152606401610512565b6001600160a01b0383165f9081526013602052604081205460ff16806110e957506001600160a01b0383165f9081526013602052604090205460ff165b801561110257506005546001600160a01b038581169116145b600e54909150610100900460ff16156113bd575f546001600160a01b0385811691161480159061113f57505f546001600160a01b03848116911614155b801561115357506001600160a01b03831615155b801561116a57506001600160a01b03831661dead14155b80156111795750600e5460ff16155b156113bd576001600160a01b0384165f9081526013602052604090205460ff1680156111bd57506001600160a01b0383165f9081526012602052604090205460ff16155b15611290576001548211156112225760405162461bcd60e51b815260206004820152602560248201527f427579207472616e7366657220616d6f756e74206578636565647320746865206044820152640dac2f0a8f60db1b6064820152608401610512565b6002546001600160a01b0384165f908152600f60205260409020546112479084611bfc565b111561128b5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610512565b6113bd565b6001600160a01b0383165f9081526013602052604090205460ff1680156112cf57506001600160a01b0384165f9081526012602052604090205460ff16155b156113355760015482111561128b5760405162461bcd60e51b815260206004820152602660248201527f53656c6c207472616e7366657220616d6f756e74206578636565647320746865604482015265040dac2f0a8f60d31b6064820152608401610512565b6001600160a01b0383165f9081526012602052604090205460ff166113bd576002546001600160a01b0384165f908152600f60205260409020546113799084611bfc565b11156113bd5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610512565b600354305f908152600f60205260409020541080159081906113e25750600e5460ff16155b801561140657506001600160a01b0384165f9081526013602052604090205460ff16155b801561142a57506001600160a01b0385165f9081526011602052604090205460ff16155b801561144e57506001600160a01b0384165f9081526011602052604090205460ff16155b1561147357600e805460ff1916600117905561146861171b565b600e805460ff191690555b600e5462010000900460ff1680156114a257506001600160a01b0384165f9081526013602052604090205460ff165b156114b0576114b047611899565b600e546001600160a01b0386165f9081526011602052604090205460ff918216159116806114f557506001600160a01b0385165f9081526011602052604090205460ff165b156114fd57505f5b5f81156115bc576001600160a01b0386165f9081526013602052604090205460ff1615611558576064600b54600d54116115395760075461153d565b6009545b6115479087611b4e565b6115519190611b7c565b90506115bc565b6001600160a01b0387165f9081526013602052604090205460ff16156115bc576064600a54600d541161158d57600654611591565b6008545b61159b9087611b4e565b6115a59190611b7c565b600d80549192505f6115b683611c0f565b91905055505b6001600160a01b0387165f908152600f602052604090205485811015806115e05750845b61163b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610512565b81156116a8576001600160a01b0388165f818152600f602090815260408083208054879003905530808452928190208054870190555185815298859003989192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b6001600160a01b038089165f818152600f602052604080822080548b90039055928a168082529083902080548a01905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611709908a815260200190565b60405180910390a35050505050505050565b6004546040805160028082526060820183525f9260208301908036833701905050905030815f8151811061175157611751611c27565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117f19190611bb6565b8160018151811061180457611804611c27565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f00000000000000000000000000000000000000000000000000000000000000009091169063791ac947906118689085905f90869030904290600401611c3b565b5f604051808303815f87803b15801561187f575f80fd5b505af1158015611891573d5f803e3d5ffd5b505050505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156118d0573d5f803e3d5ffd5b5050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146105d1575f80fd5b5f806040838503121561192e575f80fd5b823561193981611909565b946020939093013593505050565b80151581146105d1575f80fd5b5f8060408385031215611965575f80fd5b823561197081611909565b9150602083013561198081611947565b809150509250929050565b5f805f6060848603121561199d575f80fd5b83356119a881611909565b925060208401356119b881611909565b929592945050506040919091013590565b5f602082840312156119d9575f80fd5b81356119e481611909565b9392505050565b5f80604083850312156119fc575f80fd5b8235611a0781611909565b9150602083013561198081611909565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611a9a57815f1904821115611a8057611a80611a4c565b80851615611a8d57918102915b93841c9390800290611a65565b509250929050565b5f82611ab0575060016104e3565b81611abc57505f6104e3565b8160018114611ad25760028114611adc57611af8565b60019150506104e3565b60ff841115611aed57611aed611a4c565b50506001821b6104e3565b5060208310610133831016604e8410600b8410161715611b1b575081810a6104e3565b611b258383611a60565b805f1904821115611b3857611b38611a4c565b029392505050565b5f6119e460ff841683611aa2565b80820281158282048414176104e3576104e3611a4c565b5f60208284031215611b75575f80fd5b5051919050565b5f82611b9657634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215611bab575f80fd5b81516119e481611947565b5f60208284031215611bc6575f80fd5b81516119e481611909565b5f805f60608486031215611be3575f80fd5b8351925060208401519150604084015190509250925092565b808201808211156104e3576104e3611a4c565b5f60018201611c2057611c20611a4c565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611c8b5784516001600160a01b031683529383019391830191600101611c66565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212207c2bf23c5018ed61b15ed36ebf8c6128664e744eeca477656950e3b8a72f6ba964736f6c634300081900334f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65728be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e00000000000000000000000003047a804563fd304ab0258d7ecd9c6098ead26570000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000aec394b5f6dc1bb1ebcf280edc9e5746241d4943
Deployed Bytecode
0x60806040526004361061014a575f3560e01c8063751039fc116100b35780639a7a23d61161006d5780639a7a23d6146103ff578063a9059cbb1461041e578063dd62ed3e1461043d578063e27f99b014610481578063e8078d94146104a0578063f2fde38b146104b4575f80fd5b8063751039fc1461033257806385ecafd7146103465780638a8c523c1461037d5780638cd4426d146103915780638da5cb5b146103b057806395d89b41146103cc575f80fd5b806323b872dd1161010457806323b872dd14610273578063313ce5671461029257806349bd5a5e146102ad5780634a62bb65146102cc57806370a08231146102ea578063715018a61461031e575f80fd5b806306fdde0314610155578063095ea7b3146101a257806316697fc5146101d15780631694505e146101f257806318160ddd1461023d57806320800a001461025f575f80fd5b3661015157005b5f80fd5b348015610160575f80fd5b50604080518082019091526013815272f09f90b846574f47f09f90b83078343230363960681b60208201525b60405161019991906118d4565b60405180910390f35b3480156101ad575f80fd5b506101c16101bc36600461191d565b6104d3565b6040519015158152602001610199565b3480156101dc575f80fd5b506101f06101eb366004611954565b6104e9565b005b3480156101fd575f80fd5b506102257f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b039091168152602001610199565b348015610248575f80fd5b50610251610545565b604051908152602001610199565b34801561026a575f80fd5b506101f0610566565b34801561027e575f80fd5b506101c161028d36600461198b565b6105d4565b34801561029d575f80fd5b5060405160098152602001610199565b3480156102b8575f80fd5b50601454610225906001600160a01b031681565b3480156102d7575f80fd5b50600e546101c190610100900460ff1681565b3480156102f5575f80fd5b506102516103043660046119c9565b6001600160a01b03165f908152600f602052604090205490565b348015610329575f80fd5b506101f0610683565b34801561033d575f80fd5b506101f06106f4565b348015610351575f80fd5b506101c16103603660046119c9565b6001600160a01b03165f9081526011602052604090205460ff1690565b348015610388575f80fd5b506101f061072a565b34801561039c575f80fd5b506101f06103ab36600461191d565b6107b2565b3480156103bb575f80fd5b505f546001600160a01b0316610225565b3480156103d7575f80fd5b5060408051808201909152600b81526a46574f473078343230363960a81b602082015261018c565b34801561040a575f80fd5b506101f0610419366004611954565b6108f2565b348015610429575f80fd5b506101c161043836600461191d565b6109a3565b348015610448575f80fd5b506102516104573660046119eb565b6001600160a01b039182165f90815260106020908152604080832093909416825291909152205490565b34801561048c575f80fd5b506101f061049b366004611954565b6109af565b3480156104ab575f80fd5b506101f0610a02565b3480156104bf575f80fd5b506101f06104ce3660046119c9565b610d4b565b5f6104df338484610dcc565b5060015b92915050565b5f546001600160a01b0316331461051b5760405162461bcd60e51b815260040161051290611a17565b60405180910390fd5b6001600160a01b03919091165f908152601160205260409020805460ff1916911515919091179055565b5f6105526009600a611b40565b610561906461f313f880611b4e565b905090565b5f546001600160a01b0316331461058f5760405162461bcd60e51b815260040161051290611a17565b5f471161059a575f80fd5b5f80546040516001600160a01b03909116914780156108fc02929091818181858888f193505050501580156105d1573d5f803e3d5ffd5b50565b6001600160a01b0383165f9081526010602090815260408083203384529091528120545f19811461066d57828110156106605760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b6064820152608401610512565b61066d8533858403610dcc565b610678858585610eef565b506001949350505050565b5f546001600160a01b031633146106ac5760405162461bcd60e51b815260040161051290611a17565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461071d5760405162461bcd60e51b815260040161051290611a17565b600e805461ff0019169055565b5f546001600160a01b031633146107535760405162461bcd60e51b815260040161051290611a17565b600e5462010000900460ff161561079f5760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b6044820152606401610512565b600e805462ff0000191662010000179055565b5f546001600160a01b031633146107db5760405162461bcd60e51b815260040161051290611a17565b6040516370a0823160e01b81523060048201525f9060649083906001600160a01b038616906370a0823190602401602060405180830381865afa158015610824573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108489190611b65565b6108529190611b4e565b61085c9190611b7c565b9050826001600160a01b031663a9059cbb61087e5f546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303815f875af11580156108c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ec9190611b9b565b50505050565b5f546001600160a01b0316331461091b5760405162461bcd60e51b815260040161051290611a17565b6014546001600160a01b03908116908316036109795760405162461bcd60e51b815260206004820152601a60248201527f54686520706169722063616e6e6f742062652072656d6f7665640000000000006044820152606401610512565b6001600160a01b03919091165f908152601360205260409020805460ff1916911515919091179055565b5f6104df338484610eef565b5f546001600160a01b031633146109d85760405162461bcd60e51b815260040161051290611a17565b6001600160a01b03919091165f908152601260205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610a2b5760405162461bcd60e51b815260040161051290611a17565b600e5462010000900460ff1615610a775760405162461bcd60e51b815260206004820152601060248201526f105b1c9958591e481b185d5b98da195960821b6044820152606401610512565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ad3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af79190611bb6565b6001600160a01b031663c9c65396307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b62573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b869190611bb6565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610bd0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bf49190611bb6565b601480546001600160a01b0319166001600160a01b0392831690811782555f908152601360205260409020805460ff191660019081179091559054610c3a9216906109af565b610c66307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d5f19610dcc565b305f818152600f60205260408120546001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169263f305d7199247929080610cbb5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610d21573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610d469190611bd1565b505050565b5f546001600160a01b03163314610d745760405162461bcd60e51b815260040161051290611a17565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e2e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610512565b6001600160a01b038216610e8f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610512565b6001600160a01b038381165f8181526010602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610f535760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610512565b6001600160a01b038216610fb55760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610512565b5f81116110165760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610512565b600e5462010000900460ff1615801561106957505f546001600160a01b0384811691161480159061105057506001600160a01b0383163014155b801561106957505f546001600160a01b03838116911614155b156110ac5760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b6044820152606401610512565b6001600160a01b0383165f9081526013602052604081205460ff16806110e957506001600160a01b0383165f9081526013602052604090205460ff165b801561110257506005546001600160a01b038581169116145b600e54909150610100900460ff16156113bd575f546001600160a01b0385811691161480159061113f57505f546001600160a01b03848116911614155b801561115357506001600160a01b03831615155b801561116a57506001600160a01b03831661dead14155b80156111795750600e5460ff16155b156113bd576001600160a01b0384165f9081526013602052604090205460ff1680156111bd57506001600160a01b0383165f9081526012602052604090205460ff16155b15611290576001548211156112225760405162461bcd60e51b815260206004820152602560248201527f427579207472616e7366657220616d6f756e74206578636565647320746865206044820152640dac2f0a8f60db1b6064820152608401610512565b6002546001600160a01b0384165f908152600f60205260409020546112479084611bfc565b111561128b5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610512565b6113bd565b6001600160a01b0383165f9081526013602052604090205460ff1680156112cf57506001600160a01b0384165f9081526012602052604090205460ff16155b156113355760015482111561128b5760405162461bcd60e51b815260206004820152602660248201527f53656c6c207472616e7366657220616d6f756e74206578636565647320746865604482015265040dac2f0a8f60d31b6064820152608401610512565b6001600160a01b0383165f9081526012602052604090205460ff166113bd576002546001600160a01b0384165f908152600f60205260409020546113799084611bfc565b11156113bd5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610512565b600354305f908152600f60205260409020541080159081906113e25750600e5460ff16155b801561140657506001600160a01b0384165f9081526013602052604090205460ff16155b801561142a57506001600160a01b0385165f9081526011602052604090205460ff16155b801561144e57506001600160a01b0384165f9081526011602052604090205460ff16155b1561147357600e805460ff1916600117905561146861171b565b600e805460ff191690555b600e5462010000900460ff1680156114a257506001600160a01b0384165f9081526013602052604090205460ff165b156114b0576114b047611899565b600e546001600160a01b0386165f9081526011602052604090205460ff918216159116806114f557506001600160a01b0385165f9081526011602052604090205460ff165b156114fd57505f5b5f81156115bc576001600160a01b0386165f9081526013602052604090205460ff1615611558576064600b54600d54116115395760075461153d565b6009545b6115479087611b4e565b6115519190611b7c565b90506115bc565b6001600160a01b0387165f9081526013602052604090205460ff16156115bc576064600a54600d541161158d57600654611591565b6008545b61159b9087611b4e565b6115a59190611b7c565b600d80549192505f6115b683611c0f565b91905055505b6001600160a01b0387165f908152600f602052604090205485811015806115e05750845b61163b5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610512565b81156116a8576001600160a01b0388165f818152600f602090815260408083208054879003905530808452928190208054870190555185815298859003989192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35b6001600160a01b038089165f818152600f602052604080822080548b90039055928a168082529083902080548a01905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611709908a815260200190565b60405180910390a35050505050505050565b6004546040805160028082526060820183525f9260208301908036833701905050905030815f8151811061175157611751611c27565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117f19190611bb6565b8160018151811061180457611804611c27565b6001600160a01b03928316602091820292909201015260405163791ac94760e01b81527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d9091169063791ac947906118689085905f90869030904290600401611c3b565b5f604051808303815f87803b15801561187f575f80fd5b505af1158015611891573d5f803e3d5ffd5b505050505050565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f193505050501580156118d0573d5f803e3d5ffd5b5050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146105d1575f80fd5b5f806040838503121561192e575f80fd5b823561193981611909565b946020939093013593505050565b80151581146105d1575f80fd5b5f8060408385031215611965575f80fd5b823561197081611909565b9150602083013561198081611947565b809150509250929050565b5f805f6060848603121561199d575f80fd5b83356119a881611909565b925060208401356119b881611909565b929592945050506040919091013590565b5f602082840312156119d9575f80fd5b81356119e481611909565b9392505050565b5f80604083850312156119fc575f80fd5b8235611a0781611909565b9150602083013561198081611909565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115611a9a57815f1904821115611a8057611a80611a4c565b80851615611a8d57918102915b93841c9390800290611a65565b509250929050565b5f82611ab0575060016104e3565b81611abc57505f6104e3565b8160018114611ad25760028114611adc57611af8565b60019150506104e3565b60ff841115611aed57611aed611a4c565b50506001821b6104e3565b5060208310610133831016604e8410600b8410161715611b1b575081810a6104e3565b611b258383611a60565b805f1904821115611b3857611b38611a4c565b029392505050565b5f6119e460ff841683611aa2565b80820281158282048414176104e3576104e3611a4c565b5f60208284031215611b75575f80fd5b5051919050565b5f82611b9657634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215611bab575f80fd5b81516119e481611947565b5f60208284031215611bc6575f80fd5b81516119e481611909565b5f805f60608486031215611be3575f80fd5b8351925060208401519150604084015190509250925092565b808201808211156104e3576104e3611a4c565b5f60018201611c2057611c20611a4c565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b81811015611c8b5784516001600160a01b031683529383019391830191600101611c66565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212207c2bf23c5018ed61b15ed36ebf8c6128664e744eeca477656950e3b8a72f6ba964736f6c63430008190033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000003047a804563fd304ab0258d7ecd9c6098ead26570000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d000000000000000000000000aec394b5f6dc1bb1ebcf280edc9e5746241d4943
-----Decoded View---------------
Arg [0] : owner_ (address): 0x3047a804563fD304ab0258D7EcD9c6098ead2657
Arg [1] : router_ (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [2] : revWallet_ (address): 0xaec394b5f6dc1Bb1EbCF280Edc9e5746241D4943
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000003047a804563fd304ab0258d7ecd9c6098ead2657
Arg [1] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [2] : 000000000000000000000000aec394b5f6dc1bb1ebcf280edc9e5746241d4943
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.