More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 1,069 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Update Contract | 8812946 | 1890 days ago | IN | 0 ETH | 0.00461715 | ||||
Update Contract | 8780082 | 1895 days ago | IN | 0 ETH | 0.0048708 | ||||
Update Contract | 8727409 | 1903 days ago | IN | 0 ETH | 0.0048676 | ||||
Update Contract | 8642830 | 1916 days ago | IN | 0 ETH | 0.0048644 | ||||
Update Contract | 8594672 | 1924 days ago | IN | 0 ETH | 0.0048676 | ||||
Update Contract | 8490639 | 1940 days ago | IN | 0 ETH | 0.00312035 | ||||
Update Contract | 8486668 | 1941 days ago | IN | 0 ETH | 0.0048708 | ||||
Update Contract | 8447632 | 1947 days ago | IN | 0 ETH | 0.0048676 | ||||
Update Contract | 8201310 | 1985 days ago | IN | 0 ETH | 0.0048708 | ||||
Update Contract | 7979692 | 2020 days ago | IN | 0 ETH | 0.00311715 | ||||
Update Contract | 7979618 | 2020 days ago | IN | 0 ETH | 0.0048676 | ||||
Update Contract | 7932769 | 2027 days ago | IN | 0 ETH | 0.0048676 | ||||
Update Contract | 7926637 | 2028 days ago | IN | 0 ETH | 0.0048644 | ||||
Transfer | 7905626 | 2031 days ago | IN | 1.2972 ETH | 0.00181268 | ||||
Update Contract | 7905609 | 2031 days ago | IN | 0 ETH | 0.00311395 | ||||
Transfer | 7905560 | 2031 days ago | IN | 1.2972 ETH | 0.0003648 | ||||
Transfer | 7905545 | 2031 days ago | IN | 1.2972 ETH | 0.00035959 | ||||
Update Contract | 7905533 | 2031 days ago | IN | 0 ETH | 0.00311395 | ||||
Update Contract | 7904990 | 2031 days ago | IN | 0 ETH | 0.0033644 | ||||
Update Contract | 7900663 | 2032 days ago | IN | 0 ETH | 0.0048708 | ||||
Update Contract | 7888869 | 2034 days ago | IN | 0 ETH | 0.0048676 | ||||
Update Contract | 7886794 | 2034 days ago | IN | 0 ETH | 0.00311715 | ||||
Transfer | 7886737 | 2034 days ago | IN | 1.4956 ETH | 0.00052114 | ||||
Update Contract | 7886729 | 2034 days ago | IN | 0 ETH | 0.0048676 | ||||
Transfer | 7870570 | 2037 days ago | IN | 1.581 ETH | 0.00089146 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
7905626 | 2031 days ago | 0.03 ETH | ||||
7905560 | 2031 days ago | 0.03 ETH | ||||
7905545 | 2031 days ago | 0.03 ETH | ||||
7886737 | 2034 days ago | 0.03 ETH | ||||
7870544 | 2037 days ago | 0.03 ETH | ||||
7734410 | 2058 days ago | 0.9253 ETH | ||||
7725912 | 2059 days ago | 0.03 ETH | ||||
7725905 | 2059 days ago | 0.03 ETH | ||||
7721522 | 2060 days ago | 0.03 ETH | ||||
7721043 | 2060 days ago | 0.03 ETH | ||||
7716417 | 2061 days ago | 0.03 ETH | ||||
7715080 | 2061 days ago | 0.03 ETH | ||||
7713339 | 2061 days ago | 6.0204 ETH | ||||
7710790 | 2062 days ago | 0.03 ETH | ||||
7708798 | 2062 days ago | 0.03 ETH | ||||
7700601 | 2063 days ago | 0.03 ETH | ||||
7699588 | 2063 days ago | 0.03 ETH | ||||
7696678 | 2064 days ago | 0.03 ETH | ||||
7687740 | 2065 days ago | 0.03 ETH | ||||
7687730 | 2065 days ago | 0.03 ETH | ||||
7687691 | 2065 days ago | 0.03 ETH | ||||
7687637 | 2065 days ago | 0.03 ETH | ||||
7687631 | 2065 days ago | 0.03 ETH | ||||
7687546 | 2065 days ago | 0.03 ETH | ||||
7683568 | 2066 days ago | 0.03 ETH |
Loading...
Loading
Contract Name:
FOXTWidget
Compiler Version
v0.4.25+commit.59dbf8f1
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2018-12-04 */ pragma solidity ^0.4.25; contract ErcInterface { function transferFrom(address _from, address _to, uint256 _value) public; function transfer(address _to, uint256 _value) public; function balanceOf(address _who) public returns(uint256); } contract Ownable { address public owner; /** * The address whcih deploys this contrcat is automatically assgined ownership. * */ constructor() public { owner = msg.sender; } /** * Functions with this modifier can only be executed by the owner of the contract. * */ modifier onlyOwner { require(msg.sender == owner); _; } event OwnershipTransferred(address indexed from, address indexed to); /** * Transfers ownership to new Ethereum address. This function can only be called by the * owner. * @param _newOwner the address to be granted ownership. **/ function transferOwnership(address _newOwner) public onlyOwner { require(_newOwner != 0x0); emit OwnershipTransferred(owner, _newOwner); owner = _newOwner; } } /** * @title SafeMath * @dev Math operations with safety checks that revert on error */ library SafeMath { /** * @dev Multiplies two numbers, reverts on 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-solidity/pull/522 if (_a == 0) { return 0; } uint256 c = _a * _b; require(c / _a == _b); return c; } /** * @dev Integer division of two numbers truncating the quotient, reverts on division by zero. */ function div(uint256 _a, uint256 _b) internal pure returns (uint256) { require(_b > 0); // Solidity only automatically asserts 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 c; } /** * @dev Subtracts two numbers, reverts on overflow (i.e. if subtrahend is greater than minuend). */ function sub(uint256 _a, uint256 _b) internal pure returns (uint256) { require(_b <= _a); uint256 c = _a - _b; return c; } /** * @dev Adds two numbers, reverts on overflow. */ function add(uint256 _a, uint256 _b) internal pure returns (uint256) { uint256 c = _a + _b; require(c >= _a); return c; } /** * @dev Divides two numbers and returns the remainder (unsigned integer modulo), * reverts when dividing by zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { require(b != 0); return a % b; } } contract FOXTWidget is Ownable { using SafeMath for uint256; ErcInterface public constant FOXT = ErcInterface(0xFbe878CED08132bd8396988671b450793C44bC12); bool public contractFrozen; uint256 private rate; uint256 private purchaseTimeLimit; uint256 private txFee; mapping (address => uint256) private purchaseDeadlines; mapping (address => uint256) private maxPurchase; mapping (address => bool) private isBotAddress; address[] private botsOwedTxFees; uint256 private indexOfOwedTxFees; event TokensPurchased(address indexed by, address indexed recipient, uint256 total, uint256 value); event RateUpdated(uint256 latestRate); constructor() public { purchaseTimeLimit = 10 minutes; txFee = 300e14; //same as 0.03 ETH. contractFrozen = false; indexOfOwedTxFees = 0; } /** * Allows the owner to freeze / unfreeze the contract * */ function toggleFreeze() public onlyOwner { contractFrozen = !contractFrozen; } /** * Allows the owner of the contract to add a bot address * */ function addBotAddress(address _botAddress) public onlyOwner { require(!isBotAddress[_botAddress]); isBotAddress[_botAddress] = true; } /** * Allows the owner of the contract to remove a bot address */ function removeBotAddress(address _botAddress) public onlyOwner { require(isBotAddress[_botAddress]); isBotAddress[_botAddress] = false; } /** * Allows the owner to change the time limit which buyers will have once they * have been permitted to buy tokens with the contract update. * * @param _newPurchaseTimeLimit The new time limit which buyers will have to * make a purchase. * * @return true if the function exeutes successfully, false otherwise * */ function changeTimeLimitMinutes(uint256 _newPurchaseTimeLimit) public onlyOwner returns(bool) { require(_newPurchaseTimeLimit > 0 && _newPurchaseTimeLimit != purchaseTimeLimit); purchaseTimeLimit = _newPurchaseTimeLimit; return true; } /** * Allows the owner to change the fixed transaction fee which will be charged * to the buyers. * * @param _newTxFee The new transaction fee which will be charged to the buyers. * * @return true if the function exeutes successfully, false otherwise * */ function changeTxFee(uint256 _newTxFee) public onlyOwner returns(bool) { require(_newTxFee != txFee); txFee = _newTxFee; return true; } /** * Functions with this modifier can only be invoked by either one of the bot * addresses or the owner of the contract. * */ modifier restricted { require(isBotAddress[msg.sender] || msg.sender == owner); _; } /** * Allows the bot or the owner of the contract to update the contract (will * usuall by invoked right before a buyer will make a purchase). * * @param _rate The rate at which the FOXT tokens are shwon on Coin Market Cap. * @param _purchaser The address of the buyer. * @param _ethInvestment The total amoun of ETH the buyer has specified he * or she will send to the contract. * * @return true if the function exeutes successfully, false otherwise * */ function updateContract(uint256 _rate, address _purchaser, uint256 _ethInvestment) public restricted returns(bool){ require(!contractFrozen); require(_purchaser != address(0x0)); require(_ethInvestment > 0); require(_rate != 0); if(_rate != rate) { rate = _rate; } maxPurchase[_purchaser] = _ethInvestment; purchaseDeadlines[_purchaser] = now.add(purchaseTimeLimit); botsOwedTxFees.push(msg.sender); emit RateUpdated(rate); return true; } /** * @return The purchaseTimeLimit * */ function getTimePurchase() public view returns(uint256) { return purchaseTimeLimit; } /** * @return The current rate shown on Coin Market Cap. * */ function getRate() public view returns(uint256) { return rate; } /** * Checks if a purchaser is permitted to make a purchase by checking * the following conditions. 1st condition is that the bot updated the contract * with the purcahser's address no longer than the purchase deadline ago. 2nd * condition is that the purchaser is allowed to make an investment which is * greater than 0. * * @return true if the purchaser is permitted to make a purchase, false * otherwise. * */ function addrCanPurchase(address _purchaser) public view returns(bool) { return now < purchaseDeadlines[_purchaser] && maxPurchase[_purchaser] > 0; } /** * Allows users to buy FOXT tokens. For the function to execute successfully * the following conditions must be met: 1st the purchaser must purcahse the * tokens before the time limit is up (time limit is set when the bot updates * the contract). 2nd the purchaser must send at least enough ETH to cover the * txFee to cover the cost of the update, however, if the purchaser sends more * ETH than specified in the update, the purchaser will still get FOXT tokens * but also the remaining ETH will be refunded. * * @param _purchaser The address of the buyer * * @return true if the function exeutes successfully, false otherwise * */ function buyTokens(address _purchaser) public payable returns(bool){ require(!contractFrozen); require(addrCanPurchase(_purchaser)); require(msg.value > txFee); uint256 msgVal = msg.value; if(msgVal > maxPurchase[_purchaser]) { msg.sender.transfer(msg.value.sub(maxPurchase[_purchaser])); msgVal = maxPurchase[_purchaser]; } maxPurchase[_purchaser] = 0; msgVal = msgVal.sub(txFee); botsOwedTxFees[indexOfOwedTxFees].transfer(txFee); indexOfOwedTxFees = indexOfOwedTxFees.add(1); uint256 toSend = msgVal.mul(rate); FOXT.transfer(_purchaser, toSend); emit TokensPurchased(msg.sender, _purchaser, toSend, msg.value); } /** * Fallback function invokes the buyTokens function. * */ function() public payable { buyTokens(msg.sender); } /** * Allows the owner of the contract to withdraw all ETH. * */ function withdrawETH() public onlyOwner { owner.transfer(address(this).balance); } /** * Allows the owner of the contract to withdraw FOXT tokens. * * @param _recipient The address of the receiver. * @param _totalTokens The number of FOXT tokens to send. * */ function withdrawFoxt(address _recipient, uint256 _totalTokens) public onlyOwner { FOXT.transfer(_recipient, _totalTokens); } /** * Allows the owner of the contract to withdraw any ERC20 token. * * @param _tokenAddr The contract address of the ERC20 token. * @param _recipient The address of the receiver. * @param _totalTokens The number of tokens to send * */ function withdrawAnyERC20(address _tokenAddr, address _recipient, uint256 _totalTokens) public onlyOwner { ErcInterface token = ErcInterface(_tokenAddr); token.transfer(_recipient, _totalTokens); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[],"name":"toggleFreeze","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_tokenAddr","type":"address"},{"name":"_recipient","type":"address"},{"name":"_totalTokens","type":"uint256"}],"name":"withdrawAnyERC20","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_purchaser","type":"address"}],"name":"addrCanPurchase","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newTxFee","type":"uint256"}],"name":"changeTxFee","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getRate","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getTimePurchase","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_recipient","type":"address"},{"name":"_totalTokens","type":"uint256"}],"name":"withdrawFoxt","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newPurchaseTimeLimit","type":"uint256"}],"name":"changeTimeLimitMinutes","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"FOXT","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_botAddress","type":"address"}],"name":"removeBotAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"contractFrozen","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"withdrawETH","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_botAddress","type":"address"}],"name":"addBotAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_purchaser","type":"address"}],"name":"buyTokens","outputs":[{"name":"","type":"bool"}],"payable":true,"stateMutability":"payable","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_rate","type":"uint256"},{"name":"_purchaser","type":"address"},{"name":"_ethInvestment","type":"uint256"}],"name":"updateContract","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"by","type":"address"},{"indexed":true,"name":"recipient","type":"address"},{"indexed":false,"name":"total","type":"uint256"},{"indexed":false,"name":"value","type":"uint256"}],"name":"TokensPurchased","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"latestRate","type":"uint256"}],"name":"RateUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
608060405234801561001057600080fd5b5060008054610258600255666a94d74f43000060035560a060020a60ff0219600160a060020a03199091163317168155600855610be6806100526000396000f3006080604052600436106100f05763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166334fc259181146100fc57806339785550146101135780635aff59e31461013d578063610103d914610172578063679aefce1461018a5780636f42934d146101b15780638da5cb5b146101c657806397c2a9b7146101f75780639fe81f521461021b578063babbffa314610233578063c31f353714610248578063c79bad4314610269578063e086e5ec1461027e578063e41765de14610293578063ec8ac4d8146102b4578063f2fde38b146102c8578063faabc195146102e9575b6100f933610310565b50005b34801561010857600080fd5b5061011161058a565b005b34801561011f57600080fd5b50610111600160a060020a03600435811690602435166044356105e4565b34801561014957600080fd5b5061015e600160a060020a0360043516610686565b604080519115158252519081900360200190f35b34801561017e57600080fd5b5061015e6004356106c9565b34801561019657600080fd5b5061019f6106f9565b60408051918252519081900360200190f35b3480156101bd57600080fd5b5061019f6106ff565b3480156101d257600080fd5b506101db610705565b60408051600160a060020a039092168252519081900360200190f35b34801561020357600080fd5b50610111600160a060020a0360043516602435610714565b34801561022757600080fd5b5061015e6004356107c2565b34801561023f57600080fd5b506101db610800565b34801561025457600080fd5b50610111600160a060020a0360043516610818565b34801561027557600080fd5b5061015e610877565b34801561028a57600080fd5b50610111610898565b34801561029f57600080fd5b50610111600160a060020a03600435166108ed565b61015e600160a060020a0360043516610310565b3480156102d457600080fd5b50610111600160a060020a036004351661094e565b3480156102f557600080fd5b5061015e600435600160a060020a03602435166044356109e2565b600080548190819074010000000000000000000000000000000000000000900460ff161561033d57600080fd5b61034684610686565b151561035157600080fd5b600354341161035f57600080fd5b600160a060020a0384166000908152600560205260409020543492508211156103f757600160a060020a03841660009081526005602052604090205433906108fc906103b290349063ffffffff610b5516565b6040518115909202916000818181858888f193505050501580156103da573d6000803e3d6000fd5b50600160a060020a03841660009081526005602052604090205491505b600160a060020a03841660009081526005602052604081205560035461042490839063ffffffff610b5516565b9150600760085481548110151561043757fe5b6000918252602082200154600354604051600160a060020a039092169281156108fc029290818181858888f19350505050158015610479573d6000803e3d6000fd5b5060085461048e90600163ffffffff610b7316565b6008556001546104a590839063ffffffff610b8c16565b604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038716600482015260248101839052905191925073fbe878ced08132bd8396988671b450793c44bc129163a9059cbb9160448082019260009290919082900301818387803b15801561052457600080fd5b505af1158015610538573d6000803e3d6000fd5b5050604080518481523460208201528151600160a060020a03891694503393507f6faf93231a456e552dbc9961f58d9713ee4f2e69d15f1975b050ef0911053a7b929181900390910190a35050919050565b600054600160a060020a031633146105a157600080fd5b6000805474ff0000000000000000000000000000000000000000198116740100000000000000000000000000000000000000009182900460ff1615909102179055565b60008054600160a060020a031633146105fc57600080fd5b50604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038481166004830152602482018490529151859283169163a9059cbb91604480830192600092919082900301818387803b15801561066857600080fd5b505af115801561067c573d6000803e3d6000fd5b5050505050505050565b600160a060020a038116600090815260046020526040812054421080156106c35750600160a060020a038216600090815260056020526040812054115b92915050565b60008054600160a060020a031633146106e157600080fd5b6003548214156106f057600080fd5b50600355600190565b60015490565b60025490565b600054600160a060020a031681565b600054600160a060020a0316331461072b57600080fd5b604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038416600482015260248101839052905173fbe878ced08132bd8396988671b450793c44bc129163a9059cbb91604480830192600092919082900301818387803b1580156107a657600080fd5b505af11580156107ba573d6000803e3d6000fd5b505050505050565b60008054600160a060020a031633146107da57600080fd5b6000821180156107ec57506002548214155b15156107f757600080fd5b50600255600190565b73fbe878ced08132bd8396988671b450793c44bc1281565b600054600160a060020a0316331461082f57600080fd5b600160a060020a03811660009081526006602052604090205460ff16151561085657600080fd5b600160a060020a03166000908152600660205260409020805460ff19169055565b60005474010000000000000000000000000000000000000000900460ff1681565b600054600160a060020a031633146108af57600080fd5b60008054604051600160a060020a0390911691303180156108fc02929091818181858888f193505050501580156108ea573d6000803e3d6000fd5b50565b600054600160a060020a0316331461090457600080fd5b600160a060020a03811660009081526006602052604090205460ff161561092a57600080fd5b600160a060020a03166000908152600660205260409020805460ff19166001179055565b600054600160a060020a0316331461096557600080fd5b600160a060020a038116151561097a57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b3360009081526006602052604081205460ff1680610a0a5750600054600160a060020a031633145b1515610a1557600080fd5b60005474010000000000000000000000000000000000000000900460ff1615610a3d57600080fd5b600160a060020a0383161515610a5257600080fd5b60008211610a5f57600080fd5b831515610a6b57600080fd5b6001548414610a7a5760018490555b600160a060020a0383166000908152600560205260409020829055600254610aa990429063ffffffff610b7316565b600160a060020a0384166000908152600460209081526040808320939093556007805460018181018355919093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909201805473ffffffffffffffffffffffffffffffffffffffff1916331790559054825190815291517fe65c987b2e4668e09ba867026921588005b2b2063607a1e7e7d91683c8f91b7b9281900390910190a15060019392505050565b60008083831115610b6557600080fd5b5050808203805b5092915050565b600082820183811015610b8557600080fd5b9392505050565b600080831515610b9f5760009150610b6c565b50828202828482811515610baf57fe5b0414610b8557600080fd00a165627a7a72305820cf95b4ab133181511b3355a035b5865ce1dd17fa70bf6b001c313a1f64d212ac0029
Deployed Bytecode
0x6080604052600436106100f05763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166334fc259181146100fc57806339785550146101135780635aff59e31461013d578063610103d914610172578063679aefce1461018a5780636f42934d146101b15780638da5cb5b146101c657806397c2a9b7146101f75780639fe81f521461021b578063babbffa314610233578063c31f353714610248578063c79bad4314610269578063e086e5ec1461027e578063e41765de14610293578063ec8ac4d8146102b4578063f2fde38b146102c8578063faabc195146102e9575b6100f933610310565b50005b34801561010857600080fd5b5061011161058a565b005b34801561011f57600080fd5b50610111600160a060020a03600435811690602435166044356105e4565b34801561014957600080fd5b5061015e600160a060020a0360043516610686565b604080519115158252519081900360200190f35b34801561017e57600080fd5b5061015e6004356106c9565b34801561019657600080fd5b5061019f6106f9565b60408051918252519081900360200190f35b3480156101bd57600080fd5b5061019f6106ff565b3480156101d257600080fd5b506101db610705565b60408051600160a060020a039092168252519081900360200190f35b34801561020357600080fd5b50610111600160a060020a0360043516602435610714565b34801561022757600080fd5b5061015e6004356107c2565b34801561023f57600080fd5b506101db610800565b34801561025457600080fd5b50610111600160a060020a0360043516610818565b34801561027557600080fd5b5061015e610877565b34801561028a57600080fd5b50610111610898565b34801561029f57600080fd5b50610111600160a060020a03600435166108ed565b61015e600160a060020a0360043516610310565b3480156102d457600080fd5b50610111600160a060020a036004351661094e565b3480156102f557600080fd5b5061015e600435600160a060020a03602435166044356109e2565b600080548190819074010000000000000000000000000000000000000000900460ff161561033d57600080fd5b61034684610686565b151561035157600080fd5b600354341161035f57600080fd5b600160a060020a0384166000908152600560205260409020543492508211156103f757600160a060020a03841660009081526005602052604090205433906108fc906103b290349063ffffffff610b5516565b6040518115909202916000818181858888f193505050501580156103da573d6000803e3d6000fd5b50600160a060020a03841660009081526005602052604090205491505b600160a060020a03841660009081526005602052604081205560035461042490839063ffffffff610b5516565b9150600760085481548110151561043757fe5b6000918252602082200154600354604051600160a060020a039092169281156108fc029290818181858888f19350505050158015610479573d6000803e3d6000fd5b5060085461048e90600163ffffffff610b7316565b6008556001546104a590839063ffffffff610b8c16565b604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038716600482015260248101839052905191925073fbe878ced08132bd8396988671b450793c44bc129163a9059cbb9160448082019260009290919082900301818387803b15801561052457600080fd5b505af1158015610538573d6000803e3d6000fd5b5050604080518481523460208201528151600160a060020a03891694503393507f6faf93231a456e552dbc9961f58d9713ee4f2e69d15f1975b050ef0911053a7b929181900390910190a35050919050565b600054600160a060020a031633146105a157600080fd5b6000805474ff0000000000000000000000000000000000000000198116740100000000000000000000000000000000000000009182900460ff1615909102179055565b60008054600160a060020a031633146105fc57600080fd5b50604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038481166004830152602482018490529151859283169163a9059cbb91604480830192600092919082900301818387803b15801561066857600080fd5b505af115801561067c573d6000803e3d6000fd5b5050505050505050565b600160a060020a038116600090815260046020526040812054421080156106c35750600160a060020a038216600090815260056020526040812054115b92915050565b60008054600160a060020a031633146106e157600080fd5b6003548214156106f057600080fd5b50600355600190565b60015490565b60025490565b600054600160a060020a031681565b600054600160a060020a0316331461072b57600080fd5b604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a038416600482015260248101839052905173fbe878ced08132bd8396988671b450793c44bc129163a9059cbb91604480830192600092919082900301818387803b1580156107a657600080fd5b505af11580156107ba573d6000803e3d6000fd5b505050505050565b60008054600160a060020a031633146107da57600080fd5b6000821180156107ec57506002548214155b15156107f757600080fd5b50600255600190565b73fbe878ced08132bd8396988671b450793c44bc1281565b600054600160a060020a0316331461082f57600080fd5b600160a060020a03811660009081526006602052604090205460ff16151561085657600080fd5b600160a060020a03166000908152600660205260409020805460ff19169055565b60005474010000000000000000000000000000000000000000900460ff1681565b600054600160a060020a031633146108af57600080fd5b60008054604051600160a060020a0390911691303180156108fc02929091818181858888f193505050501580156108ea573d6000803e3d6000fd5b50565b600054600160a060020a0316331461090457600080fd5b600160a060020a03811660009081526006602052604090205460ff161561092a57600080fd5b600160a060020a03166000908152600660205260409020805460ff19166001179055565b600054600160a060020a0316331461096557600080fd5b600160a060020a038116151561097a57600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b3360009081526006602052604081205460ff1680610a0a5750600054600160a060020a031633145b1515610a1557600080fd5b60005474010000000000000000000000000000000000000000900460ff1615610a3d57600080fd5b600160a060020a0383161515610a5257600080fd5b60008211610a5f57600080fd5b831515610a6b57600080fd5b6001548414610a7a5760018490555b600160a060020a0383166000908152600560205260409020829055600254610aa990429063ffffffff610b7316565b600160a060020a0384166000908152600460209081526040808320939093556007805460018181018355919093527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c688909201805473ffffffffffffffffffffffffffffffffffffffff1916331790559054825190815291517fe65c987b2e4668e09ba867026921588005b2b2063607a1e7e7d91683c8f91b7b9281900390910190a15060019392505050565b60008083831115610b6557600080fd5b5050808203805b5092915050565b600082820183811015610b8557600080fd5b9392505050565b600080831515610b9f5760009150610b6c565b50828202828482811515610baf57fe5b0414610b8557600080fd00a165627a7a72305820cf95b4ab133181511b3355a035b5865ce1dd17fa70bf6b001c313a1f64d212ac0029
Swarm Source
bzzr://cf95b4ab133181511b3355a035b5865ce1dd17fa70bf6b001c313a1f64d212ac
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 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.