More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 36 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 17980627 | 378 days ago | IN | 0 ETH | 0.00090129 | ||||
Approve | 17980233 | 378 days ago | IN | 0 ETH | 0.00144186 | ||||
Approve | 17980025 | 378 days ago | IN | 0 ETH | 0.00147846 | ||||
Approve | 17980014 | 378 days ago | IN | 0 ETH | 0.0013844 | ||||
Approve | 17980010 | 378 days ago | IN | 0 ETH | 0.00144284 | ||||
Approve | 17979950 | 378 days ago | IN | 0 ETH | 0.00105419 | ||||
Approve | 17979949 | 378 days ago | IN | 0 ETH | 0.00120031 | ||||
Approve | 17979908 | 378 days ago | IN | 0 ETH | 0.00130466 | ||||
Approve | 17979897 | 378 days ago | IN | 0 ETH | 0.00126099 | ||||
Transfer | 17979893 | 378 days ago | IN | 0 ETH | 0.01353 | ||||
Approve | 17979856 | 378 days ago | IN | 0 ETH | 0.00110877 | ||||
Approve | 17979836 | 378 days ago | IN | 0 ETH | 0.00179613 | ||||
Approve | 17979836 | 378 days ago | IN | 0 ETH | 0.00179613 | ||||
Approve | 17979836 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979836 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979836 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979836 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979835 | 378 days ago | IN | 0 ETH | 0.00169296 | ||||
Approve | 17979835 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979835 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979835 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979835 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979835 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979835 | 378 days ago | IN | 0 ETH | 0.0017129 | ||||
Approve | 17979835 | 378 days ago | IN | 0 ETH | 0.0017129 |
Loading...
Loading
Contract Name:
HAMBURGER
Compiler Version
v0.8.21+commit.d9974bed
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-23 */ /** Welcome to Sonic The $Hamburger! Get ready for a new flavor of meme token with Sonic the Hamburger! He's as fast to the moon as a blue hedgehog chasing golden rings, now with his strength boosted by the flavor of $Hamburger. Website: http://sonicthehotdog.xyz Telegram: https://t.me/SonicTheHamburger Twitter: https://twitter.com/hamburger_sonic */ // SPDX-License-Identifier: Unlicensed pragma solidity 0.8.21; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } 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 ); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } contract HAMBURGER is IERC20, Context, Ownable { using SafeMath for uint256; string private constant _name = "Sonic The Hamburger"; string private constant _symbol = "HAMBURGER"; mapping(address => uint256) private _rOwned; mapping(address => uint256) private _tOwned; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFees; //Original Fee uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _redisFeeOnBuy = 0; uint256 private _redisFeeOnSell = 0; uint256 private _redisFee = _redisFeeOnSell; uint256 private _taxFee = _sellFee; uint256 private _tFeeTotal; uint256 private _buyFee = 1; uint256 private _sellFee = 1; uint256 private _prevRedisFee = _redisFee; uint256 private _prevTaxFee = _taxFee; address payable private _development = payable(msg.sender); address payable private _marketingWallet = payable(msg.sender); uint8 private constant _decimals = 9; uint256 private constant MAX = 10 ** 30; uint256 private constant _tTotal = 1000000000 * 10 ** 9; uint256 public _maxTx = 3 * 10000000 * 10 ** 9; uint256 public _maxHolding = 3 * 10000000 * 10 ** 9; uint256 public _swapTokensAtAmount = 5 * 1000000 * 10 ** 9; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool private swapping = false; bool private feeSwapEnabled = true; event MaxTxAmountUpdated(uint256 _maxTx); modifier lockTheSwap { swapping = true; _; swapping = false; } constructor() { _rOwned[_msgSender()] = _rTotal; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Router = _uniswapV2Router; uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); _isExcludedFromFees[_development] = true; _isExcludedFromFees[_marketingWallet] = true; _isExcludedFromFees[owner()] = true; _isExcludedFromFees[address(this)] = true; emit Transfer(address(0), _msgSender(), _tTotal); } 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 override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return tokenFromReflection(_rOwned[account]); } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } function removeAllFee() private { if (_redisFee == 0 && _taxFee == 0) return; _prevRedisFee = _redisFee; _prevTaxFee = _taxFee; _tFeeTotal = 0; _redisFee = 0; _taxFee = 0; } 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 from, address to, uint256 amount ) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (from != owner() && to != owner()) { //Trade start check require(amount <= _maxTx, "TOKEN: Max Transaction Limit"); if(to != uniswapV2Pair) { require(balanceOf(to) + amount < _maxHolding, "TOKEN: Balance exceeds wallet size!"); } uint256 contractTokenBalance = balanceOf(address(this)); bool canSwap = contractTokenBalance >= _swapTokensAtAmount; if(contractTokenBalance >= _maxTx) { contractTokenBalance = _maxTx; } if (canSwap && !swapping && from != uniswapV2Pair && feeSwapEnabled && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendFeeToDevelopment(address(this).balance); } } } bool takeFee = true; //Transfer Tokens if ((_isExcludedFromFees[from] || _isExcludedFromFees[to])) { takeFee = false; } else { //Set Fee for Buys if(from == uniswapV2Pair && to != address(uniswapV2Router)) { _redisFee = _redisFeeOnBuy; _taxFee = _buyFee; } //Set Fee for Sells if (to == uniswapV2Pair && from != address(uniswapV2Router)) { _redisFee = _redisFeeOnSell; _taxFee = _sellFee; } } _tokenTransfer(from, to, amount, takeFee); } function removeLimits() public onlyOwner { _maxTx = type(uint).max; _maxHolding = type(uint).max; } function restoreAllFee() private { _redisFee = _prevRedisFee; _taxFee = _prevTaxFee; _tFeeTotal = 100; } function withdrawStuckETH() external { require(_msgSender() == _development || _msgSender() == _marketingWallet); uint256 contractETHBalance = address(this).balance; sendFeeToDevelopment(contractETHBalance); } function _tokenTransfer( address sender, address recipient, uint256 amount, bool takeFee ) private { if (!takeFee) removeAllFee(); _transferStandard(sender, recipient, amount); if (!takeFee) restoreAllFee(); } //Set minimum tokens required to swap. function setSwapTokensAtAmount(uint256 swapTokensAtAmount) public onlyOwner { _swapTokensAtAmount = swapTokensAtAmount; } function _getRate() private view returns (uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function tokenFromReflection(uint256 rAmount) private view returns (uint256) { uint256 currentRate = _getRate(); return rAmount.div(currentRate); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); } function _transferStandard( address sender, address recipient, uint256 tAmount ) private { ( uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam ) = _getValues(tAmount); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _getCurrentSupply() private view returns (uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } function _getTValues( uint256 tAmount, uint256 redisFee, uint256 taxFee ) private pure returns ( uint256, uint256, uint256 ) { uint256 tFee = tAmount.mul(redisFee).div(100); uint256 tTeam = tAmount.mul(taxFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); require(tokenAmount < _swapTokensAtAmount * 4); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function sendFeeToDevelopment(uint256 amount) private { _development.transfer(amount); } function _getRValues( uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate ) private view returns ( uint256, uint256, uint256 ) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTeam = tTeam.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam); if (_tFeeTotal == 0 && tAmount > _tTotal) { rAmount = 0; } return (rAmount, rTransferAmount, rFee); } function _getValues(uint256 tAmount) private view returns ( uint256, uint256, uint256, uint256, uint256, uint256 ) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _redisFee, _taxFee); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"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":false,"internalType":"uint256","name":"_maxTx","type":"uint256"}],"name":"MaxTxAmountUpdated","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":"_maxHolding","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTx","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"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":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setSwapTokensAtAmount","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"},{"inputs":[],"name":"withdrawStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405262000025670de0b6b3a76400006c0c9f2c9cd04674edea40000000620003ae565b6200003e906c0c9f2c9cd04674edea40000000620003ce565b6006555f600781905560088190556009819055600d8054600a8190556001600c819055909155600e91909155600f55601080546001600160a01b031990811633908117909255601180549091169091179055666a94d74f43000060128190556013556611c37937e080006014556016805461ffff60a01b1916600160a81b179055348015620000cb575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600654335f9081526002602090815260409182902092909255601580546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b815291519092839263c45a015592600480830193928290030181865afa15801562000185573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001ab9190620003f4565b6001600160a01b031663c9c653963060155f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200020b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002319190620003f4565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156200027c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002a29190620003f4565b601680546001600160a01b0319166001600160a01b0392831617905560105481165f908152600560208190526040808320805460ff199081166001908117909255601154909516845290832080549094168117909355906200030b5f546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081015f908120805494151560ff199586161790553081526005909252902080549091166001179055620003523390565b6001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef670de0b6b3a76400006040516200039f91815260200190565b60405180910390a35062000423565b5f82620003c957634e487b7160e01b5f52601260045260245ffd5b500690565b81810381811115620003ee57634e487b7160e01b5f52601160045260245ffd5b92915050565b5f6020828403121562000405575f80fd5b81516001600160a01b03811681146200041c575f80fd5b9392505050565b61152f80620004315f395ff3fe60806040526004361061011e575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb1461032e578063afa4f3b21461034d578063dd62ed3e1461036c578063f2fde38b146103b0578063f5648a4f146103cf575f80fd5b8063751039fc146102a35780637830b072146102b75780637c100a40146102cc5780638da5cb5b146102e157806395d89b41146102fd575f80fd5b80632fd689e3116100e35780632fd689e31461021f578063313ce5671461023457806349bd5a5e1461024f57806370a082311461026e578063715018a61461028d575f80fd5b806306fdde0314610129578063095ea7b3146101765780631694505e146101a557806318160ddd146101dc57806323b872dd14610200575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152601381527229b7b734b1902a3432902430b6b13ab933b2b960691b60208201525b60405161016d919061125e565b60405180910390f35b348015610181575f80fd5b506101956101903660046112bd565b6103e3565b604051901515815260200161016d565b3480156101b0575f80fd5b506015546101c4906001600160a01b031681565b6040516001600160a01b03909116815260200161016d565b3480156101e7575f80fd5b50670de0b6b3a76400005b60405190815260200161016d565b34801561020b575f80fd5b5061019561021a3660046112e7565b6103f9565b34801561022a575f80fd5b506101f260145481565b34801561023f575f80fd5b506040516009815260200161016d565b34801561025a575f80fd5b506016546101c4906001600160a01b031681565b348015610279575f80fd5b506101f2610288366004611325565b610460565b348015610298575f80fd5b506102a1610481565b005b3480156102ae575f80fd5b506102a16104fb565b3480156102c2575f80fd5b506101f260125481565b3480156102d7575f80fd5b506101f260135481565b3480156102ec575f80fd5b505f546001600160a01b03166101c4565b348015610308575f80fd5b506040805180820190915260098152682420a6a12aa923a2a960b91b6020820152610160565b348015610339575f80fd5b506101956103483660046112bd565b610530565b348015610358575f80fd5b506102a1610367366004611340565b61053c565b348015610377575f80fd5b506101f2610386366004611357565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b3480156103bb575f80fd5b506102a16103ca366004611325565b61056a565b3480156103da575f80fd5b506102a1610651565b5f6103ef33848461069b565b5060015b92915050565b5f6104058484846107be565b6104568433610451856040518060600160405280602881526020016114d2602891396001600160a01b038a165f9081526004602090815260408083203384529091529020549190610b97565b61069b565b5060019392505050565b6001600160a01b0381165f908152600260205260408120546103f390610bcf565b5f546001600160a01b031633146104b35760405162461bcd60e51b81526004016104aa9061138e565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105245760405162461bcd60e51b81526004016104aa9061138e565b5f196012819055601355565b5f6103ef3384846107be565b5f546001600160a01b031633146105655760405162461bcd60e51b81526004016104aa9061138e565b601455565b5f546001600160a01b031633146105935760405162461bcd60e51b81526004016104aa9061138e565b6001600160a01b0381166105f85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104aa565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6010546001600160a01b0316336001600160a01b0316148061068657506011546001600160a01b0316336001600160a01b0316145b61068e575f80fd5b4761069881610bec565b50565b6001600160a01b0383166106fd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104aa565b6001600160a01b03821661075e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104aa565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108225760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104aa565b6001600160a01b0382166108845760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104aa565b5f81116108e55760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104aa565b5f546001600160a01b0384811691161480159061090f57505f546001600160a01b03838116911614155b15610abf576012548111156109665760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016104aa565b6016546001600160a01b038381169116146109eb576013548161098884610460565b61099291906113d7565b106109eb5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016104aa565b5f6109f530610460565b601454601254919250821015908210610a0e5760125491505b808015610a255750601654600160a01b900460ff16155b8015610a3f57506016546001600160a01b03868116911614155b8015610a545750601654600160a81b900460ff165b8015610a7857506001600160a01b0385165f9081526005602052604090205460ff16155b8015610a9c57506001600160a01b0384165f9081526005602052604090205460ff16155b15610abc57610aaa82610c27565b478015610aba57610aba47610bec565b505b50505b6001600160a01b0383165f9081526005602052604090205460019060ff1680610aff57506001600160a01b0383165f9081526005602052604090205460ff165b15610b0b57505f610b85565b6016546001600160a01b038581169116148015610b3657506015546001600160a01b03848116911614155b15610b4857600754600955600c54600a555b6016546001600160a01b038481169116148015610b7357506015546001600160a01b03858116911614155b15610b8557600854600955600d54600a555b610b9184848484610daf565b50505050565b5f8184841115610bba5760405162461bcd60e51b81526004016104aa919061125e565b505f610bc684866113ea565b95945050505050565b5f80610bd9610de2565b9050610be58382610e03565b9392505050565b6010546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610c23573d5f803e3d5ffd5b5050565b6016805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610c6d57610c6d6113fd565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610cc4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce89190611411565b81600181518110610cfb57610cfb6113fd565b6001600160a01b039283166020918202929092010152601554610d21913091168461069b565b601454610d2f90600461142c565b8210610d39575f80fd5b60155460405163791ac94760e01b81526001600160a01b039091169063791ac94790610d719085905f90869030904290600401611443565b5f604051808303815f87803b158015610d88575f80fd5b505af1158015610d9a573d5f803e3d5ffd5b50506016805460ff60a01b1916905550505050565b80610dbc57610dbc610e44565b610dc7848484610e76565b80610b9157610b91600e54600955600f54600a556064600b55565b5f805f610ded610f67565b9092509050610dfc8282610e03565b9250505090565b5f610be583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610fa6565b600954158015610e545750600a54155b15610e5b57565b60098054600e55600a8054600f555f600b8190559182905555565b5f805f805f80610e8587610fd2565b6001600160a01b038f165f90815260026020526040902054959b50939950919750955093509150610eb69087611027565b6001600160a01b03808b165f9081526002602052604080822093909355908a1681522054610ee49086611068565b6001600160a01b0389165f90815260026020526040902055610f05816110c6565b610f0f848361110c565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610f5491815260200190565b60405180910390a3505050505050505050565b6006545f908190670de0b6b3a7640000610f818282610e03565b821015610f9d57505060065492670de0b6b3a764000092509050565b90939092509050565b5f8183610fc65760405162461bcd60e51b81526004016104aa919061125e565b505f610bc684866114b2565b5f805f805f805f805f610fea8a600954600a54611120565b9250925092505f610ff9610de2565b90505f805f61100a8e878787611172565b919e509c509a509598509396509194505050505091939550919395565b5f610be583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b97565b5f8061107483856113d7565b905083811015610be55760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104aa565b5f6110cf610de2565b90505f6110dc83836111e0565b305f908152600260205260409020549091506110f89082611068565b305f90815260026020526040902055505050565b6006546111199083611027565b6006555050565b5f808080611139606461113389896111e0565b90610e03565b90505f61114b60646111338a896111e0565b90505f6111628261115c8b86611027565b90611027565b9992985090965090945050505050565b5f80808061118088866111e0565b90505f61118d88876111e0565b90505f61119a88886111e0565b90505f6111ab8261115c8686611027565b9050600b545f1480156111c55750670de0b6b3a76400008b115b156111ce575f93505b929a9299509097509095505050505050565b5f825f036111ef57505f6103f3565b5f6111fa838561142c565b90508261120785836114b2565b14610be55760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104aa565b5f6020808352835180828501525f5b818110156112895785810183015185820160400152820161126d565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610698575f80fd5b5f80604083850312156112ce575f80fd5b82356112d9816112a9565b946020939093013593505050565b5f805f606084860312156112f9575f80fd5b8335611304816112a9565b92506020840135611314816112a9565b929592945050506040919091013590565b5f60208284031215611335575f80fd5b8135610be5816112a9565b5f60208284031215611350575f80fd5b5035919050565b5f8060408385031215611368575f80fd5b8235611373816112a9565b91506020830135611383816112a9565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b808201808211156103f3576103f36113c3565b818103818111156103f3576103f36113c3565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611421575f80fd5b8151610be5816112a9565b80820281158282048414176103f3576103f36113c3565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156114915784516001600160a01b03168352938301939183019160010161146c565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826114cc57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122022d069b496d23ad206fda8ad44732cb3a801ddaaba5fb227b91eed96474722db64736f6c63430008150033
Deployed Bytecode
0x60806040526004361061011e575f3560e01c8063751039fc1161009d578063a9059cbb11610062578063a9059cbb1461032e578063afa4f3b21461034d578063dd62ed3e1461036c578063f2fde38b146103b0578063f5648a4f146103cf575f80fd5b8063751039fc146102a35780637830b072146102b75780637c100a40146102cc5780638da5cb5b146102e157806395d89b41146102fd575f80fd5b80632fd689e3116100e35780632fd689e31461021f578063313ce5671461023457806349bd5a5e1461024f57806370a082311461026e578063715018a61461028d575f80fd5b806306fdde0314610129578063095ea7b3146101765780631694505e146101a557806318160ddd146101dc57806323b872dd14610200575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5060408051808201909152601381527229b7b734b1902a3432902430b6b13ab933b2b960691b60208201525b60405161016d919061125e565b60405180910390f35b348015610181575f80fd5b506101956101903660046112bd565b6103e3565b604051901515815260200161016d565b3480156101b0575f80fd5b506015546101c4906001600160a01b031681565b6040516001600160a01b03909116815260200161016d565b3480156101e7575f80fd5b50670de0b6b3a76400005b60405190815260200161016d565b34801561020b575f80fd5b5061019561021a3660046112e7565b6103f9565b34801561022a575f80fd5b506101f260145481565b34801561023f575f80fd5b506040516009815260200161016d565b34801561025a575f80fd5b506016546101c4906001600160a01b031681565b348015610279575f80fd5b506101f2610288366004611325565b610460565b348015610298575f80fd5b506102a1610481565b005b3480156102ae575f80fd5b506102a16104fb565b3480156102c2575f80fd5b506101f260125481565b3480156102d7575f80fd5b506101f260135481565b3480156102ec575f80fd5b505f546001600160a01b03166101c4565b348015610308575f80fd5b506040805180820190915260098152682420a6a12aa923a2a960b91b6020820152610160565b348015610339575f80fd5b506101956103483660046112bd565b610530565b348015610358575f80fd5b506102a1610367366004611340565b61053c565b348015610377575f80fd5b506101f2610386366004611357565b6001600160a01b039182165f90815260046020908152604080832093909416825291909152205490565b3480156103bb575f80fd5b506102a16103ca366004611325565b61056a565b3480156103da575f80fd5b506102a1610651565b5f6103ef33848461069b565b5060015b92915050565b5f6104058484846107be565b6104568433610451856040518060600160405280602881526020016114d2602891396001600160a01b038a165f9081526004602090815260408083203384529091529020549190610b97565b61069b565b5060019392505050565b6001600160a01b0381165f908152600260205260408120546103f390610bcf565b5f546001600160a01b031633146104b35760405162461bcd60e51b81526004016104aa9061138e565b60405180910390fd5b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105245760405162461bcd60e51b81526004016104aa9061138e565b5f196012819055601355565b5f6103ef3384846107be565b5f546001600160a01b031633146105655760405162461bcd60e51b81526004016104aa9061138e565b601455565b5f546001600160a01b031633146105935760405162461bcd60e51b81526004016104aa9061138e565b6001600160a01b0381166105f85760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016104aa565b5f80546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a35f80546001600160a01b0319166001600160a01b0392909216919091179055565b6010546001600160a01b0316336001600160a01b0316148061068657506011546001600160a01b0316336001600160a01b0316145b61068e575f80fd5b4761069881610bec565b50565b6001600160a01b0383166106fd5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104aa565b6001600160a01b03821661075e5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104aa565b6001600160a01b038381165f8181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108225760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104aa565b6001600160a01b0382166108845760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104aa565b5f81116108e55760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104aa565b5f546001600160a01b0384811691161480159061090f57505f546001600160a01b03838116911614155b15610abf576012548111156109665760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d69740000000060448201526064016104aa565b6016546001600160a01b038381169116146109eb576013548161098884610460565b61099291906113d7565b106109eb5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b60648201526084016104aa565b5f6109f530610460565b601454601254919250821015908210610a0e5760125491505b808015610a255750601654600160a01b900460ff16155b8015610a3f57506016546001600160a01b03868116911614155b8015610a545750601654600160a81b900460ff165b8015610a7857506001600160a01b0385165f9081526005602052604090205460ff16155b8015610a9c57506001600160a01b0384165f9081526005602052604090205460ff16155b15610abc57610aaa82610c27565b478015610aba57610aba47610bec565b505b50505b6001600160a01b0383165f9081526005602052604090205460019060ff1680610aff57506001600160a01b0383165f9081526005602052604090205460ff165b15610b0b57505f610b85565b6016546001600160a01b038581169116148015610b3657506015546001600160a01b03848116911614155b15610b4857600754600955600c54600a555b6016546001600160a01b038481169116148015610b7357506015546001600160a01b03858116911614155b15610b8557600854600955600d54600a555b610b9184848484610daf565b50505050565b5f8184841115610bba5760405162461bcd60e51b81526004016104aa919061125e565b505f610bc684866113ea565b95945050505050565b5f80610bd9610de2565b9050610be58382610e03565b9392505050565b6010546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610c23573d5f803e3d5ffd5b5050565b6016805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610c6d57610c6d6113fd565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610cc4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce89190611411565b81600181518110610cfb57610cfb6113fd565b6001600160a01b039283166020918202929092010152601554610d21913091168461069b565b601454610d2f90600461142c565b8210610d39575f80fd5b60155460405163791ac94760e01b81526001600160a01b039091169063791ac94790610d719085905f90869030904290600401611443565b5f604051808303815f87803b158015610d88575f80fd5b505af1158015610d9a573d5f803e3d5ffd5b50506016805460ff60a01b1916905550505050565b80610dbc57610dbc610e44565b610dc7848484610e76565b80610b9157610b91600e54600955600f54600a556064600b55565b5f805f610ded610f67565b9092509050610dfc8282610e03565b9250505090565b5f610be583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610fa6565b600954158015610e545750600a54155b15610e5b57565b60098054600e55600a8054600f555f600b8190559182905555565b5f805f805f80610e8587610fd2565b6001600160a01b038f165f90815260026020526040902054959b50939950919750955093509150610eb69087611027565b6001600160a01b03808b165f9081526002602052604080822093909355908a1681522054610ee49086611068565b6001600160a01b0389165f90815260026020526040902055610f05816110c6565b610f0f848361110c565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610f5491815260200190565b60405180910390a3505050505050505050565b6006545f908190670de0b6b3a7640000610f818282610e03565b821015610f9d57505060065492670de0b6b3a764000092509050565b90939092509050565b5f8183610fc65760405162461bcd60e51b81526004016104aa919061125e565b505f610bc684866114b2565b5f805f805f805f805f610fea8a600954600a54611120565b9250925092505f610ff9610de2565b90505f805f61100a8e878787611172565b919e509c509a509598509396509194505050505091939550919395565b5f610be583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b97565b5f8061107483856113d7565b905083811015610be55760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104aa565b5f6110cf610de2565b90505f6110dc83836111e0565b305f908152600260205260409020549091506110f89082611068565b305f90815260026020526040902055505050565b6006546111199083611027565b6006555050565b5f808080611139606461113389896111e0565b90610e03565b90505f61114b60646111338a896111e0565b90505f6111628261115c8b86611027565b90611027565b9992985090965090945050505050565b5f80808061118088866111e0565b90505f61118d88876111e0565b90505f61119a88886111e0565b90505f6111ab8261115c8686611027565b9050600b545f1480156111c55750670de0b6b3a76400008b115b156111ce575f93505b929a9299509097509095505050505050565b5f825f036111ef57505f6103f3565b5f6111fa838561142c565b90508261120785836114b2565b14610be55760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104aa565b5f6020808352835180828501525f5b818110156112895785810183015185820160400152820161126d565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610698575f80fd5b5f80604083850312156112ce575f80fd5b82356112d9816112a9565b946020939093013593505050565b5f805f606084860312156112f9575f80fd5b8335611304816112a9565b92506020840135611314816112a9565b929592945050506040919091013590565b5f60208284031215611335575f80fd5b8135610be5816112a9565b5f60208284031215611350575f80fd5b5035919050565b5f8060408385031215611368575f80fd5b8235611373816112a9565b91506020830135611383816112a9565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b808201808211156103f3576103f36113c3565b818103818111156103f3576103f36113c3565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611421575f80fd5b8151610be5816112a9565b80820281158282048414176103f3576103f36113c3565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156114915784516001600160a01b03168352938301939183019160010161146c565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826114cc57634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122022d069b496d23ad206fda8ad44732cb3a801ddaaba5fb227b91eed96474722db64736f6c63430008150033
Deployed Bytecode Sourcemap
4457:11578:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6757:83;;;;;;;;;;-1:-1:-1;6827:5:0;;;;;;;;;;;;-1:-1:-1;;;6827:5:0;;;;6757:83;;;;;;;:::i;:::-;;;;;;;;7689:193;;;;;;;;;;-1:-1:-1;7689:193:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;7689:193:0;1023:187:1;5821:41:0;;;;;;;;;;-1:-1:-1;5821:41:0;;;;-1:-1:-1;;;;;5821:41:0;;;;;;-1:-1:-1;;;;;1405:32:1;;;1387:51;;1375:2;1360:18;5821:41:0;1215:229:1;7037:95:0;;;;;;;;;;-1:-1:-1;5615:20:0;7037:95;;;1595:25:1;;;1583:2;1568:18;7037:95:0;1449:177:1;7891:446:0;;;;;;;;;;-1:-1:-1;7891:446:0;;;;;:::i;:::-;;:::i;5753:58::-;;;;;;;;;;;;;;;;6945:83;;;;;;;;;;-1:-1:-1;6945:83:0;;5526:1;2234:36:1;;2222:2;2207:18;6945:83:0;2092:184:1;5869:28:0;;;;;;;;;;-1:-1:-1;5869:28:0;;;;-1:-1:-1;;;;;5869:28:0;;;7141:138;;;;;;;;;;-1:-1:-1;7141:138:0;;;;;:::i;:::-;;:::i;3149:148::-;;;;;;;;;;;;;:::i;:::-;;11008:122;;;;;;;;;;;;;:::i;5642:46::-;;;;;;;;;;;;;;;;5695:51;;;;;;;;;;;;;;;;2933:79;;;;;;;;;;-1:-1:-1;2971:7:0;2998:6;-1:-1:-1;;;;;2998:6:0;2933:79;;6849:87;;;;;;;;;;-1:-1:-1;6921:7:0;;;;;;;;;;;;-1:-1:-1;;;6921:7:0;;;;6849:87;;7288:199;;;;;;;;;;-1:-1:-1;7288:199:0;;;;;:::i;:::-;;:::i;11869:135::-;;;;;;;;;;-1:-1:-1;11869:135:0;;;;;:::i;:::-;;:::i;7496:184::-;;;;;;;;;;-1:-1:-1;7496:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;7645:18:0;;;7613:7;7645:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7496:184;3306:244;;;;;;;;;;-1:-1:-1;3306:244:0;;;;;:::i;:::-;;:::i;11284:241::-;;;;;;;;;;;;;:::i;7689:193::-;7791:4;7813:39;2525:10;7836:7;7845:6;7813:8;:39::i;:::-;-1:-1:-1;7870:4:0;7689:193;;;;;:::o;7891:446::-;8023:4;8040:36;8050:6;8058:9;8069:6;8040:9;:36::i;:::-;8087:220;8110:6;2525:10;8158:138;8214:6;8158:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8158:19:0;;;;;;:11;:19;;;;;;;;2525:10;8158:33;;;;;;;;;;:37;:138::i;:::-;8087:8;:220::i;:::-;-1:-1:-1;8325:4:0;7891:446;;;;;:::o;7141:138::-;-1:-1:-1;;;;;7254:16:0;;7207:7;7254:16;;;:7;:16;;;;;;7234:37;;:19;:37::i;3149:148::-;3061:6;;-1:-1:-1;;;;;3061:6:0;2525:10;3061:22;3053:67;;;;-1:-1:-1;;;3053:67:0;;;;;;;:::i;:::-;;;;;;;;;3256:1:::1;3240:6:::0;;3219:40:::1;::::0;-1:-1:-1;;;;;3240:6:0;;::::1;::::0;3219:40:::1;::::0;3256:1;;3219:40:::1;3287:1;3270:19:::0;;-1:-1:-1;;;;;;3270:19:0::1;::::0;;3149:148::o;11008:122::-;3061:6;;-1:-1:-1;;;;;3061:6:0;2525:10;3061:22;3053:67;;;;-1:-1:-1;;;3053:67:0;;;;;;;:::i;:::-;-1:-1:-1;;11060:6:0::1;:23:::0;;;11094:11:::1;:28:::0;11008:122::o;7288:199::-;7393:4;7415:42;2525:10;7439:9;7450:6;7415:9;:42::i;11869:135::-;3061:6;;-1:-1:-1;;;;;3061:6:0;2525:10;3061:22;3053:67;;;;-1:-1:-1;;;3053:67:0;;;;;;;:::i;:::-;11956:19:::1;:40:::0;11869:135::o;3306:244::-;3061:6;;-1:-1:-1;;;;;3061:6:0;2525:10;3061:22;3053:67;;;;-1:-1:-1;;;3053:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3395:22:0;::::1;3387:73;;;::::0;-1:-1:-1;;;3387:73:0;;3882:2:1;3387:73:0::1;::::0;::::1;3864:21:1::0;3921:2;3901:18;;;3894:30;3960:34;3940:18;;;3933:62;-1:-1:-1;;;4011:18:1;;;4004:36;4057:19;;3387:73:0::1;3680:402:1::0;3387:73:0::1;3497:6;::::0;;3476:38:::1;::::0;-1:-1:-1;;;;;3476:38:0;;::::1;::::0;3497:6;::::1;::::0;3476:38:::1;::::0;::::1;3525:6;:17:::0;;-1:-1:-1;;;;;;3525:17:0::1;-1:-1:-1::0;;;;;3525:17:0;;;::::1;::::0;;;::::1;::::0;;3306:244::o;11284:241::-;11356:12;;-1:-1:-1;;;;;11356:12:0;2525:10;-1:-1:-1;;;;;11340:28:0;;:64;;;-1:-1:-1;11388:16:0;;-1:-1:-1;;;;;11388:16:0;2525:10;-1:-1:-1;;;;;11372:32:0;;11340:64;11332:73;;;;;;11445:21;11477:40;11445:21;11477:20;:40::i;:::-;11321:204;11284:241::o;8593:369::-;-1:-1:-1;;;;;8720:19:0;;8712:68;;;;-1:-1:-1;;;8712:68:0;;4289:2:1;8712:68:0;;;4271:21:1;4328:2;4308:18;;;4301:30;4367:34;4347:18;;;4340:62;-1:-1:-1;;;4418:18:1;;;4411:34;4462:19;;8712:68:0;4087:400:1;8712:68:0;-1:-1:-1;;;;;8799:21:0;;8791:68;;;;-1:-1:-1;;;8791:68:0;;4694:2:1;8791:68:0;;;4676:21:1;4733:2;4713:18;;;4706:30;4772:34;4752:18;;;4745:62;-1:-1:-1;;;4823:18:1;;;4816:32;4865:19;;8791:68:0;4492:398:1;8791:68:0;-1:-1:-1;;;;;8870:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8922:32;;1595:25:1;;;8922:32:0;;1568:18:1;8922:32:0;;;;;;;8593:369;;;:::o;8971:2029::-;-1:-1:-1;;;;;9093:18:0;;9085:68;;;;-1:-1:-1;;;9085:68:0;;5097:2:1;9085:68:0;;;5079:21:1;5136:2;5116:18;;;5109:30;5175:34;5155:18;;;5148:62;-1:-1:-1;;;5226:18:1;;;5219:35;5271:19;;9085:68:0;4895:401:1;9085:68:0;-1:-1:-1;;;;;9172:16:0;;9164:64;;;;-1:-1:-1;;;9164:64:0;;5503:2:1;9164:64:0;;;5485:21:1;5542:2;5522:18;;;5515:30;5581:34;5561:18;;;5554:62;-1:-1:-1;;;5632:18:1;;;5625:33;5675:19;;9164:64:0;5301:399:1;9164:64:0;9256:1;9247:6;:10;9239:64;;;;-1:-1:-1;;;9239:64:0;;5907:2:1;9239:64:0;;;5889:21:1;5946:2;5926:18;;;5919:30;5985:34;5965:18;;;5958:62;-1:-1:-1;;;6036:18:1;;;6029:39;6085:19;;9239:64:0;5705:405:1;9239:64:0;2971:7;2998:6;-1:-1:-1;;;;;9321:15:0;;;2998:6;;9321:15;;;;:32;;-1:-1:-1;2971:7:0;2998:6;-1:-1:-1;;;;;9340:13:0;;;2998:6;;9340:13;;9321:32;9317:1012;;;9424:6;;9414;:16;;9406:57;;;;-1:-1:-1;;;9406:57:0;;6317:2:1;9406:57:0;;;6299:21:1;6356:2;6336:18;;;6329:30;6395;6375:18;;;6368:58;6443:18;;9406:57:0;6115:352:1;9406:57:0;9490:13;;-1:-1:-1;;;;;9484:19:0;;;9490:13;;9484:19;9481:143;;9557:11;;9548:6;9532:13;9542:2;9532:9;:13::i;:::-;:22;;;;:::i;:::-;:36;9524:84;;;;-1:-1:-1;;;9524:84:0;;6936:2:1;9524:84:0;;;6918:21:1;6975:2;6955:18;;;6948:30;7014:34;6994:18;;;6987:62;-1:-1:-1;;;7065:18:1;;;7058:33;7108:19;;9524:84:0;6734:399:1;9524:84:0;9641:28;9672:24;9690:4;9672:9;:24::i;:::-;9750:19;;9814:6;;9641:55;;-1:-1:-1;9726:43:0;;;;9790:30;;9787:112;;9877:6;;9854:29;;9787:112;9920:7;:20;;;;-1:-1:-1;9932:8:0;;-1:-1:-1;;;9932:8:0;;;;9931:9;9920:20;:45;;;;-1:-1:-1;9952:13:0;;-1:-1:-1;;;;;9944:21:0;;;9952:13;;9944:21;;9920:45;:63;;;;-1:-1:-1;9969:14:0;;-1:-1:-1;;;9969:14:0;;;;9920:63;:93;;;;-1:-1:-1;;;;;;9988:25:0;;;;;;:19;:25;;;;;;;;9987:26;9920:93;:121;;;;-1:-1:-1;;;;;;10018:23:0;;;;;;:19;:23;;;;;;;;10017:24;9920:121;9916:402;;;10062:38;10079:20;10062:16;:38::i;:::-;10148:21;10193:22;;10189:114;;10240:43;10261:21;10240:20;:43::i;:::-;10043:275;9916:402;9355:974;;9317:1012;-1:-1:-1;;;;;10407:25:0;;10342:12;10407:25;;;:19;:25;;;;;;10357:4;;10407:25;;;:52;;-1:-1:-1;;;;;;10436:23:0;;;;;;:19;:23;;;;;;;;10407:52;10402:536;;;-1:-1:-1;10487:5:0;10402:536;;;10568:13;;-1:-1:-1;;;;;10560:21:0;;;10568:13;;10560:21;:55;;;;-1:-1:-1;10599:15:0;;-1:-1:-1;;;;;10585:30:0;;;10599:15;;10585:30;;10560:55;10557:157;;;10648:14;;10636:9;:26;10691:7;;10681;:17;10557:157;10774:13;;-1:-1:-1;;;;;10768:19:0;;;10774:13;;10768:19;:55;;;;-1:-1:-1;10807:15:0;;-1:-1:-1;;;;;10791:32:0;;;10807:15;;10791:32;;10768:55;10764:160;;;10856:15;;10844:9;:27;10900:8;;10890:7;:18;10764:160;10951:41;10966:4;10972:2;10976:6;10984:7;10951:14;:41::i;:::-;9074:1926;8971:2029;;;:::o;790:224::-;910:7;946:12;938:6;;;;930:29;;;;-1:-1:-1;;;930:29:0;;;;;;;;:::i;:::-;-1:-1:-1;970:9:0;982:5;986:1;982;:5;:::i;:::-;970:17;790:224;-1:-1:-1;;;;;790:224:0:o;12185:202::-;12280:7;12305:19;12327:10;:8;:10::i;:::-;12305:32;-1:-1:-1;12355:24:0;:7;12305:32;12355:11;:24::i;:::-;12348:31;12185:202;-1:-1:-1;;;12185:202:0:o;14638:102::-;14703:12;;:29;;-1:-1:-1;;;;;14703:12:0;;;;:29;;;;;14725:6;;14703:12;:29;:12;:29;14725:6;14703:12;:29;;;;;;;;;;;;;;;;;;;;;14638:102;:::o;14089:540::-;6066:8;:15;;-1:-1:-1;;;;6066:15:0;-1:-1:-1;;;6066:15:0;;;14191:16:::1;::::0;;14205:1:::1;14191:16:::0;;;;;::::1;::::0;;-1:-1:-1;;14191:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;14191:16:0::1;14167:40;;14236:4;14218;14223:1;14218:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14218:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;14262:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;14262:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;14218:7;;14262:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14252:4;14257:1;14252:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;14252:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;14327:15:::1;::::0;14295:62:::1;::::0;14312:4:::1;::::0;14327:15:::1;14345:11:::0;14295:8:::1;:62::i;:::-;14390:19;::::0;:23:::1;::::0;14412:1:::1;14390:23;:::i;:::-;14376:11;:37;14368:46;;;::::0;::::1;;14425:15;::::0;:196:::1;::::0;-1:-1:-1;;;14425:196:0;;-1:-1:-1;;;;;14425:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;14506:11;;14425:15:::1;::::0;14548:4;;14575::::1;::::0;14595:15:::1;::::0;14425:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6104:8:0;:16;;-1:-1:-1;;;;6104:16:0;;;-1:-1:-1;;;;14089:540:0:o;11534:282::-;11690:7;11685:28;;11699:14;:12;:14::i;:::-;11724:44;11742:6;11750:9;11761:6;11724:17;:44::i;:::-;11784:7;11779:29;;11793:15;11195:13;;11183:9;:25;11229:11;;11219:7;:21;11264:3;11251:10;:16;11139:136;12013:164;12055:7;12076:15;12093;12112:19;:17;:19::i;:::-;12075:56;;-1:-1:-1;12075:56:0;-1:-1:-1;12149:20:0;12075:56;;12149:11;:20::i;:::-;12142:27;;;;12013:164;:::o;1278:132::-;1336:7;1363:39;1367:1;1370;1363:39;;;;;;;;;;;;;;;;;:3;:39::i;8346:238::-;8393:9;;:14;:30;;;;-1:-1:-1;8411:7:0;;:12;8393:30;8389:43;;;8346:238::o;8389:43::-;8461:9;;;8445:13;:25;8495:7;;;8481:11;:21;-1:-1:-1;8513:10:0;:14;;;8541:13;;;;8565:11;8346:238::o;12727:610::-;12874:15;12904:23;12942:12;12969:23;13007:12;13034:13;13061:19;13072:7;13061:10;:19::i;:::-;-1:-1:-1;;;;;13109:15:0;;;;;;:7;:15;;;;;;12859:221;;-1:-1:-1;12859:221:0;;-1:-1:-1;12859:221:0;;-1:-1:-1;12859:221:0;-1:-1:-1;12859:221:0;-1:-1:-1;12859:221:0;-1:-1:-1;13109:28:0;;12859:221;13109:19;:28::i;:::-;-1:-1:-1;;;;;13091:15:0;;;;;;;:7;:15;;;;;;:46;;;;13169:18;;;;;;;:39;;13192:15;13169:22;:39::i;:::-;-1:-1:-1;;;;;13148:18:0;;;;;;:7;:18;;;;;:60;13219:16;13229:5;13219:9;:16::i;:::-;13246:23;13258:4;13264;13246:11;:23::i;:::-;13302:9;-1:-1:-1;;;;;13285:44:0;13294:6;-1:-1:-1;;;;;13285:44:0;;13313:15;13285:44;;;;1595:25:1;;1583:2;1568:18;;1449:177;13285:44:0;;;;;;;;12848:489;;;;;;12727:610;;;:::o;13345:257::-;13443:7;;13396;;;;5615:20;13511;13443:7;5615:20;13511:11;:20::i;:::-;13501:7;:30;13497:61;;;-1:-1:-1;;13541:7:0;;;5615:20;;-1:-1:-1;13345:257:0;-1:-1:-1;13345:257:0:o;13497:61::-;13577:7;;13586;;-1:-1:-1;13345:257:0;-1:-1:-1;13345:257:0:o;1419:223::-;1539:7;1574:12;1567:5;1559:28;;;;-1:-1:-1;;;1559:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1598:9:0;1610:5;1614:1;1610;:5;:::i;15380:615::-;15480:7;15502;15524;15546;15568;15590;15626:23;15651:12;15665:13;15695:40;15707:7;15716:9;;15727:7;;15695:11;:40::i;:::-;15625:110;;;;;;15746:19;15768:10;:8;:10::i;:::-;15746:32;;15790:15;15807:23;15832:12;15861:46;15873:7;15882:4;15888:5;15895:11;15861;:46::i;:::-;15789:118;;-1:-1:-1;15789:118:0;-1:-1:-1;15789:118:0;-1:-1:-1;15958:15:0;;-1:-1:-1;15975:4:0;;-1:-1:-1;15981:5:0;;-1:-1:-1;;;;;15380:615:0;;;;;;;:::o;645:136::-;703:7;730:43;734:1;737;730:43;;;;;;;;;;;;;;;;;:3;:43::i;457:179::-;515:7;;547:5;551:1;547;:5;:::i;:::-;535:17;;576:1;571;:6;;563:46;;;;-1:-1:-1;;;563:46:0;;9373:2:1;563:46:0;;;9355:21:1;9412:2;9392:18;;;9385:30;9451:29;9431:18;;;9424:57;9498:18;;563:46:0;9171:351:1;12396:211:0;12449:19;12471:10;:8;:10::i;:::-;12449:32;-1:-1:-1;12492:13:0;12508:22;:5;12449:32;12508:9;:22::i;:::-;12582:4;12566:22;;;;:7;:22;;;;;;12492:38;;-1:-1:-1;12566:33:0;;12492:38;12566:26;:33::i;:::-;12557:4;12541:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;12396:211:0:o;12616:103::-;12694:7;;:17;;12706:4;12694:11;:17::i;:::-;12684:7;:27;-1:-1:-1;;12616:103:0:o;13611:469::-;13780:7;;;;13874:30;13900:3;13874:21;:7;13886:8;13874:11;:21::i;:::-;:25;;:30::i;:::-;13859:45;-1:-1:-1;13915:13:0;13931:28;13955:3;13931:19;:7;13943:6;13931:11;:19::i;:28::-;13915:44;-1:-1:-1;13970:23:0;13996:28;13915:44;13996:17;:7;14008:4;13996:11;:17::i;:::-;:21;;:28::i;:::-;13970:54;14060:4;;-1:-1:-1;14066:5:0;;-1:-1:-1;13611:469:0;;-1:-1:-1;;;;;13611:469:0:o;14749:622::-;14943:7;;;;15040:24;:7;15052:11;15040;:24::i;:::-;15022:42;-1:-1:-1;15075:12:0;15090:21;:4;15099:11;15090:8;:21::i;:::-;15075:36;-1:-1:-1;15122:13:0;15138:22;:5;15148:11;15138:9;:22::i;:::-;15122:38;-1:-1:-1;15171:23:0;15197:28;15122:38;15197:17;:7;15209:4;15197:11;:17::i;:28::-;15171:54;;15240:10;;15254:1;15240:15;:36;;;;;5615:20;15259:7;:17;15240:36;15236:78;;;15301:1;15291:11;;15236:78;15332:7;;;;-1:-1:-1;15358:4:0;;-1:-1:-1;14749:622:0;;-1:-1:-1;;;;;;14749:622:0:o;1023:246::-;1081:7;1105:1;1110;1105:6;1101:47;;-1:-1:-1;1135:1:0;1128:8;;1101:47;1158:9;1170:5;1174:1;1170;:5;:::i;:::-;1158:17;-1:-1:-1;1203:1:0;1194:5;1198:1;1158:17;1194:5;:::i;:::-;:10;1186:56;;;;-1:-1:-1;;;1186:56:0;;9729:2:1;1186:56:0;;;9711:21:1;9768:2;9748:18;;;9741:30;9807:34;9787:18;;;9780:62;-1:-1:-1;;;9858:18:1;;;9851:31;9899:19;;1186:56:0;9527:397:1;14:548;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1631:456::-;1708:6;1716;1724;1777:2;1765:9;1756:7;1752:23;1748:32;1745:52;;;1793:1;1790;1783:12;1745:52;1832:9;1819:23;1851:31;1876:5;1851:31;:::i;:::-;1901:5;-1:-1:-1;1958:2:1;1943:18;;1930:32;1971:33;1930:32;1971:33;:::i;:::-;1631:456;;2023:7;;-1:-1:-1;;;2077:2:1;2062:18;;;;2049:32;;1631:456::o;2489:247::-;2548:6;2601:2;2589:9;2580:7;2576:23;2572:32;2569:52;;;2617:1;2614;2607:12;2569:52;2656:9;2643:23;2675:31;2700:5;2675:31;:::i;2741:180::-;2800:6;2853:2;2841:9;2832:7;2828:23;2824:32;2821:52;;;2869:1;2866;2859:12;2821:52;-1:-1:-1;2892:23:1;;2741:180;-1:-1:-1;2741:180:1:o;2926:388::-;2994:6;3002;3055:2;3043:9;3034:7;3030:23;3026:32;3023:52;;;3071:1;3068;3061:12;3023:52;3110:9;3097:23;3129:31;3154:5;3129:31;:::i;:::-;3179:5;-1:-1:-1;3236:2:1;3221:18;;3208:32;3249:33;3208:32;3249:33;:::i;:::-;3301:7;3291:17;;;2926:388;;;;;:::o;3319:356::-;3521:2;3503:21;;;3540:18;;;3533:30;3599:34;3594:2;3579:18;;3572:62;3666:2;3651:18;;3319:356::o;6472:127::-;6533:10;6528:3;6524:20;6521:1;6514:31;6564:4;6561:1;6554:15;6588:4;6585:1;6578:15;6604:125;6669:9;;;6690:10;;;6687:36;;;6703:18;;:::i;7138:128::-;7205:9;;;7226:11;;;7223:37;;;7240:18;;:::i;7403:127::-;7464:10;7459:3;7455:20;7452:1;7445:31;7495:4;7492:1;7485:15;7519:4;7516:1;7509:15;7535:251;7605:6;7658:2;7646:9;7637:7;7633:23;7629:32;7626:52;;;7674:1;7671;7664:12;7626:52;7706:9;7700:16;7725:31;7750:5;7725:31;:::i;7791:168::-;7864:9;;;7895;;7912:15;;;7906:22;;7892:37;7882:71;;7933:18;;:::i;7964:980::-;8226:4;8274:3;8263:9;8259:19;8305:6;8294:9;8287:25;8331:2;8369:6;8364:2;8353:9;8349:18;8342:34;8412:3;8407:2;8396:9;8392:18;8385:31;8436:6;8471;8465:13;8502:6;8494;8487:22;8540:3;8529:9;8525:19;8518:26;;8579:2;8571:6;8567:15;8553:29;;8600:1;8610:195;8624:6;8621:1;8618:13;8610:195;;;8689:13;;-1:-1:-1;;;;;8685:39:1;8673:52;;8780:15;;;;8745:12;;;;8721:1;8639:9;8610:195;;;-1:-1:-1;;;;;;;8861:32:1;;;;8856:2;8841:18;;8834:60;-1:-1:-1;;;8925:3:1;8910:19;8903:35;8822:3;7964:980;-1:-1:-1;;;7964:980:1:o;8949:217::-;8989:1;9015;9005:132;;9059:10;9054:3;9050:20;9047:1;9040:31;9094:4;9091:1;9084:15;9122:4;9119:1;9112:15;9005:132;-1:-1:-1;9151:9:1;;8949:217::o
Swarm Source
ipfs://22d069b496d23ad206fda8ad44732cb3a801ddaaba5fb227b91eed96474722db
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.