Latest 25 from a total of 57 transactions
| Transaction Hash |
Method
|
Block
|
From
|
|
To
|
||||
|---|---|---|---|---|---|---|---|---|---|
| Transfer | 22273664 | 302 days ago | IN | 0 ETH | 0.00022963 | ||||
| Approve | 21433554 | 419 days ago | IN | 0 ETH | 0.00537246 | ||||
| Opt Out | 20493602 | 551 days ago | IN | 0 ETH | 0.00022673 | ||||
| Transfer | 20051375 | 612 days ago | IN | 0 ETH | 0.00036957 | ||||
| Transfer | 18309926 | 856 days ago | IN | 0 ETH | 0.00091523 | ||||
| Approve | 18268568 | 862 days ago | IN | 0 ETH | 0.0006266 | ||||
| Transfer | 14394461 | 1428 days ago | IN | 0 ETH | 0.00741808 | ||||
| Transfer | 12815669 | 1674 days ago | IN | 0 ETH | 0.00405345 | ||||
| Transfer | 12772073 | 1681 days ago | IN | 0 ETH | 0.00150497 | ||||
| Transfer | 12771921 | 1681 days ago | IN | 0 ETH | 0.00246731 | ||||
| Transfer | 12215225 | 1768 days ago | IN | 0.002806 ETH | 0.001596 | ||||
| Approve | 12067148 | 1790 days ago | IN | 0 ETH | 0.01830057 | ||||
| Transfer | 12066996 | 1790 days ago | IN | 0 ETH | 0.02186415 | ||||
| Transfer | 11780556 | 1834 days ago | IN | 0 ETH | 0.02707177 | ||||
| Transfer | 11507316 | 1876 days ago | IN | 0 ETH | 0.00780862 | ||||
| Approve | 11309972 | 1907 days ago | IN | 0 ETH | 0.00464933 | ||||
| Transfer | 11188760 | 1925 days ago | IN | 0 ETH | 0.00142416 | ||||
| Approve | 11040507 | 1948 days ago | IN | 0 ETH | 0.00941226 | ||||
| Transfer | 10806276 | 1984 days ago | IN | 0 ETH | 0.00915393 | ||||
| Transfer | 10806276 | 1984 days ago | IN | 0 ETH | 0.01527125 | ||||
| Transfer | 10675473 | 2004 days ago | IN | 0 ETH | 0.02255825 | ||||
| Transfer | 10669963 | 2005 days ago | IN | 0 ETH | 0.0104022 | ||||
| Transfer | 10636636 | 2010 days ago | IN | 0 ETH | 0.00438216 | ||||
| Transfer | 10636466 | 2010 days ago | IN | 0 ETH | 0.01237828 | ||||
| Approve | 10635375 | 2010 days ago | IN | 0 ETH | 0.00910082 |
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Loading...
Loading
Cross-Chain Transactions
Loading...
Loading
Contract Name:
ChronoBankAssetProxy
Compiler Version
v0.4.25+commit.59dbf8f1
Contract Source Code (Solidity)
/**
*Submitted for verification at Etherscan.io on 2020-03-31
*/
// File: @laborx/solidity-shared-contracts/contracts/ERC20Interface.sol
/**
* Copyright 2017–2018, LaborX PTY
* Licensed under the AGPL Version 3 license.
*/
pragma solidity ^0.4.23;
/// @title Defines an interface for EIP20 token smart contract
contract ERC20 {
event Transfer(address indexed from, address indexed to, uint256 value);
event Approval(address indexed from, address indexed spender, uint256 value);
string public symbol;
function decimals() public view returns (uint8);
function totalSupply() public view returns (uint256 supply);
function balanceOf(address _owner) public view returns (uint256 balance);
function transfer(address _to, uint256 _value) public returns (bool success);
function transferFrom(address _from, address _to, uint256 _value) public returns (bool success);
function approve(address _spender, uint256 _value) public returns (bool success);
function allowance(address _owner, address _spender) public view returns (uint256 remaining);
}
// File: @laborx/solidity-eventshistory-contracts/contracts/EventsHistorySourceAdapter.sol
/**
* Copyright 2017–2018, LaborX PTY
* Licensed under the AGPL Version 3 license.
*/
pragma solidity ^0.4.21;
/**
* @title EventsHistory Source Adapter.
*/
contract EventsHistorySourceAdapter {
// It is address of MultiEventsHistory caller assuming we are inside of delegate call.
function _self()
internal
view
returns (address)
{
return msg.sender;
}
}
// File: @laborx/solidity-eventshistory-contracts/contracts/MultiEventsHistoryAdapter.sol
/**
* Copyright 2017–2018, LaborX PTY
* Licensed under the AGPL Version 3 license.
*/
pragma solidity ^0.4.21;
/**
* @title General MultiEventsHistory user.
*/
contract MultiEventsHistoryAdapter is EventsHistorySourceAdapter {
address internal localEventsHistory;
event ErrorCode(address indexed self, uint errorCode);
function getEventsHistory()
public
view
returns (address)
{
address _eventsHistory = localEventsHistory;
return _eventsHistory != 0x0 ? _eventsHistory : this;
}
function emitErrorCode(uint _errorCode) public {
emit ErrorCode(_self(), _errorCode);
}
function _setEventsHistory(address _eventsHistory) internal returns (bool) {
localEventsHistory = _eventsHistory;
return true;
}
function _emitErrorCode(uint _errorCode) internal returns (uint) {
MultiEventsHistoryAdapter(getEventsHistory()).emitErrorCode(_errorCode);
return _errorCode;
}
}
// File: contracts/ChronoBankPlatformEmitter.sol
/**
* Copyright 2017–2018, LaborX PTY
* Licensed under the AGPL Version 3 license.
*/
pragma solidity ^0.4.21;
/// @title ChronoBank Platform Emitter.
///
/// Contains all the original event emitting function definitions and events.
/// In case of new events needed later, additional emitters can be developed.
/// All the functions is meant to be called using delegatecall.
contract ChronoBankPlatformEmitter is MultiEventsHistoryAdapter {
event Transfer(address indexed from, address indexed to, bytes32 indexed symbol, uint value, string reference);
event Issue(bytes32 indexed symbol, uint value, address indexed by);
event Revoke(bytes32 indexed symbol, uint value, address indexed by);
event RevokeExternal(bytes32 indexed symbol, uint value, address indexed by, string externalReference);
event OwnershipChange(address indexed from, address indexed to, bytes32 indexed symbol);
event Approve(address indexed from, address indexed spender, bytes32 indexed symbol, uint value);
event Recovery(address indexed from, address indexed to, address by);
function emitTransfer(address _from, address _to, bytes32 _symbol, uint _value, string _reference) public {
emit Transfer(_from, _to, _symbol, _value, _reference);
}
function emitIssue(bytes32 _symbol, uint _value, address _by) public {
emit Issue(_symbol, _value, _by);
}
function emitRevoke(bytes32 _symbol, uint _value, address _by) public {
emit Revoke(_symbol, _value, _by);
}
function emitRevokeExternal(bytes32 _symbol, uint _value, address _by, string _externalReference) public {
emit RevokeExternal(_symbol, _value, _by, _externalReference);
}
function emitOwnershipChange(address _from, address _to, bytes32 _symbol) public {
emit OwnershipChange(_from, _to, _symbol);
}
function emitApprove(address _from, address _spender, bytes32 _symbol, uint _value) public {
emit Approve(_from, _spender, _symbol, _value);
}
function emitRecovery(address _from, address _to, address _by) public {
emit Recovery(_from, _to, _by);
}
}
// File: contracts/ChronoBankPlatformInterface.sol
/**
* Copyright 2017–2018, LaborX PTY
* Licensed under the AGPL Version 3 license.
*/
pragma solidity ^0.4.11;
contract ChronoBankPlatform is ChronoBankPlatformEmitter {
mapping(bytes32 => address) public proxies;
function symbols(uint _idx) public view returns (bytes32);
function symbolsCount() public view returns (uint);
function isCreated(bytes32 _symbol) public view returns(bool);
function isOwner(address _owner, bytes32 _symbol) public view returns(bool);
function owner(bytes32 _symbol) public view returns(address);
function setProxy(address _address, bytes32 _symbol) public returns(uint errorCode);
function name(bytes32 _symbol) public view returns(string);
function totalSupply(bytes32 _symbol) public view returns(uint);
function balanceOf(address _holder, bytes32 _symbol) public view returns(uint);
function allowance(address _from, address _spender, bytes32 _symbol) public view returns(uint);
function baseUnit(bytes32 _symbol) public view returns(uint8);
function description(bytes32 _symbol) public view returns(string);
function isReissuable(bytes32 _symbol) public view returns(bool);
function blockNumber(bytes32 _symbol) public view returns (uint);
function proxyTransferWithReference(address _to, uint _value, bytes32 _symbol, string _reference, address _sender) public returns(uint errorCode);
function proxyTransferFromWithReference(address _from, address _to, uint _value, bytes32 _symbol, string _reference, address _sender) public returns(uint errorCode);
function proxyApprove(address _spender, uint _value, bytes32 _symbol, address _sender) public returns(uint errorCode);
function issueAsset(bytes32 _symbol, uint _value, string _name, string _description, uint8 _baseUnit, bool _isReissuable, uint _blockNumber) public returns(uint errorCode);
function issueAssetWithInitialReceiver(bytes32 _symbol, uint _value, string _name, string _description, uint8 _baseUnit, bool _isReissuable, uint _blockNumber, address _account) public returns(uint errorCode);
function reissueAsset(bytes32 _symbol, uint _value) public returns(uint errorCode);
function reissueAssetToRecepient(bytes32 _symbol, uint _value, address _to) public returns (uint);
function revokeAsset(bytes32 _symbol, uint _value) public returns(uint errorCode);
function revokeAssetWithExternalReference(bytes32 _symbol, uint _value, string _externalReference) public returns (uint);
function hasAssetRights(address _owner, bytes32 _symbol) public view returns (bool);
function isDesignatedAssetManager(address _account, bytes32 _symbol) public view returns (bool);
function changeOwnership(bytes32 _symbol, address _newOwner) public returns(uint errorCode);
}
// File: contracts/ChronoBankAssetInterface.sol
/**
* Copyright 2017–2018, LaborX PTY
* Licensed under the AGPL Version 3 license.
*/
pragma solidity ^0.4.21;
contract ChronoBankAsset {
function __transferWithReference(address _to, uint _value, string _reference, address _sender) public returns (bool);
function __transferFromWithReference(address _from, address _to, uint _value, string _reference, address _sender) public returns (bool);
function __approve(address _spender, uint _value, address _sender) public returns(bool);
function __process(bytes /*_data*/, address /*_sender*/) public payable {
revert("ASSET_PROCESS_NOT_SUPPORTED");
}
}
// File: contracts/ChronoBankAssetProxy.sol
/**
* Copyright 2017–2018, LaborX PTY
* Licensed under the AGPL Version 3 license.
*/
pragma solidity ^0.4.21;
/// @title ChronoBank Asset Proxy.
///
/// Proxy implements ERC20 interface and acts as a gateway to a single platform asset.
/// Proxy adds symbol and caller(sender) when forwarding requests to platform.
/// Every request that is made by caller first sent to the specific asset implementation
/// contract, which then calls back to be forwarded onto platform.
///
/// Calls flow: Caller ->
/// Proxy.func(...) ->
/// Asset.__func(..., Caller.address) ->
/// Proxy.__func(..., Caller.address) ->
/// Platform.proxyFunc(..., symbol, Caller.address)
///
/// Asset implementation contract is mutable, but each user have an option to stick with
/// old implementation, through explicit decision made in timely manner, if he doesn't agree
/// with new rules.
/// Each user have a possibility to upgrade to latest asset contract implementation, without the
/// possibility to rollback.
///
/// Note: all the non constant functions return false instead of throwing in case if state change
/// didn't happen yet.
contract ChronoBankAssetProxy is ERC20 {
/// @dev Supports ChronoBankPlatform ability to return error codes from methods
uint constant OK = 1;
/// @dev Assigned platform, immutable.
ChronoBankPlatform public chronoBankPlatform;
/// @dev Assigned symbol, immutable.
bytes32 public smbl;
/// @dev Assigned name, immutable.
string public name;
/// @dev Assigned symbol (from ERC20 standard), immutable
string public symbol;
/// @notice Sets platform address, assigns symbol and name.
/// Can be set only once.
/// @param _chronoBankPlatform platform contract address.
/// @param _symbol assigned symbol.
/// @param _name assigned name.
/// @return success.
function init(ChronoBankPlatform _chronoBankPlatform, string _symbol, string _name) public returns (bool) {
if (address(chronoBankPlatform) != 0x0) {
return false;
}
chronoBankPlatform = _chronoBankPlatform;
symbol = _symbol;
smbl = stringToBytes32(_symbol);
name = _name;
return true;
}
function stringToBytes32(string memory source) public pure returns (bytes32 result) {
assembly {
result := mload(add(source, 32))
}
}
/// @dev Only platform is allowed to call.
modifier onlyChronoBankPlatform {
if (msg.sender == address(chronoBankPlatform)) {
_;
}
}
/// @dev Only current asset owner is allowed to call.
modifier onlyAssetOwner {
if (chronoBankPlatform.isOwner(msg.sender, smbl)) {
_;
}
}
/// @dev Returns asset implementation contract for current caller.
/// @return asset implementation contract.
function _getAsset() internal view returns (ChronoBankAsset) {
return ChronoBankAsset(getVersionFor(msg.sender));
}
/// @notice Returns asset total supply.
/// @return asset total supply.
function totalSupply() public view returns (uint) {
return chronoBankPlatform.totalSupply(smbl);
}
/// @notice Returns asset balance for a particular holder.
/// @param _owner holder address.
/// @return holder balance.
function balanceOf(address _owner) public view returns (uint) {
return chronoBankPlatform.balanceOf(_owner, smbl);
}
/// @notice Returns asset allowance from one holder to another.
/// @param _from holder that allowed spending.
/// @param _spender holder that is allowed to spend.
/// @return holder to spender allowance.
function allowance(address _from, address _spender) public view returns (uint) {
return chronoBankPlatform.allowance(_from, _spender, smbl);
}
/// @notice Returns asset decimals.
/// @return asset decimals.
function decimals() public view returns (uint8) {
return chronoBankPlatform.baseUnit(smbl);
}
/// @notice Transfers asset balance from the caller to specified receiver.
/// @param _to holder address to give to.
/// @param _value amount to transfer.
/// @return success.
function transfer(address _to, uint _value) public returns (bool) {
if (_to != 0x0) {
return _transferWithReference(_to, _value, "");
}
}
/// @notice Transfers asset balance from the caller to specified receiver adding specified comment.
/// @param _to holder address to give to.
/// @param _value amount to transfer.
/// @param _reference transfer comment to be included in a platform's Transfer event.
/// @return success.
function transferWithReference(address _to, uint _value, string _reference) public returns (bool) {
if (_to != 0x0) {
return _transferWithReference(_to, _value, _reference);
}
}
/// @notice Resolves asset implementation contract for the caller and forwards there arguments along with
/// the caller address.
/// @return success.
function _transferWithReference(address _to, uint _value, string _reference) internal returns (bool) {
return _getAsset().__transferWithReference(_to, _value, _reference, msg.sender);
}
/// @notice Performs transfer call on the platform by the name of specified sender.
///
/// Can only be called by asset implementation contract assigned to sender.
///
/// @param _to holder address to give to.
/// @param _value amount to transfer.
/// @param _reference transfer comment to be included in a platform's Transfer event.
/// @param _sender initial caller.
///
/// @return success.
function __transferWithReference(
address _to,
uint _value,
string _reference,
address _sender
)
onlyAccess(_sender)
public
returns (bool)
{
return chronoBankPlatform.proxyTransferWithReference(_to, _value, smbl, _reference, _sender) == OK;
}
/// @notice Performs allowance transfer of asset balance between holders.
/// @param _from holder address to take from.
/// @param _to holder address to give to.
/// @param _value amount to transfer.
/// @return success.
function transferFrom(address _from, address _to, uint _value) public returns (bool) {
if (_to != 0x0) {
return _getAsset().__transferFromWithReference(_from, _to, _value, "", msg.sender);
}
}
/// @notice Performs allowance transfer call on the platform by the name of specified sender.
///
/// Can only be called by asset implementation contract assigned to sender.
///
/// @param _from holder address to take from.
/// @param _to holder address to give to.
/// @param _value amount to transfer.
/// @param _reference transfer comment to be included in a platform's Transfer event.
/// @param _sender initial caller.
///
/// @return success.
function __transferFromWithReference(
address _from,
address _to,
uint _value,
string _reference,
address _sender
)
onlyAccess(_sender)
public
returns (bool)
{
return chronoBankPlatform.proxyTransferFromWithReference(_from, _to, _value, smbl, _reference, _sender) == OK;
}
/// @notice Sets asset spending allowance for a specified spender.
/// @param _spender holder address to set allowance to.
/// @param _value amount to allow.
/// @return success.
function approve(address _spender, uint _value) public returns (bool) {
if (_spender != 0x0) {
return _getAsset().__approve(_spender, _value, msg.sender);
}
}
/// @notice Performs allowance setting call on the platform by the name of specified sender.
/// Can only be called by asset implementation contract assigned to sender.
/// @param _spender holder address to set allowance to.
/// @param _value amount to allow.
/// @param _sender initial caller.
/// @return success.
function __approve(address _spender, uint _value, address _sender) onlyAccess(_sender) public returns (bool) {
return chronoBankPlatform.proxyApprove(_spender, _value, smbl, _sender) == OK;
}
/// @notice Emits ERC20 Transfer event on this contract.
/// Can only be, and, called by assigned platform when asset transfer happens.
function emitTransfer(address _from, address _to, uint _value) onlyChronoBankPlatform public {
emit Transfer(_from, _to, _value);
}
/// @notice Emits ERC20 Approval event on this contract.
/// Can only be, and, called by assigned platform when asset allowance set happens.
function emitApprove(address _from, address _spender, uint _value) onlyChronoBankPlatform public {
emit Approval(_from, _spender, _value);
}
/// @notice Resolves asset implementation contract for the caller and forwards there transaction data,
/// along with the value. This allows for proxy interface growth.
function () public payable {
_getAsset().__process.value(msg.value)(msg.data, msg.sender);
}
/// @dev Indicates an upgrade freeze-time start, and the next asset implementation contract.
event UpgradeProposal(address newVersion);
/// @dev Current asset implementation contract address.
address latestVersion;
/// @dev Proposed next asset implementation contract address.
address pendingVersion;
/// @dev Upgrade freeze-time start.
uint pendingVersionTimestamp;
/// @dev Timespan for users to review the new implementation and make decision.
uint constant UPGRADE_FREEZE_TIME = 3 days;
/// @dev Asset implementation contract address that user decided to stick with.
/// 0x0 means that user uses latest version.
mapping(address => address) userOptOutVersion;
/// @dev Only asset implementation contract assigned to sender is allowed to call.
modifier onlyAccess(address _sender) {
if (msg.sender == getVersionFor(_sender)) {
_;
}
}
/// @notice Returns asset implementation contract address assigned to sender.
/// @param _sender sender address.
/// @return asset implementation contract address.
function getVersionFor(address _sender) public view returns (address) {
return userOptOutVersion[_sender] == 0 ? latestVersion : userOptOutVersion[_sender];
}
/// @notice Returns current asset implementation contract address.
/// @return asset implementation contract address.
function getLatestVersion() public view returns (address) {
return latestVersion;
}
/// @notice Returns proposed next asset implementation contract address.
/// @return asset implementation contract address.
function getPendingVersion() public view returns (address) {
return pendingVersion;
}
/// @notice Returns upgrade freeze-time start.
/// @return freeze-time start.
function getPendingVersionTimestamp() public view returns (uint) {
return pendingVersionTimestamp;
}
/// @notice Propose next asset implementation contract address.
/// Can only be called by current asset owner.
/// Note: freeze-time should not be applied for the initial setup.
/// @param _newVersion asset implementation contract address.
/// @return success.
function proposeUpgrade(address _newVersion) onlyAssetOwner public returns (bool) {
// Should not already be in the upgrading process.
if (pendingVersion != 0x0) {
return false;
}
// New version address should be other than 0x0.
if (_newVersion == 0x0) {
return false;
}
// Don't apply freeze-time for the initial setup.
if (latestVersion == 0x0) {
latestVersion = _newVersion;
return true;
}
pendingVersion = _newVersion;
pendingVersionTimestamp = now;
emit UpgradeProposal(_newVersion);
return true;
}
/// @notice Cancel the pending upgrade process.
/// Can only be called by current asset owner.
/// @return success.
function purgeUpgrade() public onlyAssetOwner returns (bool) {
if (pendingVersion == 0x0) {
return false;
}
delete pendingVersion;
delete pendingVersionTimestamp;
return true;
}
/// @notice Finalize an upgrade process setting new asset implementation contract address.
/// Can only be called after an upgrade freeze-time.
/// @return success.
function commitUpgrade() public returns (bool) {
if (pendingVersion == 0x0) {
return false;
}
if (pendingVersionTimestamp + UPGRADE_FREEZE_TIME > now) {
return false;
}
latestVersion = pendingVersion;
delete pendingVersion;
delete pendingVersionTimestamp;
return true;
}
/// @notice Disagree with proposed upgrade, and stick with current asset implementation
/// until further explicit agreement to upgrade.
/// @return success.
function optOut() public returns (bool) {
if (userOptOutVersion[msg.sender] != 0x0) {
return false;
}
userOptOutVersion[msg.sender] = latestVersion;
return true;
}
/// @notice Implicitly agree to upgrade to current and future asset implementation upgrades,
/// until further explicit disagreement.
/// @return success.
function optIn() public returns (bool) {
delete userOptOutVersion[msg.sender];
return true;
}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"constant":true,"inputs":[],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"commitUpgrade","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getLatestVersion","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"}],"name":"emitApprove","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transferFrom","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"emitTransfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"decimals","outputs":[{"name":"","type":"uint8"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"chronoBankPlatform","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getPendingVersionTimestamp","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"purgeUpgrade","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"optIn","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_reference","type":"string"},{"name":"_sender","type":"address"}],"name":"__transferWithReference","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_owner","type":"address"}],"name":"balanceOf","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_spender","type":"address"},{"name":"_value","type":"uint256"},{"name":"_sender","type":"address"}],"name":"__approve","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"getPendingVersion","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"}],"name":"transfer","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_reference","type":"string"}],"name":"transferWithReference","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_chronoBankPlatform","type":"address"},{"name":"_symbol","type":"string"},{"name":"_name","type":"string"}],"name":"init","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"_newVersion","type":"address"}],"name":"proposeUpgrade","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"smbl","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"source","type":"string"}],"name":"stringToBytes32","outputs":[{"name":"result","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[],"name":"optOut","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_from","type":"address"},{"name":"_spender","type":"address"}],"name":"allowance","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"_from","type":"address"},{"name":"_to","type":"address"},{"name":"_value","type":"uint256"},{"name":"_reference","type":"string"},{"name":"_sender","type":"address"}],"name":"__transferFromWithReference","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"_sender","type":"address"}],"name":"getVersionFor","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"payable":true,"stateMutability":"payable","type":"fallback"},{"anonymous":false,"inputs":[{"indexed":false,"name":"newVersion","type":"address"}],"name":"UpgradeProposal","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"to","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"from","type":"address"},{"indexed":true,"name":"spender","type":"address"},{"indexed":false,"name":"value","type":"uint256"}],"name":"Approval","type":"event"}]Contract Creation Code
608060405234801561001057600080fd5b506116e9806100206000396000f3006080604052600436106101505763ffffffff60e060020a60003504166306fdde0381146101f0578063095ea7b31461027a5780630ba12c83146102b25780630e6d1de9146102c757806318160ddd146102f8578063233850891461031f57806323b872dd1461034b57806323de665114610375578063313ce5671461039f57806349752baf146103ca5780634bfaf2e8146103df5780634dfe950d146103f45780635b48684e146104095780636a630ee71461041e57806370a08231146104925780637b7054c8146104b357806395d89b41146104de578063a883fb90146104f3578063a9059cbb14610508578063ac35caee1461052c578063b2b45df514610595578063c915fc931461063a578063cb4e75bb1461065b578063cfb5192814610670578063d4eec5a6146106c9578063dd62ed3e146106de578063ec698a2814610705578063fe8beb711461077f575b6101586107a0565b600160a060020a031663f2d6e0ab34600036336040518563ffffffff1660e060020a028152600401808060200183600160a060020a0316600160a060020a03168152602001828103825285858281815260200192508082843782019150509450505050506000604051808303818588803b1580156101d557600080fd5b505af11580156101e9573d6000803e3d6000fd5b5050505050005b3480156101fc57600080fd5b506102056107b1565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561023f578181015183820152602001610227565b50505050905090810190601f16801561026c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561028657600080fd5b5061029e600160a060020a036004351660243561083f565b604080519115158252519081900360200190f35b3480156102be57600080fd5b5061029e610900565b3480156102d357600080fd5b506102dc610964565b60408051600160a060020a039092168252519081900360200190f35b34801561030457600080fd5b5061030d610973565b60408051918252519081900360200190f35b34801561032b57600080fd5b50610349600160a060020a0360043581169060243516604435610a0d565b005b34801561035757600080fd5b5061029e600160a060020a0360043581169060243516604435610a71565b34801561038157600080fd5b50610349600160a060020a0360043581169060243516604435610b4a565b3480156103ab57600080fd5b506103b4610bad565b6040805160ff9092168252519081900360200190f35b3480156103d657600080fd5b506102dc610c16565b3480156103eb57600080fd5b5061030d610c25565b34801561040057600080fd5b5061029e610c2b565b34801561041557600080fd5b5061029e610d00565b34801561042a57600080fd5b50604080516020600460443581810135601f810184900484028501840190955284845261029e948235600160a060020a031694602480359536959460649492019190819084018382808284375094975050509235600160a060020a03169350610d2292505050565b34801561049e57600080fd5b5061030d600160a060020a0360043516610e79565b3480156104bf57600080fd5b5061029e600160a060020a036004358116906024359060443516610f23565b3480156104ea57600080fd5b50610205611003565b3480156104ff57600080fd5b506102dc61105e565b34801561051457600080fd5b5061029e600160a060020a036004351660243561106d565b34801561053857600080fd5b50604080516020600460443581810135601f810184900484028501840190955284845261029e948235600160a060020a03169460248035953695946064949201919081908401838280828437509497506110a09650505050505050565b3480156105a157600080fd5b5060408051602060046024803582810135601f810185900485028601850190965285855261029e958335600160a060020a031695369560449491939091019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506110c39650505050505050565b34801561064657600080fd5b5061029e600160a060020a0360043516611138565b34801561066757600080fd5b5061030d61129b565b34801561067c57600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261030d9436949293602493928401919081908401838280828437509497506112a19650505050505050565b3480156106d557600080fd5b5061029e6112a8565b3480156106ea57600080fd5b5061030d600160a060020a0360043581169060243516611303565b34801561071157600080fd5b50604080516020601f60643560048181013592830184900484028501840190955281845261029e94600160a060020a03813581169560248035909216956044359536956084940191819084018382808284375094975050509235600160a060020a0316935061138192505050565b34801561078b57600080fd5b506102dc600160a060020a03600435166114e2565b60006107ab336114e2565b90505b90565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108375780601f1061080c57610100808354040283529160200191610837565b820191906000526020600020905b81548152906001019060200180831161081a57829003601f168201915b505050505081565b6000600160a060020a038316156108fa576108586107a0565b604080517f7b7054c8000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301526024820186905233604483015291519290911691637b7054c8916064808201926020929091908290030181600087803b1580156108cb57600080fd5b505af11580156108df573d6000803e3d6000fd5b505050506040513d60208110156108f557600080fd5b505190505b92915050565b600654600090600160a060020a0316151561091d575060006107ae565b426203f480600754011115610934575060006107ae565b506006805460058054600160a060020a0319908116600160a060020a038416179091551690556000600755600190565b600554600160a060020a031690565b600154600254604080517fb524abcf000000000000000000000000000000000000000000000000000000008152600481019290925251600092600160a060020a03169163b524abcf91602480830192602092919082900301818787803b1580156109dc57600080fd5b505af11580156109f0573d6000803e3d6000fd5b505050506040513d6020811015610a0657600080fd5b5051905090565b600154600160a060020a0316331415610a6c5781600160a060020a031683600160a060020a03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35b505050565b6000600160a060020a03831615610b4357610a8a6107a0565b604080517fec698a28000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015286811660248301526044820186905233608483015260a06064830152600060a48301819052925193169263ec698a289260e480840193602093929083900390910190829087803b158015610b1457600080fd5b505af1158015610b28573d6000803e3d6000fd5b505050506040513d6020811015610b3e57600080fd5b505190505b9392505050565b600154600160a060020a0316331415610a6c5781600160a060020a031683600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600154600254604080517fdc86e6f0000000000000000000000000000000000000000000000000000000008152600481019290925251600092600160a060020a03169163dc86e6f091602480830192602092919082900301818787803b1580156109dc57600080fd5b600154600160a060020a031681565b60075490565b600154600254604080517fe96b462a000000000000000000000000000000000000000000000000000000008152336004820152602481019290925251600092600160a060020a03169163e96b462a91604480830192602092919082900301818787803b158015610c9a57600080fd5b505af1158015610cae573d6000803e3d6000fd5b505050506040513d6020811015610cc457600080fd5b5051156107ae57600654600160a060020a03161515610ce5575060006107ae565b5060068054600160a060020a03191690556000600755600190565b3360009081526008602052604090208054600160a060020a0319169055600190565b600081610d2e816114e2565b600160a060020a031633600160a060020a03161415610e7057600180546002546040517f57a96dd0000000000000000000000000000000000000000000000000000000008152600160a060020a038a811660048301908152602483018b905260448301849052888216608484015260a0606484019081528a5160a48501528a5192909516946357a96dd0948d948d9491938d938d939192909160c490910190602086019080838360005b83811015610df0578181015183820152602001610dd8565b50505050905090810190601f168015610e1d5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b158015610e4057600080fd5b505af1158015610e54573d6000803e3d6000fd5b505050506040513d6020811015610e6a57600080fd5b50511491505b50949350505050565b600154600254604080517f4d30b6be000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152602482019390935290516000939290921691634d30b6be9160448082019260209290919082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b505190505b919050565b600081610f2f816114e2565b600160a060020a031633600160a060020a03161415610ffb5760018054600254604080517f14712e2f000000000000000000000000000000000000000000000000000000008152600160a060020a038a81166004830152602482018a905260448201939093528783166064820152905191909216916314712e2f9160848083019260209291908290030181600087803b158015610fcb57600080fd5b505af1158015610fdf573d6000803e3d6000fd5b505050506040513d6020811015610ff557600080fd5b50511491505b509392505050565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108375780601f1061080c57610100808354040283529160200191610837565b600654600160a060020a031690565b6000600160a060020a038316156108fa5761109983836020604051908101604052806000815250611535565b90506108fa565b6000600160a060020a03841615610b43576110bc848484611535565b9050610b43565b600154600090600160a060020a0316156110df57506000610b43565b60018054600160a060020a031916600160a060020a038616179055825161110d906004906020860190611625565b50611117836112a1565b600255815161112d906003906020850190611625565b506001949350505050565b600154600254604080517fe96b462a000000000000000000000000000000000000000000000000000000008152336004820152602481019290925251600092600160a060020a03169163e96b462a91604480830192602092919082900301818787803b1580156111a757600080fd5b505af11580156111bb573d6000803e3d6000fd5b505050506040513d60208110156111d157600080fd5b505115610f1e57600654600160a060020a0316156111f157506000610f1e565b600160a060020a038216151561120957506000610f1e565b600554600160a060020a0316151561123e575060058054600160a060020a031916600160a060020a0383161790556001610f1e565b60068054600160a060020a038416600160a060020a031990911681179091554260075560408051918252517faf574319215a31df9b528258f1bdeef2b12b169dc85ff443a49373248c77493a9181900360200190a1506001919050565b60025481565b6020015190565b33600090815260086020526040812054600160a060020a0316156112ce575060006107ae565b506005543360009081526008602052604090208054600160a060020a031916600160a060020a03909216919091179055600190565b600154600254604080517f1c8d5d38000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301528581166024830152604482019390935290516000939290921691631c8d5d389160648082019260209290919082900301818787803b1580156108cb57600080fd5b60008161138d816114e2565b600160a060020a031633600160a060020a031614156114d857600180546002546040517f161ff662000000000000000000000000000000000000000000000000000000008152600160a060020a038b8116600483019081528b82166024840152604483018b90526064830184905288821660a484015260c0608484019081528a5160c48501528a51929095169463161ff662948e948e948e9492938e938e93909260e490910190602086019080838360005b8381101561145757818101518382015260200161143f565b50505050905090810190601f1680156114845780820380516001836020036101000a031916815260200191505b50975050505050505050602060405180830381600087803b1580156114a857600080fd5b505af11580156114bc573d6000803e3d6000fd5b505050506040513d60208110156114d257600080fd5b50511491505b5095945050505050565b600160a060020a038082166000908152600860205260408120549091161561152457600160a060020a03808316600090815260086020526040902054166108fa565b5050600554600160a060020a031690565b600061153f6107a0565b600160a060020a0316636a630ee7858585336040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a031681526020018481526020018060200183600160a060020a0316600160a060020a03168152602001828103825284818151815260200191508051906020019080838360005b838110156115d65781810151838201526020016115be565b50505050905090810190601f1680156116035780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610b1457600080fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061166657805160ff1916838001178555611693565b82800160010185558215611693579182015b82811115611693578251825591602001919060010190611678565b5061169f9291506116a3565b5090565b6107ae91905b8082111561169f57600081556001016116a95600a165627a7a72305820eb2ef2d2a0baba5a5957e251e7eee3df602cea3bcc5936605373c59ef5e0155e0029
Deployed Bytecode
0x6080604052600436106101505763ffffffff60e060020a60003504166306fdde0381146101f0578063095ea7b31461027a5780630ba12c83146102b25780630e6d1de9146102c757806318160ddd146102f8578063233850891461031f57806323b872dd1461034b57806323de665114610375578063313ce5671461039f57806349752baf146103ca5780634bfaf2e8146103df5780634dfe950d146103f45780635b48684e146104095780636a630ee71461041e57806370a08231146104925780637b7054c8146104b357806395d89b41146104de578063a883fb90146104f3578063a9059cbb14610508578063ac35caee1461052c578063b2b45df514610595578063c915fc931461063a578063cb4e75bb1461065b578063cfb5192814610670578063d4eec5a6146106c9578063dd62ed3e146106de578063ec698a2814610705578063fe8beb711461077f575b6101586107a0565b600160a060020a031663f2d6e0ab34600036336040518563ffffffff1660e060020a028152600401808060200183600160a060020a0316600160a060020a03168152602001828103825285858281815260200192508082843782019150509450505050506000604051808303818588803b1580156101d557600080fd5b505af11580156101e9573d6000803e3d6000fd5b5050505050005b3480156101fc57600080fd5b506102056107b1565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561023f578181015183820152602001610227565b50505050905090810190601f16801561026c5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561028657600080fd5b5061029e600160a060020a036004351660243561083f565b604080519115158252519081900360200190f35b3480156102be57600080fd5b5061029e610900565b3480156102d357600080fd5b506102dc610964565b60408051600160a060020a039092168252519081900360200190f35b34801561030457600080fd5b5061030d610973565b60408051918252519081900360200190f35b34801561032b57600080fd5b50610349600160a060020a0360043581169060243516604435610a0d565b005b34801561035757600080fd5b5061029e600160a060020a0360043581169060243516604435610a71565b34801561038157600080fd5b50610349600160a060020a0360043581169060243516604435610b4a565b3480156103ab57600080fd5b506103b4610bad565b6040805160ff9092168252519081900360200190f35b3480156103d657600080fd5b506102dc610c16565b3480156103eb57600080fd5b5061030d610c25565b34801561040057600080fd5b5061029e610c2b565b34801561041557600080fd5b5061029e610d00565b34801561042a57600080fd5b50604080516020600460443581810135601f810184900484028501840190955284845261029e948235600160a060020a031694602480359536959460649492019190819084018382808284375094975050509235600160a060020a03169350610d2292505050565b34801561049e57600080fd5b5061030d600160a060020a0360043516610e79565b3480156104bf57600080fd5b5061029e600160a060020a036004358116906024359060443516610f23565b3480156104ea57600080fd5b50610205611003565b3480156104ff57600080fd5b506102dc61105e565b34801561051457600080fd5b5061029e600160a060020a036004351660243561106d565b34801561053857600080fd5b50604080516020600460443581810135601f810184900484028501840190955284845261029e948235600160a060020a03169460248035953695946064949201919081908401838280828437509497506110a09650505050505050565b3480156105a157600080fd5b5060408051602060046024803582810135601f810185900485028601850190965285855261029e958335600160a060020a031695369560449491939091019190819084018382808284375050604080516020601f89358b018035918201839004830284018301909452808352979a9998810197919650918201945092508291508401838280828437509497506110c39650505050505050565b34801561064657600080fd5b5061029e600160a060020a0360043516611138565b34801561066757600080fd5b5061030d61129b565b34801561067c57600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261030d9436949293602493928401919081908401838280828437509497506112a19650505050505050565b3480156106d557600080fd5b5061029e6112a8565b3480156106ea57600080fd5b5061030d600160a060020a0360043581169060243516611303565b34801561071157600080fd5b50604080516020601f60643560048181013592830184900484028501840190955281845261029e94600160a060020a03813581169560248035909216956044359536956084940191819084018382808284375094975050509235600160a060020a0316935061138192505050565b34801561078b57600080fd5b506102dc600160a060020a03600435166114e2565b60006107ab336114e2565b90505b90565b6003805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108375780601f1061080c57610100808354040283529160200191610837565b820191906000526020600020905b81548152906001019060200180831161081a57829003601f168201915b505050505081565b6000600160a060020a038316156108fa576108586107a0565b604080517f7b7054c8000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301526024820186905233604483015291519290911691637b7054c8916064808201926020929091908290030181600087803b1580156108cb57600080fd5b505af11580156108df573d6000803e3d6000fd5b505050506040513d60208110156108f557600080fd5b505190505b92915050565b600654600090600160a060020a0316151561091d575060006107ae565b426203f480600754011115610934575060006107ae565b506006805460058054600160a060020a0319908116600160a060020a038416179091551690556000600755600190565b600554600160a060020a031690565b600154600254604080517fb524abcf000000000000000000000000000000000000000000000000000000008152600481019290925251600092600160a060020a03169163b524abcf91602480830192602092919082900301818787803b1580156109dc57600080fd5b505af11580156109f0573d6000803e3d6000fd5b505050506040513d6020811015610a0657600080fd5b5051905090565b600154600160a060020a0316331415610a6c5781600160a060020a031683600160a060020a03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a35b505050565b6000600160a060020a03831615610b4357610a8a6107a0565b604080517fec698a28000000000000000000000000000000000000000000000000000000008152600160a060020a03878116600483015286811660248301526044820186905233608483015260a06064830152600060a48301819052925193169263ec698a289260e480840193602093929083900390910190829087803b158015610b1457600080fd5b505af1158015610b28573d6000803e3d6000fd5b505050506040513d6020811015610b3e57600080fd5b505190505b9392505050565b600154600160a060020a0316331415610a6c5781600160a060020a031683600160a060020a03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600154600254604080517fdc86e6f0000000000000000000000000000000000000000000000000000000008152600481019290925251600092600160a060020a03169163dc86e6f091602480830192602092919082900301818787803b1580156109dc57600080fd5b600154600160a060020a031681565b60075490565b600154600254604080517fe96b462a000000000000000000000000000000000000000000000000000000008152336004820152602481019290925251600092600160a060020a03169163e96b462a91604480830192602092919082900301818787803b158015610c9a57600080fd5b505af1158015610cae573d6000803e3d6000fd5b505050506040513d6020811015610cc457600080fd5b5051156107ae57600654600160a060020a03161515610ce5575060006107ae565b5060068054600160a060020a03191690556000600755600190565b3360009081526008602052604090208054600160a060020a0319169055600190565b600081610d2e816114e2565b600160a060020a031633600160a060020a03161415610e7057600180546002546040517f57a96dd0000000000000000000000000000000000000000000000000000000008152600160a060020a038a811660048301908152602483018b905260448301849052888216608484015260a0606484019081528a5160a48501528a5192909516946357a96dd0948d948d9491938d938d939192909160c490910190602086019080838360005b83811015610df0578181015183820152602001610dd8565b50505050905090810190601f168015610e1d5780820380516001836020036101000a031916815260200191505b509650505050505050602060405180830381600087803b158015610e4057600080fd5b505af1158015610e54573d6000803e3d6000fd5b505050506040513d6020811015610e6a57600080fd5b50511491505b50949350505050565b600154600254604080517f4d30b6be000000000000000000000000000000000000000000000000000000008152600160a060020a038581166004830152602482019390935290516000939290921691634d30b6be9160448082019260209290919082900301818787803b158015610eef57600080fd5b505af1158015610f03573d6000803e3d6000fd5b505050506040513d6020811015610f1957600080fd5b505190505b919050565b600081610f2f816114e2565b600160a060020a031633600160a060020a03161415610ffb5760018054600254604080517f14712e2f000000000000000000000000000000000000000000000000000000008152600160a060020a038a81166004830152602482018a905260448201939093528783166064820152905191909216916314712e2f9160848083019260209291908290030181600087803b158015610fcb57600080fd5b505af1158015610fdf573d6000803e3d6000fd5b505050506040513d6020811015610ff557600080fd5b50511491505b509392505050565b6004805460408051602060026001851615610100026000190190941693909304601f810184900484028201840190925281815292918301828280156108375780601f1061080c57610100808354040283529160200191610837565b600654600160a060020a031690565b6000600160a060020a038316156108fa5761109983836020604051908101604052806000815250611535565b90506108fa565b6000600160a060020a03841615610b43576110bc848484611535565b9050610b43565b600154600090600160a060020a0316156110df57506000610b43565b60018054600160a060020a031916600160a060020a038616179055825161110d906004906020860190611625565b50611117836112a1565b600255815161112d906003906020850190611625565b506001949350505050565b600154600254604080517fe96b462a000000000000000000000000000000000000000000000000000000008152336004820152602481019290925251600092600160a060020a03169163e96b462a91604480830192602092919082900301818787803b1580156111a757600080fd5b505af11580156111bb573d6000803e3d6000fd5b505050506040513d60208110156111d157600080fd5b505115610f1e57600654600160a060020a0316156111f157506000610f1e565b600160a060020a038216151561120957506000610f1e565b600554600160a060020a0316151561123e575060058054600160a060020a031916600160a060020a0383161790556001610f1e565b60068054600160a060020a038416600160a060020a031990911681179091554260075560408051918252517faf574319215a31df9b528258f1bdeef2b12b169dc85ff443a49373248c77493a9181900360200190a1506001919050565b60025481565b6020015190565b33600090815260086020526040812054600160a060020a0316156112ce575060006107ae565b506005543360009081526008602052604090208054600160a060020a031916600160a060020a03909216919091179055600190565b600154600254604080517f1c8d5d38000000000000000000000000000000000000000000000000000000008152600160a060020a0386811660048301528581166024830152604482019390935290516000939290921691631c8d5d389160648082019260209290919082900301818787803b1580156108cb57600080fd5b60008161138d816114e2565b600160a060020a031633600160a060020a031614156114d857600180546002546040517f161ff662000000000000000000000000000000000000000000000000000000008152600160a060020a038b8116600483019081528b82166024840152604483018b90526064830184905288821660a484015260c0608484019081528a5160c48501528a51929095169463161ff662948e948e948e9492938e938e93909260e490910190602086019080838360005b8381101561145757818101518382015260200161143f565b50505050905090810190601f1680156114845780820380516001836020036101000a031916815260200191505b50975050505050505050602060405180830381600087803b1580156114a857600080fd5b505af11580156114bc573d6000803e3d6000fd5b505050506040513d60208110156114d257600080fd5b50511491505b5095945050505050565b600160a060020a038082166000908152600860205260408120549091161561152457600160a060020a03808316600090815260086020526040902054166108fa565b5050600554600160a060020a031690565b600061153f6107a0565b600160a060020a0316636a630ee7858585336040518563ffffffff1660e060020a0281526004018085600160a060020a0316600160a060020a031681526020018481526020018060200183600160a060020a0316600160a060020a03168152602001828103825284818151815260200191508051906020019080838360005b838110156115d65781810151838201526020016115be565b50505050905090810190601f1680156116035780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610b1457600080fd5b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061166657805160ff1916838001178555611693565b82800160010185558215611693579182015b82811115611693578251825591602001919060010190611678565b5061169f9291506116a3565b5090565b6107ae91905b8082111561169f57600081556001016116a95600a165627a7a72305820eb2ef2d2a0baba5a5957e251e7eee3df602cea3bcc5936605373c59ef5e0155e0029
Deployed Bytecode Sourcemap
9793:12868:0:-;;;;;;;;;-1:-1:-1;;;9793:12868:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17969:11;:9;:11::i;:::-;-1:-1:-1;;;;;17969:21:0;;17997:9;18008:8;;18018:10;17969:60;;;;;-1:-1:-1;;;17969:60:0;;;;;;;;;;-1:-1:-1;;;;;17969:60:0;-1:-1:-1;;;;;17969:60:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17969:60:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17969:60:0;;;;;9793:12868;10162:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10162:18: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;10162:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16379:194;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;16379:194:0;-1:-1:-1;;;;;16379:194:0;;;;;;;;;;;;;;;;;;;;;;;;;21589:377;;8:9:-1;5:2;;;30:1;27;20:12;5:2;21589:377:0;;;;19493:97;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19493:97:0;;;;;;;;-1:-1:-1;;;;;19493:97:0;;;;;;;;;;;;;;11805:112;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11805:112:0;;;;;;;;;;;;;;;;;;;;17590:154;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;17590:154:0;-1:-1:-1;;;;;17590:154:0;;;;;;;;;;;;;;15075:228;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15075:228:0;-1:-1:-1;;;;;15075:228:0;;;;;;;;;;;;17286:145;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;17286:145:0;-1:-1:-1;;;;;17286:145:0;;;;;;;;;;;;12662:107;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12662:107:0;;;;;;;;;;;;;;;;;;;;;;;9999:44;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9999:44:0;;;;19927:114;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19927:114:0;;;;21159:242;;8:9:-1;5:2;;;30:1;27;20:12;5:2;21159:242:0;;;;22542:116;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22542:116:0;;;;14504:317;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;14504:317:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14504:317:0;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14504:317:0;;-1:-1:-1;;;14504:317:0;;-1:-1:-1;;;;;14504:317:0;;-1:-1:-1;14504:317:0;;-1:-1:-1;;;14504:317:0;12061:130;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12061:130:0;-1:-1:-1;;;;;12061:130:0;;;;;16927:205;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;16927:205:0;-1:-1:-1;;;;;16927:205:0;;;;;;;;;;;;;10252:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10252:20:0;;;;19732:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19732:99:0;;;;12973:173;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12973:173:0;-1:-1:-1;;;;;12973:173:0;;;;;;;13466:213;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;13466:213:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13466:213:0;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13466:213:0;;-1:-1:-1;13466:213:0;;-1:-1:-1;;;;;;;13466:213:0;10544:370;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10544:370:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10544:370:0;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10544:370:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10544:370:0;;;;-1:-1:-1;10544:370:0;-1:-1:-1;10544:370:0;;-1:-1:-1;10544:370:0;;;;;;;;-1:-1:-1;10544:370:0;;-1:-1:-1;10544:370:0;;-1:-1:-1;;;;;;;10544:370:0;20335:685;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;20335:685:0;-1:-1:-1;;;;;20335:685:0;;;;;10094:19;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10094:19:0;;;;10922:168;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;10922:168:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10922:168:0;;-1:-1:-1;10922:168:0;;-1:-1:-1;;;;;;;10922:168:0;22147:217;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22147:217:0;;;;12424:156;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;12424:156:0;-1:-1:-1;;;;;12424:156:0;;;;;;;;;;15816:356;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;15816:356:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15816:356:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;15816:356:0;;-1:-1:-1;;;15816:356:0;;-1:-1:-1;;;;;15816:356:0;;-1:-1:-1;15816:356:0;;-1:-1:-1;;;15816:356:0;19185:172;;8:9:-1;5:2;;;30:1;27;20:12;5:2;-1:-1;19185:172:0;-1:-1:-1;;;;;19185:172:0;;;;;11586:129;11630:15;11681:25;11695:10;11681:13;:25::i;:::-;11658:49;;11586:129;;:::o;10162:18::-;;;;;;;;;;;;;;;-1:-1:-1;;10162:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;16379:194::-;16443:4;-1:-1:-1;;;;;16464:15:0;;;16460:106;;16503:11;:9;:11::i;:::-;:51;;;;;;-1:-1:-1;;;;;16503:51:0;;;;;;;;;;;;;16543:10;16503:51;;;;;;:21;;;;;;;:51;;;;;;;;;;;;;;;-1:-1:-1;16503:21:0;:51;;;5:2:-1;;;;30:1;27;20:12;5:2;16503:51:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16503:51:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16503:51:0;;-1:-1:-1;16460:106:0;16379:194;;;;:::o;21589:377::-;21651:14;;21630:4;;-1:-1:-1;;;;;21651:14:0;:21;21647:66;;;-1:-1:-1;21696:5:0;21689:12;;21647:66;21777:3;18581:6;21729:23;;:45;:51;21725:96;;;-1:-1:-1;21804:5:0;21797:12;;21725:96;-1:-1:-1;21849:14:0;;;21833:13;:30;;-1:-1:-1;;;;;;21833:30:0;;;-1:-1:-1;;;;;21849:14:0;;21833:30;;;;21874:21;;;21849:14;21913:23;21906:30;21849:14;21589:377;:::o;19493:97::-;19569:13;;-1:-1:-1;;;;;19569:13:0;19493:97;:::o;11805:112::-;11873:18;;11904:4;;11873:36;;;;;;;;;;;;;;11849:4;;-1:-1:-1;;;;;11873:18:0;;:30;;:36;;;;;;;;;;;;;;11849:4;11873:18;:36;;;5:2:-1;;;;30:1;27;20:12;5:2;11873:36:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11873:36:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11873:36:0;;-1:-1:-1;11805:112:0;:::o;17590:154::-;11215:18;;-1:-1:-1;;;;;11215:18:0;11193:10;:41;11189:75;;;17719:8;-1:-1:-1;;;;;17703:33:0;17712:5;-1:-1:-1;;;;;17703:33:0;;17729:6;17703:33;;;;;;;;;;;;;;;;;;11189:75;17590:154;;;:::o;15075:228::-;15154:4;-1:-1:-1;;;;;15175:10:0;;;15171:125;;15209:11;:9;:11::i;:::-;:75;;;;;;-1:-1:-1;;;;;15209:75:0;;;;;;;;;;;;;;;;;;;;15273:10;15209:75;;;;;;;;;-1:-1:-1;15209:75:0;;;;;;;;:39;;;;;:75;;;;;;;;;;;;;;;;;;:39;:75;;;5:2:-1;;;;30:1;27;20:12;5:2;15209:75:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;15209:75:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15209:75:0;;-1:-1:-1;15171:125:0;15075:228;;;;;:::o;17286:145::-;11215:18;;-1:-1:-1;;;;;11215:18:0;11193:10;:41;11189:75;;;17411:3;-1:-1:-1;;;;;17395:28:0;17404:5;-1:-1:-1;;;;;17395:28:0;;17416:6;17395:28;;;;;;;;;;;;;;;;;;17286:145;;;:::o;12662:107::-;12728:18;;12756:4;;12728:33;;;;;;;;;;;;;;12703:5;;-1:-1:-1;;;;;12728:18:0;;:27;;:33;;;;;;;;;;;;;;12703:5;12728:18;:33;;;5:2:-1;;;;30:1;27;20:12;9999:44:0;;;-1:-1:-1;;;;;9999:44:0;;:::o;19927:114::-;20010:23;;19927:114;:::o;21159:242::-;11377:18;;11416:4;;11377:44;;;;;;11404:10;11377:44;;;;;;;;;;;;21214:4;;-1:-1:-1;;;;;11377:18:0;;:26;;:44;;;;;;;;;;;;;;21214:4;11377:18;:44;;;5:2:-1;;;;30:1;27;20:12;5:2;11377:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11377:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11377:44:0;11373:78;;;21235:14;;-1:-1:-1;;;;;21235:14:0;:21;21231:66;;;-1:-1:-1;21280:5:0;21273:12;;21231:66;-1:-1:-1;21316:14:0;21309:21;;-1:-1:-1;;;;;;21309:21:0;;;21316:14;21348:23;21341:30;21309:21;21159:242;:::o;22542:116::-;22617:10;22575:4;22599:29;;;:17;:29;;;;;22592:36;;-1:-1:-1;;;;;;22592:36:0;;;;22542:116;:::o;14504:317::-;14693:4;14658:7;18939:22;18953:7;18939:13;:22::i;:::-;-1:-1:-1;;;;;18925:36:0;:10;-1:-1:-1;;;;;18925:36:0;;18921:70;;;9945:1;14722:18;;14781:4;;14722:85;;;;;-1:-1:-1;;;;;14722:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;;;:45;;14768:3;;14773:6;;14781:4;;14787:10;;14799:7;;14722:85;;;;;;;;;;;;;;;;:18;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;14722:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14722:85:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;14722:85:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;14722:85:0;:91;;-1:-1:-1;18978:1:0;14504:317;;;;;;;:::o;12061:130::-;12141:18;;12178:4;;12141:42;;;;;;-1:-1:-1;;;;;12141:42:0;;;;;;;;;;;;;;;;12117:4;;12141:18;;;;;:28;;:42;;;;;;;;;;;;;;;12117:4;12141:18;:42;;;5:2:-1;;;;30:1;27;20:12;5:2;12141:42:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;12141:42:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12141:42:0;;-1:-1:-1;12061:130:0;;;;:::o;16927:205::-;17030:4;17005:7;18939:22;18953:7;18939:13;:22::i;:::-;-1:-1:-1;;;;;18925:36:0;:10;-1:-1:-1;;;;;18925:36:0;;18921:70;;;9945:1;17054:18;;17104:4;;17054:64;;;;;;-1:-1:-1;;;;;17054:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;;;:31;;:64;;;;;;;;;;;;;;:18;;:64;;;5:2:-1;;;;30:1;27;20:12;5:2;17054:64:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;17054:64:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;17054:64:0;:70;;-1:-1:-1;18978:1:0;16927:205;;;;;;:::o;10252:20::-;;;;;;;;;;;;;;;-1:-1:-1;;10252:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19732:99;19809:14;;-1:-1:-1;;;;;19809:14:0;19732:99;:::o;12973:173::-;13033:4;-1:-1:-1;;;;;13054:10:0;;;13050:89;;13088:39;13111:3;13116:6;13088:39;;;;;;;;;;;;;:22;:39::i;:::-;13081:46;;;;13466:213;13558:4;-1:-1:-1;;;;;13579:10:0;;;13575:97;;13613:47;13636:3;13641:6;13649:10;13613:22;:47::i;:::-;13606:54;;;;10544:370;10673:18;;10644:4;;-1:-1:-1;;;;;10673:18:0;10665:34;10661:79;;-1:-1:-1;10723:5:0;10716:12;;10661:79;10752:18;:40;;-1:-1:-1;;;;;;10752:40:0;-1:-1:-1;;;;;10752:40:0;;;;;10803:16;;;;:6;;:16;;;;;:::i;:::-;;10837:24;10853:7;10837:15;:24::i;:::-;10830:4;:31;10872:12;;;;:4;;:12;;;;;:::i;:::-;-1:-1:-1;10902:4:0;;10544:370;-1:-1:-1;;;;10544:370:0:o;20335:685::-;11377:18;;11416:4;;11377:44;;;;;;11404:10;11377:44;;;;;;;;;;;;20411:4;;-1:-1:-1;;;;;11377:18:0;;:26;;:44;;;;;;;;;;;;;;20411:4;11377:18;:44;;;5:2:-1;;;;30:1;27;20:12;5:2;11377:44:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11377:44:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;11377:44:0;11373:78;;;20492:14;;-1:-1:-1;;;;;20492:14:0;:21;20488:66;;-1:-1:-1;20537:5:0;20530:12;;20488:66;-1:-1:-1;;;;;20628:18:0;;;20624:63;;;-1:-1:-1;20670:5:0;20663:12;;20624:63;20762:13;;-1:-1:-1;;;;;20762:13:0;:20;20758:106;;;-1:-1:-1;20799:13:0;:27;;-1:-1:-1;;;;;;20799:27:0;-1:-1:-1;;;;;20799:27:0;;;;;-1:-1:-1;20841:11:0;;20758:106;20876:14;:28;;-1:-1:-1;;;;;20876:28:0;;-1:-1:-1;;;;;;20876:28:0;;;;;;;;20941:3;20915:23;:29;20962:28;;;;;;;;;;;;;;;;-1:-1:-1;21008:4:0;20335:685;;;:::o;10094:19::-;;;;:::o;10922:168::-;11068:2;11056:15;11050:22;;11026:57::o;22147:217::-;22220:10;22181:4;22202:29;;;:17;:29;;;;;;-1:-1:-1;;;;;22202:29:0;:36;22198:81;;-1:-1:-1;22262:5:0;22255:12;;22198:81;-1:-1:-1;22321:13:0;;22307:10;22321:13;22289:29;;;:17;:29;;;;;:45;;-1:-1:-1;;;;;;22289:45:0;-1:-1:-1;;;;;22321:13:0;;;22289:45;;;;;;22321:13;22147:217;:::o;12424:156::-;12521:18;;12567:4;;12521:51;;;;;;-1:-1:-1;;;;;12521:51:0;;;;;;;;;;;;;;;;;;;;;;;12497:4;;12521:18;;;;;:28;;:51;;;;;;;;;;;;;;;12497:4;12521:18;:51;;;5:2:-1;;;;30:1;27;20:12;15816:356:0;16033:4;15998:7;18939:22;18953:7;18939:13;:22::i;:::-;-1:-1:-1;;;;;18925:36:0;:10;-1:-1:-1;;;;;18925:36:0;;18921:70;;;9945:1;16062:18;;16132:4;;16062:96;;;;;-1:-1:-1;;;;;16062:96:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;;;:49;;16112:5;;16119:3;;16124:6;;16132:4;;16138:10;;16150:7;;16062:96;;;;;;;;;;;;;;:18;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;16062:96:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16062:96:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16062:96:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;16062:96:0;:102;;-1:-1:-1;18978:1:0;15816:356;;;;;;;;:::o;19185:172::-;-1:-1:-1;;;;;19273:26:0;;;19246:7;19273:26;;;:17;:26;;;;;;19246:7;;19273:26;:31;:76;;-1:-1:-1;;;;;19323:26:0;;;;;;;:17;:26;;;;;;;19273:76;;;-1:-1:-1;;19307:13:0;;-1:-1:-1;;;;;19307:13:0;;19185:172::o;13853:199::-;13948:4;13972:11;:9;:11::i;:::-;-1:-1:-1;;;;;13972:35:0;;14008:3;14013:6;14021:10;14033;13972:72;;;;;-1:-1:-1;;;13972:72:0;;;;;;;-1:-1:-1;;;;;13972:72:0;-1:-1:-1;;;;;13972:72:0;;;;;;;;;;;;;;-1:-1:-1;;;;;13972:72:0;-1:-1:-1;;;;;13972:72:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;13972:72:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;9793:12868:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9793:12868:0;;;-1:-1:-1;9793:12868:0;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;
Swarm Source
bzzr://eb2ef2d2a0baba5a5957e251e7eee3df602cea3bcc5936605373c59ef5e0155e
Loading...
Loading
Loading...
Loading
OVERVIEW
AUDT is an Australian Dollar stablecoin managed by AUDT Pty Ltd (ACN: 627 827 383). The tokens are linked to audited Australian Dollar bank deposits domiciled in Australia.Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 34 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
Loading...
Loading
Loading...
Loading
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.