More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 69 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Transfer Ownersh... | 13583971 | 1191 days ago | IN | 0 ETH | 0.00413681 | ||||
Burn | 10939242 | 1600 days ago | IN | 0 ETH | 0.00795915 | ||||
Burn | 10869238 | 1611 days ago | IN | 0 ETH | 0.0103435 | ||||
Mint | 10863659 | 1612 days ago | IN | 0 ETH | 0.0148348 | ||||
Mint | 10861838 | 1612 days ago | IN | 0 ETH | 0.01261158 | ||||
Burn | 10861126 | 1612 days ago | IN | 0 ETH | 0.01241364 | ||||
Burn | 10857708 | 1613 days ago | IN | 0 ETH | 0.01148128 | ||||
Mint | 10856807 | 1613 days ago | IN | 0 ETH | 0.01112787 | ||||
Mint | 10855621 | 1613 days ago | IN | 0 ETH | 0.00976874 | ||||
Burn | 10787544 | 1623 days ago | IN | 0 ETH | 0.02782401 | ||||
Burn | 10762132 | 1627 days ago | IN | 0 ETH | 0.01241364 | ||||
Mint | 10760906 | 1628 days ago | IN | 0 ETH | 0.04080615 | ||||
Burn | 10303246 | 1698 days ago | IN | 0 ETH | 0.00258536 | ||||
Burn | 10303233 | 1698 days ago | IN | 0 ETH | 0.00320611 | ||||
Mint | 10302772 | 1698 days ago | IN | 0 ETH | 0.00222535 | ||||
Burn | 10155682 | 1721 days ago | IN | 0 ETH | 0.0024755 | ||||
Mint | 10155340 | 1721 days ago | IN | 0 ETH | 0.00641691 | ||||
Mint | 10155336 | 1721 days ago | IN | 0 ETH | 0.02392518 | ||||
Mint | 10155255 | 1721 days ago | IN | 0 ETH | 0.00554428 | ||||
Burn | 10011247 | 1744 days ago | IN | 0 ETH | 0.00168209 | ||||
Mint | 9955243 | 1752 days ago | IN | 0 ETH | 0.00216404 | ||||
Set Target | 9955231 | 1752 days ago | IN | 0 ETH | 0.00035082 | ||||
Burn | 9943981 | 1754 days ago | IN | 0 ETH | 0.00016928 | ||||
Burn | 9943981 | 1754 days ago | IN | 0 ETH | 0.00048347 | ||||
Mint | 9943964 | 1754 days ago | IN | 0 ETH | 0.00175352 |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
LoanToken
Compiler Version
v0.5.8+commit.23d335f2
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2020-02-10 */ /** * Copyright 2017-2019, bZeroX, LLC. All Rights Reserved. * Licensed under the Apache License, Version 2.0. */ pragma solidity 0.5.8; /** * @title ERC20Basic * @dev Simpler version of ERC20 interface * See https://github.com/ethereum/EIPs/issues/179 */ contract ERC20Basic { function totalSupply() public view returns (uint256); function balanceOf(address _who) public view returns (uint256); function transfer(address _to, uint256 _value) public returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); } /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 is ERC20Basic { function allowance(address _owner, address _spender) public view returns (uint256); function transferFrom(address _from, address _to, uint256 _value) public returns (bool); function approve(address _spender, uint256 _value) public returns (bool); event Approval( address indexed owner, address indexed spender, uint256 value ); } /** * @title EIP20/ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract EIP20 is ERC20 { string public name; uint8 public decimals; string public symbol; } contract WETHInterface is EIP20 { function deposit() external payable; function withdraw(uint256 wad) external; } /** * @title SafeMath * @dev Math operations with safety checks that throw on error */ library SafeMath { /** * @dev Multiplies two numbers, throws on overflow. */ function mul(uint256 _a, uint256 _b) internal pure returns (uint256 c) { // Gas optimization: this is cheaper than asserting 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-solidity/pull/522 if (_a == 0) { return 0; } c = _a * _b; assert(c / _a == _b); return c; } /** * @dev Integer division of two numbers, truncating the quotient. */ function div(uint256 _a, uint256 _b) internal pure returns (uint256) { // assert(_b > 0); // Solidity automatically throws when dividing by 0 // uint256 c = _a / _b; // assert(_a == _b * c + _a % _b); // There is no case in which this doesn't hold return _a / _b; } /** * @dev Integer division of two numbers, rounding up and truncating the quotient */ function divCeil(uint256 _a, uint256 _b) internal pure returns (uint256) { if (_a == 0) { return 0; } return ((_a - 1) / _b) + 1; } /** * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 _a, uint256 _b) internal pure returns (uint256) { assert(_b <= _a); return _a - _b; } /** * @dev Adds two numbers, throws on overflow. */ function add(uint256 _a, uint256 _b) internal pure returns (uint256 c) { c = _a + _b; assert(c >= _a); return c; } } /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". */ contract Ownable { address public owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); /** * @dev The Ownable constructor sets the original `owner` of the contract to the sender * account. */ constructor() public { owner = msg.sender; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(msg.sender == owner); _; } /** * @dev Allows the current owner to transfer control of the contract to a newOwner. * @param _newOwner The address to transfer ownership to. */ function transferOwnership(address _newOwner) public onlyOwner { _transferOwnership(_newOwner); } /** * @dev Transfers control of the contract to a newOwner. * @param _newOwner The address to transfer ownership to. */ function _transferOwnership(address _newOwner) internal { require(_newOwner != address(0)); emit OwnershipTransferred(owner, _newOwner); owner = _newOwner; } } /** * @title Helps contracts guard against reentrancy attacks. * @author Remco Bloemen <remco@2π.com>, Eenae <[email protected]> * @dev If you mark a function `nonReentrant`, you should also * mark it `external`. */ contract ReentrancyGuard { /// @dev Constant for unlocked guard state - non-zero to prevent extra gas costs. /// See: https://github.com/OpenZeppelin/openzeppelin-solidity/issues/1056 uint256 internal constant REENTRANCY_GUARD_FREE = 1; /// @dev Constant for locked guard state uint256 internal constant REENTRANCY_GUARD_LOCKED = 2; /** * @dev We use a single lock for the whole contract. */ uint256 internal reentrancyLock = REENTRANCY_GUARD_FREE; /** * @dev Prevents a contract from calling itself, directly or indirectly. * If you mark a function `nonReentrant`, you should also * mark it `external`. Calling one `nonReentrant` function from * another is not supported. Instead, you can implement a * `private` function doing the actual work, and an `external` * wrapper marked as `nonReentrant`. */ modifier nonReentrant() { require(reentrancyLock == REENTRANCY_GUARD_FREE, "nonReentrant"); reentrancyLock = REENTRANCY_GUARD_LOCKED; _; reentrancyLock = REENTRANCY_GUARD_FREE; } } contract LoanTokenization is ReentrancyGuard, Ownable { uint256 internal constant MAX_UINT = 2**256 - 1; string public name; string public symbol; uint8 public decimals; address public bZxContract; address public bZxVault; address public bZxOracle; address public wethContract; address public loanTokenAddress; // price of token at last user checkpoint mapping (address => uint256) internal checkpointPrices_; } contract LoanTokenStorage is LoanTokenization { struct ListIndex { uint256 index; bool isSet; } struct LoanData { bytes32 loanOrderHash; uint256 leverageAmount; uint256 initialMarginAmount; uint256 maintenanceMarginAmount; uint256 maxDurationUnixTimestampSec; uint256 index; uint256 marginPremiumAmount; address collateralTokenAddress; } struct TokenReserves { address lender; uint256 amount; } // topic: 0x86e15dd78cd784ab7788bcf5b96b9395e86030e048e5faedcfe752c700f6157e event Borrow( address indexed borrower, uint256 borrowAmount, uint256 interestRate, address collateralTokenAddress, address tradeTokenToFillAddress, bool withdrawOnOpen ); // topic: 0x85dfc0033a3e5b3b9b3151bd779c1f9b855d66b83ff5bb79283b68d82e8e5b73 event Repay( bytes32 indexed loanOrderHash, address indexed borrower, address closer, uint256 amount, bool isLiquidation ); // topic: 0x68e1caf97c4c29c1ac46024e9590f80b7a1f690d393703879cf66eea4e1e8421 event Claim( address indexed claimant, uint256 tokenAmount, uint256 assetAmount, uint256 remainingTokenAmount, uint256 price ); bool internal isInitialized_ = false; address public tokenizedRegistry; uint256 public baseRate = 1000000000000000000; // 1.0% uint256 public rateMultiplier = 18750000000000000000; // 18.75% // slot addition (non-sequential): lowUtilBaseRate = 8000000000000000000; // 8.0% // slot addition (non-sequential): lowUtilRateMultiplier = 4750000000000000000; // 4.75% // "fee percentage retained by the oracle" = SafeMath.sub(10**20, spreadMultiplier); uint256 public spreadMultiplier; mapping (uint256 => bytes32) public loanOrderHashes; // mapping of levergeAmount to loanOrderHash mapping (bytes32 => LoanData) public loanOrderData; // mapping of loanOrderHash to LoanOrder uint256[] public leverageList; TokenReserves[] public burntTokenReserveList; // array of TokenReserves mapping (address => ListIndex) public burntTokenReserveListIndex; // mapping of lender address to ListIndex objects uint256 public burntTokenReserved; // total outstanding burnt token amount address internal nextOwedLender_; uint256 public totalAssetBorrow; // current amount of loan token amount tied up in loans uint256 public checkpointSupply; uint256 internal lastSettleTime_; uint256 public initialPrice; } contract AdvancedTokenStorage is LoanTokenStorage { using SafeMath for uint256; event Transfer( address indexed from, address indexed to, uint256 value ); event Approval( address indexed owner, address indexed spender, uint256 value ); event Mint( address indexed minter, uint256 tokenAmount, uint256 assetAmount, uint256 price ); event Burn( address indexed burner, uint256 tokenAmount, uint256 assetAmount, uint256 price ); mapping(address => uint256) internal balances; mapping (address => mapping (address => uint256)) internal allowed; uint256 internal totalSupply_; function totalSupply() public view returns (uint256) { return totalSupply_; } function balanceOf( address _owner) public view returns (uint256) { return balances[_owner]; } function allowance( address _owner, address _spender) public view returns (uint256) { return allowed[_owner][_spender]; } } contract LoanToken is AdvancedTokenStorage { address internal target_; constructor( address _newTarget) public { _setTarget(_newTarget); } function() external payable { if (gasleft() <= 2300) { return; } address target = target_; bytes memory data = msg.data; assembly { let result := delegatecall(gas, target, add(data, 0x20), mload(data), 0, 0) let size := returndatasize let ptr := mload(0x40) returndatacopy(ptr, 0, size) switch result case 0 { revert(ptr, size) } default { return(ptr, size) } } } function setTarget( address _newTarget) public onlyOwner { _setTarget(_newTarget); } function _setTarget( address _newTarget) internal { require(_isContract(_newTarget), "target not a contract"); target_ = _newTarget; } function _isContract( address addr) internal view returns (bool) { uint256 size; assembly { size := extcodesize(addr) } return size > 0; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"burntTokenReserved","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"initialPrice","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"baseRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalAssetBorrow","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"bytes32"}],"name":"loanOrderData","outputs":[{"name":"loanOrderHash","type":"bytes32"},{"name":"leverageAmount","type":"uint256"},{"name":"initialMarginAmount","type":"uint256"},{"name":"maintenanceMarginAmount","type":"uint256"},{"name":"maxDurationUnixTimestampSec","type":"uint256"},{"name":"index","type":"uint256"},{"name":"marginPremiumAmount","type":"uint256"},{"name":"collateralTokenAddress","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"rateMultiplier","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"wethContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"tokenizedRegistry","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newTarget","type":"address"}],"name":"setTarget","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"burntTokenReserveList","outputs":[{"name":"lender","type":"address"},{"name":"amount","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"loanTokenAddress","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"checkpointSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bZxVault","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bZxOracle","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"bZxContract","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"leverageList","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"spreadMultiplier","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"","type":"address"}],"name":"burntTokenReserveListIndex","outputs":[{"name":"index","type":"uint256"},{"name":"isSet","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"loanOrderHashes","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"_newTarget","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"minter","type":"address"},{"indexed":false,"name":"tokenAmount","type":"uint256"},{"indexed":false,"name":"assetAmount","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"}],"name":"Mint","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"burner","type":"address"},{"indexed":false,"name":"tokenAmount","type":"uint256"},{"indexed":false,"name":"assetAmount","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"}],"name":"Burn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"borrower","type":"address"},{"indexed":false,"name":"borrowAmount","type":"uint256"},{"indexed":false,"name":"interestRate","type":"uint256"},{"indexed":false,"name":"collateralTokenAddress","type":"address"},{"indexed":false,"name":"tradeTokenToFillAddress","type":"address"},{"indexed":false,"name":"withdrawOnOpen","type":"bool"}],"name":"Borrow","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"loanOrderHash","type":"bytes32"},{"indexed":true,"name":"borrower","type":"address"},{"indexed":false,"name":"closer","type":"address"},{"indexed":false,"name":"amount","type":"uint256"},{"indexed":false,"name":"isLiquidation","type":"bool"}],"name":"Repay","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"claimant","type":"address"},{"indexed":false,"name":"tokenAmount","type":"uint256"},{"indexed":false,"name":"assetAmount","type":"uint256"},{"indexed":false,"name":"remainingTokenAmount","type":"uint256"},{"indexed":false,"name":"price","type":"uint256"}],"name":"Claim","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
60806040526001600055600a805460ff19169055670de0b6b3a7640000600b556801043561a882930000600c5534801561003857600080fd5b50604051602080610bbb8339810180604052602081101561005857600080fd5b5051600180546001600160a01b0319163317905561007c81610082602090811b901c565b50610124565b6100918161011e60201b60201c565b6100fc57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f746172676574206e6f74206120636f6e74726163740000000000000000000000604482015290519081900360640190fd5b601c80546001600160a01b0319166001600160a01b0392909216919091179055565b3b151590565b610a88806101336000396000f3fe60806040526004361061019c5760003560e01c80637866c6c1116100ec578063995363d31161008a578063dd62ed3e11610064578063dd62ed3e1461059c578063f2fde38b146105d7578063fbd9574d1461060a578063fe056342146106565761019c565b8063995363d3146105485780639b3a54d11461055d578063d84d2a47146105875761019c565b8063894ca308116100c6578063894ca308146104f45780638da5cb5b1461050957806395d89b411461051e57806396c7871b146105335761019c565b80637866c6c11461047d578063797bf385146104ca5780637b7933b4146104df5761019c565b80632515aacd116101595780634780eac1116101335780634780eac1146103d157806370a0823114610402578063736ee3d314610435578063776d1a011461044a5761019c565b80632515aacd1461031d578063313ce56714610391578063330691ac146103bc5761019c565b806306fdde03146102185780630c4925fd146102a257806318160ddd146102c95780631d0806ae146102de5780631f68f20a146102f357806320f6d07c14610308575b6108fc5a116101aa57610216565b601c5460408051602036601f81018290048202830182019093528282526001600160a01b039093169260609260009181908401838280828437600092018290525084519495509384935091505060208401855af43d604051816000823e828015610212578282f35b8282fd5b005b34801561022457600080fd5b5061022d610680565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561026757818101518382015260200161024f565b50505050905090810190601f1680156102945780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ae57600080fd5b506102b761070b565b60408051918252519081900360200190f35b3480156102d557600080fd5b506102b7610711565b3480156102ea57600080fd5b506102b7610717565b3480156102ff57600080fd5b506102b761071d565b34801561031457600080fd5b506102b7610723565b34801561032957600080fd5b506103476004803603602081101561034057600080fd5b5035610729565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c08401526001600160a01b031660e083015251908190036101000190f35b34801561039d57600080fd5b506103a6610775565b6040805160ff9092168252519081900360200190f35b3480156103c857600080fd5b506102b761077e565b3480156103dd57600080fd5b506103e6610784565b604080516001600160a01b039092168252519081900360200190f35b34801561040e57600080fd5b506102b76004803603602081101561042557600080fd5b50356001600160a01b0316610793565b34801561044157600080fd5b506103e66107ae565b34801561045657600080fd5b506102166004803603602081101561046d57600080fd5b50356001600160a01b03166107c2565b34801561048957600080fd5b506104a7600480360360208110156104a057600080fd5b50356107e5565b604080516001600160a01b03909316835260208301919091528051918290030190f35b3480156104d657600080fd5b506103e661081a565b3480156104eb57600080fd5b506102b7610829565b34801561050057600080fd5b506103e661082f565b34801561051557600080fd5b506103e661083e565b34801561052a57600080fd5b5061022d61084d565b34801561053f57600080fd5b506103e66108a8565b34801561055457600080fd5b506103e66108b7565b34801561056957600080fd5b506102b76004803603602081101561058057600080fd5b50356108cb565b34801561059357600080fd5b506102b76108e9565b3480156105a857600080fd5b506102b7600480360360408110156105bf57600080fd5b506001600160a01b03813581169160200135166108ef565b3480156105e357600080fd5b50610216600480360360208110156105fa57600080fd5b50356001600160a01b031661091a565b34801561061657600080fd5b5061063d6004803603602081101561062d57600080fd5b50356001600160a01b031661093a565b6040805192835290151560208301528051918290030190f35b34801561066257600080fd5b506102b76004803603602081101561067957600080fd5b5035610956565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156107035780601f106106d857610100808354040283529160200191610703565b820191906000526020600020905b8154815290600101906020018083116106e657829003601f168201915b505050505081565b60135481565b601b5490565b60185481565b600b5481565b60155481565b600f60205260009081526040902080546001820154600283015460038401546004850154600586015460068701546007909701549596949593949293919290916001600160a01b031688565b60045460ff1681565b600c5481565b6007546001600160a01b031681565b6001600160a01b031660009081526019602052604090205490565b600a5461010090046001600160a01b031681565b6001546001600160a01b031633146107d957600080fd5b6107e281610968565b50565b601181815481106107f257fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b6008546001600160a01b031681565b60165481565b6005546001600160a01b031681565b6001546001600160a01b031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107035780601f106106d857610100808354040283529160200191610703565b6006546001600160a01b031681565b60045461010090046001600160a01b031681565b601081815481106108d857fe5b600091825260209091200154905081565b600d5481565b6001600160a01b039182166000908152601a6020908152604080832093909416825291909152205490565b6001546001600160a01b0316331461093157600080fd5b6107e2816109e7565b6012602052600090815260409020805460019091015460ff1682565b600e6020526000908152604090205481565b61097181610a56565b6109c55760408051600160e51b62461bcd02815260206004820152601560248201527f746172676574206e6f74206120636f6e74726163740000000000000000000000604482015290519081900360640190fd5b601c80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0381166109fa57600080fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b3b15159056fea165627a7a72305820b686411f532091c2a4e762f52658ce1de1fab9d19772a43c196b739511aedc290029000000000000000000000000f945189f46f84cff21cf6b9d19e5248138618fa9
Deployed Bytecode
0x60806040526004361061019c5760003560e01c80637866c6c1116100ec578063995363d31161008a578063dd62ed3e11610064578063dd62ed3e1461059c578063f2fde38b146105d7578063fbd9574d1461060a578063fe056342146106565761019c565b8063995363d3146105485780639b3a54d11461055d578063d84d2a47146105875761019c565b8063894ca308116100c6578063894ca308146104f45780638da5cb5b1461050957806395d89b411461051e57806396c7871b146105335761019c565b80637866c6c11461047d578063797bf385146104ca5780637b7933b4146104df5761019c565b80632515aacd116101595780634780eac1116101335780634780eac1146103d157806370a0823114610402578063736ee3d314610435578063776d1a011461044a5761019c565b80632515aacd1461031d578063313ce56714610391578063330691ac146103bc5761019c565b806306fdde03146102185780630c4925fd146102a257806318160ddd146102c95780631d0806ae146102de5780631f68f20a146102f357806320f6d07c14610308575b6108fc5a116101aa57610216565b601c5460408051602036601f81018290048202830182019093528282526001600160a01b039093169260609260009181908401838280828437600092018290525084519495509384935091505060208401855af43d604051816000823e828015610212578282f35b8282fd5b005b34801561022457600080fd5b5061022d610680565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561026757818101518382015260200161024f565b50505050905090810190601f1680156102945780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156102ae57600080fd5b506102b761070b565b60408051918252519081900360200190f35b3480156102d557600080fd5b506102b7610711565b3480156102ea57600080fd5b506102b7610717565b3480156102ff57600080fd5b506102b761071d565b34801561031457600080fd5b506102b7610723565b34801561032957600080fd5b506103476004803603602081101561034057600080fd5b5035610729565b604080519889526020890197909752878701959095526060870193909352608086019190915260a085015260c08401526001600160a01b031660e083015251908190036101000190f35b34801561039d57600080fd5b506103a6610775565b6040805160ff9092168252519081900360200190f35b3480156103c857600080fd5b506102b761077e565b3480156103dd57600080fd5b506103e6610784565b604080516001600160a01b039092168252519081900360200190f35b34801561040e57600080fd5b506102b76004803603602081101561042557600080fd5b50356001600160a01b0316610793565b34801561044157600080fd5b506103e66107ae565b34801561045657600080fd5b506102166004803603602081101561046d57600080fd5b50356001600160a01b03166107c2565b34801561048957600080fd5b506104a7600480360360208110156104a057600080fd5b50356107e5565b604080516001600160a01b03909316835260208301919091528051918290030190f35b3480156104d657600080fd5b506103e661081a565b3480156104eb57600080fd5b506102b7610829565b34801561050057600080fd5b506103e661082f565b34801561051557600080fd5b506103e661083e565b34801561052a57600080fd5b5061022d61084d565b34801561053f57600080fd5b506103e66108a8565b34801561055457600080fd5b506103e66108b7565b34801561056957600080fd5b506102b76004803603602081101561058057600080fd5b50356108cb565b34801561059357600080fd5b506102b76108e9565b3480156105a857600080fd5b506102b7600480360360408110156105bf57600080fd5b506001600160a01b03813581169160200135166108ef565b3480156105e357600080fd5b50610216600480360360208110156105fa57600080fd5b50356001600160a01b031661091a565b34801561061657600080fd5b5061063d6004803603602081101561062d57600080fd5b50356001600160a01b031661093a565b6040805192835290151560208301528051918290030190f35b34801561066257600080fd5b506102b76004803603602081101561067957600080fd5b5035610956565b6002805460408051602060018416156101000260001901909316849004601f810184900484028201840190925281815292918301828280156107035780601f106106d857610100808354040283529160200191610703565b820191906000526020600020905b8154815290600101906020018083116106e657829003601f168201915b505050505081565b60135481565b601b5490565b60185481565b600b5481565b60155481565b600f60205260009081526040902080546001820154600283015460038401546004850154600586015460068701546007909701549596949593949293919290916001600160a01b031688565b60045460ff1681565b600c5481565b6007546001600160a01b031681565b6001600160a01b031660009081526019602052604090205490565b600a5461010090046001600160a01b031681565b6001546001600160a01b031633146107d957600080fd5b6107e281610968565b50565b601181815481106107f257fe5b6000918252602090912060029091020180546001909101546001600160a01b03909116915082565b6008546001600160a01b031681565b60165481565b6005546001600160a01b031681565b6001546001600160a01b031681565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156107035780601f106106d857610100808354040283529160200191610703565b6006546001600160a01b031681565b60045461010090046001600160a01b031681565b601081815481106108d857fe5b600091825260209091200154905081565b600d5481565b6001600160a01b039182166000908152601a6020908152604080832093909416825291909152205490565b6001546001600160a01b0316331461093157600080fd5b6107e2816109e7565b6012602052600090815260409020805460019091015460ff1682565b600e6020526000908152604090205481565b61097181610a56565b6109c55760408051600160e51b62461bcd02815260206004820152601560248201527f746172676574206e6f74206120636f6e74726163740000000000000000000000604482015290519081900360640190fd5b601c80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0381166109fa57600080fd5b6001546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600180546001600160a01b0319166001600160a01b0392909216919091179055565b3b15159056fea165627a7a72305820b686411f532091c2a4e762f52658ce1de1fab9d19772a43c196b739511aedc290029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000f945189f46f84cff21cf6b9d19e5248138618fa9
-----Decoded View---------------
Arg [0] : _newTarget (address): 0xf945189F46f84CFF21cf6b9d19E5248138618Fa9
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000f945189f46f84cff21cf6b9d19e5248138618fa9
Deployed Bytecode Sourcemap
10089:1296:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10365:4;10352:9;:17;10348:56;;10386:7;;10348:56;10433:7;;10451:28;;;;10471:8;10451:28;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10433:7:0;;;;10451:17;;-1:-1:-1;;10471:8:0;;10451:28;;-1:-1:-1;10471:8:0;;-1:-1:-1;10451:28:0;1:33:-1;99:1;81:16;;74:27;;;-1:-1;10571:11:0;;10451:28;;-1:-1:-1;99:1;;;-1:-1;10571:11:0;-1:-1:-1;;10564:4:0;10554:15;;10546:6;10541:3;10528:61;10615:14;10660:4;10654:11;10702:4;10699:1;10694:3;10679:28;10728:6;10748:28;;;;10812:4;10807:3;10800:17;10748:28;10769:4;10764:3;10757:17;10499:331;10089:1296;5782:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5782:18:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;5782:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8507:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8507:33:0;;;:::i;:::-;;;;;;;;;;;;;;;;9609:123;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9609:123:0;;;:::i;8805:27::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8805:27:0;;;:::i;7626:45::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7626:45:0;;;:::i;8628:31::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8628:31:0;;;:::i;8173:50::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8173:50:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8173:50:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8173:50:0;;;;;;;;;;;;;;5834:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5834:21:0;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7686:52;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7686:52:0;;;:::i;5958:27::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5958:27:0;;;:::i;:::-;;;;-1:-1:-1;;;;;5958:27:0;;;;;;;;;;;;;;9740:149;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9740:149:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9740:149:0;-1:-1:-1;;;;;9740:149:0;;:::i;7585:32::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7585:32:0;;;:::i;10845:130::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10845:130:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;10845:130:0;-1:-1:-1;;;;;10845:130:0;;:::i;8309:44::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8309:44:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8309:44:0;;:::i;:::-;;;;-1:-1:-1;;;;;8309:44:0;;;;;;;;;;;;;;;;;;;;;5994:31;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5994:31:0;;;:::i;8724:::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8724:31:0;;;:::i;5897:23::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5897:23:0;;;:::i;3291:20::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3291:20:0;;;:::i;5807:::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5807:20:0;;;:::i;5927:24::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5927:24:0;;;:::i;5864:26::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5864:26:0;;;:::i;8271:29::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8271:29:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8271:29:0;;:::i;8030:31::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8030:31:0;;;:::i;9897:185::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9897:185:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;9897:185:0;;;;;;;;;;:::i;3922:105::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3922:105:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3922:105:0;-1:-1:-1;;;;;3922:105:0;;:::i;8386:64::-;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8386:64:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8386:64:0;-1:-1:-1;;;;;8386:64:0;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;8070:51;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8070:51:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;8070:51:0;;:::i;5782:18::-;;;;;;;;;;;;;;-1:-1:-1;;5782:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;8507:33::-;;;;:::o;9609:123::-;9712:12;;9609:123;:::o;8805:27::-;;;;:::o;7626:45::-;;;;:::o;8628:31::-;;;;:::o;8173:50::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8173:50:0;;:::o;5834:21::-;;;;;;:::o;7686:52::-;;;;:::o;5958:27::-;;;-1:-1:-1;;;;;5958:27:0;;:::o;9740:149::-;-1:-1:-1;;;;;9865:16:0;9833:7;9865:16;;;:8;:16;;;;;;;9740:149::o;7585:32::-;;;;;;-1:-1:-1;;;;;7585:32:0;;:::o;10845:130::-;3734:5;;-1:-1:-1;;;;;3734:5:0;3720:10;:19;3712:28;;;;;;10945:22;10956:10;10945;:22::i;:::-;10845:130;:::o;8309:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8309:44:0;;;;-1:-1:-1;8309:44:0;:::o;5994:31::-;;;-1:-1:-1;;;;;5994:31:0;;:::o;8724:::-;;;;:::o;5897:23::-;;;-1:-1:-1;;;;;5897:23:0;;:::o;3291:20::-;;;-1:-1:-1;;;;;3291:20:0;;:::o;5807:::-;;;;;;;;;;;;;;;-1:-1:-1;;5807:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5927:24;;;-1:-1:-1;;;;;5927:24:0;;:::o;5864:26::-;;;;;;-1:-1:-1;;;;;5864:26:0;;:::o;8271:29::-;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8271:29:0;:::o;8030:31::-;;;;:::o;9897:185::-;-1:-1:-1;;;;;10049:15:0;;;10017:7;10049:15;;;:7;:15;;;;;;;;:25;;;;;;;;;;;;;9897:185::o;3922:105::-;3734:5;;-1:-1:-1;;;;;3734:5:0;3720:10;:19;3712:28;;;;;;3992:29;4011:9;3992:18;:29::i;8386:64::-;;;;;;;;;;;;;;;;;;;;;:::o;8070:51::-;;;;;;;;;;;;;:::o;10983:180::-;11075:23;11087:10;11075:11;:23::i;:::-;11067:57;;;;;-1:-1:-1;;;;;11067:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;11135:7;:20;;-1:-1:-1;;;;;;11135:20:0;-1:-1:-1;;;;;11135:20:0;;;;;;;;;;10983:180::o;4168:175::-;-1:-1:-1;;;;;4239:23:0;;4231:32;;;;;;4296:5;;4275:38;;-1:-1:-1;;;;;4275:38:0;;;;4296:5;;4275:38;;4296:5;;4275:38;4320:5;:17;;-1:-1:-1;;;;;;4320:17:0;-1:-1:-1;;;;;4320:17:0;;;;;;;;;;4168:175::o;11171:211::-;11330:17;11366:8;;;11171:211::o
Swarm Source
bzzr://b686411f532091c2a4e762f52658ce1de1fab9d19772a43c196b739511aedc29
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | 100.00% | $1 | 5.1074 | $5.11 |
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.