Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 37 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Set Owner | 17830904 | 517 days ago | IN | 0 ETH | 0.00048622 | ||||
Register Address | 17830874 | 517 days ago | IN | 0 ETH | 0.00049185 | ||||
Register Address | 17830862 | 517 days ago | IN | 0 ETH | 0.00054282 | ||||
Register Address | 12414807 | 1330 days ago | IN | 0 ETH | 0.0053023 | ||||
Register Address | 10727804 | 1589 days ago | IN | 0 ETH | 0.00332734 | ||||
Register Address | 9372914 | 1799 days ago | IN | 0 ETH | 0.00006314 | ||||
Register Address | 9341177 | 1804 days ago | IN | 0 ETH | 0.00009471 | ||||
Register Address | 9228556 | 1821 days ago | IN | 0 ETH | 0.00009417 | ||||
Set Owner | 8536015 | 1937 days ago | IN | 0 ETH | 0.00053691 | ||||
Register Address | 8511201 | 1941 days ago | IN | 0 ETH | 0.00022477 | ||||
Register Address | 8511065 | 1941 days ago | IN | 0 ETH | 0.00022029 | ||||
Register Address | 8436672 | 1953 days ago | IN | 0 ETH | 0.0000473 | ||||
Register Address | 8394754 | 1959 days ago | IN | 0 ETH | 0.00012639 | ||||
Register Address | 8394754 | 1959 days ago | IN | 0 ETH | 0.00012613 | ||||
Register Address | 8394754 | 1959 days ago | IN | 0 ETH | 0.00012511 | ||||
Register Address | 8394753 | 1959 days ago | IN | 0 ETH | 0.00012588 | ||||
Register Address | 8394753 | 1959 days ago | IN | 0 ETH | 0.00012588 | ||||
Register Address | 8394753 | 1959 days ago | IN | 0 ETH | 0.0001246 | ||||
Register Address | 8394753 | 1959 days ago | IN | 0 ETH | 0.0001246 | ||||
Register Address | 8394753 | 1959 days ago | IN | 0 ETH | 0.0001246 | ||||
Register Address | 8390739 | 1960 days ago | IN | 0 ETH | 0.00006332 | ||||
Register Address | 8390739 | 1960 days ago | IN | 0 ETH | 0.00006294 | ||||
Register Address | 8390739 | 1960 days ago | IN | 0 ETH | 0.0000623 | ||||
Register Address | 8390739 | 1960 days ago | IN | 0 ETH | 0.0000623 | ||||
Register Address | 8390739 | 1960 days ago | IN | 0 ETH | 0.0000623 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
ContractRegistry
Compiler Version
v0.4.23+commit.124ca40d
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2019-08-19 */ // File: contracts/library/Owned.sol pragma solidity ^0.4.23; contract Owned { address public owner; address public newOwner; event OwnerUpdate(address _prevOwner, address _newOwner); constructor () public { owner = msg.sender; } modifier ownerOnly { assert(msg.sender == owner); _; } function setOwner(address _newOwner) public ownerOnly { require(_newOwner != owner && _newOwner != address(0)); emit OwnerUpdate(owner, _newOwner); owner = _newOwner; newOwner = address(0); } function transferOwnership(address _newOwner) public ownerOnly { require(_newOwner != owner); newOwner = _newOwner; } function acceptOwnership() public { require(msg.sender == newOwner); emit OwnerUpdate(owner, newOwner); owner = newOwner; newOwner = 0x0; } } // File: contracts/library/Utils.sol pragma solidity ^0.4.23; /* Utilities & Common Modifiers */ contract Utils { // verifies that an amount is greater than zero modifier greaterThanZero(uint256 _amount) { require(_amount > 0); _; } // validates an address - currently only checks that it isn't null modifier validAddress(address _address) { require(_address != 0x0); _; } // verifies that the address is different than this contract address modifier notThis(address _address) { require(_address != address(this)); _; } // Overflow protected math functions /** @dev returns the sum of _x and _y, asserts if the calculation overflows @param _x value 1 @param _y value 2 @return sum */ function safeAdd(uint256 _x, uint256 _y) internal pure returns (uint256) { uint256 z = _x + _y; assert(z >= _x); return z; } /** @dev returns the difference of _x minus _y, asserts if the subtraction results in a negative number @param _x minuend @param _y subtrahend @return difference */ function safeSub(uint256 _x, uint256 _y) internal pure returns (uint256) { assert(_x >= _y); return _x - _y; } /** @dev returns the product of multiplying _x by _y, asserts if the calculation overflows @param _x factor 1 @param _y factor 2 @return product */ function safeMul(uint256 _x, uint256 _y) internal pure returns (uint256) { uint256 z = _x * _y; assert(_x == 0 || z / _x == _y); return z; } } // File: contracts/interfaces/IContractRegistry.sol pragma solidity ^0.4.23; /* Contract Registry interface */ contract IContractRegistry { function addressOf(bytes32 _contractName) public view returns (address); } // File: contracts/ContractIds.sol pragma solidity ^0.4.23; contract ContractIds { bytes32 public constant STABLE_TOKEN = "StableToken"; bytes32 public constant COLLATERAL_TOKEN = "CollateralToken"; bytes32 public constant PEGUSD_TOKEN = "PEGUSD"; bytes32 public constant VAULT_A = "VaultA"; bytes32 public constant VAULT_B = "VaultB"; bytes32 public constant PEG_LOGIC = "PegLogic"; bytes32 public constant PEG_LOGIC_ACTIONS = "LogicActions"; bytes32 public constant AUCTION_ACTIONS = "AuctionActions"; bytes32 public constant PEG_SETTINGS = "PegSettings"; bytes32 public constant ORACLE = "Oracle"; bytes32 public constant FEE_RECIPIENT = "StabilityFeeRecipient"; } // File: contracts/ContractRegistry.sol pragma solidity ^0.4.23; /** Contract Registry The contract registry keeps contract addresses by name. The owner can update contract addresses so that a contract name always points to the latest version of the given contract. Other contracts can query the registry to get updated addresses instead of depending on specific addresses. Note that contract names are limited to 32 bytes UTF8 encoded ASCII strings to optimize gas costs */ contract ContractRegistry is IContractRegistry, Owned, Utils, ContractIds { struct RegistryItem { address contractAddress; // contract address uint256 nameIndex; // index of the item in the list of contract names } mapping (bytes32 => RegistryItem) private items; // name -> RegistryItem mapping string[] public contractNames; // list of all registered contract names // triggered when an address pointed to by a contract name is modified event AddressUpdate(bytes32 indexed _contractName, address _contractAddress); /** @dev returns the number of items in the registry @return number of items */ function itemCount() public view returns (uint256) { return contractNames.length; } /** @dev returns the address associated with the given contract name @param _contractName contract name @return contract address */ function addressOf(bytes32 _contractName) public view returns (address) { return items[_contractName].contractAddress; } /** @dev registers a new address for the contract name in the registry @param _contractName contract name @param _contractAddress contract address */ function registerAddress(bytes32 _contractName, address _contractAddress) public ownerOnly validAddress(_contractAddress) { require(_contractName.length > 0); // validate input if (items[_contractName].contractAddress == address(0)) { // add the contract name to the name list uint256 i = contractNames.push(bytes32ToString(_contractName)); // update the item's index in the list items[_contractName].nameIndex = i - 1; } // update the address in the registry items[_contractName].contractAddress = _contractAddress; // dispatch the address update event emit AddressUpdate(_contractName, _contractAddress); } /** @dev removes an existing contract address from the registry @param _contractName contract name */ function unregisterAddress(bytes32 _contractName) public ownerOnly { require(_contractName.length > 0); // validate input require(items[_contractName].contractAddress != address(0)); // remove the address from the registry items[_contractName].contractAddress = address(0); // if there are multiple items in the registry, move the last element to the deleted element's position // and modify last element's registryItem.nameIndex in the items collection to point to the right position in contractNames if (contractNames.length > 1) { string memory lastContractNameString = contractNames[contractNames.length - 1]; uint256 unregisterIndex = items[_contractName].nameIndex; contractNames[unregisterIndex] = lastContractNameString; bytes32 lastContractName = stringToBytes32(lastContractNameString); RegistryItem storage registryItem = items[lastContractName]; registryItem.nameIndex = unregisterIndex; } // remove the last element from the name list contractNames.length--; // zero the deleted element's index items[_contractName].nameIndex = 0; // dispatch the address update event emit AddressUpdate(_contractName, address(0)); } /** @dev utility, converts bytes32 to a string note that the bytes32 argument is assumed to be UTF8 encoded ASCII string @return string representation of the given bytes32 argument */ function bytes32ToString(bytes32 _bytes) private pure returns (string) { bytes memory byteArray = new bytes(32); for (uint256 i; i < 32; i++) { byteArray[i] = _bytes[i]; } return string(byteArray); } // @dev utility, converts string to bytes32 function stringToBytes32(string _string) private pure returns (bytes32) { bytes32 result; assembly { result := mload(add(_string,32)) } return result; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"constant":true,"inputs":[],"name":"VAULT_B","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_newOwner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"PEG_LOGIC_ACTIONS","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"unregisterAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"ORACLE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"contractNames","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_contractName","type":"bytes32"},{"name":"_contractAddress","type":"address"}],"name":"registerAddress","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"VAULT_A","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"itemCount","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"STABLE_TOKEN","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"acceptOwnership","outputs":[],"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":"AUCTION_ACTIONS","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PEG_SETTINGS","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_contractName","type":"bytes32"}],"name":"addressOf","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"newOwner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PEG_LOGIC","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"FEE_RECIPIENT","outputs":[{"name":"","type":"bytes32"}],"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":"COLLATERAL_TOKEN","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"PEGUSD_TOKEN","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"anonymous":false,"inputs":[{"indexed":true,"name":"_contractName","type":"bytes32"},{"indexed":false,"name":"_contractAddress","type":"address"}],"name":"AddressUpdate","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"name":"_prevOwner","type":"address"},{"indexed":false,"name":"_newOwner","type":"address"}],"name":"OwnerUpdate","type":"event"}]
Contract Creation Code
608060405260008054600160a060020a033316600160a060020a0319909116179055610ced806100306000396000f30060806040526004361061011c5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663109b221c811461012157806313af403514610148578063153ea0f41461016b5780632bbd95301461018057806338013f02146101985780633ca6bb92146101ad578063662de3791461023a57806367c0037c1461025e5780636bfb0d01146102735780637754f8871461028857806379ba50971461029d5780638da5cb5b146102b257806394200c4a146102e3578063b366802c146102f8578063bb34534c1461030d578063d4ee1d9014610325578063df99e9e71461033a578063ebd090541461034f578063f2fde38b14610364578063f5f1f1a714610385578063f8c45d231461039a575b600080fd5b34801561012d57600080fd5b506101366103af565b60408051918252519081900360200190f35b34801561015457600080fd5b50610169600160a060020a03600435166103d3565b005b34801561017757600080fd5b5061013661049a565b34801561018c57600080fd5b506101696004356104be565b3480156101a457600080fd5b506101366106aa565b3480156101b957600080fd5b506101c56004356106ce565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101ff5781810151838201526020016101e7565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024657600080fd5b50610169600435600160a060020a0360243516610775565b34801561026a57600080fd5b50610136610885565b34801561027f57600080fd5b506101366108a9565b34801561029457600080fd5b506101366108b0565b3480156102a957600080fd5b506101696108d4565b3480156102be57600080fd5b506102c761096f565b60408051600160a060020a039092168252519081900360200190f35b3480156102ef57600080fd5b5061013661097e565b34801561030457600080fd5b506101366109a2565b34801561031957600080fd5b506102c76004356109c6565b34801561033157600080fd5b506102c76109e1565b34801561034657600080fd5b506101366109f0565b34801561035b57600080fd5b50610136610a14565b34801561037057600080fd5b50610169600160a060020a0360043516610a38565b34801561039157600080fd5b50610136610a9a565b3480156103a657600080fd5b50610136610abe565b7f5661756c7442000000000000000000000000000000000000000000000000000081565b60005433600160a060020a039081169116146103eb57fe5b600054600160a060020a038281169116148015906104115750600160a060020a03811615155b151561041c57600080fd5b60005460408051600160a060020a039283168152918316602083015280517f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a9281900390910190a160008054600160a060020a0390921673ffffffffffffffffffffffffffffffffffffffff19928316179055600180549091169055565b7f4c6f676963416374696f6e73000000000000000000000000000000000000000081565b60008054606091908190819033600160a060020a039081169116146104df57fe5b600085815260026020526040902054600160a060020a0316151561050257600080fd5b6000858152600260205260409020805473ffffffffffffffffffffffffffffffffffffffff19169055600354600110156106475760038054600019810190811061054857fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156105d65780601f106105ab576101008083540402835291602001916105d6565b820191906000526020600020905b8154815290600101906020018083116105b957829003601f168201915b505050600088815260026020526040902060010154600380549498509096508793909250869150811061060557fe5b906000526020600020019080519060200190610622929190610b96565b5061062c84610ae2565b60008181526002602052604090206001810185905590925090505b600380549061065a906000198301610c14565b50600085815260026020908152604080832060010183905580519283525187927ffc08d1253c81bcd5444fc7056ef1f5a5df4c9220b6fd70d7449267f1f0f2991892908290030190a25050505050565b7f4f7261636c65000000000000000000000000000000000000000000000000000081565b60038054829081106106dc57fe5b600091825260209182902001805460408051601f600260001961010060018716150201909416939093049283018590048502810185019091528181529350909183018282801561076d5780601f106107425761010080835404028352916020019161076d565b820191906000526020600020905b81548152906001019060200180831161075057829003601f168201915b505050505081565b6000805433600160a060020a0390811691161461078e57fe5b81600160a060020a03811615156107a457600080fd5b600084815260026020526040902054600160a060020a031615156108125760036107cd85610ae9565b8154600181018084556000938452602093849020835191946107f59491909301920190610b96565b506000858152600260205260409020600019820160019091015591505b600084815260026020908152604091829020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0387169081179091558251908152915186927ffc08d1253c81bcd5444fc7056ef1f5a5df4c9220b6fd70d7449267f1f0f2991892908290030190a250505050565b7f5661756c7441000000000000000000000000000000000000000000000000000081565b6003545b90565b7f537461626c65546f6b656e00000000000000000000000000000000000000000081565b60015433600160a060020a039081169116146108ef57600080fd5b60005460015460408051600160a060020a03938416815292909116602083015280517f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a9281900390910190a1600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b7f41756374696f6e416374696f6e7300000000000000000000000000000000000081565b7f50656753657474696e677300000000000000000000000000000000000000000081565b600090815260026020526040902054600160a060020a031690565b600154600160a060020a031681565b7f5065674c6f67696300000000000000000000000000000000000000000000000081565b7f53746162696c697479466565526563697069656e74000000000000000000000081565b60005433600160a060020a03908116911614610a5057fe5b600054600160a060020a0382811691161415610a6b57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b7f436f6c6c61746572616c546f6b656e000000000000000000000000000000000081565b7f504547555344000000000000000000000000000000000000000000000000000081565b6020015190565b6040805160208082528183019092526060918291600091808201610400803883390190505091505b6020811015610b8f57838160208110610b2657fe5b1a7f0100000000000000000000000000000000000000000000000000000000000000028282815181101515610b5757fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600101610b11565b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610bd757805160ff1916838001178555610c04565b82800160010185558215610c04579182015b82811115610c04578251825591602001919060010190610be9565b50610c10929150610c3d565b5090565b815481835581811115610c3857600083815260209020610c38918101908301610c57565b505050565b6108ad91905b80821115610c105760008155600101610c43565b6108ad91905b80821115610c10576000610c718282610c7a565b50600101610c5d565b50805460018160011615610100020316600290046000825580601f10610ca05750610cbe565b601f016020900490600052602060002090810190610cbe9190610c3d565b505600a165627a7a72305820c7ba47c90a8de4c866a8b4440c52f58f167c0527cc837adb63674e25cf50a2610029
Deployed Bytecode
0x60806040526004361061011c5763ffffffff7c0100000000000000000000000000000000000000000000000000000000600035041663109b221c811461012157806313af403514610148578063153ea0f41461016b5780632bbd95301461018057806338013f02146101985780633ca6bb92146101ad578063662de3791461023a57806367c0037c1461025e5780636bfb0d01146102735780637754f8871461028857806379ba50971461029d5780638da5cb5b146102b257806394200c4a146102e3578063b366802c146102f8578063bb34534c1461030d578063d4ee1d9014610325578063df99e9e71461033a578063ebd090541461034f578063f2fde38b14610364578063f5f1f1a714610385578063f8c45d231461039a575b600080fd5b34801561012d57600080fd5b506101366103af565b60408051918252519081900360200190f35b34801561015457600080fd5b50610169600160a060020a03600435166103d3565b005b34801561017757600080fd5b5061013661049a565b34801561018c57600080fd5b506101696004356104be565b3480156101a457600080fd5b506101366106aa565b3480156101b957600080fd5b506101c56004356106ce565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101ff5781810151838201526020016101e7565b50505050905090810190601f16801561022c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561024657600080fd5b50610169600435600160a060020a0360243516610775565b34801561026a57600080fd5b50610136610885565b34801561027f57600080fd5b506101366108a9565b34801561029457600080fd5b506101366108b0565b3480156102a957600080fd5b506101696108d4565b3480156102be57600080fd5b506102c761096f565b60408051600160a060020a039092168252519081900360200190f35b3480156102ef57600080fd5b5061013661097e565b34801561030457600080fd5b506101366109a2565b34801561031957600080fd5b506102c76004356109c6565b34801561033157600080fd5b506102c76109e1565b34801561034657600080fd5b506101366109f0565b34801561035b57600080fd5b50610136610a14565b34801561037057600080fd5b50610169600160a060020a0360043516610a38565b34801561039157600080fd5b50610136610a9a565b3480156103a657600080fd5b50610136610abe565b7f5661756c7442000000000000000000000000000000000000000000000000000081565b60005433600160a060020a039081169116146103eb57fe5b600054600160a060020a038281169116148015906104115750600160a060020a03811615155b151561041c57600080fd5b60005460408051600160a060020a039283168152918316602083015280517f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a9281900390910190a160008054600160a060020a0390921673ffffffffffffffffffffffffffffffffffffffff19928316179055600180549091169055565b7f4c6f676963416374696f6e73000000000000000000000000000000000000000081565b60008054606091908190819033600160a060020a039081169116146104df57fe5b600085815260026020526040902054600160a060020a0316151561050257600080fd5b6000858152600260205260409020805473ffffffffffffffffffffffffffffffffffffffff19169055600354600110156106475760038054600019810190811061054857fe5b600091825260209182902001805460408051601f60026000196101006001871615020190941693909304928301859004850281018501909152818152928301828280156105d65780601f106105ab576101008083540402835291602001916105d6565b820191906000526020600020905b8154815290600101906020018083116105b957829003601f168201915b505050600088815260026020526040902060010154600380549498509096508793909250869150811061060557fe5b906000526020600020019080519060200190610622929190610b96565b5061062c84610ae2565b60008181526002602052604090206001810185905590925090505b600380549061065a906000198301610c14565b50600085815260026020908152604080832060010183905580519283525187927ffc08d1253c81bcd5444fc7056ef1f5a5df4c9220b6fd70d7449267f1f0f2991892908290030190a25050505050565b7f4f7261636c65000000000000000000000000000000000000000000000000000081565b60038054829081106106dc57fe5b600091825260209182902001805460408051601f600260001961010060018716150201909416939093049283018590048502810185019091528181529350909183018282801561076d5780601f106107425761010080835404028352916020019161076d565b820191906000526020600020905b81548152906001019060200180831161075057829003601f168201915b505050505081565b6000805433600160a060020a0390811691161461078e57fe5b81600160a060020a03811615156107a457600080fd5b600084815260026020526040902054600160a060020a031615156108125760036107cd85610ae9565b8154600181018084556000938452602093849020835191946107f59491909301920190610b96565b506000858152600260205260409020600019820160019091015591505b600084815260026020908152604091829020805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0387169081179091558251908152915186927ffc08d1253c81bcd5444fc7056ef1f5a5df4c9220b6fd70d7449267f1f0f2991892908290030190a250505050565b7f5661756c7441000000000000000000000000000000000000000000000000000081565b6003545b90565b7f537461626c65546f6b656e00000000000000000000000000000000000000000081565b60015433600160a060020a039081169116146108ef57600080fd5b60005460015460408051600160a060020a03938416815292909116602083015280517f343765429aea5a34b3ff6a3785a98a5abb2597aca87bfbb58632c173d585373a9281900390910190a1600180546000805473ffffffffffffffffffffffffffffffffffffffff19908116600160a060020a03841617909155169055565b600054600160a060020a031681565b7f41756374696f6e416374696f6e7300000000000000000000000000000000000081565b7f50656753657474696e677300000000000000000000000000000000000000000081565b600090815260026020526040902054600160a060020a031690565b600154600160a060020a031681565b7f5065674c6f67696300000000000000000000000000000000000000000000000081565b7f53746162696c697479466565526563697069656e74000000000000000000000081565b60005433600160a060020a03908116911614610a5057fe5b600054600160a060020a0382811691161415610a6b57600080fd5b6001805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0392909216919091179055565b7f436f6c6c61746572616c546f6b656e000000000000000000000000000000000081565b7f504547555344000000000000000000000000000000000000000000000000000081565b6020015190565b6040805160208082528183019092526060918291600091808201610400803883390190505091505b6020811015610b8f57838160208110610b2657fe5b1a7f0100000000000000000000000000000000000000000000000000000000000000028282815181101515610b5757fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600101610b11565b5092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10610bd757805160ff1916838001178555610c04565b82800160010185558215610c04579182015b82811115610c04578251825591602001919060010190610be9565b50610c10929150610c3d565b5090565b815481835581811115610c3857600083815260209020610c38918101908301610c57565b505050565b6108ad91905b80821115610c105760008155600101610c43565b6108ad91905b80821115610c10576000610c718282610c7a565b50600101610c5d565b50805460018160011615610100020316600290046000825580601f10610ca05750610cbe565b601f016020900490600052602060002090810190610cbe9190610c3d565b505600a165627a7a72305820c7ba47c90a8de4c866a8b4440c52f58f167c0527cc837adb63674e25cf50a2610029
Deployed Bytecode Sourcemap
4206:4333:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3266:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3266:42:0;;;;;;;;;;;;;;;;;;;;352:232;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;352:232:0;-1:-1:-1;;;;;352:232:0;;;;;;;3370:58;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3370:58:0;;;;6441:1348;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;6441:1348:0;;;;;3561:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3561:41:0;;;;4557:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;4557:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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;4557:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5537:766;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5537:766:0;;;-1:-1:-1;;;;;5537:766:0;;;;;3217:42;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3217:42:0;;;;4926:97;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4926:97:0;;;;3033:52;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3033:52:0;;;;740:180;;8:9:-1;5:2;;;30:1;27;20:12;5:2;740:180:0;;;;90:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;90:20:0;;;;;;;;-1:-1:-1;;;;;90:20:0;;;;;;;;;;;;;;3435:58;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3435:58:0;;;;3502:52;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3502:52:0;;;;5203:134;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;5203:134:0;;;;;117:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;117:23:0;;;;3317:46;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3317:46:0;;;;3609:63;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3609:63:0;;;;592:140;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;592:140:0;-1:-1:-1;;;;;592:140:0;;;;;3092:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3092:60:0;;;;3161:47;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3161:47:0;;;;3266:42;;;:::o;352:232::-;318:5;;304:10;-1:-1:-1;;;;;304:19:0;;;318:5;;304:19;297:27;;;;438:5;;-1:-1:-1;;;;;425:18:0;;;438:5;;425:18;;;;:45;;-1:-1:-1;;;;;;447:23:0;;;;425:45;417:54;;;;;;;;499:5;;487:29;;;-1:-1:-1;;;;;499:5:0;;;487:29;;;;;;;;;;;;;;;;;;;;;527:5;:17;;-1:-1:-1;;;;;527:17:0;;;-1:-1:-1;;527:17:0;;;;;;;555:21;;;;;;;352:232::o;3370:58::-;;;:::o;6441:1348::-;7148:23;318:5;;7055:36;;7148:23;;;;;304:10;-1:-1:-1;;;;;304:19:0;;;318:5;;304:19;297:27;;;;6637:1;6589:20;;;:5;:20;;;;;:36;-1:-1:-1;;;;;6589:36:0;:50;;6581:59;;;;;;6749:1;6702:20;;;:5;:20;;;;;:49;;-1:-1:-1;;6702:49:0;;;7014:13;:20;6702:49;-1:-1:-1;7010:488:0;;;7094:13;7108:20;;-1:-1:-1;;7108:24:0;;;7094:39;;;;;;;;;;;;;;;;7055:78;;;;;;;-1:-1:-1;;7055:78:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7094:39;7055:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;7174:20:0;;;;:5;:20;;;;;:30;;;7221:13;:30;;7055:78;;-1:-1:-1;7174:30:0;;-1:-1:-1;7055:78:0;;7221:13;;-1:-1:-1;7174:30:0;;-1:-1:-1;7221:30:0;;;;;;;;;;;;;:55;;;;;;;;;;;;:::i;:::-;;7318:39;7334:22;7318:15;:39::i;:::-;7408:23;;;;:5;:23;;;;;7446:22;;;:40;;;7291:66;;-1:-1:-1;7408:23:0;-1:-1:-1;7010:488:0;7565:13;:22;;;;;-1:-1:-1;;7565:22:0;;;:::i;:::-;-1:-1:-1;7676:1:0;7643:20;;;:5;:20;;;;;;;;:30;;:34;;;7741:40;;;;;;7649:13;;7741:40;;;;;;;;;6441:1348;;;;;:::o;3561:41::-;;;:::o;4557:29::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4557:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4557:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5537:766::-;5892:9;318:5;;304:10;-1:-1:-1;;;;;304:19:0;;;318:5;;304:19;297:27;;;;5668:16;-1:-1:-1;;;;;1346:15:0;;;;1338:24;;;;;;5818:1;5770:20;;;:5;:20;;;;;:36;-1:-1:-1;;;;;5770:36:0;:50;5766:305;;;5904:13;5923:30;5939:13;5923:15;:30::i;:::-;27:10:-1;;39:1;23:18;;45:23;;;-1:-1;5904:50:0;;;;;;;;;;23:18:-1;;5904:50:0;;;;;;;;;;:::i;:::-;-1:-1:-1;6021:20:0;;;;:5;:20;;;;;-1:-1:-1;;6054:5:0;;6058:1;6021:30;;;:38;6054:5;-1:-1:-1;5766:305:0;6130:20;;;;:5;:20;;;;;;;;;:55;;-1:-1:-1;;6130:55:0;-1:-1:-1;;;;;6130:55:0;;;;;;;;6249:46;;;;;;;6130:20;;6249:46;;;;;;;;;335:1;5537:766;;;:::o;3217:42::-;;;:::o;4926:97::-;4995:13;:20;4926:97;;:::o;3033:52::-;;;:::o;740:180::-;807:8;;793:10;-1:-1:-1;;;;;793:22:0;;;807:8;;793:22;785:31;;;;;;844:5;;;851:8;832:28;;;-1:-1:-1;;;;;844:5:0;;;832:28;;851:8;;;;832:28;;;;;;;;;;;;;;;;879:8;;;;871:16;;-1:-1:-1;;871:16:0;;;-1:-1:-1;;;;;879:8:0;;871:16;;;;898:14;;;740:180::o;90:20::-;;;-1:-1:-1;;;;;90:20:0;;:::o;3435:58::-;;;:::o;3502:52::-;;;:::o;5203:134::-;5266:7;5293:20;;;:5;:20;;;;;:36;-1:-1:-1;;;;;5293:36:0;;5203:134::o;117:23::-;;;-1:-1:-1;;;;;117:23:0;;:::o;3317:46::-;;;:::o;3609:63::-;;;:::o;592:140::-;318:5;;304:10;-1:-1:-1;;;;;304:19:0;;;318:5;;304:19;297:27;;;;687:5;;-1:-1:-1;;;;;674:18:0;;;687:5;;674:18;;666:27;;;;;;704:8;:20;;-1:-1:-1;;704:20:0;-1:-1:-1;;;;;704:20:0;;;;;;;;;;592:140::o;3092:60::-;;;:::o;3161:47::-;;;:::o;8330:206::-;8490:2;8478:15;8472:22;;8330:206::o;8018:255::-;8125:13;;;8135:2;8125:13;;;;;;;;;8081:6;;;;8154:9;;8125:13;;;17:15:-1;;105:10;8125:13:0;88:34:-1;136:17;;-1:-1;8125:13:0;8100:38;;8149:80;8169:2;8165:1;:6;8149:80;;;8208:6;8215:1;8208:9;;;;;;;;;;8193;8203:1;8193:12;;;;;;;;;;;;;;:24;;;;;;;;;;-1:-1:-1;8173:3:0;;8149:80;;;-1:-1:-1;8255:9:0;8018:255;-1:-1:-1;;8018:255:0:o;4206:4333::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4206:4333:0;;;-1:-1:-1;4206:4333:0;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o
Swarm Source
bzzr://c7ba47c90a8de4c866a8b4440c52f58f167c0527cc837adb63674e25cf50a261
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
Loading...
Loading
[ 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.