More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 7 from a total of 7 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 18399356 | 522 days ago | IN | 0 ETH | 0.00062577 | ||||
Redeem | 17213668 | 689 days ago | IN | 0 ETH | 0.01530687 | ||||
Approve | 16748574 | 754 days ago | IN | 0 ETH | 0.00125093 | ||||
Redeem | 12608924 | 1385 days ago | IN | 0 ETH | 0.0033116 | ||||
Mint | 12608919 | 1385 days ago | IN | 0 ETH | 0.00504086 | ||||
Mint | 12608916 | 1385 days ago | IN | 0 ETH | 0.0047214 | ||||
Mint | 11899951 | 1494 days ago | IN | 0 ETH | 0.03111688 |
Latest 1 internal transaction
Advanced mode:
Parent Transaction Hash | Method | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|---|
- | 11888273 | 1496 days ago | Contract Creation | 0 ETH |
Loading...
Loading
Contract Name:
Pyrotoken
Compiler Version
v0.7.6+commit.7338295f
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-01-13 */ // File: contracts/openzeppelin/IERC20.sol // SPDX-License-Identifier: MIT pragma solidity ^0.7.6; interface IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function decimals() external returns (uint8); 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 ); } // File: contracts/openzeppelin/SafeMath.sol // SPD: MIT /** * @dev Wrappers over Solidity's arithmetic operations with added overflow * checks. * * Arithmetic operations in Solidity wrap on overflow. This can easily result * in bugs, because programmers usually assume that an overflow raises an * error, which is the standard behavior in high level programming languages. * `SafeMath` restores this intuition by reverting the transaction when an * operation overflows. * * Using this library instead of the unchecked operations eliminates an entire * class of bugs, so it's recommended to use it always. */ library SafeMath { /** * @dev Returns the addition of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } // File: contracts/Pyrotokens/Pyrotoken.sol // SPD: MIT abstract contract LiquidityReceiverFacade{ function drain(address pyroToken) public virtual; } abstract contract ERC20MetaData { function symbol() public virtual returns (string memory); function name() public virtual returns (string memory); } contract Pyrotoken is IERC20 { event Mint( address minter, address baseToken, address pyroToken, uint256 redeemRate ); event Redeem( address redeemer, address baseToken, address pyroToken, uint256 redeemRate ); using SafeMath for uint256; uint256 _totalSupply; mapping(address => uint256) balances; mapping(address => mapping(address => uint256)) allowances; address public baseToken; uint256 constant ONE = 1e18; LiquidityReceiverFacade liquidityReceiver; constructor(address _baseToken, address _liquidityReceiver) { baseToken = _baseToken; name = string( abi.encodePacked("Pyro", ERC20MetaData(baseToken).name()) ); symbol = string( abi.encodePacked("p", ERC20MetaData(baseToken).symbol()) ); decimals = 18; liquidityReceiver = LiquidityReceiverFacade(_liquidityReceiver); } string public override name; string public override symbol; uint8 public override decimals; modifier updateReserve { liquidityReceiver.drain(address(this)); _; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function balanceOf(address account) external view override returns (uint256) { return balances[account]; } function transfer(address recipient, uint256 amount) external override returns (bool) { _transfer(msg.sender, recipient, amount); return true; } function allowance(address owner, address spender) external view override returns (uint256) { return allowances[owner][spender]; } function approve(address spender, uint256 amount) external override returns (bool) { allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) external override returns (bool) { require( allowances[sender][recipient] >= amount, "ERC20: not approved to send" ); _transfer(sender, recipient, amount); return true; } function mint(uint256 baseTokenAmount) external updateReserve returns (uint) { uint256 rate = redeemRate(); uint256 pyroTokensToMint = baseTokenAmount.mul(ONE).div(rate); require( IERC20(baseToken).transferFrom( msg.sender, address(this), baseTokenAmount ), "PYROTOKEN: baseToken transfer failed." ); mint(msg.sender, pyroTokensToMint); emit Mint(msg.sender, baseToken, address(this), rate); return pyroTokensToMint; } function redeem(uint256 pyroTokenAmount) external updateReserve returns (uint) { //no approval necessary balances[msg.sender] = balances[msg.sender].sub( pyroTokenAmount, "PYROTOKEN: insufficient balance" ); uint256 rate = redeemRate(); _totalSupply = _totalSupply.sub(pyroTokenAmount); uint256 exitFee = pyroTokenAmount.mul(2).div(100); //2% burn on exit pushes up price for remaining hodlers uint256 net = pyroTokenAmount.sub(exitFee); uint256 baseTokensToRelease = rate.mul(net).div(ONE); IERC20(baseToken).transfer(msg.sender, baseTokensToRelease); emit Redeem(msg.sender, baseToken, address(this), rate); return baseTokensToRelease; } function redeemRate() public view returns (uint256) { uint256 balanceOfBase = IERC20(baseToken).balanceOf(address(this)); if (_totalSupply == 0 || balanceOfBase == 0) return ONE; return balanceOfBase.mul(ONE).div(_totalSupply); } function mint(address recipient, uint256 amount) internal { balances[recipient] = balances[recipient].add(amount); _totalSupply = _totalSupply.add(amount); } function burn(uint256 amount) public { balances[msg.sender] = balances[msg.sender].sub(amount); _totalSupply = _totalSupply.sub(amount); } function _transfer( address sender, address recipient, uint256 amount ) internal { uint256 burnFee = amount.div(1000); //0.1% balances[recipient] = balances[recipient].add(amount - burnFee); balances[sender] = balances[sender].sub(amount); _totalSupply = _totalSupply.sub(burnFee); emit Transfer(sender, recipient, amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_baseToken","type":"address"},{"internalType":"address","name":"_liquidityReceiver","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":false,"internalType":"address","name":"minter","type":"address"},{"indexed":false,"internalType":"address","name":"baseToken","type":"address"},{"indexed":false,"internalType":"address","name":"pyroToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"redeemRate","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"redeemer","type":"address"},{"indexed":false,"internalType":"address","name":"baseToken","type":"address"},{"indexed":false,"internalType":"address","name":"pyroToken","type":"address"},{"indexed":false,"internalType":"uint256","name":"redeemRate","type":"uint256"}],"name":"Redeem","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"baseToken","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"baseTokenAmount","type":"uint256"}],"name":"mint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"pyroTokenAmount","type":"uint256"}],"name":"redeem","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"redeemRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040523480156200001157600080fd5b50604051620012fc380380620012fc833981810160405260408110156200003757600080fd5b508051602090910151600380546001600160a01b0319166001600160a01b038085169190911791829055604080516306fdde0360e01b8152905192909116916306fdde039160048082019260009290919082900301818387803b1580156200009e57600080fd5b505af1158015620000b3573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015620000dd57600080fd5b8101908080516040519392919084640100000000821115620000fe57600080fd5b9083019060208201858111156200011457600080fd5b82516401000000008111828201881017156200012f57600080fd5b82525081516020918201929091019080838360005b838110156200015e57818101518382015260200162000144565b50505050905090810190601f1680156200018c5780820380516001836020036101000a031916815260200191505b506040525050506040516020018080635079726f60e01b81525060040182805190602001908083835b60208310620001d65780518252601f199092019160209182019101620001b5565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051602081830303815290604052600590805190602001906200022192919062000429565b50600360009054906101000a90046001600160a01b03166001600160a01b03166395d89b416040518163ffffffff1660e01b8152600401600060405180830381600087803b1580156200027357600080fd5b505af115801562000288573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526020811015620002b257600080fd5b8101908080516040519392919084640100000000821115620002d357600080fd5b908301906020820185811115620002e957600080fd5b82516401000000008111828201881017156200030457600080fd5b82525081516020918201929091019080838360005b838110156200033357818101518382015260200162000319565b50505050905090810190601f168015620003615780820380516001836020036101000a031916815260200191505b506040525050506040516020018080600760fc1b81525060010182805190602001908083835b60208310620003a85780518252601f19909201916020918201910162000387565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405260069080519060200190620003f392919062000429565b506007805460ff19166012179055600480546001600160a01b039092166001600160a01b031990921691909117905550620004d5565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282620004615760008555620004ac565b82601f106200047c57805160ff1916838001178555620004ac565b82800160010185558215620004ac579182015b82811115620004ac5782518255916020019190600101906200048f565b50620004ba929150620004be565b5090565b5b80821115620004ba5760008155600101620004bf565b610e1780620004e56000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a9059cbb11610066578063a9059cbb1461028c578063c55dae63146102b8578063db006a75146102dc578063dd62ed3e146102f9576100ea565b806370a082311461024157806395d89b4114610267578063a0712d681461026f576100ea565b806318160ddd116100c857806318160ddd146101c657806323b872dd146101ce578063313ce5671461020457806342966c6814610222576100ea565b806306fdde03146100ef578063095ea7b31461016c5780630adcdbaa146101ac575b600080fd5b6100f7610327565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610131578181015183820152602001610119565b50505050905090810190601f16801561015e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101986004803603604081101561018257600080fd5b506001600160a01b0381351690602001356103b5565b604080519115158252519081900360200190f35b6101b461041c565b60408051918252519081900360200190f35b6101b46104e4565b610198600480360360608110156101e457600080fd5b506001600160a01b038135811691602081013590911690604001356104ea565b61020c61057b565b6040805160ff9092168252519081900360200190f35b61023f6004803603602081101561023857600080fd5b5035610584565b005b6101b46004803603602081101561025757600080fd5b50356001600160a01b03166105c2565b6100f76105dd565b6101b46004803603602081101561028557600080fd5b5035610638565b610198600480360360408110156102a257600080fd5b506001600160a01b0381351690602001356107e9565b6102c06107ff565b604080516001600160a01b039092168252519081900360200190f35b6101b4600480360360208110156102f257600080fd5b503561080e565b6101b46004803603604081101561030f57600080fd5b506001600160a01b0381358116916020013516610a0d565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103ad5780601f10610382576101008083540402835291602001916103ad565b820191906000526020600020905b81548152906001019060200180831161039057829003601f168201915b505050505081565b3360008181526002602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b600354604080516370a0823160e01b8152306004820152905160009283926001600160a01b03909116916370a0823191602480820192602092909190829003018186803b15801561046c57600080fd5b505afa158015610480573d6000803e3d6000fd5b505050506040513d602081101561049657600080fd5b505160005490915015806104a8575080155b156104be57670de0b6b3a76400009150506104e1565b6000546104dd906104d783670de0b6b3a7640000610a38565b90610a98565b9150505b90565b60005490565b6001600160a01b038084166000908152600260209081526040808320938616835292905290812054821115610566576040805162461bcd60e51b815260206004820152601b60248201527f45524332303a206e6f7420617070726f76656420746f2073656e640000000000604482015290519081900360640190fd5b610571848484610ada565b5060019392505050565b60075460ff1681565b3360009081526001602052604090205461059e9082610bb2565b33600090815260016020526040812091909155546105bc9082610bb2565b60005550565b6001600160a01b031660009081526001602052604090205490565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103ad5780601f10610382576101008083540402835291602001916103ad565b6004805460408051637672989960e11b81523093810193909352516000926001600160a01b039092169163ece53132916024808301928692919082900301818387803b15801561068757600080fd5b505af115801561069b573d6000803e3d6000fd5b5050505060006106a961041c565b905060006106c3826104d786670de0b6b3a7640000610a38565b600354604080516323b872dd60e01b81523360048201523060248201526044810188905290519293506001600160a01b03909116916323b872dd916064808201926020929091908290030181600087803b15801561072057600080fd5b505af1158015610734573d6000803e3d6000fd5b505050506040513d602081101561074a57600080fd5b50516107875760405162461bcd60e51b8152600401808060200182810382526025815260200180610d9c6025913960400191505060405180910390fd5b6107913382610bf4565b600354604080513381526001600160a01b039092166020830152308282015260608201849052517f6b460f6f5497bb72eeec65f6df538e6388b2e74b8fc03e7d318653a663e737829181900360800190a19392505050565b60006107f6338484610ada565b50600192915050565b6003546001600160a01b031681565b6004805460408051637672989960e11b81523093810193909352516000926001600160a01b039092169163ece53132916024808301928692919082900301818387803b15801561085d57600080fd5b505af1158015610871573d6000803e3d6000fd5b5050604080518082018252601f81527f5059524f544f4b454e3a20696e73756666696369656e742062616c616e636500602080830191909152336000908152600190915291909120546108c8935091508490610c45565b336000908152600160205260408120919091556108e361041c565b6000549091506108f39084610bb2565b600090815561090860646104d7866002610a38565b905060006109168583610bb2565b90506000610930670de0b6b3a76400006104d78685610a38565b6003546040805163a9059cbb60e01b81523360048201526024810184905290519293506001600160a01b039091169163a9059cbb916044808201926020929091908290030181600087803b15801561098757600080fd5b505af115801561099b573d6000803e3d6000fd5b505050506040513d60208110156109b157600080fd5b5050600354604080513381526001600160a01b039092166020830152308282015260608201869052517fee02732fab40ece8284c756220846dff4b8d32058b86b35b4f0459bf172fcef09181900360800190a195945050505050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600082610a4757506000610416565b82820282848281610a5457fe5b0414610a915760405162461bcd60e51b8152600401808060200182810382526021815260200180610dc16021913960400191505060405180910390fd5b9392505050565b6000610a9183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610cdc565b6000610ae8826103e8610a98565b6001600160a01b038416600090815260016020526040902054909150610b1090828403610d41565b6001600160a01b038085166000908152600160205260408082209390935590861681522054610b3f9083610bb2565b6001600160a01b03851660009081526001602052604081209190915554610b669082610bb2565b6000556040805183815290516001600160a01b0380861692908716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350505050565b6000610a9183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c45565b6001600160a01b038216600090815260016020526040902054610c179082610d41565b6001600160a01b03831660009081526001602052604081209190915554610c3e9082610d41565b6000555050565b60008184841115610cd45760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c99578181015183820152602001610c81565b50505050905090810190601f168015610cc65780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610d2b5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610c99578181015183820152602001610c81565b506000838581610d3757fe5b0495945050505050565b600082820183811015610a91576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fdfe5059524f544f4b454e3a2062617365546f6b656e207472616e73666572206661696c65642e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212204388fafa6700e29d5413ce192ac75862d8c80195235c17b00fc2f46ae4be6eb164736f6c6343000706003300000000000000000000000093ed3fbe21207ec2e8f2d3c3de6e058cb73bc04d000000000000000000000000e80f95da4db121989df7c0451165a6998a4600fb
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a9059cbb11610066578063a9059cbb1461028c578063c55dae63146102b8578063db006a75146102dc578063dd62ed3e146102f9576100ea565b806370a082311461024157806395d89b4114610267578063a0712d681461026f576100ea565b806318160ddd116100c857806318160ddd146101c657806323b872dd146101ce578063313ce5671461020457806342966c6814610222576100ea565b806306fdde03146100ef578063095ea7b31461016c5780630adcdbaa146101ac575b600080fd5b6100f7610327565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610131578181015183820152602001610119565b50505050905090810190601f16801561015e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101986004803603604081101561018257600080fd5b506001600160a01b0381351690602001356103b5565b604080519115158252519081900360200190f35b6101b461041c565b60408051918252519081900360200190f35b6101b46104e4565b610198600480360360608110156101e457600080fd5b506001600160a01b038135811691602081013590911690604001356104ea565b61020c61057b565b6040805160ff9092168252519081900360200190f35b61023f6004803603602081101561023857600080fd5b5035610584565b005b6101b46004803603602081101561025757600080fd5b50356001600160a01b03166105c2565b6100f76105dd565b6101b46004803603602081101561028557600080fd5b5035610638565b610198600480360360408110156102a257600080fd5b506001600160a01b0381351690602001356107e9565b6102c06107ff565b604080516001600160a01b039092168252519081900360200190f35b6101b4600480360360208110156102f257600080fd5b503561080e565b6101b46004803603604081101561030f57600080fd5b506001600160a01b0381358116916020013516610a0d565b6005805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103ad5780601f10610382576101008083540402835291602001916103ad565b820191906000526020600020905b81548152906001019060200180831161039057829003601f168201915b505050505081565b3360008181526002602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b600354604080516370a0823160e01b8152306004820152905160009283926001600160a01b03909116916370a0823191602480820192602092909190829003018186803b15801561046c57600080fd5b505afa158015610480573d6000803e3d6000fd5b505050506040513d602081101561049657600080fd5b505160005490915015806104a8575080155b156104be57670de0b6b3a76400009150506104e1565b6000546104dd906104d783670de0b6b3a7640000610a38565b90610a98565b9150505b90565b60005490565b6001600160a01b038084166000908152600260209081526040808320938616835292905290812054821115610566576040805162461bcd60e51b815260206004820152601b60248201527f45524332303a206e6f7420617070726f76656420746f2073656e640000000000604482015290519081900360640190fd5b610571848484610ada565b5060019392505050565b60075460ff1681565b3360009081526001602052604090205461059e9082610bb2565b33600090815260016020526040812091909155546105bc9082610bb2565b60005550565b6001600160a01b031660009081526001602052604090205490565b6006805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156103ad5780601f10610382576101008083540402835291602001916103ad565b6004805460408051637672989960e11b81523093810193909352516000926001600160a01b039092169163ece53132916024808301928692919082900301818387803b15801561068757600080fd5b505af115801561069b573d6000803e3d6000fd5b5050505060006106a961041c565b905060006106c3826104d786670de0b6b3a7640000610a38565b600354604080516323b872dd60e01b81523360048201523060248201526044810188905290519293506001600160a01b03909116916323b872dd916064808201926020929091908290030181600087803b15801561072057600080fd5b505af1158015610734573d6000803e3d6000fd5b505050506040513d602081101561074a57600080fd5b50516107875760405162461bcd60e51b8152600401808060200182810382526025815260200180610d9c6025913960400191505060405180910390fd5b6107913382610bf4565b600354604080513381526001600160a01b039092166020830152308282015260608201849052517f6b460f6f5497bb72eeec65f6df538e6388b2e74b8fc03e7d318653a663e737829181900360800190a19392505050565b60006107f6338484610ada565b50600192915050565b6003546001600160a01b031681565b6004805460408051637672989960e11b81523093810193909352516000926001600160a01b039092169163ece53132916024808301928692919082900301818387803b15801561085d57600080fd5b505af1158015610871573d6000803e3d6000fd5b5050604080518082018252601f81527f5059524f544f4b454e3a20696e73756666696369656e742062616c616e636500602080830191909152336000908152600190915291909120546108c8935091508490610c45565b336000908152600160205260408120919091556108e361041c565b6000549091506108f39084610bb2565b600090815561090860646104d7866002610a38565b905060006109168583610bb2565b90506000610930670de0b6b3a76400006104d78685610a38565b6003546040805163a9059cbb60e01b81523360048201526024810184905290519293506001600160a01b039091169163a9059cbb916044808201926020929091908290030181600087803b15801561098757600080fd5b505af115801561099b573d6000803e3d6000fd5b505050506040513d60208110156109b157600080fd5b5050600354604080513381526001600160a01b039092166020830152308282015260608201869052517fee02732fab40ece8284c756220846dff4b8d32058b86b35b4f0459bf172fcef09181900360800190a195945050505050565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b600082610a4757506000610416565b82820282848281610a5457fe5b0414610a915760405162461bcd60e51b8152600401808060200182810382526021815260200180610dc16021913960400191505060405180910390fd5b9392505050565b6000610a9183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610cdc565b6000610ae8826103e8610a98565b6001600160a01b038416600090815260016020526040902054909150610b1090828403610d41565b6001600160a01b038085166000908152600160205260408082209390935590861681522054610b3f9083610bb2565b6001600160a01b03851660009081526001602052604081209190915554610b669082610bb2565b6000556040805183815290516001600160a01b0380861692908716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350505050565b6000610a9183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c45565b6001600160a01b038216600090815260016020526040902054610c179082610d41565b6001600160a01b03831660009081526001602052604081209190915554610c3e9082610d41565b6000555050565b60008184841115610cd45760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610c99578181015183820152602001610c81565b50505050905090810190601f168015610cc65780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610d2b5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610c99578181015183820152602001610c81565b506000838581610d3757fe5b0495945050505050565b600082820183811015610a91576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fdfe5059524f544f4b454e3a2062617365546f6b656e207472616e73666572206661696c65642e536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a26469706673582212204388fafa6700e29d5413ce192ac75862d8c80195235c17b00fc2f46ae4be6eb164736f6c63430007060033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000093ed3fbe21207ec2e8f2d3c3de6e058cb73bc04d000000000000000000000000e80f95da4db121989df7c0451165a6998a4600fb
-----Decoded View---------------
Arg [0] : _baseToken (address): 0x93ED3FBe21207Ec2E8f2d3c3de6e058Cb73Bc04d
Arg [1] : _liquidityReceiver (address): 0xE80F95Da4DB121989DF7c0451165a6998a4600Fb
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000093ed3fbe21207ec2e8f2d3c3de6e058cb73bc04d
Arg [1] : 000000000000000000000000e80f95da4db121989df7c0451165a6998a4600fb
Deployed Bytecode Sourcemap
6793:4911:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7808:27;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8696:249;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8696:249:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;10666:263;;;:::i;:::-;;;;;;;;;;;;;;;;8017:102;;;:::i;8953:344::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8953:344:0;;;;;;;;;;;;;;;;;:::i;7878:30::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11125:161;;;;;;;;;;;;;;;;-1:-1:-1;11125:161:0;;:::i;:::-;;8127;;;;;;;;;;;;;;;;-1:-1:-1;8127:161:0;-1:-1:-1;;;;;8127:161:0;;:::i;7842:29::-;;;:::i;9305:576::-;;;;;;;;;;;;;;;;-1:-1:-1;9305:576:0;;:::i;8296:199::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8296:199:0;;;;;;;;:::i;7271:24::-;;;:::i;:::-;;;;-1:-1:-1;;;;;7271:24:0;;;;;;;;;;;;;;9889:769;;;;;;;;;;;;;;;;-1:-1:-1;9889:769:0;;:::i;8503:185::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8503:185:0;;;;;;;;;;:::i;7808:27::-;;;;;;;;;;;;;;;-1:-1:-1;;7808:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8696:249::-;8833:10;8800:4;8822:22;;;:10;:22;;;;;;;;-1:-1:-1;;;;;8822:31:0;;;;;;;;;;;:40;;;8878:37;;;;;;;8800:4;;8822:31;;8833:10;;8878:37;;;;;;;;-1:-1:-1;8933:4:0;8696:249;;;;;:::o;10666:263::-;10760:9;;10753:42;;;-1:-1:-1;;;10753:42:0;;10789:4;10753:42;;;;;;10709:7;;;;-1:-1:-1;;;;;10760:9:0;;;;10753:27;;:42;;;;;;;;;;;;;;;10760:9;10753:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10753:42:0;10810:12;;10753:42;;-1:-1:-1;10810:17:0;;:39;;-1:-1:-1;10831:18:0;;10810:39;10806:55;;;7325:4;10851:10;;;;;10806:55;10908:12;;10881:40;;:22;:13;7325:4;10881:17;:22::i;:::-;:26;;:40::i;:::-;10874:47;;;10666:263;;:::o;8017:102::-;8072:7;8099:12;8017:102;:::o;8953:344::-;-1:-1:-1;;;;;9126:18:0;;;9087:4;9126:18;;;:10;:18;;;;;;;;:29;;;;;;;;;;;;:39;-1:-1:-1;9126:39:0;9104:116;;;;;-1:-1:-1;;;9104:116:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;9231:36;9241:6;9249:9;9260:6;9231:9;:36::i;:::-;-1:-1:-1;9285:4:0;8953:344;;;;;:::o;7878:30::-;;;;;;:::o;11125:161::-;11205:10;11196:20;;;;:8;:20;;;;;;:32;;11221:6;11196:24;:32::i;:::-;11182:10;11173:20;;;;:8;:20;;;;;:55;;;;11254:12;:24;;11271:6;11254:16;:24::i;:::-;11239:12;:39;-1:-1:-1;11125:161:0:o;8127:::-;-1:-1:-1;;;;;8263:17:0;8231:7;8263:17;;;:8;:17;;;;;;;8127:161::o;7842:29::-;;;;;;;;;;;;;;;-1:-1:-1;;7842:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9305:576;7951:17;;;:38;;;-1:-1:-1;;;7951:38:0;;7983:4;7951:38;;;;;;;;9376:4;;-1:-1:-1;;;;;7951:17:0;;;;:23;;:38;;;;;9376:4;;7951:38;;;;;;;9376:4;7951:17;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9393:12:::1;9408;:10;:12::i;:::-;9393:27:::0;-1:-1:-1;9431:24:0::1;9458:34;9393:27:::0;9458:24:::1;:15:::0;7325:4:::1;9458:19;:24::i;:34::-;9532:9;::::0;9525:140:::1;::::0;;-1:-1:-1;;;9525:140:0;;9574:10:::1;9525:140;::::0;::::1;::::0;9611:4:::1;9525:140:::0;;;;;;;;;;;;9431:61;;-1:-1:-1;;;;;;9532:9:0;;::::1;::::0;9525:30:::1;::::0;:140;;;;;::::1;::::0;;;;;;;;;9532:9:::1;::::0;9525:140;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;9525:140:0;9503:227:::1;;;;-1:-1:-1::0;;;9503:227:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9741:34;9746:10;9758:16;9741:4;:34::i;:::-;9808:9;::::0;9791:48:::1;::::0;;9796:10:::1;9791:48:::0;;-1:-1:-1;;;;;9808:9:0;;::::1;9791:48;::::0;::::1;::::0;9827:4:::1;9791:48:::0;;;;;;;;;;;::::1;::::0;;;;;;;::::1;9857:16:::0;9305:576;-1:-1:-1;;;9305:576:0:o;8296:199::-;8403:4;8425:40;8435:10;8447:9;8458:6;8425:9;:40::i;:::-;-1:-1:-1;8483:4:0;8296:199;;;;:::o;7271:24::-;;;-1:-1:-1;;;;;7271:24:0;;:::o;9889:769::-;7951:17;;;:38;;;-1:-1:-1;;;7951:38:0;;7983:4;7951:38;;;;;;;;9962:4;;-1:-1:-1;;;;;7951:17:0;;;;:23;;:38;;;;;9962:4;;7951:38;;;;;;;9962:4;7951:17;:38;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10035:113:0::1;::::0;;;;::::1;::::0;;::::1;::::0;;::::1;;::::0;;::::1;::::0;;;;10044:10:::1;-1:-1:-1::0;10035:20:0;;;:8:::1;:20:::0;;;;;;;;:113:::1;::::0;-1:-1:-1;10035:20:0;-1:-1:-1;10074:15:0;;10035:24:::1;:113::i;:::-;10021:10;10012:20;::::0;;;:8:::1;:20;::::0;;;;:136;;;;10174:12:::1;:10;:12::i;:::-;10212;::::0;10159:27;;-1:-1:-1;10212:33:0::1;::::0;10229:15;10212:16:::1;:33::i;:::-;10197:12;:48:::0;;;10274:31:::1;10301:3;10274:22;:15:::0;10294:1:::1;10274:19;:22::i;:31::-;10256:49:::0;-1:-1:-1;10372:11:0::1;10386:28;:15:::0;10256:49;10386:19:::1;:28::i;:::-;10372:42:::0;-1:-1:-1;10425:27:0::1;10455:22;7325:4;10455:13;:4:::0;10372:42;10455:8:::1;:13::i;:22::-;10495:9;::::0;10488:59:::1;::::0;;-1:-1:-1;;;10488:59:0;;10515:10:::1;10488:59;::::0;::::1;::::0;;;;;;;;;10425:52;;-1:-1:-1;;;;;;10495:9:0;;::::1;::::0;10488:26:::1;::::0;:59;;;;;::::1;::::0;;;;;;;;;10495:9:::1;::::0;10488:59;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;10582:9:0::1;::::0;10563:50:::1;::::0;;10570:10:::1;10563:50:::0;;-1:-1:-1;;;;;10582:9:0;;::::1;10488:59;10563:50:::0;::::1;::::0;10601:4:::1;10563:50:::0;;;;;;;;;;;::::1;::::0;;;;;;;::::1;10631:19:::0;9889:769;-1:-1:-1;;;;;9889:769:0:o;8503:185::-;-1:-1:-1;;;;;8654:17:0;;;8622:7;8654:17;;;:10;:17;;;;;;;;:26;;;;;;;;;;;;;8503:185::o;3350:471::-;3408:7;3653:6;3649:47;;-1:-1:-1;3683:1:0;3676:8;;3649:47;3720:5;;;3724:1;3720;:5;:1;3744:5;;;;;:10;3736:56;;;;-1:-1:-1;;;3736:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3812:1;3350:471;-1:-1:-1;;;3350:471:0:o;4297:132::-;4355:7;4382:39;4386:1;4389;4382:39;;;;;;;;;;;;;;;;;:3;:39::i;11294:407::-;11418:15;11436:16;:6;11447:4;11436:10;:16::i;:::-;-1:-1:-1;;;;;11492:19:0;;;;;;:8;:19;;;;;;11418:34;;-1:-1:-1;11492:41:0;;11516:16;;;11492:23;:41::i;:::-;-1:-1:-1;;;;;11470:19:0;;;;;;;:8;:19;;;;;;:63;;;;11563:16;;;;;;;:28;;11584:6;11563:20;:28::i;:::-;-1:-1:-1;;;;;11544:16:0;;;;;;:8;:16;;;;;:47;;;;11617:12;:25;;11634:7;11617:16;:25::i;:::-;11602:12;:40;11658:35;;;;;;;;-1:-1:-1;;;;;11658:35:0;;;;;;;;;;;;;;;;;11294:407;;;;:::o;2460:136::-;2518:7;2545:43;2549:1;2552;2545:43;;;;;;;;;;;;;;;;;:3;:43::i;10937:180::-;-1:-1:-1;;;;;11028:19:0;;;;;;:8;:19;;;;;;:31;;11052:6;11028:23;:31::i;:::-;-1:-1:-1;;;;;11006:19:0;;;;;;:8;:19;;;;;:53;;;;11085:12;:24;;11102:6;11085:16;:24::i;:::-;11070:12;:39;-1:-1:-1;;10937:180:0:o;2899:192::-;2985:7;3021:12;3013:6;;;;3005:29;;;;-1:-1:-1;;;3005:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3057:5:0;;;2899:192::o;4925:278::-;5011:7;5046:12;5039:5;5031:28;;;;-1:-1:-1;;;5031:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5070:9;5086:1;5082;:5;;;;;;;4925:278;-1:-1:-1;;;;;4925:278:0:o;1996:181::-;2054:7;2086:5;;;2110:6;;;;2102:46;;;;;-1:-1:-1;;;2102:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;
Swarm Source
ipfs://4388fafa6700e29d5413ce192ac75862d8c80195235c17b00fc2f46ae4be6eb1
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $0.013979 | 753.1699 | $10.53 |
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.