More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 1,398 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve All Orde... | 10804017 | 1614 days ago | IN | 0 ETH | 0.0149791 | ||||
Place Order | 10795315 | 1615 days ago | IN | 0 ETH | 0.02782866 | ||||
Place Order | 10795227 | 1615 days ago | IN | 0 ETH | 0.02765833 | ||||
Place Order | 10766528 | 1620 days ago | IN | 0 ETH | 0.02261935 | ||||
Place Order | 10766427 | 1620 days ago | IN | 0 ETH | 0.02165974 | ||||
Place Order | 10705351 | 1629 days ago | IN | 0 ETH | 0.01825044 | ||||
Approve Order | 10511754 | 1659 days ago | IN | 0 ETH | 0.00214097 | ||||
Place Order | 10351275 | 1684 days ago | IN | 0 ETH | 0.00319382 | ||||
Approve All Orde... | 10181712 | 1710 days ago | IN | 0 ETH | 0.00286099 | ||||
Place Order | 10181447 | 1710 days ago | IN | 0 ETH | 0.00322989 | ||||
Place Order | 10148937 | 1715 days ago | IN | 0 ETH | 0.00411153 | ||||
Place Order | 10145063 | 1716 days ago | IN | 0 ETH | 0.00438563 | ||||
Place Order | 10118703 | 1720 days ago | IN | 0 ETH | 0.00182461 | ||||
Approve All Orde... | 10117826 | 1720 days ago | IN | 0 ETH | 0.00309576 | ||||
Place Order | 10112698 | 1721 days ago | IN | 0 ETH | 0.00328951 | ||||
Place Order | 10111099 | 1721 days ago | IN | 0 ETH | 0.00356332 | ||||
Place Order | 10105858 | 1722 days ago | IN | 0 ETH | 0.00197713 | ||||
Approve All Orde... | 10105486 | 1722 days ago | IN | 0 ETH | 0.00184606 | ||||
Place Order | 10103816 | 1722 days ago | IN | 0 ETH | 0.00630434 | ||||
Place Order | 10102845 | 1722 days ago | IN | 0 ETH | 0.00411225 | ||||
Place Order | 10096715 | 1723 days ago | IN | 0 ETH | 0.00421181 | ||||
Approve All Orde... | 10091099 | 1724 days ago | IN | 0 ETH | 0.00556896 | ||||
Place Order | 10090307 | 1724 days ago | IN | 0 ETH | 0.00407035 | ||||
Place Order | 10071250 | 1727 days ago | IN | 0 ETH | 0.00301512 | ||||
Place Order | 10061647 | 1729 days ago | IN | 0 ETH | 0.00226134 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
10804017 | 1614 days ago | 0.0002 ETH | ||||
10804017 | 1614 days ago | 0.0002 ETH | ||||
10804017 | 1614 days ago | 0.0002 ETH | ||||
10804017 | 1614 days ago | 0.0002 ETH | ||||
10804017 | 1614 days ago | 0.0002 ETH | ||||
10511754 | 1659 days ago | 0.0002 ETH | ||||
10181712 | 1710 days ago | 0.0002 ETH | ||||
10181712 | 1710 days ago | 0.0002 ETH | ||||
10181712 | 1710 days ago | 0.0002 ETH | ||||
10181712 | 1710 days ago | 0.0002 ETH | ||||
10117826 | 1720 days ago | 0.0002 ETH | ||||
10117826 | 1720 days ago | 0.0002 ETH | ||||
10117826 | 1720 days ago | 0.0002 ETH | ||||
10105486 | 1722 days ago | 0.0002 ETH | ||||
10105486 | 1722 days ago | 0.0002 ETH | ||||
10105486 | 1722 days ago | 0.0002 ETH | ||||
10091099 | 1724 days ago | 0.0002 ETH | ||||
10091099 | 1724 days ago | 0.0002 ETH | ||||
10091099 | 1724 days ago | 0.0002 ETH | ||||
10091099 | 1724 days ago | 0.0002 ETH | ||||
10091099 | 1724 days ago | 0.0002 ETH | ||||
10013830 | 1736 days ago | 0.0002 ETH | ||||
10013830 | 1736 days ago | 0.0002 ETH | ||||
10007746 | 1737 days ago | 0.0002 ETH | ||||
10007746 | 1737 days ago | 0.0002 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
TridentDistribution
Compiler Version
v0.4.24+commit.e67f0147
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-02-28 */ pragma solidity ^0.4.24; /** * @title Ownable * @dev The Ownable contract has an owner address, and provides basic authorization control * functions, this simplifies the implementation of "user permissions". * @dev Based on: OpenZeppelin */ 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 { require(_newOwner != address(0)); emit OwnershipTransferred(owner, _newOwner); owner = _newOwner; } } /** * @title ERC20 interface * @dev see https://github.com/ethereum/EIPs/issues/20 */ contract ERC20 { function totalSupply() public view returns (uint256); function balanceOf(address _who) public view returns (uint256); function allowance(address _owner, address _spender) public view returns (uint256); function transfer(address _to, uint256 _value) public returns (bool); function approve(address _spender, uint256 _value) public returns (bool); function transferFrom(address _from, address _to, uint256 _value) public returns (bool); event Transfer( address indexed from, address indexed to, uint256 value ); event Approval( address indexed owner, address indexed spender, uint256 value ); } /** * @title TridentDistribution * @dev Implementation of the TridentDistribution smart contract. */ contract TridentDistribution is Ownable { // Stores the Trident smart contract ERC20 public trident; // Struct that represents a transfer order struct Order { uint256 amount; // amount of tokens to transfer address account; // account to transfer amount to string metadata; // arbitrary metadata } // Array of all current transfer orders Order[] orders; // Accounts allowed to place orders address[] orderDelegates; // Accounts allowed to approve orders address[] approvalDelegates; // Amount of ETH sent with each order executed uint public complementaryEthPerOrder; // Event emitted when an account has been approved as an order delegate event ApproveOrderDelegate( address indexed orderDelegate ); // Event emitted when an account has been revoked from being an order delegate event RevokeOrderDelegate( address indexed orderDelegate ); // Event emitted when an account has been approved as an approval delegate event ApproveApprovalDelegate( address indexed approvalDelegate ); // Event emitted when an account has been revoked from being an approval delegate event RevokeApprovalDelegate( address indexed approvalDelegate ); // Event emitted when an order has been placed event OrderPlaced( uint indexed orderIndex ); // Event emitted when an order has been approved and executed event OrderApproved( uint indexed orderIndex ); // Event emitted when an order has been revoked event OrderRevoked( uint indexed orderIndex ); // Event emitted when the entire orders batch is approved and executed event AllOrdersApproved(); // Event emitted when complementaryEthPerOrder has been set event ComplementaryEthPerOrderSet(); constructor(ERC20 _tridentSmartContract) public { trident = _tridentSmartContract; } /** * @dev Fallback function to allow contract to receive ETH via 'send'. */ function () public payable { } /** * @dev Throws if called by any account other than an owner or an order delegate. */ modifier onlyOwnerOrOrderDelegate() { bool allowedToPlaceOrders = false; if(msg.sender==owner) { allowedToPlaceOrders = true; } else { for(uint i=0; i<orderDelegates.length; i++) { if(orderDelegates[i]==msg.sender) { allowedToPlaceOrders = true; break; } } } require(allowedToPlaceOrders==true); _; } /** * @dev Throws if called by any account other than an owner or an approval delegate. */ modifier onlyOwnerOrApprovalDelegate() { bool allowedToApproveOrders = false; if(msg.sender==owner) { allowedToApproveOrders = true; } else { for(uint i=0; i<approvalDelegates.length; i++) { if(approvalDelegates[i]==msg.sender) { allowedToApproveOrders = true; break; } } } require(allowedToApproveOrders==true); _; } /** * @dev Return the array of order delegates. */ function getOrderDelegates() external view returns (address[]) { return orderDelegates; } /** * @dev Return the array of burn delegates. */ function getApprovalDelegates() external view returns (address[]) { return approvalDelegates; } /** * @dev Give an account permission to place orders. * @param _orderDelegate The account to be approved. */ function approveOrderDelegate(address _orderDelegate) onlyOwner external returns (bool) { bool delegateFound = false; for(uint i=0; i<orderDelegates.length; i++) { if(orderDelegates[i]==_orderDelegate) { delegateFound = true; break; } } if(!delegateFound) { orderDelegates.push(_orderDelegate); } emit ApproveOrderDelegate(_orderDelegate); return true; } /** * @dev Revoke permission to place orders from an order delegate. * @param _orderDelegate The account to be revoked. */ function revokeOrderDelegate(address _orderDelegate) onlyOwner external returns (bool) { uint length = orderDelegates.length; require(length > 0); address lastDelegate = orderDelegates[length-1]; if(_orderDelegate == lastDelegate) { delete orderDelegates[length-1]; orderDelegates.length--; } else { // Game plan: find the delegate, replace it with the very last item in the array, then delete the last item for(uint i=0; i<length; i++) { if(orderDelegates[i]==_orderDelegate) { orderDelegates[i] = lastDelegate; delete orderDelegates[length-1]; orderDelegates.length--; break; } } } emit RevokeOrderDelegate(_orderDelegate); return true; } /** * @dev Give an account permission to approve orders. * @param _approvalDelegate The account to be approved. */ function approveApprovalDelegate(address _approvalDelegate) onlyOwner external returns (bool) { bool delegateFound = false; for(uint i=0; i<approvalDelegates.length; i++) { if(approvalDelegates[i]==_approvalDelegate) { delegateFound = true; break; } } if(!delegateFound) { approvalDelegates.push(_approvalDelegate); } emit ApproveApprovalDelegate(_approvalDelegate); return true; } /** * @dev Revoke permission to approve orders from an approval delegate. * @param _approvalDelegate The account to be revoked. */ function revokeApprovalDelegate(address _approvalDelegate) onlyOwner external returns (bool) { uint length = approvalDelegates.length; require(length > 0); address lastDelegate = approvalDelegates[length-1]; if(_approvalDelegate == lastDelegate) { delete approvalDelegates[length-1]; approvalDelegates.length--; } else { // Game plan: find the delegate, replace it with the very last item in the array, then delete the last item for(uint i=0; i<length; i++) { if(approvalDelegates[i]==_approvalDelegate) { approvalDelegates[i] = lastDelegate; delete approvalDelegates[length-1]; approvalDelegates.length--; break; } } } emit RevokeApprovalDelegate(_approvalDelegate); return true; } /** * @dev Internal function to delete an order at the given index from the orders array. * @param _orderIndex The index of the order to be removed. */ function _deleteOrder(uint _orderIndex) internal { require(orders.length > _orderIndex); uint lastIndex = orders.length-1; if(_orderIndex != lastIndex) { // Replace the order to be deleted with the very last item in the array orders[_orderIndex] = orders[lastIndex]; } delete orders[lastIndex]; orders.length--; } /** * @dev Internal function to execute an order at the given index. * @param _orderIndex The index of the order to be executed. */ function _executeOrder(uint _orderIndex) internal { require(orders.length > _orderIndex); require(complementaryEthPerOrder <= address(this).balance); Order memory order = orders[_orderIndex]; _deleteOrder(_orderIndex); trident.transfer(order.account, order.amount); // Transfer the complementary ETH address(order.account).transfer(complementaryEthPerOrder); } /** * @dev Function to place an order. * @param _amount The amount of tokens to transfer. * @param _account The account to transfer the tokens to. * @param _metadata Arbitrary metadata. * @return A boolean that indicates if the operation was successful. */ function placeOrder(uint256 _amount, address _account, string _metadata) onlyOwnerOrOrderDelegate external returns (bool) { orders.push(Order({amount: _amount, account: _account, metadata: _metadata})); emit OrderPlaced(orders.length-1); return true; } /** * @dev Return the number of orders. */ function getOrdersCount() external view returns (uint) { return orders.length; } /** * @dev Return the number of orders. */ function getOrdersTotalAmount() external view returns (uint) { uint total = 0; for(uint i=0; i<orders.length; i++) { Order memory order = orders[i]; total += order.amount; } return total; } /** * @dev Return the order at the given index. */ function getOrderAtIndex(uint _orderIndex) external view returns (uint256 amount, address account, string metadata) { Order memory order = orders[_orderIndex]; return (order.amount, order.account, order.metadata); } /** * @dev Function to revoke an order at the given index. * @param _orderIndex The index of the order to be revoked. * @return A boolean that indicates if the operation was successful. */ function revokeOrder(uint _orderIndex) onlyOwnerOrApprovalDelegate external returns (bool) { _deleteOrder(_orderIndex); emit OrderRevoked(_orderIndex); return true; } /** * @dev Function to approve an order at the given index. * @param _orderIndex The index of the order to be approved. * @return A boolean that indicates if the operation was successful. */ function approveOrder(uint _orderIndex) onlyOwnerOrApprovalDelegate external returns (bool) { _executeOrder(_orderIndex); emit OrderApproved(_orderIndex); return true; } /** * @dev Function to approve all orders in the orders array. * @return A boolean that indicates if the operation was successful. */ function approveAllOrders() onlyOwnerOrApprovalDelegate external returns (bool) { uint orderCount = orders.length; uint totalComplementaryEth = complementaryEthPerOrder * orderCount; require(totalComplementaryEth <= address(this).balance); for(uint i=0; i<orderCount; i++) { Order memory order = orders[i]; trident.transfer(order.account, order.amount); // Transfer the complementary ETH address(order.account).transfer(complementaryEthPerOrder); } // Dispose of all approved orders delete orders; emit AllOrdersApproved(); return true; } /** * @dev Function to set the complementary eth sent with each order executed. * @param _complementaryEthPerOrder The index of the order to be approved. * @return A boolean that indicates if the operation was successful. */ function setComplementaryEthPerOrder(uint _complementaryEthPerOrder) onlyOwner external returns (bool) { complementaryEthPerOrder = _complementaryEthPerOrder; emit ComplementaryEthPerOrderSet(); return true; } /** * @dev Function withdraws all ETH from the smart contract. * @return A boolean that indicates if the operation was successful. */ function withdrawAllEth() onlyOwner external returns (bool) { uint ethBalance = address(this).balance; require(ethBalance > 0); owner.transfer(ethBalance); return true; } /** * @dev Function withdraws all Trident from the smart contract. * @return A boolean that indicates if the operation was successful. */ function withdrawAllTrident() onlyOwner external returns (bool) { uint tridentBalance = trident.balanceOf(address(this)); require(tridentBalance > 0); return trident.transfer(owner, tridentBalance); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":false,"inputs":[{"name":"_orderDelegate","type":"address"}],"name":"revokeOrderDelegate","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_amount","type":"uint256"},{"name":"_account","type":"address"},{"name":"_metadata","type":"string"}],"name":"placeOrder","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_orderIndex","type":"uint256"}],"name":"revokeOrder","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOrderDelegates","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"complementaryEthPerOrder","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getApprovalDelegates","outputs":[{"name":"","type":"address[]"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_orderDelegate","type":"address"}],"name":"approveOrderDelegate","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawAllTrident","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"withdrawAllEth","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_orderIndex","type":"uint256"}],"name":"getOrderAtIndex","outputs":[{"name":"amount","type":"uint256"},{"name":"account","type":"address"},{"name":"metadata","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getOrdersTotalAmount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_complementaryEthPerOrder","type":"uint256"}],"name":"setComplementaryEthPerOrder","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getOrdersCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_approvalDelegate","type":"address"}],"name":"approveApprovalDelegate","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_orderIndex","type":"uint256"}],"name":"approveOrder","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_approvalDelegate","type":"address"}],"name":"revokeApprovalDelegate","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"trident","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"approveAllOrders","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"inputs":[{"name":"_tridentSmartContract","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderDelegate","type":"address"}],"name":"ApproveOrderDelegate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderDelegate","type":"address"}],"name":"RevokeOrderDelegate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"approvalDelegate","type":"address"}],"name":"ApproveApprovalDelegate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"approvalDelegate","type":"address"}],"name":"RevokeApprovalDelegate","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderIndex","type":"uint256"}],"name":"OrderPlaced","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderIndex","type":"uint256"}],"name":"OrderApproved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"orderIndex","type":"uint256"}],"name":"OrderRevoked","type":"event"},{"anonymous":false,"inputs":[],"name":"AllOrdersApproved","type":"event"},{"anonymous":false,"inputs":[],"name":"ComplementaryEthPerOrderSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"previousOwner","type":"address"},{"indexed":true,"name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"}]
Contract Creation Code
608060405234801561001057600080fd5b50604051602080611a1c833981016040525160008054600160a060020a0319908116331790915560018054600160a060020a03909316929091169190911790556119bd8061005f6000396000f3006080604052600436106101115763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663031c06e4811461011357806307519f62146101485780630f9a71d7146101795780633176cad21461019157806333a29049146101f6578063346d73ec1461021d5780633cec48271461023257806349e3a6c714610253578063519af30e146102685780638da5cb5b1461027d5780639c0fca7d146102ae578063ac34a3291461035e578063b248a4f414610373578063b5b3b0511461038b578063b9070921146103a0578063bd4b8a04146103c1578063d6e91be0146103d9578063d829ed97146103fa578063f2fde38b1461040f578063fbd440ed14610430575b005b34801561011f57600080fd5b50610134600160a060020a0360043516610445565b604080519115158252519081900360200190f35b34801561015457600080fd5b50610134600480359060248035600160a060020a0316916044359182019101356105bf565b34801561018557600080fd5b50610134600435610736565b34801561019d57600080fd5b506101a66107ef565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156101e25781810151838201526020016101ca565b505050509050019250505060405180910390f35b34801561020257600080fd5b5061020b610852565b60408051918252519081900360200190f35b34801561022957600080fd5b506101a6610858565b34801561023e57600080fd5b50610134600160a060020a03600435166108b8565b34801561025f57600080fd5b506101346109bb565b34801561027457600080fd5b50610134610b1f565b34801561028957600080fd5b50610292610b8b565b60408051600160a060020a039092168252519081900360200190f35b3480156102ba57600080fd5b506102c6600435610b9a565b6040518084815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610321578181015183820152602001610309565b50505050905090810190601f16801561034e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34801561036a57600080fd5b5061020b610c9c565b34801561037f57600080fd5b50610134600435610db2565b34801561039757600080fd5b5061020b610e00565b3480156103ac57600080fd5b50610134600160a060020a0360043516610e06565b3480156103cd57600080fd5b50610134600435610f09565b3480156103e557600080fd5b50610134600160a060020a0360043516610fc2565b34801561040657600080fd5b5061029261113c565b34801561041b57600080fd5b50610111600160a060020a036004351661114b565b34801561043c57600080fd5b506101346111d2565b60008054819081908190600160a060020a0316331461046357600080fd5b60035492506000831161047557600080fd5b60038054600019850190811061048757fe5b600091825260209091200154600160a060020a03908116925085168214156104ed576003805460001985019081106104bb57fe5b60009182526020909120018054600160a060020a031916905560038054906104e7906000198301611776565b50610580565b5060005b828110156105805784600160a060020a031660038281548110151561051257fe5b600091825260209091200154600160a060020a03161415610578578160038281548110151561053d57fe5b60009182526020909120018054600160a060020a031916600160a060020a03929092169190911790556003805460001985019081106104bb57fe5b6001016104f1565b604051600160a060020a038616907f44209f22fc492cc560aab4f355b23f8420e77a6366f29c056a39bbc57bcd657e90600090a2506001949350505050565b6000805481908190600160a060020a03163314156105e0576001915061062b565b5060005b60035481101561062b5760038054339190839081106105ff57fe5b600091825260209091200154600160a060020a03161415610623576001915061062b565b6001016105e4565b60018215151461063a57600080fd5b600260606040519081016040528089815260200188600160a060020a0316815260200187878080601f0160208091040260200160405190810160405280939291908181526020018383808284375050509290935250508254600180820180865560009586526020958690208551600390940201928355848601519183018054600160a060020a031916600160a060020a03909316929092179091556040840151805191959293506106f292600285019291019061179a565b505060025460405160001990910192507fffa896d8919f0556f53ace1395617969a3b53ab5271a085e28ac0c4a3724e63d9150600090a25060019695505050505050565b6000805481908190600160a060020a031633141561075757600191506107a2565b5060005b6004548110156107a257600480543391908390811061077657fe5b600091825260209091200154600160a060020a0316141561079a57600191506107a2565b60010161075b565b6001821515146107b157600080fd5b6107ba84611486565b60405184907f0a3e2c24d0a4833d50fad3a6a5fbf37b8d4cb08115c0112c12ea236ce1c8267490600090a25060019392505050565b6060600380548060200260200160405190810160405280929190818152602001828054801561084757602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610829575b505050505090505b90565b60055481565b6060600480548060200260200160405190810160405280929190818152602001828054801561084757602002820191906000526020600020908154600160a060020a03168152600190910190602001808311610829575050505050905090565b6000805481908190600160a060020a031633146108d457600080fd5b5060009050805b60035481101561092a5783600160a060020a03166003828154811015156108fe57fe5b600091825260209091200154600160a060020a03161415610922576001915061092a565b6001016108db565b81151561097d57600380546001810182556000919091527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b018054600160a060020a031916600160a060020a0386161790555b604051600160a060020a038516907fdd5161f29ee6fafd0af661666a5b40ecaed21f1d4035fab7e130ead035caed9e90600090a25060019392505050565b600080548190600160a060020a031633146109d557600080fd5b600154604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a03909216916370a08231916024808201926020929091908290030181600087803b158015610a3b57600080fd5b505af1158015610a4f573d6000803e3d6000fd5b505050506040513d6020811015610a6557600080fd5b5051905060008111610a7657600080fd5b60015460008054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152602481018690529051919093169263a9059cbb9260448083019360209390929083900390910190829087803b158015610aec57600080fd5b505af1158015610b00573d6000803e3d6000fd5b505050506040513d6020811015610b1657600080fd5b505191505b5090565b600080548190600160a060020a03163314610b3957600080fd5b50303160008111610b4957600080fd5b60008054604051600160a060020a039091169183156108fc02918491818181858888f19350505050158015610b82573d6000803e3d6000fd5b50600191505090565b600054600160a060020a031681565b6000806060610ba7611814565b6002805486908110610bb557fe5b60009182526020918290206040805160608101825260039390930290910180548352600180820154600160a060020a0316848601526002808301805485516101009482161594909402600019011691909104601f8101879004870283018701855280835294959294938601939192909190830182828015610c775780601f10610c4c57610100808354040283529160200191610c77565b820191906000526020600020905b815481529060010190602001808311610c5a57829003601f168201915b5050509190925250508151602083015160409093015190989297509550909350505050565b6000806000610ca9611814565b60009250600091505b600254821015610daa576002805483908110610cca57fe5b60009182526020918290206040805160608101825260039390930290910180548352600180820154600160a060020a0316848601526002808301805485516101009482161594909402600019011691909104601f8101879004870283018701855280835294959294938601939192909190830182828015610d8c5780601f10610d6157610100808354040283529160200191610d8c565b820191906000526020600020905b815481529060010190602001808311610d6f57829003601f168201915b50505091909252505081519490940193506001909201919050610cb2565b509092915050565b60008054600160a060020a03163314610dca57600080fd5b60058290556040517f0583c9501f33fc2da19890d4641c75cf23b12d33df8c8f88eda33ea36f71d1c490600090a1506001919050565b60025490565b6000805481908190600160a060020a03163314610e2257600080fd5b5060009050805b600454811015610e785783600160a060020a0316600482815481101515610e4c57fe5b600091825260209091200154600160a060020a03161415610e705760019150610e78565b600101610e29565b811515610ecb57600480546001810182556000919091527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b018054600160a060020a031916600160a060020a0386161790555b604051600160a060020a038516907f094c4c0922a1dd80586086edf57e30cfa642830af4920fd04e1a6edda4a2592a90600090a25060019392505050565b6000805481908190600160a060020a0316331415610f2a5760019150610f75565b5060005b600454811015610f75576004805433919083908110610f4957fe5b600091825260209091200154600160a060020a03161415610f6d5760019150610f75565b600101610f2e565b600182151514610f8457600080fd5b610f8d8461158e565b60405184907fe09badae90eb15bb2cfd6c00928d34ec8edc7f88721fd2608574e8aeb2ab170d90600090a25060019392505050565b60008054819081908190600160a060020a03163314610fe057600080fd5b600454925060008311610ff257600080fd5b60048054600019850190811061100457fe5b600091825260209091200154600160a060020a039081169250851682141561106a5760048054600019850190811061103857fe5b60009182526020909120018054600160a060020a03191690556004805490611064906000198301611776565b506110fd565b5060005b828110156110fd5784600160a060020a031660048281548110151561108f57fe5b600091825260209091200154600160a060020a031614156110f557816004828154811015156110ba57fe5b60009182526020909120018054600160a060020a031916600160a060020a039290921691909117905560048054600019850190811061103857fe5b60010161106e565b604051600160a060020a038616907f61f7892a8d668e3a27e3cafff3d3e91534fed50a46972a3b4f2787991a5eaf2d90600090a2506001949350505050565b600154600160a060020a031681565b600054600160a060020a0316331461116257600080fd5b600160a060020a038116151561117757600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a360008054600160a060020a031916600160a060020a0392909216919091179055565b6000806000806111e0611814565b600080548190600160a060020a03163314156111ff576001915061124a565b5060005b60045481101561124a57600480543391908390811061121e57fe5b600091825260209091200154600160a060020a03161415611242576001915061124a565b600101611203565b60018215151461125957600080fd5b60025460055490965086029450303185111561127457600080fd5b600093505b8584101561144457600280548590811061128f57fe5b60009182526020918290206040805160608101825260039390930290910180548352600180820154600160a060020a0316848601526002808301805485516101009482161594909402600019011691909104601f81018790048702830187018552808352949592949386019391929091908301828280156113515780601f1061132657610100808354040283529160200191611351565b820191906000526020600020905b81548152906001019060200180831161133457829003601f168201915b5050509190925250506001546020808401518451604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a03938416600482015260248101929092525195985092169363a9059cbb93506044808401938290030181600087803b1580156113ce57600080fd5b505af11580156113e2573d6000803e3d6000fd5b505050506040513d60208110156113f857600080fd5b50506020830151600554604051600160a060020a039092169181156108fc0291906000818181858888f19350505050158015611438573d6000803e3d6000fd5b50600190930192611279565b61145060026000611833565b6040517f06e2e3c710bf15f4a66062cdd9cbd67ad4f4db120753f9a39ecdd2e0a024df2e90600090a16001965050505050505090565b600254600090821061149757600080fd5b50600254600019018181146115345760028054829081106114b457fe5b90600052602060002090600302016002838154811015156114d157fe5b6000918252602090912082546003909202019081556001808301548183018054600160a060020a031916600160a060020a0390921691909117905560028084018054611530938386019390821615610100026000190190911604611857565b5050505b600280548290811061154257fe5b600091825260208220600390910201818155600181018054600160a060020a03191690559061157460028301826118cc565b50506002805490611589906000198301611910565b505050565b611596611814565b60025482106115a457600080fd5b600554303110156115b457600080fd5b60028054839081106115c257fe5b60009182526020918290206040805160608101825260039390930290910180548352600180820154600160a060020a0316848601526002808301805485516101009482161594909402600019011691909104601f81018790048702830187018552808352949592949386019391929091908301828280156116845780601f1061165957610100808354040283529160200191611684565b820191906000526020600020905b81548152906001019060200180831161166757829003601f168201915b505050505081525050905061169882611486565b6001546020808301518351604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a039384166004820152602481019290925251919093169263a9059cbb9260448083019391928290030181600087803b15801561170c57600080fd5b505af1158015611720573d6000803e3d6000fd5b505050506040513d602081101561173657600080fd5b50506020810151600554604051600160a060020a039092169181156108fc0291906000818181858888f19350505050158015611589573d6000803e3d6000fd5b8154818355818111156115895760008381526020902061158991810190830161193c565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117db57805160ff1916838001178555611808565b82800160010185558215611808579182015b828111156118085782518255916020019190600101906117ed565b50610b1b92915061193c565b6040805160608181018352600080835260208301529181019190915290565b50805460008255600302906000526020600020908101906118549190611956565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106118905780548555611808565b8280016001018555821561180857600052602060002091601f016020900482015b828111156118085782548255916001019190600101906118b1565b50805460018160011615610100020316600290046000825580601f106118f25750611854565b601f016020900490600052602060002090810190611854919061193c565b815481835581811115611589576003028160030283600052602060002091820191016115899190611956565b61084f91905b80821115610b1b5760008155600101611942565b61084f91905b80821115610b1b576000808255600182018054600160a060020a031916905561198860028301826118cc565b5060030161195c5600a165627a7a72305820571a7cac291674b4bc36ba89b59c5a3032549f86b302d72e7b897079cd30090f00290000000000000000000000004eea6844a4dc5bf3127decf034b3f4a7211ef2e7
Deployed Bytecode
0x6080604052600436106101115763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663031c06e4811461011357806307519f62146101485780630f9a71d7146101795780633176cad21461019157806333a29049146101f6578063346d73ec1461021d5780633cec48271461023257806349e3a6c714610253578063519af30e146102685780638da5cb5b1461027d5780639c0fca7d146102ae578063ac34a3291461035e578063b248a4f414610373578063b5b3b0511461038b578063b9070921146103a0578063bd4b8a04146103c1578063d6e91be0146103d9578063d829ed97146103fa578063f2fde38b1461040f578063fbd440ed14610430575b005b34801561011f57600080fd5b50610134600160a060020a0360043516610445565b604080519115158252519081900360200190f35b34801561015457600080fd5b50610134600480359060248035600160a060020a0316916044359182019101356105bf565b34801561018557600080fd5b50610134600435610736565b34801561019d57600080fd5b506101a66107ef565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156101e25781810151838201526020016101ca565b505050509050019250505060405180910390f35b34801561020257600080fd5b5061020b610852565b60408051918252519081900360200190f35b34801561022957600080fd5b506101a6610858565b34801561023e57600080fd5b50610134600160a060020a03600435166108b8565b34801561025f57600080fd5b506101346109bb565b34801561027457600080fd5b50610134610b1f565b34801561028957600080fd5b50610292610b8b565b60408051600160a060020a039092168252519081900360200190f35b3480156102ba57600080fd5b506102c6600435610b9a565b6040518084815260200183600160a060020a0316600160a060020a0316815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610321578181015183820152602001610309565b50505050905090810190601f16801561034e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390f35b34801561036a57600080fd5b5061020b610c9c565b34801561037f57600080fd5b50610134600435610db2565b34801561039757600080fd5b5061020b610e00565b3480156103ac57600080fd5b50610134600160a060020a0360043516610e06565b3480156103cd57600080fd5b50610134600435610f09565b3480156103e557600080fd5b50610134600160a060020a0360043516610fc2565b34801561040657600080fd5b5061029261113c565b34801561041b57600080fd5b50610111600160a060020a036004351661114b565b34801561043c57600080fd5b506101346111d2565b60008054819081908190600160a060020a0316331461046357600080fd5b60035492506000831161047557600080fd5b60038054600019850190811061048757fe5b600091825260209091200154600160a060020a03908116925085168214156104ed576003805460001985019081106104bb57fe5b60009182526020909120018054600160a060020a031916905560038054906104e7906000198301611776565b50610580565b5060005b828110156105805784600160a060020a031660038281548110151561051257fe5b600091825260209091200154600160a060020a03161415610578578160038281548110151561053d57fe5b60009182526020909120018054600160a060020a031916600160a060020a03929092169190911790556003805460001985019081106104bb57fe5b6001016104f1565b604051600160a060020a038616907f44209f22fc492cc560aab4f355b23f8420e77a6366f29c056a39bbc57bcd657e90600090a2506001949350505050565b6000805481908190600160a060020a03163314156105e0576001915061062b565b5060005b60035481101561062b5760038054339190839081106105ff57fe5b600091825260209091200154600160a060020a03161415610623576001915061062b565b6001016105e4565b60018215151461063a57600080fd5b600260606040519081016040528089815260200188600160a060020a0316815260200187878080601f0160208091040260200160405190810160405280939291908181526020018383808284375050509290935250508254600180820180865560009586526020958690208551600390940201928355848601519183018054600160a060020a031916600160a060020a03909316929092179091556040840151805191959293506106f292600285019291019061179a565b505060025460405160001990910192507fffa896d8919f0556f53ace1395617969a3b53ab5271a085e28ac0c4a3724e63d9150600090a25060019695505050505050565b6000805481908190600160a060020a031633141561075757600191506107a2565b5060005b6004548110156107a257600480543391908390811061077657fe5b600091825260209091200154600160a060020a0316141561079a57600191506107a2565b60010161075b565b6001821515146107b157600080fd5b6107ba84611486565b60405184907f0a3e2c24d0a4833d50fad3a6a5fbf37b8d4cb08115c0112c12ea236ce1c8267490600090a25060019392505050565b6060600380548060200260200160405190810160405280929190818152602001828054801561084757602002820191906000526020600020905b8154600160a060020a03168152600190910190602001808311610829575b505050505090505b90565b60055481565b6060600480548060200260200160405190810160405280929190818152602001828054801561084757602002820191906000526020600020908154600160a060020a03168152600190910190602001808311610829575050505050905090565b6000805481908190600160a060020a031633146108d457600080fd5b5060009050805b60035481101561092a5783600160a060020a03166003828154811015156108fe57fe5b600091825260209091200154600160a060020a03161415610922576001915061092a565b6001016108db565b81151561097d57600380546001810182556000919091527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b018054600160a060020a031916600160a060020a0386161790555b604051600160a060020a038516907fdd5161f29ee6fafd0af661666a5b40ecaed21f1d4035fab7e130ead035caed9e90600090a25060019392505050565b600080548190600160a060020a031633146109d557600080fd5b600154604080517f70a082310000000000000000000000000000000000000000000000000000000081523060048201529051600160a060020a03909216916370a08231916024808201926020929091908290030181600087803b158015610a3b57600080fd5b505af1158015610a4f573d6000803e3d6000fd5b505050506040513d6020811015610a6557600080fd5b5051905060008111610a7657600080fd5b60015460008054604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a039283166004820152602481018690529051919093169263a9059cbb9260448083019360209390929083900390910190829087803b158015610aec57600080fd5b505af1158015610b00573d6000803e3d6000fd5b505050506040513d6020811015610b1657600080fd5b505191505b5090565b600080548190600160a060020a03163314610b3957600080fd5b50303160008111610b4957600080fd5b60008054604051600160a060020a039091169183156108fc02918491818181858888f19350505050158015610b82573d6000803e3d6000fd5b50600191505090565b600054600160a060020a031681565b6000806060610ba7611814565b6002805486908110610bb557fe5b60009182526020918290206040805160608101825260039390930290910180548352600180820154600160a060020a0316848601526002808301805485516101009482161594909402600019011691909104601f8101879004870283018701855280835294959294938601939192909190830182828015610c775780601f10610c4c57610100808354040283529160200191610c77565b820191906000526020600020905b815481529060010190602001808311610c5a57829003601f168201915b5050509190925250508151602083015160409093015190989297509550909350505050565b6000806000610ca9611814565b60009250600091505b600254821015610daa576002805483908110610cca57fe5b60009182526020918290206040805160608101825260039390930290910180548352600180820154600160a060020a0316848601526002808301805485516101009482161594909402600019011691909104601f8101879004870283018701855280835294959294938601939192909190830182828015610d8c5780601f10610d6157610100808354040283529160200191610d8c565b820191906000526020600020905b815481529060010190602001808311610d6f57829003601f168201915b50505091909252505081519490940193506001909201919050610cb2565b509092915050565b60008054600160a060020a03163314610dca57600080fd5b60058290556040517f0583c9501f33fc2da19890d4641c75cf23b12d33df8c8f88eda33ea36f71d1c490600090a1506001919050565b60025490565b6000805481908190600160a060020a03163314610e2257600080fd5b5060009050805b600454811015610e785783600160a060020a0316600482815481101515610e4c57fe5b600091825260209091200154600160a060020a03161415610e705760019150610e78565b600101610e29565b811515610ecb57600480546001810182556000919091527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b018054600160a060020a031916600160a060020a0386161790555b604051600160a060020a038516907f094c4c0922a1dd80586086edf57e30cfa642830af4920fd04e1a6edda4a2592a90600090a25060019392505050565b6000805481908190600160a060020a0316331415610f2a5760019150610f75565b5060005b600454811015610f75576004805433919083908110610f4957fe5b600091825260209091200154600160a060020a03161415610f6d5760019150610f75565b600101610f2e565b600182151514610f8457600080fd5b610f8d8461158e565b60405184907fe09badae90eb15bb2cfd6c00928d34ec8edc7f88721fd2608574e8aeb2ab170d90600090a25060019392505050565b60008054819081908190600160a060020a03163314610fe057600080fd5b600454925060008311610ff257600080fd5b60048054600019850190811061100457fe5b600091825260209091200154600160a060020a039081169250851682141561106a5760048054600019850190811061103857fe5b60009182526020909120018054600160a060020a03191690556004805490611064906000198301611776565b506110fd565b5060005b828110156110fd5784600160a060020a031660048281548110151561108f57fe5b600091825260209091200154600160a060020a031614156110f557816004828154811015156110ba57fe5b60009182526020909120018054600160a060020a031916600160a060020a039290921691909117905560048054600019850190811061103857fe5b60010161106e565b604051600160a060020a038616907f61f7892a8d668e3a27e3cafff3d3e91534fed50a46972a3b4f2787991a5eaf2d90600090a2506001949350505050565b600154600160a060020a031681565b600054600160a060020a0316331461116257600080fd5b600160a060020a038116151561117757600080fd5b60008054604051600160a060020a03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a360008054600160a060020a031916600160a060020a0392909216919091179055565b6000806000806111e0611814565b600080548190600160a060020a03163314156111ff576001915061124a565b5060005b60045481101561124a57600480543391908390811061121e57fe5b600091825260209091200154600160a060020a03161415611242576001915061124a565b600101611203565b60018215151461125957600080fd5b60025460055490965086029450303185111561127457600080fd5b600093505b8584101561144457600280548590811061128f57fe5b60009182526020918290206040805160608101825260039390930290910180548352600180820154600160a060020a0316848601526002808301805485516101009482161594909402600019011691909104601f81018790048702830187018552808352949592949386019391929091908301828280156113515780601f1061132657610100808354040283529160200191611351565b820191906000526020600020905b81548152906001019060200180831161133457829003601f168201915b5050509190925250506001546020808401518451604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a03938416600482015260248101929092525195985092169363a9059cbb93506044808401938290030181600087803b1580156113ce57600080fd5b505af11580156113e2573d6000803e3d6000fd5b505050506040513d60208110156113f857600080fd5b50506020830151600554604051600160a060020a039092169181156108fc0291906000818181858888f19350505050158015611438573d6000803e3d6000fd5b50600190930192611279565b61145060026000611833565b6040517f06e2e3c710bf15f4a66062cdd9cbd67ad4f4db120753f9a39ecdd2e0a024df2e90600090a16001965050505050505090565b600254600090821061149757600080fd5b50600254600019018181146115345760028054829081106114b457fe5b90600052602060002090600302016002838154811015156114d157fe5b6000918252602090912082546003909202019081556001808301548183018054600160a060020a031916600160a060020a0390921691909117905560028084018054611530938386019390821615610100026000190190911604611857565b5050505b600280548290811061154257fe5b600091825260208220600390910201818155600181018054600160a060020a03191690559061157460028301826118cc565b50506002805490611589906000198301611910565b505050565b611596611814565b60025482106115a457600080fd5b600554303110156115b457600080fd5b60028054839081106115c257fe5b60009182526020918290206040805160608101825260039390930290910180548352600180820154600160a060020a0316848601526002808301805485516101009482161594909402600019011691909104601f81018790048702830187018552808352949592949386019391929091908301828280156116845780601f1061165957610100808354040283529160200191611684565b820191906000526020600020905b81548152906001019060200180831161166757829003601f168201915b505050505081525050905061169882611486565b6001546020808301518351604080517fa9059cbb000000000000000000000000000000000000000000000000000000008152600160a060020a039384166004820152602481019290925251919093169263a9059cbb9260448083019391928290030181600087803b15801561170c57600080fd5b505af1158015611720573d6000803e3d6000fd5b505050506040513d602081101561173657600080fd5b50506020810151600554604051600160a060020a039092169181156108fc0291906000818181858888f19350505050158015611589573d6000803e3d6000fd5b8154818355818111156115895760008381526020902061158991810190830161193c565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117db57805160ff1916838001178555611808565b82800160010185558215611808579182015b828111156118085782518255916020019190600101906117ed565b50610b1b92915061193c565b6040805160608181018352600080835260208301529181019190915290565b50805460008255600302906000526020600020908101906118549190611956565b50565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106118905780548555611808565b8280016001018555821561180857600052602060002091601f016020900482015b828111156118085782548255916001019190600101906118b1565b50805460018160011615610100020316600290046000825580601f106118f25750611854565b601f016020900490600052602060002090810190611854919061193c565b815481835581811115611589576003028160030283600052602060002091820191016115899190611956565b61084f91905b80821115610b1b5760008155600101611942565b61084f91905b80821115610b1b576000808255600182018054600160a060020a031916905561198860028301826118cc565b5060030161195c5600a165627a7a72305820571a7cac291674b4bc36ba89b59c5a3032549f86b302d72e7b897079cd30090f0029
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000004eea6844a4dc5bf3127decf034b3f4a7211ef2e7
-----Decoded View---------------
Arg [0] : _tridentSmartContract (address): 0x4EeA6844a4dC5bF3127DecF034B3f4A7211EF2e7
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000004eea6844a4dc5bf3127decf034b3f4a7211ef2e7
Swarm Source
bzzr://571a7cac291674b4bc36ba89b59c5a3032549f86b302d72e7b897079cd30090f
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ETH | Ether (ETH) | 100.00% | $2,839.29 | 7.7748 | $22,075.02 |
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.