Merge branch 'master' into online-accounts-mempow

# Conflicts:
#	src/main/java/org/qortal/block/BlockChain.java
This commit is contained in:
CalDescent 2022-04-16 13:05:09 +01:00
commit 14f262d567
61 changed files with 2599 additions and 1574 deletions

View File

@ -98,7 +98,15 @@ public class GroupsResource {
ref = "reverse" ref = "reverse"
) @QueryParam("reverse") Boolean reverse) { ) @QueryParam("reverse") Boolean reverse) {
try (final Repository repository = RepositoryManager.getRepository()) { try (final Repository repository = RepositoryManager.getRepository()) {
return repository.getGroupRepository().getAllGroups(limit, offset, reverse); List<GroupData> allGroupData = repository.getGroupRepository().getAllGroups(limit, offset, reverse);
allGroupData.forEach(groupData -> {
try {
groupData.memberCount = repository.getGroupRepository().countGroupMembers(groupData.getGroupId());
} catch (DataException e) {
// Exclude memberCount for this group
}
});
return allGroupData;
} catch (DataException e) { } catch (DataException e) {
throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.REPOSITORY_ISSUE, e); throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.REPOSITORY_ISSUE, e);
} }
@ -150,7 +158,15 @@ public class GroupsResource {
throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.INVALID_ADDRESS); throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.INVALID_ADDRESS);
try (final Repository repository = RepositoryManager.getRepository()) { try (final Repository repository = RepositoryManager.getRepository()) {
return repository.getGroupRepository().getGroupsWithMember(member); List<GroupData> allGroupData = repository.getGroupRepository().getGroupsWithMember(member);
allGroupData.forEach(groupData -> {
try {
groupData.memberCount = repository.getGroupRepository().countGroupMembers(groupData.getGroupId());
} catch (DataException e) {
// Exclude memberCount for this group
}
});
return allGroupData;
} catch (DataException e) { } catch (DataException e) {
throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.REPOSITORY_ISSUE, e); throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.REPOSITORY_ISSUE, e);
} }
@ -177,6 +193,7 @@ public class GroupsResource {
if (groupData == null) if (groupData == null)
throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.GROUP_UNKNOWN); throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.GROUP_UNKNOWN);
groupData.memberCount = repository.getGroupRepository().countGroupMembers(groupId);
return groupData; return groupData;
} catch (DataException e) { } catch (DataException e) {
throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.REPOSITORY_ISSUE, e); throw ApiExceptionFactory.INSTANCE.createException(request, ApiError.REPOSITORY_ISSUE, e);
@ -922,4 +939,4 @@ public class GroupsResource {
} }
} }
} }

View File

@ -478,6 +478,14 @@ public class ArbitraryDataFile {
// Read the metadata // Read the metadata
List<byte[]> chunks = metadata.getChunks(); List<byte[]> chunks = metadata.getChunks();
// If the chunks array is empty, then this resource has no chunks,
// so we must return false to avoid confusing the caller.
if (chunks.isEmpty()) {
return false;
}
// Otherwise, we need to check each chunk individually
for (byte[] chunkHash : chunks) { for (byte[] chunkHash : chunks) {
ArbitraryDataFileChunk chunk = ArbitraryDataFileChunk.fromHash(chunkHash, this.signature); ArbitraryDataFileChunk chunk = ArbitraryDataFileChunk.fromHash(chunkHash, this.signature);
if (!chunk.exists()) { if (!chunk.exists()) {

View File

@ -73,9 +73,13 @@ public class BlockChain {
} }
// Custom transaction fees // Custom transaction fees
@XmlJavaTypeAdapter(value = org.qortal.api.AmountTypeAdapter.class) /** Unit fees by transaction timestamp */
private long nameRegistrationUnitFee; public static class UnitFeesByTimestamp {
private long nameRegistrationUnitFeeTimestamp; public long timestamp;
@XmlJavaTypeAdapter(value = org.qortal.api.AmountTypeAdapter.class)
public long fee;
}
private List<UnitFeesByTimestamp> nameRegistrationUnitFees;
/** Map of which blockchain features are enabled when (height/timestamp) */ /** Map of which blockchain features are enabled when (height/timestamp) */
@XmlJavaTypeAdapter(StringLongMapXmlAdapter.class) @XmlJavaTypeAdapter(StringLongMapXmlAdapter.class)
@ -314,16 +318,6 @@ public class BlockChain {
return this.maxBlockSize; return this.maxBlockSize;
} }
// Custom transaction fees
public long getNameRegistrationUnitFee() {
return this.nameRegistrationUnitFee;
}
public long getNameRegistrationUnitFeeTimestamp() {
// FUTURE: we could use a separate structure to indicate fee adjustments for different transaction types
return this.nameRegistrationUnitFeeTimestamp;
}
// Online accounts // Online accounts
public long getOnlineAccountsModulusV2Timestamp() { public long getOnlineAccountsModulusV2Timestamp() {
return this.onlineAccountsModulusV2Timestamp; return this.onlineAccountsModulusV2Timestamp;
@ -447,6 +441,16 @@ public class BlockChain {
throw new IllegalStateException(String.format("No block timing info available for height %d", ourHeight)); throw new IllegalStateException(String.format("No block timing info available for height %d", ourHeight));
} }
public long getNameRegistrationUnitFeeAtTimestamp(long ourTimestamp) {
// Scan through for reward at our height
for (int i = 0; i < nameRegistrationUnitFees.size(); ++i)
if (ourTimestamp >= nameRegistrationUnitFees.get(i).timestamp)
return nameRegistrationUnitFees.get(i).fee;
// Default to system-wide unit fee
return this.getUnitFee();
}
/** Validate blockchain config read from JSON */ /** Validate blockchain config read from JSON */
private void validateConfig() { private void validateConfig() {
if (this.genesisInfo == null) if (this.genesisInfo == null)

View File

@ -655,6 +655,29 @@ public class Controller extends Thread {
return lastMisbehaved != null && lastMisbehaved > NTP.getTime() - MISBEHAVIOUR_COOLOFF; return lastMisbehaved != null && lastMisbehaved > NTP.getTime() - MISBEHAVIOUR_COOLOFF;
}; };
/** True if peer has unknown height, lower height or same height and same block signature (unless we don't have their block signature). */
public static Predicate<Peer> hasShorterBlockchain = peer -> {
BlockData highestBlockData = getInstance().getChainTip();
int ourHeight = highestBlockData.getHeight();
final PeerChainTipData peerChainTipData = peer.getChainTipData();
// Ensure we have chain tip data for this peer
if (peerChainTipData == null)
return true;
// Remove if peer is at a lower height than us
Integer peerHeight = peerChainTipData.getLastHeight();
if (peerHeight == null || peerHeight < ourHeight)
return true;
// Don't remove if peer is on a greater height chain than us, or if we don't have their block signature
if (peerHeight > ourHeight || peerChainTipData.getLastBlockSignature() == null)
return false;
// Remove if signatures match
return Arrays.equals(peerChainTipData.getLastBlockSignature(), highestBlockData.getSignature());
};
public static final Predicate<Peer> hasNoRecentBlock = peer -> { public static final Predicate<Peer> hasNoRecentBlock = peer -> {
final Long minLatestBlockTimestamp = getMinimumLatestBlockTimestamp(); final Long minLatestBlockTimestamp = getMinimumLatestBlockTimestamp();
final PeerChainTipData peerChainTipData = peer.getChainTipData(); final PeerChainTipData peerChainTipData = peer.getChainTipData();
@ -675,7 +698,7 @@ public class Controller extends Thread {
public static final Predicate<Peer> hasInferiorChainTip = peer -> { public static final Predicate<Peer> hasInferiorChainTip = peer -> {
final PeerChainTipData peerChainTipData = peer.getChainTipData(); final PeerChainTipData peerChainTipData = peer.getChainTipData();
final List<ByteArray> inferiorChainTips = Synchronizer.getInstance().inferiorChainSignatures; final List<ByteArray> inferiorChainTips = Synchronizer.getInstance().inferiorChainSignatures;
return peerChainTipData == null || peerChainTipData.getLastBlockSignature() == null || inferiorChainTips.contains(new ByteArray(peerChainTipData.getLastBlockSignature())); return peerChainTipData == null || peerChainTipData.getLastBlockSignature() == null || inferiorChainTips.contains(ByteArray.wrap(peerChainTipData.getLastBlockSignature()));
}; };
public static final Predicate<Peer> hasOldVersion = peer -> { public static final Predicate<Peer> hasOldVersion = peer -> {
@ -1203,7 +1226,7 @@ public class Controller extends Thread {
byte[] signature = getBlockMessage.getSignature(); byte[] signature = getBlockMessage.getSignature();
this.stats.getBlockMessageStats.requests.incrementAndGet(); this.stats.getBlockMessageStats.requests.incrementAndGet();
ByteArray signatureAsByteArray = new ByteArray(signature); ByteArray signatureAsByteArray = ByteArray.wrap(signature);
CachedBlockMessage cachedBlockMessage = this.blockMessageCache.get(signatureAsByteArray); CachedBlockMessage cachedBlockMessage = this.blockMessageCache.get(signatureAsByteArray);
int blockCacheSize = Settings.getInstance().getBlockCacheSize(); int blockCacheSize = Settings.getInstance().getBlockCacheSize();
@ -1283,7 +1306,7 @@ public class Controller extends Thread {
if (getChainHeight() - blockData.getHeight() <= blockCacheSize) { if (getChainHeight() - blockData.getHeight() <= blockCacheSize) {
this.stats.getBlockMessageStats.cacheFills.incrementAndGet(); this.stats.getBlockMessageStats.cacheFills.incrementAndGet();
this.blockMessageCache.put(new ByteArray(blockData.getSignature()), blockMessage); this.blockMessageCache.put(ByteArray.wrap(blockData.getSignature()), blockMessage);
} }
} catch (DataException e) { } catch (DataException e) {
LOGGER.error(String.format("Repository issue while send block %s to peer %s", Base58.encode(signature), peer), e); LOGGER.error(String.format("Repository issue while send block %s to peer %s", Base58.encode(signature), peer), e);

View File

@ -235,6 +235,9 @@ public class Synchronizer extends Thread {
// Disregard peers that are on the same block as last sync attempt and we didn't like their chain // Disregard peers that are on the same block as last sync attempt and we didn't like their chain
peers.removeIf(Controller.hasInferiorChainTip); peers.removeIf(Controller.hasInferiorChainTip);
// Remove peers with unknown height, lower height or same height and same block signature (unless we don't have their block signature)
peers.removeIf(Controller.hasShorterBlockchain);
final int peersBeforeComparison = peers.size(); final int peersBeforeComparison = peers.size();
// Request recent block summaries from the remaining peers, and locate our common block with each // Request recent block summaries from the remaining peers, and locate our common block with each
@ -314,7 +317,7 @@ public class Synchronizer extends Thread {
case INFERIOR_CHAIN: { case INFERIOR_CHAIN: {
// Update our list of inferior chain tips // Update our list of inferior chain tips
ByteArray inferiorChainSignature = new ByteArray(peer.getChainTipData().getLastBlockSignature()); ByteArray inferiorChainSignature = ByteArray.wrap(peer.getChainTipData().getLastBlockSignature());
if (!inferiorChainSignatures.contains(inferiorChainSignature)) if (!inferiorChainSignatures.contains(inferiorChainSignature))
inferiorChainSignatures.add(inferiorChainSignature); inferiorChainSignatures.add(inferiorChainSignature);
@ -343,7 +346,7 @@ public class Synchronizer extends Thread {
// fall-through... // fall-through...
case NOTHING_TO_DO: { case NOTHING_TO_DO: {
// Update our list of inferior chain tips // Update our list of inferior chain tips
ByteArray inferiorChainSignature = new ByteArray(peer.getChainTipData().getLastBlockSignature()); ByteArray inferiorChainSignature = ByteArray.wrap(peer.getChainTipData().getLastBlockSignature());
if (!inferiorChainSignatures.contains(inferiorChainSignature)) if (!inferiorChainSignatures.contains(inferiorChainSignature))
inferiorChainSignatures.add(inferiorChainSignature); inferiorChainSignatures.add(inferiorChainSignature);
@ -419,7 +422,7 @@ public class Synchronizer extends Thread {
public void addInferiorChainSignature(byte[] inferiorSignature) { public void addInferiorChainSignature(byte[] inferiorSignature) {
// Update our list of inferior chain tips // Update our list of inferior chain tips
ByteArray inferiorChainSignature = new ByteArray(inferiorSignature); ByteArray inferiorChainSignature = ByteArray.wrap(inferiorSignature);
if (!inferiorChainSignatures.contains(inferiorChainSignature)) if (!inferiorChainSignatures.contains(inferiorChainSignature))
inferiorChainSignatures.add(inferiorChainSignature); inferiorChainSignatures.add(inferiorChainSignature);
} }

View File

@ -402,7 +402,7 @@ public class TradeBot implements Listener {
long now = NTP.getTime(); long now = NTP.getTime();
long newExpiry = generateExpiry(now); long newExpiry = generateExpiry(now);
ByteArray pubkeyByteArray = ByteArray.of(tradeNativeAccount.getPublicKey()); ByteArray pubkeyByteArray = ByteArray.wrap(tradeNativeAccount.getPublicKey());
// If map entry's timestamp is missing, or within early renewal period, use the new expiry - otherwise use existing timestamp. // If map entry's timestamp is missing, or within early renewal period, use the new expiry - otherwise use existing timestamp.
synchronized (this.ourTradePresenceTimestampsByPubkey) { synchronized (this.ourTradePresenceTimestampsByPubkey) {
@ -489,7 +489,7 @@ public class TradeBot implements Listener {
int knownCount = entriesUnknownToPeer.size(); int knownCount = entriesUnknownToPeer.size();
for (TradePresenceData peersTradePresence : peersTradePresences) { for (TradePresenceData peersTradePresence : peersTradePresences) {
ByteArray pubkeyByteArray = ByteArray.of(peersTradePresence.getPublicKey()); ByteArray pubkeyByteArray = ByteArray.wrap(peersTradePresence.getPublicKey());
TradePresenceData ourEntry = entriesUnknownToPeer.get(pubkeyByteArray); TradePresenceData ourEntry = entriesUnknownToPeer.get(pubkeyByteArray);
@ -546,7 +546,7 @@ public class TradeBot implements Listener {
continue; continue;
} }
ByteArray pubkeyByteArray = ByteArray.of(peersTradePresence.getPublicKey()); ByteArray pubkeyByteArray = ByteArray.wrap(peersTradePresence.getPublicKey());
// Ignore if we've previously verified this timestamp+publickey combo or sent timestamp is older // Ignore if we've previously verified this timestamp+publickey combo or sent timestamp is older
TradePresenceData existingTradeData = this.safeAllTradePresencesByPubkey.get(pubkeyByteArray); TradePresenceData existingTradeData = this.safeAllTradePresencesByPubkey.get(pubkeyByteArray);
@ -589,7 +589,7 @@ public class TradeBot implements Listener {
continue; continue;
} }
ByteArray atCodeHash = new ByteArray(atData.getCodeHash()); ByteArray atCodeHash = ByteArray.wrap(atData.getCodeHash());
Supplier<ACCT> acctSupplier = acctSuppliersByCodeHash.get(atCodeHash); Supplier<ACCT> acctSupplier = acctSuppliersByCodeHash.get(atCodeHash);
if (acctSupplier == null) { if (acctSupplier == null) {
LOGGER.trace("Ignoring trade presence {} from peer {} as AT isn't a known ACCT?", LOGGER.trace("Ignoring trade presence {} from peer {} as AT isn't a known ACCT?",
@ -642,7 +642,7 @@ public class TradeBot implements Listener {
public void bridgePresence(long timestamp, byte[] publicKey, byte[] signature, String atAddress) { public void bridgePresence(long timestamp, byte[] publicKey, byte[] signature, String atAddress) {
long expiry = generateExpiry(timestamp); long expiry = generateExpiry(timestamp);
ByteArray pubkeyByteArray = ByteArray.of(publicKey); ByteArray pubkeyByteArray = ByteArray.wrap(publicKey);
TradePresenceData fakeTradePresenceData = new TradePresenceData(expiry, publicKey, signature, atAddress); TradePresenceData fakeTradePresenceData = new TradePresenceData(expiry, publicKey, signature, atAddress);

View File

@ -47,9 +47,9 @@ public class Litecoin extends Bitcoiny {
// Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=ltc // Status verified at https://1209k.com/bitcoin-eye/ele.php?chain=ltc
//CLOSED new Server("electrum-ltc.petrkr.net", Server.ConnectionType.SSL, 60002), //CLOSED new Server("electrum-ltc.petrkr.net", Server.ConnectionType.SSL, 60002),
//CLOSED new Server("electrum-ltc.someguy123.net", Server.ConnectionType.SSL, 50002), //CLOSED new Server("electrum-ltc.someguy123.net", Server.ConnectionType.SSL, 50002),
//PHISHY new Server("electrum-ltc.bysh.me", Server.ConnectionType.SSL, 50002),
new Server("backup.electrum-ltc.org", Server.ConnectionType.SSL, 443), new Server("backup.electrum-ltc.org", Server.ConnectionType.SSL, 443),
new Server("electrum.ltc.xurious.com", Server.ConnectionType.SSL, 50002), new Server("electrum.ltc.xurious.com", Server.ConnectionType.SSL, 50002),
new Server("electrum-ltc.bysh.me", Server.ConnectionType.SSL, 50002),
new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 20063), new Server("electrum1.cipig.net", Server.ConnectionType.SSL, 20063),
new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 20063), new Server("electrum2.cipig.net", Server.ConnectionType.SSL, 20063),
new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 20063), new Server("electrum3.cipig.net", Server.ConnectionType.SSL, 20063),

View File

@ -62,7 +62,7 @@ public enum SupportedBlockchain {
private static final Map<ByteArray, Supplier<ACCT>> supportedAcctsByCodeHash = Arrays.stream(SupportedBlockchain.values()) private static final Map<ByteArray, Supplier<ACCT>> supportedAcctsByCodeHash = Arrays.stream(SupportedBlockchain.values())
.map(supportedBlockchain -> supportedBlockchain.supportedAccts) .map(supportedBlockchain -> supportedBlockchain.supportedAccts)
.flatMap(List::stream) .flatMap(List::stream)
.collect(Collectors.toUnmodifiableMap(triple -> new ByteArray(triple.getB()), Triple::getC)); .collect(Collectors.toUnmodifiableMap(triple -> ByteArray.wrap(triple.getB()), Triple::getC));
private static final Map<String, Supplier<ACCT>> supportedAcctsByName = Arrays.stream(SupportedBlockchain.values()) private static final Map<String, Supplier<ACCT>> supportedAcctsByName = Arrays.stream(SupportedBlockchain.values())
.map(supportedBlockchain -> supportedBlockchain.supportedAccts) .map(supportedBlockchain -> supportedBlockchain.supportedAccts)
@ -94,7 +94,7 @@ public enum SupportedBlockchain {
return getAcctMap(); return getAcctMap();
return blockchain.supportedAccts.stream() return blockchain.supportedAccts.stream()
.collect(Collectors.toUnmodifiableMap(triple -> new ByteArray(triple.getB()), Triple::getC)); .collect(Collectors.toUnmodifiableMap(triple -> ByteArray.wrap(triple.getB()), Triple::getC));
} }
public static Map<ByteArray, Supplier<ACCT>> getFilteredAcctMap(String specificBlockchain) { public static Map<ByteArray, Supplier<ACCT>> getFilteredAcctMap(String specificBlockchain) {
@ -109,7 +109,7 @@ public enum SupportedBlockchain {
} }
public static ACCT getAcctByCodeHash(byte[] codeHash) { public static ACCT getAcctByCodeHash(byte[] codeHash) {
ByteArray wrappedCodeHash = new ByteArray(codeHash); ByteArray wrappedCodeHash = ByteArray.wrap(codeHash);
Supplier<ACCT> acctInstanceSupplier = supportedAcctsByCodeHash.get(wrappedCodeHash); Supplier<ACCT> acctInstanceSupplier = supportedAcctsByCodeHash.get(wrappedCodeHash);

View File

@ -23,6 +23,7 @@ public class GroupData {
private ApprovalThreshold approvalThreshold; private ApprovalThreshold approvalThreshold;
private int minimumBlockDelay; private int minimumBlockDelay;
private int maximumBlockDelay; private int maximumBlockDelay;
public int memberCount;
/** Reference to CREATE_GROUP or UPDATE_GROUP transaction, used to rebuild group during orphaning. */ /** Reference to CREATE_GROUP or UPDATE_GROUP transaction, used to rebuild group during orphaning. */
// No need to ever expose this via API // No need to ever expose this via API

View File

@ -29,7 +29,7 @@ public class ChatTransaction extends Transaction {
public static final int MAX_DATA_SIZE = 256; public static final int MAX_DATA_SIZE = 256;
public static final int POW_BUFFER_SIZE = 8 * 1024 * 1024; // bytes public static final int POW_BUFFER_SIZE = 8 * 1024 * 1024; // bytes
public static final int POW_DIFFICULTY_WITH_QORT = 8; // leading zero bits public static final int POW_DIFFICULTY_WITH_QORT = 8; // leading zero bits
public static final int POW_DIFFICULTY_NO_QORT = 14; // leading zero bits public static final int POW_DIFFICULTY_NO_QORT = 12; // leading zero bits
// Constructors // Constructors

View File

@ -184,7 +184,7 @@ public class PresenceTransaction extends Transaction {
String signerAddress = Crypto.toAddress(this.transactionData.getCreatorPublicKey()); String signerAddress = Crypto.toAddress(this.transactionData.getCreatorPublicKey());
for (ATData atData : atsData) { for (ATData atData : atsData) {
ByteArray atCodeHash = new ByteArray(atData.getCodeHash()); ByteArray atCodeHash = ByteArray.wrap(atData.getCodeHash());
Supplier<ACCT> acctSupplier = acctSuppliersByCodeHash.get(atCodeHash); Supplier<ACCT> acctSupplier = acctSuppliersByCodeHash.get(atCodeHash);
if (acctSupplier == null) if (acctSupplier == null)
continue; continue;

View File

@ -39,11 +39,7 @@ public class RegisterNameTransaction extends Transaction {
@Override @Override
public long getUnitFee(Long timestamp) { public long getUnitFee(Long timestamp) {
// Use a higher unit fee after the fee increase timestamp return BlockChain.getInstance().getNameRegistrationUnitFeeAtTimestamp(timestamp);
if (timestamp > BlockChain.getInstance().getNameRegistrationUnitFeeTimestamp()) {
return BlockChain.getInstance().getNameRegistrationUnitFee();
}
return BlockChain.getInstance().getUnitFee();
} }
// Navigation // Navigation

View File

@ -8,12 +8,16 @@ public class ByteArray implements Comparable<ByteArray> {
private int hash; private int hash;
public final byte[] value; public final byte[] value;
public ByteArray(byte[] value) { private ByteArray(byte[] value) {
this.value = Objects.requireNonNull(value); this.value = value;
} }
public static ByteArray of(byte[] value) { public static ByteArray wrap(byte[] value) {
return new ByteArray(value); return new ByteArray(Objects.requireNonNull(value));
}
public static ByteArray copyOf(byte[] value) {
return new ByteArray(Arrays.copyOf(value, value.length));
} }
@Override @Override
@ -36,12 +40,7 @@ public class ByteArray implements Comparable<ByteArray> {
byte[] val = this.value; byte[] val = this.value;
if (h == 0 && val.length > 0) { if (h == 0 && val.length > 0) {
h = 1; this.hash = h = Arrays.hashCode(val);
for (int i = 0; i < val.length; ++i)
h = 31 * h + val[i];
this.hash = h;
} }
return h; return h;
} }
@ -53,24 +52,7 @@ public class ByteArray implements Comparable<ByteArray> {
} }
public int compareToPrimitive(byte[] otherValue) { public int compareToPrimitive(byte[] otherValue) {
byte[] val = this.value; return Arrays.compareUnsigned(this.value, otherValue);
if (val.length < otherValue.length)
return -1;
if (val.length > otherValue.length)
return 1;
for (int i = 0; i < val.length; ++i) {
int a = val[i] & 0xFF;
int b = otherValue[i] & 0xFF;
if (a < b)
return -1;
if (a > b)
return 1;
}
return 0;
} }
public String toString() { public String toString() {

View File

@ -4,8 +4,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.001", "unitFee": "0.001",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
"nameRegistrationUnitFeeTimestamp": 1645372800000, { "timestamp": 1645372800000, "fee": "5" }
],
"useBrokenMD160ForAddresses": false, "useBrokenMD160ForAddresses": false,
"requireGroupForApproval": false, "requireGroupForApproval": false,
"defaultGroupId": 0, "defaultGroupId": 0,

View File

@ -81,4 +81,3 @@ ORDER_SIZE_TOO_SMALL = order amount too low
FILE_NOT_FOUND = Datei nicht gefunden FILE_NOT_FOUND = Datei nicht gefunden
NO_REPLY = peer did not reply with data NO_REPLY = peer did not reply with data

View File

@ -80,8 +80,4 @@ ORDER_SIZE_TOO_SMALL = order amount too low
### Data ### ### Data ###
FILE_NOT_FOUND = file not found FILE_NOT_FOUND = file not found
ORDER_SIZE_TOO_SMALL = order size too small
FILE_NOT_FOUND = file not found
NO_REPLY = peer didn't reply within the allowed time NO_REPLY = peer didn't reply within the allowed time

View File

@ -1,121 +1,83 @@
# Keys are from api.ApiError enum #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# "localeLang": "es", # Keys are from api.ApiError enum
### Common ### # "localeLang": "es",
### Common ###
JSON = no se pudo analizar el mensaje JSON JSON = no se pudo analizar el mensaje JSON
#failed to parse JSON message
INSUFFICIENT_BALANCE = saldo insuficiente INSUFFICIENT_BALANCE = saldo insuficiente
#insufficient balance
UNAUTHORIZED = Llamada API no autorizada UNAUTHORIZED = Llamada API no autorizada
#API call unauthorized
REPOSITORY_ISSUE = error de repositorio REPOSITORY_ISSUE = error de repositorio
#repository error
NON_PRODUCTION = esta llamada API no está permitida para sistemas de producción NON_PRODUCTION = esta llamada API no está permitida para sistemas de producción
#this API call is not permitted for production systems
BLOCKCHAIN_NEEDS_SYNC = blockchain necesita sincronizarse primero BLOCKCHAIN_NEEDS_SYNC = blockchain necesita sincronizarse primero
#blockchain needs to synchronize first
NO_TIME_SYNC = aún no hay sincronización de reloj NO_TIME_SYNC = aún no hay sincronización de reloj
#no clock synchronization yet
### Validation ###
### Validation ###
INVALID_SIGNATURE = firma no válida INVALID_SIGNATURE = firma no válida
#invalid signature
INVALID_ADDRESS = dirección no válida INVALID_ADDRESS = dirección no válida
#invalid address
INVALID_PUBLIC_KEY = clave pública no válida INVALID_PUBLIC_KEY = clave pública no válida
#invalid public key
INVALID_DATA = datos no válidos INVALID_DATA = datos no válidos
#invalid data
INVALID_NETWORK_ADDRESS = dirección de red no válida INVALID_NETWORK_ADDRESS = dirección de red no válida
#invalid network address
ADDRESS_UNKNOWN = dirección de cuenta desconocida ADDRESS_UNKNOWN = dirección de cuenta desconocida
#account address unknown
INVALID_CRITERIA = criterio de búsqueda no válido INVALID_CRITERIA = criterio de búsqueda no válido
#invalid search criteria
INVALID_REFERENCE = referencia no válida INVALID_REFERENCE = referencia no válida
#invalid reference
TRANSFORMATION_ERROR = no se pudo transformar JSON en transacción TRANSFORMATION_ERROR = no se pudo transformar JSON en transacción
#could not transform JSON into transaction
INVALID_PRIVATE_KEY = clave privada no válida INVALID_PRIVATE_KEY = clave privada no válida
#invalid private key
INVALID_HEIGHT = altura de bloque no válida INVALID_HEIGHT = altura de bloque no válida
#invalid block height
CANNOT_MINT = la cuenta no puede acuñar CANNOT_MINT = la cuenta no puede acuñar
#account cannot mint
### Blocks ###
### Blocks ###
BLOCK_UNKNOWN = bloque desconocido BLOCK_UNKNOWN = bloque desconocido
#block unknown
### Transactions ###
### Transactions ###
TRANSACTION_UNKNOWN = transacción desconocida TRANSACTION_UNKNOWN = transacción desconocida
#transaction unknown
PUBLIC_KEY_NOT_FOUND = clave pública no encontrada PUBLIC_KEY_NOT_FOUND = clave pública no encontrada
#public key not found
# this one is special in that caller expected to pass two additional strings, hence the two %s
# this one is special in that caller expected to pass two additional strings, hence the two %s
TRANSACTION_INVALID = transacción no válida: %s (%s) TRANSACTION_INVALID = transacción no válida: %s (%s)
#transaction invalid: %s (%s)
### Naming ###
### Naming ###
NAME_UNKNOWN = nombre desconocido NAME_UNKNOWN = nombre desconocido
#name unknown
### Asset ###
### Asset ###
INVALID_ASSET_ID = ID de recurso no válido INVALID_ASSET_ID = ID de recurso no válido
#invalid asset ID
INVALID_ORDER_ID = ID de pedido de activo no válido INVALID_ORDER_ID = ID de pedido de activo no válido
#invalid asset order ID
ORDER_UNKNOWN = ID de pedido de activo desconocido ORDER_UNKNOWN = ID de pedido de activo desconocido
#unknown asset order ID
### Groups ###
### Groups ###
GROUP_UNKNOWN = grupo desconocido GROUP_UNKNOWN = grupo desconocido
#group unknown
### Foreign Blockchain ###
### Foreign Blockchain ###
FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = problema de cadena de bloques extranjera o red ElectrumX FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = problema de cadena de bloques extranjera o red ElectrumX
#foreign blockchain or ElectrumX network issue
FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = saldo insuficiente en blockchain extranjera FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = saldo insuficiente en blockchain extranjera
#insufficient balance on foreign blockchain
FOREIGN_BLOCKCHAIN_TOO_SOON = demasiado pronto para transmitir transacciones de blockchain extranjeras (LockTime/mediana de tiempo de bloqueo) FOREIGN_BLOCKCHAIN_TOO_SOON = demasiado pronto para transmitir transacciones de blockchain extranjeras (LockTime/mediana de tiempo de bloqueo)
#too soon to broadcast foreign blockchain transaction (LockTime/median block time)
### Trade Portal ###
### Trade Portal ###
ORDER_SIZE_TOO_SMALL = importe del pedido demasiado bajo ORDER_SIZE_TOO_SMALL = importe del pedido demasiado bajo
#order amount too low
### Data ###
### Data ###
FILE_NOT_FOUND = archivo no encontrado FILE_NOT_FOUND = archivo no encontrado
#file not found
ORDER_SIZE_TOO_SMALL = tamaño del pedido demasiado pequeño
#order size too small
FILE_NOT_FOUND = archivo no encontrado
#file not found
NO_REPLY = el compañero no respondió dentro del tiempo permitido NO_REPLY = el compañero no respondió dentro del tiempo permitido
#peer didn't reply within the allowed time

View File

@ -1,10 +1,7 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# Keys are from api.ApiError enum # Keys are from api.ApiError enum
# Kielen muuttaminen suomeksi tapahtuu settings.json-tiedostossa
#
# "localeLang": "fi", # "localeLang": "fi",
# muista pilkku lopussa jos komento ei ole viimeisellä rivillä
### Common ### ### Common ###
JSON = JSON-viestin jaottelu epäonnistui JSON = JSON-viestin jaottelu epäonnistui
@ -83,4 +80,4 @@ ORDER_SIZE_TOO_SMALL = order amount too low
### Data ### ### Data ###
FILE_NOT_FOUND = file not found FILE_NOT_FOUND = file not found
NO_REPLY = peer did not reply with data NO_REPLY = peer did not reply with data

View File

@ -1,24 +1,46 @@
### Commun ### #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# Keys are from api.ApiError enum
# "localeLang": "fr",
### Commun ###
JSON = échec de l'analyse du message JSON JSON = échec de l'analyse du message JSON
INSUFFICIENT_BALANCE = balance insuffisante INSUFFICIENT_BALANCE = balance insuffisante
UNAUTHORIZED = appel de lAPI non autorisé UNAUTHORIZED = appel de lAPI non autorisé
REPOSITORY_ISSUE = erreur de dépôt REPOSITORY_ISSUE = erreur de dépôt
NON_PRODUCTION = cet appel API n'est pas autorisé pour les systèmes en production NON_PRODUCTION = cet appel API n'est pas autorisé pour les systèmes en production
BLOCKCHAIN_NEEDS_SYNC = la blockchain doit d'abord être synchronisée BLOCKCHAIN_NEEDS_SYNC = la blockchain doit d'abord être synchronisée
NO_TIME_SYNC = heure pas encore synchronisée NO_TIME_SYNC = heure pas encore synchronisée
### Validation ### ### Validation ###
INVALID_SIGNATURE = signature invalide INVALID_SIGNATURE = signature invalide
INVALID_ADDRESS = adresse invalide INVALID_ADDRESS = adresse invalide
INVALID_PUBLIC_KEY = clé publique invalide INVALID_PUBLIC_KEY = clé publique invalide
INVALID_DATA = données invalides INVALID_DATA = données invalides
INVALID_NETWORK_ADDRESS = adresse réseau invalide INVALID_NETWORK_ADDRESS = adresse réseau invalide
ADDRESS_UNKNOWN = adresse de compte inconnue ADDRESS_UNKNOWN = adresse de compte inconnue
INVALID_CRITERIA = critère de recherche invalide INVALID_CRITERIA = critère de recherche invalide
INVALID_REFERENCE = référence invalide INVALID_REFERENCE = référence invalide
TRANSFORMATION_ERROR = ne peut pas transformer JSON en transaction TRANSFORMATION_ERROR = ne peut pas transformer JSON en transaction
INVALID_PRIVATE_KEY = clé privée invalide INVALID_PRIVATE_KEY = clé privée invalide
INVALID_HEIGHT = hauteur de bloc invalide INVALID_HEIGHT = hauteur de bloc invalide
CANNOT_MINT = le compte ne peut pas mint CANNOT_MINT = le compte ne peut pas mint
### Blocks ### ### Blocks ###
@ -26,6 +48,7 @@ BLOCK_UNKNOWN = bloc inconnu
### Transactions ### ### Transactions ###
TRANSACTION_UNKNOWN = opération inconnue TRANSACTION_UNKNOWN = opération inconnue
PUBLIC_KEY_NOT_FOUND = clé publique introuvable PUBLIC_KEY_NOT_FOUND = clé publique introuvable
# celui-ci est spécial dans le sens où l'appelant doit passer deux chaînes supplémentaires, d'où les deux %s # celui-ci est spécial dans le sens où l'appelant doit passer deux chaînes supplémentaires, d'où les deux %s
@ -36,7 +59,9 @@ NAME_UNKNOWN = nom inconnu
### Asset ### ### Asset ###
INVALID_ASSET_ID = identifiant d'actif invalide INVALID_ASSET_ID = identifiant d'actif invalide
INVALID_ORDER_ID = identifiant de commande d'actif non valide INVALID_ORDER_ID = identifiant de commande d'actif non valide
ORDER_UNKNOWN = identifiant d'ordre d'actif inconnu ORDER_UNKNOWN = identifiant d'ordre d'actif inconnu
### Groupes ### ### Groupes ###
@ -44,7 +69,9 @@ GROUP_UNKNOWN = groupe inconnu
### Blockchain étrangère ### ### Blockchain étrangère ###
FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = Problème blokchain étrangère ou de réseau ElectrumX FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = Problème blokchain étrangère ou de réseau ElectrumX
FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = solde insuffisant sur la blockchain étrangère FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = solde insuffisant sur la blockchain étrangère
FOREIGN_BLOCKCHAIN_TOO_SOON = trop tôt pour diffuser la transaction sur la blockchain étrangère (temps de verrouillage/temps de bloc médian) FOREIGN_BLOCKCHAIN_TOO_SOON = trop tôt pour diffuser la transaction sur la blockchain étrangère (temps de verrouillage/temps de bloc médian)
### Portail de trading ### ### Portail de trading ###
@ -52,4 +79,5 @@ ORDER_SIZE_TOO_SMALL = montant de commande trop bas
### Données ### ### Données ###
FILE_NOT_FOUND = fichier introuvable FILE_NOT_FOUND = fichier introuvable
NO_REPLY = le pair n'a pas renvoyé de données
NO_REPLY = le pair n'a pas renvoyé de données

View File

@ -1,8 +1,5 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# Keys are from api.ApiError enum # Keys are from api.ApiError enum # Magyar nyelvre forditotta: Szkíta (Scythian). 2021 Augusztus 7.
# Magyar myelvre forditotta: Szkíta (Scythian). 2021 Augusztus 7.
# Az alkalmazás nyelvének magyarra való változtatása a settings.json oldalon történik.
# "localeLang": "hu", # "localeLang": "hu",
@ -15,7 +12,7 @@ UNAUTHORIZED = nem engedélyezett API-hívás
REPOSITORY_ISSUE = adattári hiba REPOSITORY_ISSUE = adattári hiba
NON_PRODUCTION = ez az API-hívás nem engedélyezett korlátozott rendszereken NON_PRODUCTION = ez az API-hívás nem engedélyezett éles rendszereken
BLOCKCHAIN_NEEDS_SYNC = a blokkláncnak még szinkronizálnia kell BLOCKCHAIN_NEEDS_SYNC = a blokkláncnak még szinkronizálnia kell
@ -24,15 +21,15 @@ NO_TIME_SYNC = az óraszinkronizálás még nem történt meg
### Validation ### ### Validation ###
INVALID_SIGNATURE = érvénytelen aláírás INVALID_SIGNATURE = érvénytelen aláírás
INVALID_ADDRESS = érvénytelen fiók cím INVALID_ADDRESS = érvénytelen fiókcím
INVALID_PUBLIC_KEY = érvénytelen nyilvános kulcs INVALID_PUBLIC_KEY = érvénytelen nyilvános kulcs
INVALID_DATA = érvénytelen adat INVALID_DATA = érvénytelen adat
INVALID_NETWORK_ADDRESS = érvénytelen hálózat cím INVALID_NETWORK_ADDRESS = érvénytelen hálózatcím
ADDRESS_UNKNOWN = ismeretlen fiók cím ADDRESS_UNKNOWN = ismeretlen fiókcím
INVALID_CRITERIA = érvénytelen keresési feltétel INVALID_CRITERIA = érvénytelen keresési feltétel
@ -83,4 +80,4 @@ ORDER_SIZE_TOO_SMALL = rendelési összeg túl alacsony
### Data ### ### Data ###
FILE_NOT_FOUND = fájl nem található FILE_NOT_FOUND = fájl nem található
NO_REPLY = a másik csomópont nem válaszolt NO_REPLY = a másik csomópont nem válaszolt

View File

@ -1,26 +1,22 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# Keys are from api.ApiError enum # Keys are from api.ApiError enum # Italian translation by Pabs 2021
# Italian translation by Pabs 2021
# La modifica della lingua dell'UI è fatta nel file Settings.json
#
# "localeLang": "it", # "localeLang": "it",
# Si prega ricordare la virgola alla fine, se questo comando non è sull'ultima riga
### Common ### ### Common ###
JSON = Impossibile analizzare il messaggio JSON JSON = Impossibile analizzare il messaggio JSON
INSUFFICIENT_BALANCE = insufficient balance INSUFFICIENT_BALANCE = bilancio insufficiente
UNAUTHORIZED = Chiamata API non autorizzata UNAUTHORIZED = Chiamata API non autorizzata
REPOSITORY_ISSUE = errore del repositorio REPOSITORY_ISSUE = errore del repository
NON_PRODUCTION = questa chiamata API non è consentita per i sistemi di produzione NON_PRODUCTION = questa chiamata API non è consentita per i sistemi di produzione
BLOCKCHAIN_NEEDS_SYNC = blockchain deve prima sincronizzarsi BLOCKCHAIN_NEEDS_SYNC = la blockchain deve sincronizzarsi
NO_TIME_SYNC = nessuna sincronizzazione dell'orologio ancora NO_TIME_SYNC = nessuna sincronizzazione
### Validation ### ### Validation ###
INVALID_SIGNATURE = firma non valida INVALID_SIGNATURE = firma non valida
@ -39,7 +35,7 @@ INVALID_CRITERIA = criteri di ricerca non validi
INVALID_REFERENCE = riferimento non valido INVALID_REFERENCE = riferimento non valido
TRANSFORMATION_ERROR = non è stato possibile trasformare JSON in transazione TRANSFORMATION_ERROR = non è stato possibile trasformare il JSON
INVALID_PRIVATE_KEY = chiave privata non valida INVALID_PRIVATE_KEY = chiave privata non valida
@ -62,26 +58,26 @@ TRANSACTION_INVALID = transazione non valida: %s (%s)
NAME_UNKNOWN = nome sconosciuto NAME_UNKNOWN = nome sconosciuto
### Asset ### ### Asset ###
INVALID_ASSET_ID = identificazione risorsa non valida INVALID_ASSET_ID = risorsa non valida
INVALID_ORDER_ID = identificazione di ordine di risorsa non valida INVALID_ORDER_ID = ordine di risorsa non valida
ORDER_UNKNOWN = identificazione di ordine di risorsa sconosciuta ORDER_UNKNOWN = ordine di risorsa sconosciuta
### Groups ### ### Groups ###
GROUP_UNKNOWN = gruppo sconosciuto GROUP_UNKNOWN = gruppo sconosciuto
### Foreign Blockchain ### ### Foreign Blockchain ###
FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = foreign blokchain or ElectrumX network issue FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = problema nella blockchain esterna o nella rete ElectrumX
FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = insufficient balance on foreign blockchain FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = bilancio insufficiente nella blockchain esterna
FOREIGN_BLOCKCHAIN_TOO_SOON = too soon to broadcast foreign blockchain transaction (LockTime/median block time) FOREIGN_BLOCKCHAIN_TOO_SOON = troppo presto per distribuire la transazione (sospensione LockTime/median)
### Trade Portal ### ### Trade Portal ###
ORDER_SIZE_TOO_SMALL = order amount too low ORDER_SIZE_TOO_SMALL = quantità d'ordine troppo bassa
### Data ### ### Data ###
FILE_NOT_FOUND = file not found FILE_NOT_FOUND = file not found
NO_REPLY = peer did not reply with data NO_REPLY = il peer non ha fornito dati

View File

@ -41,7 +41,7 @@ INVALID_PRIVATE_KEY = ongeldige private key
INVALID_HEIGHT = ongeldige blokhoogte INVALID_HEIGHT = ongeldige blokhoogte
CANNOT_MINT = account kan niet munten CANNOT_MINT = account kan niet minten
### Blocks ### ### Blocks ###
BLOCK_UNKNOWN = blok onbekend BLOCK_UNKNOWN = blok onbekend
@ -68,16 +68,16 @@ ORDER_UNKNOWN = onbekende asset order ID
GROUP_UNKNOWN = onbekende groep GROUP_UNKNOWN = onbekende groep
### Foreign Blockchain ### ### Foreign Blockchain ###
FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = foreign blokchain or ElectrumX network issue FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = blockchain of ElectrumX network probleem
FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = insufficient balance on foreign blockchain FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = onvoldoende saldo blockchain
FOREIGN_BLOCKCHAIN_TOO_SOON = too soon to broadcast foreign blockchain transaction (LockTime/median block time) FOREIGN_BLOCKCHAIN_TOO_SOON = nog niet gereed om de blockchain transactie uittevoeren (LockTime/median block time)
### Trade Portal ### ### Trade Portal ###
ORDER_SIZE_TOO_SMALL = order amount too low ORDER_SIZE_TOO_SMALL = order bedrag te laag
### Data ### ### Data ###
FILE_NOT_FOUND = file not found FILE_NOT_FOUND = file niet gevonden
NO_REPLY = peer did not reply with data NO_REPLY = peer reageerd niet met data

View File

@ -1,83 +1,83 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# Keys are from api.ApiError enum # Keys are from api.ApiError enum
# "localeLang": "ru", # "localeLang": "ru",
### Common ### ### Common ###
JSON = не удалось разобрать сообщение json JSON = не удалось разобрать сообщение json
INSUFFICIENT_BALANCE = insufficient balance INSUFFICIENT_BALANCE = недостаточный баланс
UNAUTHORIZED = вызов API не авторизован UNAUTHORIZED = вызов API не авторизован
REPOSITORY_ISSUE = ошибка репозитория REPOSITORY_ISSUE = ошибка репозитория
NON_PRODUCTION = этот вызов API не разрешен для производственных систем NON_PRODUCTION = этот вызов API не разрешен для производственных систем
BLOCKCHAIN_NEEDS_SYNC = блокчейн должен сначала синхронизироваться BLOCKCHAIN_NEEDS_SYNC = блокчейн должен сначала синхронизироваться
NO_TIME_SYNC = no clock synchronization yet NO_TIME_SYNC = пока нет синхронизации часов
### Validation ### ### Validation ###
INVALID_SIGNATURE = недействительная подпись INVALID_SIGNATURE = недействительная подпись
INVALID_ADDRESS = неизвестный адрес INVALID_ADDRESS = неизвестный адрес
INVALID_PUBLIC_KEY = недействительный открытый ключ INVALID_PUBLIC_KEY = недействительный открытый ключ
INVALID_DATA = неверные данные INVALID_DATA = неверные данные
INVALID_NETWORK_ADDRESS = неверный сетевой адрес INVALID_NETWORK_ADDRESS = неверный адрес сети
ADDRESS_UNKNOWN = неизвестная учетная запись ADDRESS_UNKNOWN = неизвестная учетная запись
INVALID_CRITERIA = неверные критерии поиска INVALID_CRITERIA = неверные критерии поиска
INVALID_REFERENCE = неверная ссылка INVALID_REFERENCE = неверная ссылка
TRANSFORMATION_ERROR = не удалось преобразовать JSON в транзакцию TRANSFORMATION_ERROR = не удалось преобразовать JSON в транзакцию
INVALID_PRIVATE_KEY = неверный приватный ключ INVALID_PRIVATE_KEY = неверный приватный ключ
INVALID_HEIGHT = недопустимая высота блока INVALID_HEIGHT = недопустимая высота блока
CANNOT_MINT = аккаунт не может чеканить CANNOT_MINT = аккаунт не может чеканить
### Blocks ### ### Blocks ###
BLOCK_UNKNOWN = неизвестный блок BLOCK_UNKNOWN = неизвестный блок
### Transactions ### ### Transactions ###
TRANSACTION_UNKNOWN = транзакция неизвестна TRANSACTION_UNKNOWN = транзакция неизвестна
PUBLIC_KEY_NOT_FOUND = открытый ключ не найден PUBLIC_KEY_NOT_FOUND = открытый ключ не найден
# this one is special in that caller expected to pass two additional strings, hence the two %s # this one is special in that caller expected to pass two additional strings, hence the two %s
TRANSACTION_INVALID = транзакция недействительна: %s (%s) TRANSACTION_INVALID = транзакция недействительна: %s (%s)
### Naming ### ### Naming ###
NAME_UNKNOWN = имя неизвестно NAME_UNKNOWN = имя неизвестно
### Asset ### ### Asset ###
INVALID_ASSET_ID = неверный идентификатор актива INVALID_ASSET_ID = неверный идентификатор актива
INVALID_ORDER_ID = неверный идентификатор заказа актива INVALID_ORDER_ID = неверный идентификатор заказа актива
ORDER_UNKNOWN = неизвестный идентификатор заказа актива ORDER_UNKNOWN = неизвестный идентификатор заказа актива
### Groups ### ### Groups ###
GROUP_UNKNOWN = неизвестная группа GROUP_UNKNOWN = неизвестная группа
### Foreign Blockchain ### ### Foreign Blockchain ###
FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = foreign blokchain or ElectrumX network issue FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = проблема с внешним блокчейном или сетью ElectrumX
FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = insufficient balance on foreign blockchain FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = недостаточный баланс на внешнем блокчейне
FOREIGN_BLOCKCHAIN_TOO_SOON = too soon to broadcast foreign blockchain transaction (LockTime/median block time) FOREIGN_BLOCKCHAIN_TOO_SOON = слишком рано для трансляции транзакции во внений блокчей (время блокировки/среднее время блока)
### Trade Portal ### ### Trade Portal ###
ORDER_SIZE_TOO_SMALL = order amount too low ORDER_SIZE_TOO_SMALL = слишком маленькая сумма ордера
### Data ### ### Data ###
FILE_NOT_FOUND = file not found FILE_NOT_FOUND = файл не найден
NO_REPLY = peer did not reply with data NO_REPLY = узел не ответил данными

View File

@ -0,0 +1,83 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# Keys are from api.ApiError enum
# "localeLang": "sv",
### Common ###
JSON = misslyckades att tolka JSON meddelande
INSUFFICIENT_BALANCE = otillräcklig balans
UNAUTHORIZED = API obehörigt anrop
REPOSITORY_ISSUE = fel i lagret
NON_PRODUCTION = detta API-anrop är inte tillåtet för produktionssystem
BLOCKCHAIN_NEEDS_SYNC = blockchain måste synkroniseras först
NO_TIME_SYNC = ingen klocksynkronisering ännu
### Validation ###
INVALID_SIGNATURE = ogiltig signatur
INVALID_ADDRESS = ogiltig adress
INVALID_PUBLIC_KEY = ogiltig offentlig nyckel
INVALID_DATA = ogiltig data
INVALID_NETWORK_ADDRESS = ogiltig nätverksadress
ADDRESS_UNKNOWN = okänd kontoadress
INVALID_CRITERIA = ogiltiga sökkriterier
INVALID_REFERENCE = ogiltig referens
TRANSFORMATION_ERROR = kunde inte omvandla JSON till en transaktion
INVALID_PRIVATE_KEY = ogiltig privat nyckel
INVALID_HEIGHT = ogiltig blockhöjd
CANNOT_MINT = konto kan inte prägla QORT
### Blocks ###
BLOCK_UNKNOWN = okänt block
### Transactions ###
TRANSACTION_UNKNOWN = okänd transaktion
PUBLIC_KEY_NOT_FOUND = hittade inte en offentlig nyckel
# this one is special in that caller expected to pass two additional strings, hence the two %s
TRANSACTION_INVALID = ogiltig transaktion: %s (%s)
### Naming ###
NAME_UNKNOWN = okänt namn
### Asset ###
INVALID_ASSET_ID = ogiltigt tillgångs-ID
INVALID_ORDER_ID = ogiltigt tillgångsbeställnings-ID
ORDER_UNKNOWN = okänt tillgångsbeställnings-ID
### Groups ###
GROUP_UNKNOWN = okänd grupp
### Foreign Blockchain ###
FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = utländsk blockchain eller ElectrumX nätverksproblem
FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = otillräcklig balans på utländsk blockchain
FOREIGN_BLOCKCHAIN_TOO_SOON = för tidigt för att sända utländsk blockkedjetransaktion (LockTime/medianblocktid)
### Trade Portal ###
ORDER_SIZE_TOO_SMALL = beställningssumman för låg
### Data ###
FILE_NOT_FOUND = filen hittades inte
NO_REPLY = noden svarade inte inom den tillåtna tiden

View File

@ -0,0 +1,83 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# Keys are from api.ApiError enum
# "localeLang": "zh_CN",
### Common ###
JSON = 无法解析JSON文件信息
INSUFFICIENT_BALANCE = 钱包余额不足
UNAUTHORIZED = 未授权的API指令
REPOSITORY_ISSUE = 数据库错误
NON_PRODUCTION = 此API指令已被节点禁止
BLOCKCHAIN_NEEDS_SYNC = 请先同步区块链
NO_TIME_SYNC = 同步时间失败
### Validation ###
INVALID_SIGNATURE = 无效的签名
INVALID_ADDRESS = 无效的钱包地址
INVALID_PUBLIC_KEY = 无效的公共密钥
INVALID_DATA = 无效的数据
INVALID_NETWORK_ADDRESS = 无效的网络地址
ADDRESS_UNKNOWN = 未知的钱包地址
INVALID_CRITERIA = 无效的搜寻关键词
INVALID_REFERENCE = 无效的参考资料
TRANSFORMATION_ERROR = 未能将JSON文件转换成交易
INVALID_PRIVATE_KEY = 无效的私人密钥
INVALID_HEIGHT = 无效的区块链高度
CANNOT_MINT = 账号不能铸币
### Blocks ###
BLOCK_UNKNOWN = 未知的区块
### Transactions ###
TRANSACTION_UNKNOWN = 未知的交易
PUBLIC_KEY_NOT_FOUND = 找不到有效的公共密钥
# this one is special in that caller expected to pass two additional strings, hence the two %s
TRANSACTION_INVALID = 无效的交易: %s (%s)
### Naming ###
NAME_UNKNOWN = 未知的名称
### Asset ###
INVALID_ASSET_ID = 无效的资产ID
INVALID_ORDER_ID = 无效的资产交易ID
ORDER_UNKNOWN = 未知的资产交易ID
### Groups ###
GROUP_UNKNOWN = 未知的群组
### Foreign Blockchain ###
FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = 其他区块链网络出现异常
FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = 请确保钱包余额足够(包含支付网络手续费)
FOREIGN_BLOCKCHAIN_TOO_SOON = 执行动作太快了 (LockTime/median block time)
### Trade Portal ###
ORDER_SIZE_TOO_SMALL = 交易数量太少
### Data ###
FILE_NOT_FOUND = 档案不存在
NO_REPLY = 其他节点在指定时间内没有回应

View File

@ -0,0 +1,83 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# Keys are from api.ApiError enum
# "localeLang": "zh_TW",
### Common ###
JSON = 無法解析JSON文件信息
INSUFFICIENT_BALANCE = 錢包餘額不足
UNAUTHORIZED = 未授權的API指令
REPOSITORY_ISSUE = 數據庫錯誤
NON_PRODUCTION = 此API指令已被節點禁止
BLOCKCHAIN_NEEDS_SYNC = 請先同步區塊鏈
NO_TIME_SYNC = 同步時間失敗
### Validation ###
INVALID_SIGNATURE = 無效的簽名
INVALID_ADDRESS = 無效的錢包地址
INVALID_PUBLIC_KEY = 無效的公共密鑰
INVALID_DATA = 無效的數據
INVALID_NETWORK_ADDRESS = 無效的網絡地址
ADDRESS_UNKNOWN = 未知的錢包地址
INVALID_CRITERIA = 無效的搜尋關鍵詞
INVALID_REFERENCE = 無效的參考資料
TRANSFORMATION_ERROR = 未能將JSON文件轉換成交易
INVALID_PRIVATE_KEY = 無效的私人密鑰
INVALID_HEIGHT = 無效的區塊鏈高度
CANNOT_MINT = 賬號不能鑄幣
### Blocks ###
BLOCK_UNKNOWN = 未知的區塊
### Transactions ###
TRANSACTION_UNKNOWN = 未知的交易
PUBLIC_KEY_NOT_FOUND = 找不到有效的公共密鑰
# this one is special in that caller expected to pass two additional strings, hence the two %s
TRANSACTION_INVALID = 無效的交易: %s (%s)
### Naming ###
NAME_UNKNOWN = 未知的名稱
### Asset ###
INVALID_ASSET_ID = 無效的資產ID
INVALID_ORDER_ID = 無效的資產交易ID
ORDER_UNKNOWN = 未知的資產交易ID
### Groups ###
GROUP_UNKNOWN = 未知的群組
### Foreign Blockchain ###
FOREIGN_BLOCKCHAIN_NETWORK_ISSUE = 其他區塊鏈網絡出現異常
FOREIGN_BLOCKCHAIN_BALANCE_ISSUE = 請確保錢包餘額足夠(包含支付網絡手續費)
FOREIGN_BLOCKCHAIN_TOO_SOON = 執行動作太快 (LockTime/median block time)
### Trade Portal ###
ORDER_SIZE_TOO_SMALL = 交易數量太少
### Data ###
FILE_NOT_FOUND = 檔案不存在
NO_REPLY = 其他節點在指定時間内沒有回應

View File

@ -1,10 +1,10 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu
AUTO_UPDATE = Automatisches Update
APPLYING_UPDATE_AND_RESTARTING = Automatisches Update anwenden und neu starten … APPLYING_UPDATE_AND_RESTARTING = Automatisches Update anwenden und neu starten …
AUTO_UPDATE = Automatisches Update
BLOCK_HEIGHT = height BLOCK_HEIGHT = height
BUILD_VERSION = Build-Version BUILD_VERSION = Build-Version
@ -23,6 +23,8 @@ DB_BACKUP = Datenbank Backup
DB_CHECKPOINT = Datenbank Kontrollpunkt DB_CHECKPOINT = Datenbank Kontrollpunkt
DB_MAINTENANCE = Datenbank Instandhaltung
EXIT = Verlassen EXIT = Verlassen
MINTING_DISABLED = NOT minting MINTING_DISABLED = NOT minting
@ -33,6 +35,8 @@ OPEN_UI = Öffne UI
PERFORMING_DB_CHECKPOINT = Speichern nicht übergebener Datenbank Änderungen … PERFORMING_DB_CHECKPOINT = Speichern nicht übergebener Datenbank Änderungen …
PERFORMING_DB_MAINTENANCE = Planmäßige Wartung durchführen...
SYNCHRONIZE_CLOCK = Synchronisiere Uhr SYNCHRONIZE_CLOCK = Synchronisiere Uhr
SYNCHRONIZING_BLOCKCHAIN = Synchronisierung SYNCHRONIZING_BLOCKCHAIN = Synchronisierung

View File

@ -1,10 +1,10 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu
AUTO_UPDATE = Auto Update
APPLYING_UPDATE_AND_RESTARTING = Applying automatic update and restarting... APPLYING_UPDATE_AND_RESTARTING = Applying automatic update and restarting...
AUTO_UPDATE = Auto Update
BLOCK_HEIGHT = height BLOCK_HEIGHT = height
BUILD_VERSION = Build version BUILD_VERSION = Build version
@ -21,10 +21,10 @@ CREATING_BACKUP_OF_DB_FILES = Creating backup of database files...
DB_BACKUP = Database Backup DB_BACKUP = Database Backup
DB_MAINTENANCE = Database Maintenance
DB_CHECKPOINT = Database Checkpoint DB_CHECKPOINT = Database Checkpoint
DB_MAINTENANCE = Database Maintenance
EXIT = Exit EXIT = Exit
MINTING_DISABLED = NOT minting MINTING_DISABLED = NOT minting

View File

@ -1,64 +1,44 @@
# SysTray pop-up menu #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu
AUTO_UPDATE = Actualización automática
#Auto Update
APPLYING_UPDATE_AND_RESTARTING = Aplicando actualización automática y reiniciando... APPLYING_UPDATE_AND_RESTARTING = Aplicando actualización automática y reiniciando...
#Applying automatic update and restarting...
AUTO_UPDATE = Actualización automática
BLOCK_HEIGHT = altura BLOCK_HEIGHT = altura
#height
BUILD_VERSION = Versión de compilación BUILD_VERSION = Versión de compilación
#Build version
CHECK_TIME_ACCURACY = Comprobar la precisión del tiempo CHECK_TIME_ACCURACY = Comprobar la precisión del tiempo
#Check time accuracy
CONNECTING = Conectando CONNECTING = Conectando
#Connecting
CONNECTION = conexión CONNECTION = conexión
#connection
CONNECTIONS = conexiones CONNECTIONS = conexiones
#connections
CREATING_BACKUP_OF_DB_FILES = Creando una copia de seguridad de los archivos de la base de datos... CREATING_BACKUP_OF_DB_FILES = Creando una copia de seguridad de los archivos de la base de datos...
#Creating backup of database files...
DB_BACKUP = Copia de seguridad de la base de datos DB_BACKUP = Copia de seguridad de la base de datos
#Database Backup
DB_MAINTENANCE = Mantenimiento de la base de datos
#Database Maintenance
DB_CHECKPOINT = Punto de control de la base de datos DB_CHECKPOINT = Punto de control de la base de datos
#Database Checkpoint
DB_MAINTENANCE = Mantenimiento de la base de datos
EXIT = Salir EXIT = Salir
#Exit
MINTING_DISABLED = Acuñación NO habilitada
MINTING_DISABLED = NO acuñar
#NOT minting MINTING_ENABLED = \u2714 Acuñación habilitada
MINTING_ENABLED = \u2714 Acuñación
#\u2714 Minting
OPEN_UI = IU abierta OPEN_UI = IU abierta
#Open UI
PERFORMING_DB_CHECKPOINT = Guardando cambios de base de datos no confirmados... PERFORMING_DB_CHECKPOINT = Guardando cambios de base de datos no confirmados...
#Saving uncommitted database changes...
PERFORMING_DB_MAINTENANCE = Realizando mantenimiento programado... PERFORMING_DB_MAINTENANCE = Realizando mantenimiento programado...
#Performing scheduled maintenance...
SYNCHRONIZE_CLOCK = Sincronizar reloj SYNCHRONIZE_CLOCK = Sincronizar reloj
#Synchronize clock
SYNCHRONIZING_BLOCKCHAIN = Sincronizando SYNCHRONIZING_BLOCKCHAIN = Sincronizando
#Synchronizing
SYNCHRONIZING_CLOCK = Sincronizando reloj SYNCHRONIZING_CLOCK = Sincronizando reloj
#Synchronizing clock

View File

@ -1,10 +1,10 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu
AUTO_UPDATE = Automaattinen päivitys
APPLYING_UPDATE_AND_RESTARTING = Automaattinen päivitys käynnissä, uudelleenkäynnistys seuraa... APPLYING_UPDATE_AND_RESTARTING = Automaattinen päivitys käynnissä, uudelleenkäynnistys seuraa...
AUTO_UPDATE = Automaattinen päivitys
BLOCK_HEIGHT = korkeus BLOCK_HEIGHT = korkeus
BUILD_VERSION = Versio BUILD_VERSION = Versio
@ -21,10 +21,10 @@ CREATING_BACKUP_OF_DB_FILES = Luodaan varmuuskopio tietokannan tiedostoista...
DB_BACKUP = Tietokannan varmuuskopio DB_BACKUP = Tietokannan varmuuskopio
DB_MAINTENANCE = Database Maintenance
DB_CHECKPOINT = Tietokannan varmistuspiste DB_CHECKPOINT = Tietokannan varmistuspiste
DB_MAINTENANCE = Tietokannan ylläpito
EXIT = Pois EXIT = Pois
MINTING_DISABLED = EI lyö rahaa MINTING_DISABLED = EI lyö rahaa
@ -35,7 +35,7 @@ OPEN_UI = Avaa UI
PERFORMING_DB_CHECKPOINT = Tallentaa kommittoidut tietokantamuutokset... PERFORMING_DB_CHECKPOINT = Tallentaa kommittoidut tietokantamuutokset...
PERFORMING_DB_MAINTENANCE = Performing scheduled maintenance... PERFORMING_DB_MAINTENANCE = Suoritetaan määräaikaishuoltoa...
SYNCHRONIZE_CLOCK = Synkronisoi kello SYNCHRONIZE_CLOCK = Synkronisoi kello

View File

@ -1,41 +1,44 @@
AUTO_UPDATE = Mise à jour automatique #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu
APPLYING_UPDATE_AND_RESTARTING = Application de la mise à jour automatique et redémarrage...
APPLYING_UPDATE_AND_RESTARTING = Application de la mise à jour automatique et redémarrage...
BLOCK_HEIGHT = hauteur
AUTO_UPDATE = Mise à jour automatique
BUILD_VERSION = Numéro de version
BLOCK_HEIGHT = hauteur
CHECK_TIME_ACCURACY = Vérifier l'heure
BUILD_VERSION = Numéro de version
CONNECTING = Connexion en cours
CHECK_TIME_ACCURACY = Vérifier l'heure
CONNECTION = connexion
CONNECTING = Connexion en cours
CONNECTIONS = connexions
CONNECTION = connexion
CREATING_BACKUP_OF_DB_FILES = Création d'une sauvegarde des fichiers de la base de données...
CONNECTIONS = connexions
DB_BACKUP = Sauvegarde de la base de données
CREATING_BACKUP_OF_DB_FILES = Création d'une sauvegarde des fichiers de la base de données...
DB_MAINTENANCE = Maintenance de la base de données
DB_BACKUP = Sauvegarde de la base de données
DB_CHECKPOINT = Point de contrôle de la base de données
DB_CHECKPOINT = Point de contrôle de la base de données
EXIT = Quitter
DB_MAINTENANCE = Maintenance de la base de données
MINTING_DISABLED = NE mint PAS
EXIT = Quitter
MINTING_ENABLED = \u2714 Minting
MINTING_DISABLED = NE mint PAS
OPEN_UI = Ouvrir l'interface
MINTING_ENABLED = \u2714 Minting
PERFORMING_DB_CHECKPOINT = Enregistrement des modifications de base de données non validées...
OPEN_UI = Ouvrir l'interface
PERFORMING_DB_MAINTENANCE = Entrain d'effectuer la maintenance programmée...
PERFORMING_DB_CHECKPOINT = Enregistrement des modifications de base de données non validées...
SYNCHRONIZE_CLOCK = Mettre l'heure à jour
PERFORMING_DB_MAINTENANCE = Entrain d'effectuer la maintenance programmée...
SYNCHRONIZING_BLOCKCHAIN = Synchronisation
SYNCHRONIZE_CLOCK = Mettre l'heure à jour
SYNCHRONIZING_CLOCK = Synchronisation de l'heure
SYNCHRONIZING_BLOCKCHAIN = Synchronisation
SYNCHRONIZING_CLOCK = Synchronisation de l'heure

View File

@ -1,17 +1,15 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu # Magyar myelvre forditotta: Szkíta (Scythian). 2021 Augusztus 7.
# Magyar myelvre forditotta: Szkíta (Scythian). 2021 Augusztus 7. APPLYING_UPDATE_AND_RESTARTING = Automatikus frissítés alkalmazása és újraindítás...
AUTO_UPDATE = Automatikus Frissítés AUTO_UPDATE = Automatikus Frissítés
APPLYING_UPDATE_AND_RESTARTING = Automatikus frissítés és újraindítás alkalmazása...
BLOCK_HEIGHT = blokkmagasság BLOCK_HEIGHT = blokkmagasság
BUILD_VERSION = Verzió BUILD_VERSION = Verzió
CHECK_TIME_ACCURACY = Idő pontosság ellenőrzése CHECK_TIME_ACCURACY = Óra pontosságának ellenőrzése
CONNECTING = Kapcsolódás CONNECTING = Kapcsolódás
@ -23,24 +21,24 @@ CREATING_BACKUP_OF_DB_FILES = Adatbázis fájlok biztonsági mentésének létre
DB_BACKUP = Adatbázis biztonsági mentése DB_BACKUP = Adatbázis biztonsági mentése
DB_MAINTENANCE = Database Maintenance
DB_CHECKPOINT = Adatbázis-ellenőrzőpont DB_CHECKPOINT = Adatbázis-ellenőrzőpont
DB_MAINTENANCE = Adatbázis karbantartás
EXIT = Kilépés EXIT = Kilépés
MINTING_DISABLED = QORT-érmeverés jelenleg nincs folyamatban MINTING_DISABLED = QORT-érmeverés jelenleg nincs folyamatban
MINTING_ENABLED = \u2714 QORT-érmeverés folyamatban MINTING_ENABLED = \u2714 QORT-érmeverés folyamatban
OPEN_UI = Felhasználói eszköz megnyitása OPEN_UI = Felhasználói felület megnyitása
PERFORMING_DB_CHECKPOINT = Mentetlen adatbázis-módosítások mentése... PERFORMING_DB_CHECKPOINT = Mentetlen adatbázis-módosítások mentése...
PERFORMING_DB_MAINTENANCE = Performing scheduled maintenance... PERFORMING_DB_MAINTENANCE = Ütemezett karbantartás...
SYNCHRONIZE_CLOCK = Óra-szinkronizálás megkezdése SYNCHRONIZE_CLOCK = Óra-szinkronizálás megkezdése
SYNCHRONIZING_BLOCKCHAIN = Szinkronizálás SYNCHRONIZING_BLOCKCHAIN = Szinkronizálás
SYNCHRONIZING_CLOCK = Óra-szinkronizálás folyamatban SYNCHRONIZING_CLOCK = Óraszinkronizálás folyamatban

View File

@ -1,8 +1,7 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu # Italian translation by Pabs 2021
# Italian translation by Pabs 2021
APPLYING_UPDATE_AND_RESTARTING = Applicando aggiornamento automatico e riavviando... APPLYING_UPDATE_AND_RESTARTING = Aggiornamento automatico e riavvio...
AUTO_UPDATE = Aggiornamento automatico AUTO_UPDATE = Aggiornamento automatico
@ -12,34 +11,34 @@ BUILD_VERSION = Versione
CHECK_TIME_ACCURACY = Controlla la precisione dell'ora CHECK_TIME_ACCURACY = Controlla la precisione dell'ora
CONNECTING = Collegando CONNECTING = Collegamento
CONNECTION = connessione CONNECTION = connessione
CONNECTIONS = connessioni CONNECTIONS = connessioni
CREATING_BACKUP_OF_DB_FILES = Creazione di backup dei file di database... CREATING_BACKUP_OF_DB_FILES = Creazione del backup dei file di database...
DB_BACKUP = Backup del database DB_BACKUP = Backup del database
DB_MAINTENANCE = Database Maintenance DB_CHECKPOINT = Fase di controllo del database
DB_CHECKPOINT = Punto di controllo del database DB_MAINTENANCE = Manutenzione del database
EXIT = Uscita EXIT = Uscita
MINTING_DISABLED = NON coniando MINTING_DISABLED = Conio disabilitato
MINTING_ENABLED = \u2714 Coniando MINTING_ENABLED = \u2714 Conio abilitato
OPEN_UI = Apri UI OPEN_UI = Apri UI
PERFORMING_DB_CHECKPOINT = Salvataggio delle modifiche al database non salvate... PERFORMING_DB_CHECKPOINT = Salvataggio delle modifiche del database non salvate...
PERFORMING_DB_MAINTENANCE = Performing scheduled maintenance... PERFORMING_DB_MAINTENANCE = Manutenzione programmata dell'efficienza...
SYNCHRONIZE_CLOCK = Sincronizza orologio SYNCHRONIZE_CLOCK = Sincronizzare l'orologio
SYNCHRONIZING_BLOCKCHAIN = Sincronizzando SYNCHRONIZING_BLOCKCHAIN = Sincronizzazione della blockchain
SYNCHRONIZING_CLOCK = Sincronizzando orologio SYNCHRONIZING_CLOCK = Sincronizzazione orologio

View File

@ -1,13 +1,13 @@
Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu
APPLYING_UPDATE_AND_RESTARTING = Automatische update en herstart worden uitgevoerd... APPLYING_UPDATE_AND_RESTARTING = Automatische update en herstart worden uitgevoerd...
AUTO_UPDATE = Automatische Update AUTO_UPDATE = Automatische Update
BLOCK_HEIGHT = hoogte BLOCK_HEIGHT = Block hoogte
BUILD_VERSION = Versie BUILD_VERSION = Versie nummer
CHECK_TIME_ACCURACY = Controleer accuraatheid van de tijd CHECK_TIME_ACCURACY = Controleer accuraatheid van de tijd
@ -23,17 +23,19 @@ DB_BACKUP = Database Backup
DB_CHECKPOINT = Database Controlepunt DB_CHECKPOINT = Database Controlepunt
DB_MAINTENANCE = Database Onderhoud
EXIT = Verlaten EXIT = Verlaten
MINTING_DISABLED = NIET muntend MINTING_DISABLED = Minten is uitgeschakeld
MINTING_ENABLED = \u2714 Muntend MINTING_ENABLED = \u2714 Minten is ingeschakeld
OPEN_UI = Open UI OPEN_UI = Open UI
PERFORMING_DB_CHECKPOINT = Nieuwe veranderingen aan database worden opgeslagen... PERFORMING_DB_CHECKPOINT = De database wordt gecontroleerd...
PERFORMING_DB_MAINTENANCE = Performing scheduled maintenance... PERFORMING_DB_MAINTENANCE = Uitvoeren van gepland onderhoud...
SYNCHRONIZE_CLOCK = Synchronizeer klok SYNCHRONIZE_CLOCK = Synchronizeer klok

View File

@ -1,42 +1,44 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu
APPLYING_UPDATE_AND_RESTARTING = Применение автоматического обновления и перезапуска... APPLYING_UPDATE_AND_RESTARTING = Применение автоматического обновления и перезапуска...
AUTO_UPDATE = Автоматическое обновление AUTO_UPDATE = Автоматическое обновление
BLOCK_HEIGHT = Высота блока BLOCK_HEIGHT = Высота блока
BUILD_VERSION = Build version BUILD_VERSION = Версия сборки
CHECK_TIME_ACCURACY = Проверка точного времени CHECK_TIME_ACCURACY = Проверка точного времени
CONNECTING = Подключение CONNECTING = Подключение
CONNECTION = Соединение CONNECTION = Соединение
CONNECTIONS = Соединений CONNECTIONS = Соединения
CREATING_BACKUP_OF_DB_FILES = Создание резервной копии файлов базы данных... CREATING_BACKUP_OF_DB_FILES = Создание резервной копии файлов базы данных...
DB_BACKUP = Резервное копирование базы данных DB_BACKUP = Резервное копирование базы данных
DB_MAINTENANCE = Database Maintenance DB_CHECKPOINT = Контрольная точка базы данных
EXIT = Выход DB_MAINTENANCE = Обслуживание базы данных
MINTING_DISABLED = Чеканка отключена EXIT = Выход
MINTING_ENABLED = Чеканка активна MINTING_DISABLED = Чеканка отключена
OPEN_UI = Открыть пользовательский интерфейс MINTING_ENABLED = \u2714 Чеканка активна
PERFORMING_DB_CHECKPOINT = Saving uncommitted database changes... OPEN_UI = Открыть пользовательский интерфейс
PERFORMING_DB_MAINTENANCE = Performing scheduled maintenance... PERFORMING_DB_CHECKPOINT = Сохранение незафиксированных изменений базы данных...
SYNCHRONIZE_CLOCK = Синхронизировать время PERFORMING_DB_MAINTENANCE = Выполнение планового технического обслуживания...
SYNCHRONIZING_BLOCKCHAIN = Синхронизация цепи SYNCHRONIZE_CLOCK = Синхронизировать время
SYNCHRONIZING_CLOCK = Проверка времени SYNCHRONIZING_BLOCKCHAIN = Синхронизация цепи
SYNCHRONIZING_CLOCK = Проверка времени

View File

@ -0,0 +1,44 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu
APPLYING_UPDATE_AND_RESTARTING = Tillämpar automatisk uppdatering och startar om...
AUTO_UPDATE = Automatisk uppdatering
BLOCK_HEIGHT = höjd
BUILD_VERSION = Byggversion
CHECK_TIME_ACCURACY = Kontrollera tidens noggrannhet
CONNECTING = Ansluter
CONNECTION = anslutning
CONNECTIONS = anslutningar
CREATING_BACKUP_OF_DB_FILES = Skapar säkerhetskopia av databasfiler...
DB_BACKUP = Databas backup
DB_CHECKPOINT = Databaskontrollpunkt
DB_MAINTENANCE = Databasunderhåll
EXIT = Utgång
MINTING_DISABLED = Präglar INTE
MINTING_ENABLED = \u2714 Präglar
OPEN_UI = Öppna UI
PERFORMING_DB_CHECKPOINT = Sparar oengagerade databasändringar...
PERFORMING_DB_MAINTENANCE = Utför schemalagt underhåll...
SYNCHRONIZE_CLOCK = Synkronisera klockan
SYNCHRONIZING_BLOCKCHAIN = Synkroniserar
SYNCHRONIZING_CLOCK = Synkroniserar klockan

View File

@ -1,39 +1,41 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu
AUTO_UPDATE = Auto Update APPLYING_UPDATE_AND_RESTARTING = 正在自动更新并重新启动核心...
APPLYING_UPDATE_AND_RESTARTING = Applying automatic update and restarting... AUTO_UPDATE = 自动更新
BLOCK_HEIGHT = 区块高度 BLOCK_HEIGHT = 区块高度
BUILD_VERSION = Build version BUILD_VERSION = 版本
CHECK_TIME_ACCURACY = 检查时间准确性 CHECK_TIME_ACCURACY = 检查时间准确性
CONNECTING = Connecting CONNECTING = 连线中
CONNECTION = 个链接 CONNECTION = 个链接
CONNECTIONS = 个链接 CONNECTIONS = 个链接
CREATING_BACKUP_OF_DB_FILES = Creating backup of database files... CREATING_BACKUP_OF_DB_FILES = 正在创建数据库备份资料...
DB_BACKUP = Database Backup DB_BACKUP = 数据库备份
DB_CHECKPOINT = Database Checkpoint DB_CHECKPOINT = 数据库检查点
DB_MAINTENANCE = 数据库维护
EXIT = 退出核心 EXIT = 退出核心
MINTING_DISABLED = 没有铸币 MINTING_DISABLED = 没有铸币
MINTING_ENABLED = 铸币 MINTING_ENABLED = \u2714 铸币
OPEN_UI = 开启Qortal界面 OPEN_UI = 开启Qortal界面
PERFORMING_DB_CHECKPOINT = Saving uncommitted database changes... PERFORMING_DB_CHECKPOINT = 正在保存未提交的数据库修订...
PERFORMING_DB_MAINTENANCE = Performing scheduled maintenance... PERFORMING_DB_MAINTENANCE = 正在执行定期数据库维护...
SYNCHRONIZE_CLOCK = 同步时钟 SYNCHRONIZE_CLOCK = 同步时钟

View File

@ -1,40 +1,44 @@
#Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/) #Generated by ResourceBundle Editor (http://essiembre.github.io/eclipse-rbe/)
# SysTray pop-up menu # SysTray pop-up menu
AUTO_UPDATE = Auto Update APPLYING_UPDATE_AND_RESTARTING = 正在自動更新並重新啓動核心...
APPLYING_UPDATE_AND_RESTARTING = Applying automatic update and restarting... AUTO_UPDATE = 自動更新
BLOCK_HEIGHT = 區塊高度 BLOCK_HEIGHT = 區塊高度
BUILD_VERSION = Build version BUILD_VERSION = 版本
CHECK_TIME_ACCURACY = 檢查時間準確性 CHECK_TIME_ACCURACY = 檢查時間準確性
CONNECTING = Connecting CONNECTING = 連線中
CONNECTION = 個鏈接 CONNECTION = 個鏈接
CONNECTIONS = 個鏈接 CONNECTIONS = 個鏈接
CREATING_BACKUP_OF_DB_FILES = Creating backup of database files... CREATING_BACKUP_OF_DB_FILES = 正在創建數據庫備份資料...
DB_BACKUP = Database Backup DB_BACKUP = 數據庫備份
DB_CHECKPOINT = Database Checkpoint DB_CHECKPOINT = 數據庫檢查點
DB_MAINTENANCE = 數據庫維護
EXIT = 退出核心 EXIT = 退出核心
MINTING_DISABLED = 沒有鑄幣 MINTING_DISABLED = 沒有鑄幣
MINTING_ENABLED = 鑄幣 MINTING_ENABLED = \u2714 鑄幣
OPEN_UI = 開啓Qortal界面 OPEN_UI = 開啓Qortal界面
PERFORMING_DB_CHECKPOINT = Saving uncommitted database changes... PERFORMING_DB_CHECKPOINT = 正在保存未提交的數據庫修訂...
PERFORMING_DB_MAINTENANCE = 正在執行數據庫定期維護...
SYNCHRONIZE_CLOCK = 同步時鐘 SYNCHRONIZE_CLOCK = 同步時鐘
SYNCHRONIZING_BLOCKCHAIN = 正在同步區塊鏈 SYNCHRONIZING_BLOCKCHAIN = 正在同步區塊鏈
SYNCHRONIZING_CLOCK = 正在同步時鐘 SYNCHRONIZING_CLOCK = 正在同步時鐘

View File

@ -1,112 +1,32 @@
OK = OK #
INVALID_ADDRESS = invalid address ACCOUNT_ALREADY_EXISTS = account already exists
NEGATIVE_AMOUNT = invalid/negative amount ACCOUNT_CANNOT_REWARD_SHARE = account cannot reward-share
NEGATIVE_FEE = invalid/negative fee ADDRESS_ABOVE_RATE_LIMIT = address reached specified rate limit
NO_BALANCE = insufficient balance ADDRESS_BLOCKED = this address is blocked
INVALID_REFERENCE = invalid reference
INVALID_NAME_LENGTH = invalid name length
INVALID_VALUE_LENGTH = invalid 'value' length
NAME_ALREADY_REGISTERED = name already registered
NAME_DOES_NOT_EXIST = name does not exist
INVALID_NAME_OWNER = invalid name owner
NAME_ALREADY_FOR_SALE = name already for sale
NAME_NOT_FOR_SALE = name is not for sale
BUYER_ALREADY_OWNER = buyer is already owner
INVALID_AMOUNT = invalid amount
INVALID_SELLER = invalid seller
NAME_NOT_NORMALIZED = name not in Unicode 'normalized' form
INVALID_DESCRIPTION_LENGTH = invalid description length
INVALID_OPTIONS_COUNT = invalid options count
INVALID_OPTION_LENGTH = invalid options length
DUPLICATE_OPTION = duplicate option
POLL_ALREADY_EXISTS = poll already exists
POLL_DOES_NOT_EXIST = poll does not exist
POLL_OPTION_DOES_NOT_EXIST = poll option does not exist
ALREADY_VOTED_FOR_THAT_OPTION = already voted for that option
INVALID_DATA_LENGTH = invalid data length
INVALID_QUANTITY = invalid quantity
ASSET_DOES_NOT_EXIST = asset does not exist
INVALID_RETURN = invalid return
HAVE_EQUALS_WANT = have-asset is the same as want-asset
ORDER_DOES_NOT_EXIST = asset trade order does not exist
INVALID_ORDER_CREATOR = invalid order creator
INVALID_PAYMENTS_COUNT = invalid payments count
NEGATIVE_PRICE = invalid/negative price
INVALID_CREATION_BYTES = invalid creation bytes
INVALID_TAGS_LENGTH = invalid 'tags' length
INVALID_AT_TYPE_LENGTH = invalid AT 'type' length
INVALID_AT_TRANSACTION = invalid AT transaction
INSUFFICIENT_FEE = insufficient fee
ASSET_DOES_NOT_MATCH_AT = asset does not match AT's asset
ASSET_ALREADY_EXISTS = asset already exists
MISSING_CREATOR = missing creator
TIMESTAMP_TOO_OLD = timestamp too old
TIMESTAMP_TOO_NEW = timestamp too new
TOO_MANY_UNCONFIRMED = account has too many unconfirmed transactions pending
GROUP_ALREADY_EXISTS = group already exists
GROUP_DOES_NOT_EXIST = group does not exist
INVALID_GROUP_OWNER = invalid group owner
ALREADY_GROUP_MEMBER = already group member
GROUP_OWNER_CANNOT_LEAVE = group owner cannot leave group
NOT_GROUP_MEMBER = account is not a group member
ALREADY_GROUP_ADMIN = already group admin ALREADY_GROUP_ADMIN = already group admin
NOT_GROUP_ADMIN = account is not a group admin ALREADY_GROUP_MEMBER = already group member
INVALID_LIFETIME = invalid lifetime ALREADY_VOTED_FOR_THAT_OPTION = already voted for that option
INVITE_UNKNOWN = group invite unknown ASSET_ALREADY_EXISTS = asset already exists
ASSET_DOES_NOT_EXIST = asset does not exist
ASSET_DOES_NOT_MATCH_AT = asset does not match AT's asset
ASSET_NOT_SPENDABLE = asset is not spendable
AT_ALREADY_EXISTS = AT already exists
AT_IS_FINISHED = AT has finished
AT_UNKNOWN = AT unknown
BAN_EXISTS = ban already exists BAN_EXISTS = ban already exists
@ -114,80 +34,162 @@ BAN_UNKNOWN = ban unknown
BANNED_FROM_GROUP = banned from group BANNED_FROM_GROUP = banned from group
JOIN_REQUEST_EXISTS = group join request already exists BUYER_ALREADY_OWNER = buyer is already owner
INVALID_GROUP_APPROVAL_THRESHOLD = invalid group-approval threshold
GROUP_ID_MISMATCH = group ID mismatch
INVALID_GROUP_ID = invalid group ID
TRANSACTION_UNKNOWN = transaction unknown
TRANSACTION_ALREADY_CONFIRMED = transaction has already confirmed
INVALID_TX_GROUP_ID = invalid transaction group ID
TX_GROUP_ID_MISMATCH = transaction's group ID does not match
MULTIPLE_NAMES_FORBIDDEN = multiple registered names per account is forbidden
INVALID_ASSET_OWNER = invalid asset owner
AT_IS_FINISHED = AT has finished
NO_FLAG_PERMISSION = account does not have that permission
NOT_MINTING_ACCOUNT = account cannot mint
REWARD_SHARE_UNKNOWN = reward-share unknown
INVALID_REWARD_SHARE_PERCENT = invalid reward-share percent
PUBLIC_KEY_UNKNOWN = public key unknown
INVALID_PUBLIC_KEY = invalid public key
AT_UNKNOWN = AT unknown
AT_ALREADY_EXISTS = AT already exists
GROUP_APPROVAL_NOT_REQUIRED = group-approval not required
GROUP_APPROVAL_DECIDED = group-approval already decided
MAXIMUM_REWARD_SHARES = already at maximum number of reward-shares for this account
TRANSACTION_ALREADY_EXISTS = transaction already exists
NO_BLOCKCHAIN_LOCK = node's blockchain currently busy
ORDER_ALREADY_CLOSED = asset trade order is already closed
CLOCK_NOT_SYNCED = clock not synchronized CLOCK_NOT_SYNCED = clock not synchronized
ASSET_NOT_SPENDABLE = asset is not spendable DUPLICATE_MESSAGE = address sent duplicate message
ACCOUNT_CANNOT_REWARD_SHARE = account cannot reward-share DUPLICATE_OPTION = duplicate option
SELF_SHARE_EXISTS = self-share (reward-share) already exists GROUP_ALREADY_EXISTS = group already exists
ACCOUNT_ALREADY_EXISTS = account already exists GROUP_APPROVAL_DECIDED = group-approval already decided
INVALID_GROUP_BLOCK_DELAY = invalid group-approval block delay GROUP_APPROVAL_NOT_REQUIRED = group-approval not required
GROUP_DOES_NOT_EXIST = group does not exist
GROUP_ID_MISMATCH = group ID mismatch
GROUP_OWNER_CANNOT_LEAVE = group owner cannot leave group
HAVE_EQUALS_WANT = have-asset is the same as want-asset
INCORRECT_NONCE = incorrect PoW nonce INCORRECT_NONCE = incorrect PoW nonce
INVALID_TIMESTAMP_SIGNATURE = invalid timestamp signature INSUFFICIENT_FEE = insufficient fee
ADDRESS_BLOCKED = this address is blocked INVALID_ADDRESS = invalid address
NAME_BLOCKED = this name is blocked INVALID_AMOUNT = invalid amount
ADDRESS_ABOVE_RATE_LIMIT = address reached specified rate limit INVALID_ASSET_OWNER = invalid asset owner
DUPLICATE_MESSAGE = address sent duplicate message INVALID_AT_TRANSACTION = invalid AT transaction
INVALID_AT_TYPE_LENGTH = invalid AT 'type' length
INVALID_BUT_OK = invalid but OK INVALID_BUT_OK = invalid but OK
INVALID_CREATION_BYTES = invalid creation bytes
INVALID_DATA_LENGTH = invalid data length
INVALID_DESCRIPTION_LENGTH = invalid description length
INVALID_GROUP_APPROVAL_THRESHOLD = invalid group-approval threshold
INVALID_GROUP_BLOCK_DELAY = invalid group-approval block delay
INVALID_GROUP_ID = invalid group ID
INVALID_GROUP_OWNER = invalid group owner
INVALID_LIFETIME = invalid lifetime
INVALID_NAME_LENGTH = invalid name length
INVALID_NAME_OWNER = invalid name owner
INVALID_OPTION_LENGTH = invalid options length
INVALID_OPTIONS_COUNT = invalid options count
INVALID_ORDER_CREATOR = invalid order creator
INVALID_PAYMENTS_COUNT = invalid payments count
INVALID_PUBLIC_KEY = invalid public key
INVALID_QUANTITY = invalid quantity
INVALID_REFERENCE = invalid reference
INVALID_RETURN = invalid return
INVALID_REWARD_SHARE_PERCENT = invalid reward-share percent
INVALID_SELLER = invalid seller
INVALID_TAGS_LENGTH = invalid 'tags' length
INVALID_TIMESTAMP_SIGNATURE = invalid timestamp signature
INVALID_TX_GROUP_ID = invalid transaction group ID
INVALID_VALUE_LENGTH = invalid 'value' length
INVITE_UNKNOWN = group invite unknown
JOIN_REQUEST_EXISTS = group join request already exists
MAXIMUM_REWARD_SHARES = already at maximum number of reward-shares for this account
MISSING_CREATOR = missing creator
MULTIPLE_NAMES_FORBIDDEN = multiple registered names per account is forbidden
NAME_ALREADY_FOR_SALE = name already for sale
NAME_ALREADY_REGISTERED = name already registered
NAME_BLOCKED = this name is blocked
NAME_DOES_NOT_EXIST = name does not exist
NAME_NOT_FOR_SALE = name is not for sale
NAME_NOT_NORMALIZED = name not in Unicode 'normalized' form
NEGATIVE_AMOUNT = invalid/negative amount
NEGATIVE_FEE = invalid/negative fee
NEGATIVE_PRICE = invalid/negative price
NO_BALANCE = insufficient balance
NO_BLOCKCHAIN_LOCK = node's blockchain currently busy
NO_FLAG_PERMISSION = account does not have that permission
NOT_GROUP_ADMIN = account is not a group admin
NOT_GROUP_MEMBER = account is not a group member
NOT_MINTING_ACCOUNT = account cannot mint
NOT_YET_RELEASED = feature not yet released NOT_YET_RELEASED = feature not yet released
OK = OK
ORDER_ALREADY_CLOSED = asset trade order is already closed
ORDER_DOES_NOT_EXIST = asset trade order does not exist
POLL_ALREADY_EXISTS = poll already exists
POLL_DOES_NOT_EXIST = poll does not exist
POLL_OPTION_DOES_NOT_EXIST = poll option does not exist
PUBLIC_KEY_UNKNOWN = public key unknown
REWARD_SHARE_UNKNOWN = reward-share unknown
SELF_SHARE_EXISTS = self-share (reward-share) already exists
TIMESTAMP_TOO_NEW = timestamp too new
TIMESTAMP_TOO_OLD = timestamp too old
TOO_MANY_UNCONFIRMED = account has too many unconfirmed transactions pending
TRANSACTION_ALREADY_CONFIRMED = transaction has already confirmed
TRANSACTION_ALREADY_EXISTS = transaction already exists
TRANSACTION_UNKNOWN = transaction unknown
TX_GROUP_ID_MISMATCH = transaction's group ID does not match

View File

@ -1,290 +1,195 @@
OK = Aceptar #
#OK
INVALID_ADDRESS = dirección no válida
#invalid address
NEGATIVE_AMOUNT = importe no válido/negativo
#invalid/negative amount
NEGATIVE_FEE = tarifa no válida/negativa
#invalid/negative fee
NO_BALANCE = saldo insuficiente
#insufficient balance
INVALID_REFERENCE = referencia no válida
#invalid reference
INVALID_NAME_LENGTH = longitud de nombre no válida
#invalid name length
INVALID_VALUE_LENGTH = longitud de 'valor' no válida
#invalid 'value' length
NAME_ALREADY_REGISTERED = nombre ya registrado
#name already registered
NAME_DOES_NOT_EXIST = el nombre no existe
#name does not exist
INVALID_NAME_OWNER = propietario de nombre no válido
#invalid name owner
NAME_ALREADY_FOR_SALE = nombre ya a la venta
#name already for sale
NAME_NOT_FOR_SALE = el nombre no está a la venta
#name is not for sale
BUYER_ALREADY_OWNER = el comprador ya es propietario
#buyer is already owner
INVALID_AMOUNT = monto no válido
#invalid amount
INVALID_SELLER = vendedor no válido
#invalid seller
NAME_NOT_NORMALIZED = nombre no en formato Unicode 'normalizado'
#name not in Unicode 'normalized' form
INVALID_DESCRIPTION_LENGTH = longitud de descripción no válida
#invalid description length
INVALID_OPTIONS_COUNT = recuento de opciones no válidas
#invalid options count
INVALID_OPTION_LENGTH = longitud de opciones no válida
#invalid options length
DUPLICATE_OPTION = opción duplicada
#duplicate option
POLL_ALREADY_EXISTS = la encuesta ya existe
#poll already exists
POLL_DOES_NOT_EXIST = la encuesta no existe
#poll does not exist
POLL_OPTION_DOES_NOT_EXIST = la opción de encuesta no existe
#poll option does not exist
ALREADY_VOTED_FOR_THAT_OPTION = ya voté por esa opción
#already voted for that option
INVALID_DATA_LENGTH = longitud de datos no válida
#invalid data length
INVALID_QUANTITY = cantidad no válida
#invalid quantity
ASSET_DOES_NOT_EXIST = el activo no existe
#asset does not exist
INVALID_RETURN = devolución no válida
#invalid return
HAVE_EQUALS_WANT = tener-activo es lo mismo que querer-activo
#have-asset is the same as want-asset
ORDER_DOES_NOT_EXIST = la orden comercial de activos no existe
#asset trade order does not exist
INVALID_ORDER_CREATOR = creador de pedido no válido
#invalid order creator
INVALID_PAYMENTS_COUNT = recuento de pagos no válidos
#invalid payments count
NEGATIVE_PRICE = precio no válido/negativo
#invalid/negative price
INVALID_CREATION_BYTES = bytes de creación no válidos
#invalid creation bytes
INVALID_TAGS_LENGTH = longitud de 'etiquetas' no válida
#invalid 'tags' length
INVALID_AT_TYPE_LENGTH = longitud de 'tipo' de AT no válida
#invalid AT 'type' length
INVALID_AT_TRANSACTION = transacción AT no válida
#invalid AT transaction
INSUFFICIENT_FEE = tarifa insuficiente
#insufficient fee
ASSET_DOES_NOT_MATCH_AT = el activo no coincide con el activo de AT
#asset does not match AT's asset
ASSET_ALREADY_EXISTS = el activo ya existe
#asset already exists
MISSING_CREATOR = creador faltante
#missing creator
TIMESTAMP_TOO_OLD = marca de tiempo demasiado antigua
#timestamp too old
TIMESTAMP_TOO_NEW = marca de tiempo demasiado nueva
#timestamp too new
TOO_MANY_UNCONFIRMED = la cuenta tiene demasiadas transacciones pendientes sin confirmar
#account has too many unconfirmed transactions pending
GROUP_ALREADY_EXISTS = el grupo ya existe
#group already exists
GROUP_DOES_NOT_EXIST = el grupo no existe
#group does not exist
INVALID_GROUP_OWNER = propietario del grupo no válido
#invalid group owner
ALREADY_GROUP_MEMBER = ya es miembro del grupo
#already group member
GROUP_OWNER_CANNOT_LEAVE = el propietario del grupo no puede abandonar el grupo
#group owner cannot leave group
NOT_GROUP_MEMBER = la cuenta no es miembro del grupo
#account is not a group member
ALREADY_GROUP_ADMIN = ya es administrador del grupo
#already group admin
NOT_GROUP_ADMIN = la cuenta no es un administrador de grupo
#account is not a group admin
INVALID_LIFETIME = tiempo de vida no válido
#invalid lifetime
INVITE_UNKNOWN = invitación de grupo desconocida
#group invite unknown
BAN_EXISTS = la prohibición ya existe
#ban already exists
BAN_UNKNOWN = bloqueo desconocido
#ban unknown
BANNED_FROM_GROUP = prohibido del grupo
#banned from group
JOIN_REQUEST_EXISTS = la solicitud para unirse al grupo ya existe
#group join request already exists
INVALID_GROUP_APPROVAL_THRESHOLD = umbral de aprobación de grupo no válido
#invalid group-approval threshold
GROUP_ID_MISMATCH = discrepancia de ID de grupo
#group ID mismatch
INVALID_GROUP_ID = ID de grupo no válido
#invalid group ID
TRANSACTION_UNKNOWN = transacción desconocida
#transaction unknown
TRANSACTION_ALREADY_CONFIRMED = la transacción ya ha sido confirmada
#transaction has already confirmed
INVALID_TX_GROUP_ID = ID de grupo de transacciones no válido
#invalid transaction group ID
TX_GROUP_ID_MISMATCH = el ID de grupo de la transacción no coincide
#transaction's group ID does not match
MULTIPLE_NAMES_FORBIDDEN = múltiples nombres registrados por cuenta están prohibidos
#multiple registered names per account is forbidden
INVALID_ASSET_OWNER = propietario de activo no válido
#invalid asset owner
AT_IS_FINISHED = AT ha terminado
#AT has finished
NO_FLAG_PERMISSION = la cuenta no tiene ese permiso
#account does not have that permission
NOT_MINTING_ACCOUNT = la cuenta no puede acuñar
#account cannot mint
REWARD_SHARE_UNKNOWN = Recompensa compartida desconocida
#reward-share unknown
INVALID_REWARD_SHARE_PERCENT = porcentaje de recompensa compartida no válido
#invalid reward-share percent
PUBLIC_KEY_UNKNOWN = clave pública desconocida
#public key unknown
INVALID_PUBLIC_KEY = clave pública no válida
#invalid public key
AT_UNKNOWN = AT desconocido
#AT unknown
AT_ALREADY_EXISTS = AT ya existe
#AT already exists
GROUP_APPROVAL_NOT_REQUIRED = no se requiere aprobación de grupo
#group-approval not required
GROUP_APPROVAL_DECIDED = aprobación del grupo ya decidida
#group-approval already decided
MAXIMUM_REWARD_SHARES = ya en el número máximo de acciones de recompensa para esta cuenta
#already at maximum number of reward-shares for this account
TRANSACTION_ALREADY_EXISTS = la transacción ya existe
#transaction already exists
NO_BLOCKCHAIN_LOCK = la cadena de bloques del nodo está actualmente ocupada
#node's blockchain currently busy
ORDER_ALREADY_CLOSED = la orden comercial de activos ya está cerrada
#asset trade order is already closed
CLOCK_NOT_SYNCED = reloj no sincronizado
#clock not synchronized
ASSET_NOT_SPENDABLE = el activo no se puede gastar
#asset is not spendable
ACCOUNT_CANNOT_REWARD_SHARE = la cuenta no puede compartir recompensas
#account cannot reward-share
SELF_SHARE_EXISTS = autocompartir (recompensa compartida) ya existe
#self-share (reward-share) already exists
ACCOUNT_ALREADY_EXISTS = la cuenta ya existe ACCOUNT_ALREADY_EXISTS = la cuenta ya existe
#account already exists
ACCOUNT_CANNOT_REWARD_SHARE = la cuenta no puede compartir recompensas
INVALID_GROUP_BLOCK_DELAY = retraso de bloqueo de aprobación de grupo no válido
#invalid group-approval block delay
INCORRECT_NONCE = PoW nonce incorrecto
#incorrect PoW nonce
INVALID_TIMESTAMP_SIGNATURE = firma de marca de tiempo no válida
#invalid timestamp signature
ADDRESS_BLOCKED = esta dirección está bloqueada
#this address is blocked
NAME_BLOCKED = este nombre está bloqueado
#this name is blocked
ADDRESS_ABOVE_RATE_LIMIT = la dirección alcanzó el límite de velocidad especificado ADDRESS_ABOVE_RATE_LIMIT = la dirección alcanzó el límite de velocidad especificado
#address reached specified rate limit
ADDRESS_BLOCKED = esta dirección está bloqueada
ALREADY_GROUP_ADMIN = ya es administrador del grupo
ALREADY_GROUP_MEMBER = ya es miembro del grupo
ALREADY_VOTED_FOR_THAT_OPTION = ya voté por esa opción
ASSET_ALREADY_EXISTS = el activo ya existe
ASSET_DOES_NOT_EXIST = el activo no existe
ASSET_DOES_NOT_MATCH_AT = el activo no coincide con el activo de AT
ASSET_NOT_SPENDABLE = el activo no se puede gastar
AT_ALREADY_EXISTS = AT ya existe
AT_IS_FINISHED = AT ha terminado
AT_UNKNOWN = AT desconocido
BAN_EXISTS = la prohibición ya existe
BAN_UNKNOWN = bloqueo desconocido
BANNED_FROM_GROUP = prohibido del grupo
BUYER_ALREADY_OWNER = el comprador ya es propietario
CLOCK_NOT_SYNCED = reloj no sincronizado
DUPLICATE_MESSAGE = dirección enviada mensaje duplicado DUPLICATE_MESSAGE = dirección enviada mensaje duplicado
#address sent duplicate message
DUPLICATE_OPTION = opción duplicada
GROUP_ALREADY_EXISTS = el grupo ya existe
GROUP_APPROVAL_DECIDED = aprobación del grupo ya decidida
GROUP_APPROVAL_NOT_REQUIRED = no se requiere aprobación de grupo
GROUP_DOES_NOT_EXIST = el grupo no existe
GROUP_ID_MISMATCH = discrepancia de ID de grupo
GROUP_OWNER_CANNOT_LEAVE = el propietario del grupo no puede abandonar el grupo
HAVE_EQUALS_WANT = tener-activo es lo mismo que querer-activo
INCORRECT_NONCE = PoW nonce incorrecto
INSUFFICIENT_FEE = tarifa insuficiente
INVALID_ADDRESS = dirección no válida
INVALID_AMOUNT = monto no válido
INVALID_ASSET_OWNER = propietario de activo no válido
INVALID_AT_TRANSACTION = transacción AT no válida
INVALID_AT_TYPE_LENGTH = longitud de 'tipo' de AT no válida
INVALID_BUT_OK = inválido pero correcto INVALID_BUT_OK = inválido pero correcto
#invalid but OK
INVALID_CREATION_BYTES = bytes de creación no válidos
INVALID_DATA_LENGTH = longitud de datos no válida
INVALID_DESCRIPTION_LENGTH = longitud de descripción no válida
INVALID_GROUP_APPROVAL_THRESHOLD = umbral de aprobación de grupo no válido
INVALID_GROUP_BLOCK_DELAY = retraso de bloqueo de aprobación de grupo no válido
INVALID_GROUP_ID = ID de grupo no válido
INVALID_GROUP_OWNER = propietario del grupo no válido
INVALID_LIFETIME = tiempo de vida no válido
INVALID_NAME_LENGTH = longitud de nombre no válida
INVALID_NAME_OWNER = propietario de nombre no válido
INVALID_OPTION_LENGTH = longitud de opciones no válida
INVALID_OPTIONS_COUNT = recuento de opciones no válidas
INVALID_ORDER_CREATOR = creador de pedido no válido
INVALID_PAYMENTS_COUNT = recuento de pagos no válidos
INVALID_PUBLIC_KEY = clave pública no válida
INVALID_QUANTITY = cantidad no válida
INVALID_REFERENCE = referencia no válida
INVALID_RETURN = devolución no válida
INVALID_REWARD_SHARE_PERCENT = porcentaje de recompensa compartida no válido
INVALID_SELLER = vendedor no válido
INVALID_TAGS_LENGTH = longitud de 'etiquetas' no válida
INVALID_TIMESTAMP_SIGNATURE = firma de marca de tiempo no válida
INVALID_TX_GROUP_ID = ID de grupo de transacciones no válido
INVALID_VALUE_LENGTH = longitud de 'valor' no válida
INVITE_UNKNOWN = invitación de grupo desconocida
JOIN_REQUEST_EXISTS = la solicitud para unirse al grupo ya existe
MAXIMUM_REWARD_SHARES = ya en el número máximo de acciones de recompensa para esta cuenta
MISSING_CREATOR = creador faltante
MULTIPLE_NAMES_FORBIDDEN = múltiples nombres registrados por cuenta están prohibidos
NAME_ALREADY_FOR_SALE = nombre ya a la venta
NAME_ALREADY_REGISTERED = nombre ya registrado
NAME_BLOCKED = este nombre está bloqueado
NAME_DOES_NOT_EXIST = el nombre no existe
NAME_NOT_FOR_SALE = el nombre no está a la venta
NAME_NOT_NORMALIZED = nombre no en formato Unicode 'normalizado'
NEGATIVE_AMOUNT = importe no válido/negativo
NEGATIVE_FEE = tarifa no válida/negativa
NEGATIVE_PRICE = precio no válido/negativo
NO_BALANCE = saldo insuficiente
NO_BLOCKCHAIN_LOCK = la cadena de bloques del nodo está actualmente ocupada
NO_FLAG_PERMISSION = la cuenta no tiene ese permiso
NOT_GROUP_ADMIN = la cuenta no es un administrador de grupo
NOT_GROUP_MEMBER = la cuenta no es miembro del grupo
NOT_MINTING_ACCOUNT = la cuenta no puede acuñar
NOT_YET_RELEASED = función aún no lanzada NOT_YET_RELEASED = función aún no lanzada
#feature not yet released
OK = Aceptar
ORDER_ALREADY_CLOSED = la orden comercial de activos ya está cerrada
ORDER_DOES_NOT_EXIST = la orden comercial de activos no existe
POLL_ALREADY_EXISTS = la encuesta ya existe
POLL_DOES_NOT_EXIST = la encuesta no existe
POLL_OPTION_DOES_NOT_EXIST = la opción de encuesta no existe
PUBLIC_KEY_UNKNOWN = clave pública desconocida
REWARD_SHARE_UNKNOWN = Recompensa compartida desconocida
SELF_SHARE_EXISTS = autocompartir (recompensa compartida) ya existe
TIMESTAMP_TOO_NEW = marca de tiempo demasiado nueva
TIMESTAMP_TOO_OLD = marca de tiempo demasiado antigua
TOO_MANY_UNCONFIRMED = la cuenta tiene demasiadas transacciones pendientes sin confirmar
TRANSACTION_ALREADY_CONFIRMED = la transacción ya ha sido confirmada
TRANSACTION_ALREADY_EXISTS = la transacción ya existe
TRANSACTION_UNKNOWN = transacción desconocida
TX_GROUP_ID_MISMATCH = el ID de grupo de la transacción no coincide

View File

@ -1,7 +1,13 @@
#
ACCOUNT_ALREADY_EXISTS = tili on jo olemassa ACCOUNT_ALREADY_EXISTS = tili on jo olemassa
ACCOUNT_CANNOT_REWARD_SHARE = tili ei voi palkinto-jakaa ACCOUNT_CANNOT_REWARD_SHARE = tili ei voi palkinto-jakaa
ADDRESS_ABOVE_RATE_LIMIT = address reached specified rate limit
ADDRESS_BLOCKED = this address is blocked
ALREADY_GROUP_ADMIN = on jo ryhmän admin ALREADY_GROUP_ADMIN = on jo ryhmän admin
ALREADY_GROUP_MEMBER = on jo ryhmän jäsen ALREADY_GROUP_MEMBER = on jo ryhmän jäsen
@ -10,7 +16,7 @@ ALREADY_VOTED_FOR_THAT_OPTION = on jo äänestänyt vaihtoehtoa
ASSET_ALREADY_EXISTS = resurssi on jo olemassa ASSET_ALREADY_EXISTS = resurssi on jo olemassa
ASSET_DOES_NOT_EXIST = resurssia ei ole olemassa ASSET_DOES_NOT_EXIST = resurssia ei ole olemassa
ASSET_DOES_NOT_MATCH_AT = resurssi ei vastaa AT:n resurssia ASSET_DOES_NOT_MATCH_AT = resurssi ei vastaa AT:n resurssia
@ -22,16 +28,18 @@ AT_IS_FINISHED = AT on päättynyt
AT_UNKNOWN = AT on tuntematon AT_UNKNOWN = AT on tuntematon
BANNED_FROM_GROUP = on evätty ryhmän jäsenyydestä
BAN_EXISTS = eväys on jo olemassa BAN_EXISTS = eväys on jo olemassa
BAN_UNKNOWN = tuntematon eväys BAN_UNKNOWN = tuntematon eväys
BANNED_FROM_GROUP = on evätty ryhmän jäsenyydestä
BUYER_ALREADY_OWNER = ostaja on jo omistaja BUYER_ALREADY_OWNER = ostaja on jo omistaja
CLOCK_NOT_SYNCED = kello on synkronisoimatta CLOCK_NOT_SYNCED = kello on synkronisoimatta
DUPLICATE_MESSAGE = address sent duplicate message
DUPLICATE_OPTION = kahdennettu valinta DUPLICATE_OPTION = kahdennettu valinta
GROUP_ALREADY_EXISTS = ryhmä on jo olemassa GROUP_ALREADY_EXISTS = ryhmä on jo olemassa
@ -62,6 +70,8 @@ INVALID_AT_TRANSACTION = kelvoton AT-transaktio
INVALID_AT_TYPE_LENGTH = kelvoton AT 'tyypin' pituus INVALID_AT_TYPE_LENGTH = kelvoton AT 'tyypin' pituus
INVALID_BUT_OK = Invalid but OK
INVALID_CREATION_BYTES = kelvoton luodun tavumäärä INVALID_CREATION_BYTES = kelvoton luodun tavumäärä
INVALID_DATA_LENGTH = kelvoton datan pituus INVALID_DATA_LENGTH = kelvoton datan pituus
@ -82,10 +92,10 @@ INVALID_NAME_LENGTH = kelvoton nimen pituus
INVALID_NAME_OWNER = kelvoton nimen omistaja INVALID_NAME_OWNER = kelvoton nimen omistaja
INVALID_OPTIONS_COUNT = kelvoton valintojen lkm
INVALID_OPTION_LENGTH = kelvoton valintojen pituus INVALID_OPTION_LENGTH = kelvoton valintojen pituus
INVALID_OPTIONS_COUNT = kelvoton valintojen lkm
INVALID_ORDER_CREATOR = kelvoton tilauksen luoja INVALID_ORDER_CREATOR = kelvoton tilauksen luoja
INVALID_PAYMENTS_COUNT = kelvoton maksujen lkm INVALID_PAYMENTS_COUNT = kelvoton maksujen lkm
@ -104,6 +114,8 @@ INVALID_SELLER = kelvoton myyjä
INVALID_TAGS_LENGTH = kelvoton 'tagin' pituus INVALID_TAGS_LENGTH = kelvoton 'tagin' pituus
INVALID_TIMESTAMP_SIGNATURE = Invalid timestamp signature
INVALID_TX_GROUP_ID = kelvoton transaktion ryhmä-ID INVALID_TX_GROUP_ID = kelvoton transaktion ryhmä-ID
INVALID_VALUE_LENGTH = kelvoton 'arvon' pituus INVALID_VALUE_LENGTH = kelvoton 'arvon' pituus
@ -122,6 +134,8 @@ NAME_ALREADY_FOR_SALE = nimi on jo myynnissä
NAME_ALREADY_REGISTERED = nimi on jo rekisteröity NAME_ALREADY_REGISTERED = nimi on jo rekisteröity
NAME_BLOCKED = this name is blocked
NAME_DOES_NOT_EXIST = nimeä ei ole NAME_DOES_NOT_EXIST = nimeä ei ole
NAME_NOT_FOR_SALE = nimi ei ole kaupan NAME_NOT_FOR_SALE = nimi ei ole kaupan
@ -134,6 +148,12 @@ NEGATIVE_FEE = kelvoton/negatiivinen kulu
NEGATIVE_PRICE = kelvoton/negatiivinen hinta NEGATIVE_PRICE = kelvoton/negatiivinen hinta
NO_BALANCE = riittämätön saldo
NO_BLOCKCHAIN_LOCK = solmun lohkoketju on juuri nyt varattuna
NO_FLAG_PERMISSION = tilillä ei ole lupaa tuohon
NOT_GROUP_ADMIN = tili ei ole ryhmän admin NOT_GROUP_ADMIN = tili ei ole ryhmän admin
NOT_GROUP_MEMBER = tili ei ole ryhmän jäsen NOT_GROUP_MEMBER = tili ei ole ryhmän jäsen
@ -142,12 +162,6 @@ NOT_MINTING_ACCOUNT = tili ei voi lyödä rahaa
NOT_YET_RELEASED = ominaisuutta ei ole vielä julkistettu NOT_YET_RELEASED = ominaisuutta ei ole vielä julkistettu
NO_BALANCE = riittämätön saldo
NO_BLOCKCHAIN_LOCK = solmun lohkoketju on juuri nyt varattuna
NO_FLAG_PERMISSION = tilillä ei ole lupaa tuohon
OK = OK OK = OK
ORDER_ALREADY_CLOSED = resurssin määräys kauppaan on jo suljettu ORDER_ALREADY_CLOSED = resurssin määräys kauppaan on jo suljettu
@ -179,15 +193,3 @@ TRANSACTION_ALREADY_EXISTS = transaktio on jo olemassa
TRANSACTION_UNKNOWN = tuntematon transaktio TRANSACTION_UNKNOWN = tuntematon transaktio
TX_GROUP_ID_MISMATCH = transaktion ryhmä-ID:n vastaavuusvirhe TX_GROUP_ID_MISMATCH = transaktion ryhmä-ID:n vastaavuusvirhe
ADDRESS_BLOCKED = this address is blocked
NAME_BLOCKED = this name is blocked
ADDRESS_ABOVE_RATE_LIMIT = address reached specified rate limit
DUPLICATE_MESSAGE = address sent duplicate message
INVALID_TIMESTAMP_SIGNATURE = Invalid timestamp signature
INVALID_BUT_OK = Invalid but OK

View File

@ -1,151 +1,195 @@
OK = OK #
INVALID_ADDRESS = adresse invalide ACCOUNT_ALREADY_EXISTS = Le compte existe déjà
NEGATIVE_AMOUNT = montant invalide/négatif ACCOUNT_CANNOT_REWARD_SHARE = le compte ne peut pas récompenser
NEGATIVE_FEE = frais invalides/négatifs ADDRESS_ABOVE_RATE_LIMIT = l'adresse a atteint la limite de débit spécifiée
NO_BALANCE = solde insuffisant ADDRESS_BLOCKED = cette adresse est bloquée
INVALID_REFERENCE = référence invalide ALREADY_GROUP_ADMIN = vous êtes déjà l'administrateur(trice) du groupe
INVALID_NAME_LENGTH = longueur de nom invalide ALREADY_GROUP_MEMBER = vous êtes déjà un(e) membre du groupe
INVALID_VALUE_LENGTH = longueur de 'valeur' invalide ALREADY_VOTED_FOR_THAT_OPTION = Vous avez déjà voté pour ce choix
NAME_ALREADY_REGISTERED = le nom est déjà enregistré ASSET_ALREADY_EXISTS = l'actif existe déjà
NAME_DOES_NOT_EXIST = le nom n'existe pas ASSET_DOES_NOT_EXIST = l'actif n'existe pas
INVALID_NAME_OWNER = le nom du propriétaire est invalide ASSET_DOES_NOT_MATCH_AT = l'actif ne correspond pas à l'actif d'AT
NAME_ALREADY_FOR_SALE = le nom est déjà en vente ASSET_NOT_SPENDABLE = l'actif n'est pas dépensable
NAME_NOT_FOR_SALE = le nom n'est pas à vendre AT_ALREADY_EXISTS = AT déjà existante
BUYER_ALREADY_OWNER = l'acheteur est déjà le propriétaire AT_IS_FINISHED = l'AT est fini
INVALID_AMOUNT = montant invalide AT_UNKNOWN = AT inconnu
INVALID_SELLER = vendeur invalide BAN_EXISTS = déjà banni
NAME_NOT_NORMALIZED = le nom n'est pas sous la forme 'normalisée' Unicode BAN_UNKNOWN = bannissement inconnu
INVALID_DESCRIPTION_LENGTH = longueur de description invalide BANNED_FROM_GROUP = banned from group
INVALID_OPTIONS_COUNT = nombre d'options invalides BUYER_ALREADY_OWNER = l'acheteur est déjà le propriétaire
INVALID_OPTION_LENGTH = longueur des options invalide CLOCK_NOT_SYNCED = horloge non synchronisée
DUPLICATE_OPTION = option dupliquée DUPLICATE_MESSAGE = l'adresse a envoyé un message en double
POLL_ALREADY_EXISTS = le scrutin existe déjà DUPLICATE_OPTION = option dupliquée
POLL_DOES_NOT_EXIST = le scrutin n'existe pas GROUP_ALREADY_EXISTS = le groupe existe déjà
POLL_OPTION_DOES_NOT_EXIST = Ce choix de scrutin n'existe pas GROUP_APPROVAL_DECIDED = approbation de groupe déjà décidée
ALREADY_VOTED_FOR_THAT_OPTION = Vous avez déjà voté pour ce choix GROUP_APPROVAL_NOT_REQUIRED = approbation de groupe non requise
INVALID_DATA_LENGTH = longueur de données invalide GROUP_DOES_NOT_EXIST = le groupe n'existe pas
INVALID_QUANTITY = quantité invalide GROUP_ID_MISMATCH = identifiant de groupe non-concorde
ASSET_DOES_NOT_EXIST = l'actif n'existe pas GROUP_OWNER_CANNOT_LEAVE = le propriétaire du groupe ne peut pas quitter le groupe
INVALID_RETURN = retour invalide HAVE_EQUALS_WANT = l'actif désiré est le même que l'actif possédé
HAVE_EQUALS_WANT = l'actif désiré est le même que l'actif possédé INCORRECT_NONCE = PoW nonce incorrect
ORDER_DOES_NOT_EXIST = l'ordre d'échange d'actifs n'existe pas INSUFFICIENT_FEE = frais insuffisant
INVALID_ORDER_CREATOR = créateur d'ordre invalide INVALID_ADDRESS = adresse invalide
INVALID_PAYMENTS_COUNT = nombre de paiements invalides INVALID_AMOUNT = montant invalide
NEGATIVE_PRICE = prix invalide/négatif INVALID_ASSET_OWNER = propriétaire de l'actif invalide
INVALID_CREATION_BYTES = octets de création invalides INVALID_AT_TRANSACTION = transaction AT invalide
INVALID_TAGS_LENGTH = longueur de 'tags' invalide INVALID_AT_TYPE_LENGTH = longueur 'type' AT invalide
INVALID_AT_TYPE_LENGTH = longueur 'type' AT invalide INVALID_BUT_OK = invalide mais OK
INVALID_AT_TRANSACTION = transaction AT invalide INVALID_CREATION_BYTES = octets de création invalides
INSUFFICIENT_FEE = frais insuffisant INVALID_DATA_LENGTH = longueur de données invalide
ASSET_DOES_NOT_MATCH_AT = l'actif ne correspond pas à l'actif d'AT INVALID_DESCRIPTION_LENGTH = longueur de description invalide
ASSET_ALREADY_EXISTS = l'actif existe déjà
MISSING_CREATOR = créateur manquant INVALID_GROUP_APPROVAL_THRESHOLD = seuil d'approbation de groupe non valide
TIMESTAMP_TOO_OLD = horodatage trop ancien
TIMESTAMP_TOO_NEW = horodatage trop récent INVALID_GROUP_BLOCK_DELAY = délai de blocage d'approbation de groupe invalide
TOO_MANY_UNCONFIRMED = le compte a trop de transactions non confirmées en attente
GROUP_ALREADY_EXISTS = le groupe existe déjà INVALID_GROUP_ID = identifiant de groupe invalide
GROUP_DOES_NOT_EXIST = le groupe n'existe pas
INVALID_GROUP_OWNER = propriétaire de groupe invalide INVALID_GROUP_OWNER = propriétaire de groupe invalide
ALREADY_GROUP_MEMBER = vous êtes déjà un(e) membre du groupe
GROUP_OWNER_CANNOT_LEAVE = le propriétaire du groupe ne peut pas quitter le groupe INVALID_LIFETIME = durée de vie invalide
NOT_GROUP_MEMBER = le compte n'est pas membre du groupe
ALREADY_GROUP_ADMIN = vous êtes déjà l'administrateur(trice) du groupe INVALID_NAME_LENGTH = longueur de nom invalide
NOT_GROUP_ADMIN = le compte n'est pas un administrateur du groupe
INVALID_LIFETIME = durée de vie invalide INVALID_NAME_OWNER = le nom du propriétaire est invalide
INVITE_UNKNOWN = invitation de groupe inconnue
BAN_EXISTS = déjà banni INVALID_OPTION_LENGTH = longueur des options invalide
BAN_UNKNOWN = bannissement inconnu
BANNED_FROM_GROUP = banned from group INVALID_OPTIONS_COUNT = nombre d'options invalides
JOIN_REQUEST_EXISTS = la demande d'adhésion au groupe existe déjà
INVALID_GROUP_APPROVAL_THRESHOLD = seuil d'approbation de groupe non valide INVALID_ORDER_CREATOR = créateur d'ordre invalide
GROUP_ID_MISMATCH = identifiant de groupe non-concorde
INVALID_GROUP_ID = identifiant de groupe invalide INVALID_PAYMENTS_COUNT = nombre de paiements invalides
TRANSACTION_UNKNOWN = transaction inconnue
TRANSACTION_ALREADY_CONFIRMED = la transaction a déjà été confirmée INVALID_PUBLIC_KEY = clé publique invalide
INVALID_TX_GROUP_ID = identifiant du groupe de transactions invalide
TX_GROUP_ID_MISMATCH = l'identifiant du groupe de transaction ne correspond pas INVALID_QUANTITY = quantité invalide
MULTIPLE_NAMES_FORBIDDEN = l'enregistrement de plusieurs noms par compte est interdit INVALID_REFERENCE = référence invalide
INVALID_ASSET_OWNER = propriétaire de l'actif invalide INVALID_RETURN = retour invalide
AT_IS_FINISHED = l'AT est fini INVALID_REWARD_SHARE_PERCENT = pourcentage du partage de récompense invalide
NO_FLAG_PERMISSION = le compte n'a pas cette autorisation INVALID_SELLER = vendeur invalide
NOT_MINTING_ACCOUNT = le compte ne peut pas mint INVALID_TAGS_LENGTH = longueur de 'tags' invalide
REWARD_SHARE_UNKNOWN = partage de récompense inconnu INVALID_TIMESTAMP_SIGNATURE = signature d'horodatage invalide
INVALID_REWARD_SHARE_PERCENT = pourcentage du partage de récompense invalide INVALID_TX_GROUP_ID = identifiant du groupe de transactions invalide
PUBLIC_KEY_UNKNOWN = clé publique inconnue INVALID_VALUE_LENGTH = longueur de 'valeur' invalide
INVALID_PUBLIC_KEY = clé publique invalide INVITE_UNKNOWN = invitation de groupe inconnue
AT_UNKNOWN = AT inconnu JOIN_REQUEST_EXISTS = la demande d'adhésion au groupe existe déjà
AT_ALREADY_EXISTS = AT déjà existante MAXIMUM_REWARD_SHARES = déjà au nombre maximum de récompense pour ce compte
GROUP_APPROVAL_NOT_REQUIRED = approbation de groupe non requise MISSING_CREATOR = créateur manquant
GROUP_APPROVAL_DECIDED = approbation de groupe déjà décidée MULTIPLE_NAMES_FORBIDDEN = l'enregistrement de plusieurs noms par compte est interdit
MAXIMUM_REWARD_SHARES = déjà au nombre maximum de récompense pour ce compte NAME_ALREADY_FOR_SALE = le nom est déjà en vente
TRANSACTION_ALREADY_EXISTS = la transaction existe déjà NAME_ALREADY_REGISTERED = le nom est déjà enregistré
NO_BLOCKCHAIN_LOCK = nœud de la blockchain actuellement occupé NAME_BLOCKED = ce nom est bloqué
ORDER_ALREADY_CLOSED = l'ordre d'échange d'actifs est déjà fermé
CLOCK_NOT_SYNCED = horloge non synchronisée NAME_DOES_NOT_EXIST = le nom n'existe pas
ASSET_NOT_SPENDABLE = l'actif n'est pas dépensable
ACCOUNT_CANNOT_REWARD_SHARE = le compte ne peut pas récompenser NAME_NOT_FOR_SALE = le nom n'est pas à vendre
SELF_SHARE_EXISTS = l'auto-partage (récompense) existe déjà
ACCOUNT_ALREADY_EXISTS = Le compte existe déjà NAME_NOT_NORMALIZED = le nom n'est pas sous la forme 'normalisée' Unicode
INVALID_GROUP_BLOCK_DELAY = délai de blocage d'approbation de groupe invalide
INCORRECT_NONCE = PoW nonce incorrect NEGATIVE_AMOUNT = montant invalide/négatif
INVALID_TIMESTAMP_SIGNATURE = signature d'horodatage invalide
ADDRESS_IN_BLACKLIST = cette adresse est dans votre liste noire NEGATIVE_FEE = frais invalides/négatifs
ADDRESS_ABOVE_RATE_LIMIT = l'adresse a atteint la limite de débit spécifiée
DUPLICATE_MESSAGE = l'adresse a envoyé un message en double NEGATIVE_PRICE = prix invalide/négatif
INVALID_BUT_OK = invalide mais OK
NOT_YET_RELEASED = fonctionnalité pas encore publiée NO_BALANCE = solde insuffisant
NO_BLOCKCHAIN_LOCK = nœud de la blockchain actuellement occupé
NO_FLAG_PERMISSION = le compte n'a pas cette autorisation
NOT_GROUP_ADMIN = le compte n'est pas un administrateur du groupe
NOT_GROUP_MEMBER = le compte n'est pas membre du groupe
NOT_MINTING_ACCOUNT = le compte ne peut pas mint
NOT_YET_RELEASED = fonctionnalité pas encore publiée
OK = OK
ORDER_ALREADY_CLOSED = l'ordre d'échange d'actifs est déjà fermé
ORDER_DOES_NOT_EXIST = l'ordre d'échange d'actifs n'existe pas
POLL_ALREADY_EXISTS = le scrutin existe déjà
POLL_DOES_NOT_EXIST = le scrutin n'existe pas
POLL_OPTION_DOES_NOT_EXIST = Ce choix de scrutin n'existe pas
PUBLIC_KEY_UNKNOWN = clé publique inconnue
REWARD_SHARE_UNKNOWN = partage de récompense inconnu
SELF_SHARE_EXISTS = l'auto-partage (récompense) existe déjà
TIMESTAMP_TOO_NEW = horodatage trop récent
TIMESTAMP_TOO_OLD = horodatage trop ancien
TOO_MANY_UNCONFIRMED = le compte a trop de transactions non confirmées en attente
TRANSACTION_ALREADY_CONFIRMED = la transaction a déjà été confirmée
TRANSACTION_ALREADY_EXISTS = la transaction existe déjà
TRANSACTION_UNKNOWN = transaction inconnue
TX_GROUP_ID_MISMATCH = l'identifiant du groupe de transaction ne correspond pas

View File

@ -1,114 +1,32 @@
# Magyar myelvre forditotta: Szkíta (Scythian). 2021 Augusztus 7. # Magyar myelvre forditotta: Szkíta (Scythian). 2021 Augusztus 7.
OK = OK ACCOUNT_ALREADY_EXISTS = ez a fiók már létezik
INVALID_ADDRESS = érvénytelen név vagy cím ACCOUNT_CANNOT_REWARD_SHARE = ez a fiók nem vehet részt jutalék-megosztásban
NEGATIVE_AMOUNT = negatív összeg ADDRESS_ABOVE_RATE_LIMIT = ez a cím elérte a megengedett mérték korlátot
NEGATIVE_FEE = érvénytelen/negatív tranzakciós díj ADDRESS_BLOCKED = ez a cím le van tiltva
NO_BALANCE = elégtelen egyenleg
INVALID_REFERENCE = érvénytelen hivatkozás
INVALID_NAME_LENGTH = érvénytelen névhossz
INVALID_VALUE_LENGTH = érvénytelen értékhossz
NAME_ALREADY_REGISTERED = ez a név már regisztrált
NAME_DOES_NOT_EXIST = ez a név nem létezik
INVALID_NAME_OWNER = érvénytelen név tulajdonos
NAME_ALREADY_FOR_SALE = ez a név már eladó
NAME_NOT_FOR_SALE = ez a név nem eladó
BUYER_ALREADY_OWNER = ez a vevő már a tulajdonos
INVALID_AMOUNT = érvénytelen összeg
INVALID_SELLER = érvénytelen eladó
NAME_NOT_NORMALIZED = ez a név nincs "normalizált" Unicode formátumban
INVALID_DESCRIPTION_LENGTH = érvénytelen leíráshossz
INVALID_OPTIONS_COUNT = invalid options count
INVALID_OPTION_LENGTH = érvénytelen opciókszám
DUPLICATE_OPTION = ez a lehetőség már létezik
POLL_ALREADY_EXISTS = ez a szavazás már létezik
POLL_DOES_NOT_EXIST = ez a szavazás nem létezik
POLL_OPTION_DOES_NOT_EXIST = ez a szavazási lehetőség nem létezik
ALREADY_VOTED_FOR_THAT_OPTION = erre a lehetőségre már szavaztál
INVALID_DATA_LENGTH = érvénytelen adathossz
INVALID_QUANTITY = érvénytelen mennyiség
ASSET_DOES_NOT_EXIST = tőke nem létezik
INVALID_RETURN = érvénytelen csere tőke
HAVE_EQUALS_WANT = saját tőke egyenlő a csere tőkével
ORDER_DOES_NOT_EXIST = tőke rendelés nem létezik
INVALID_ORDER_CREATOR = érvénytelen rendelés létrehozó
INVALID_PAYMENTS_COUNT = a kifizetések száma érvénytelen
NEGATIVE_PRICE = érvénytelen/negatív ár
INVALID_CREATION_BYTES = érvénytelen létrehozási bájtok
INVALID_TAGS_LENGTH = érvénytelen cimkehossz
INVALID_AT_TYPE_LENGTH = érvénytelen AT "típus" hossz
INVALID_AT_TRANSACTION = érvénytelen AT tranzakció
INSUFFICIENT_FEE = elégtelen díj
ASSET_DOES_NOT_MATCH_AT = a tőke nem egyezik az AT tőkéjével
ASSET_ALREADY_EXISTS = ez a tőke már létezik
MISSING_CREATOR = hiányzó létrehozó
TIMESTAMP_TOO_OLD = időbélyeg túl régi
TIMESTAMP_TOO_NEW = időbélyeg túl korai
TOO_MANY_UNCONFIRMED = ennek a fióknak túl sok meg nem erősített tranzakciója van folyamatban
GROUP_ALREADY_EXISTS = ez a csoport már létezik
GROUP_DOES_NOT_EXIST = ez a csoport nem létezik
INVALID_GROUP_OWNER = érvénytelen csoport tulajdonos
ALREADY_GROUP_MEMBER = már csoporttag
GROUP_OWNER_CANNOT_LEAVE = a csoport tulajdonos nem tudja elhagyni a csoportot
NOT_GROUP_MEMBER = ez a tag nem csoporttag
ALREADY_GROUP_ADMIN = már csoport adminisztrátor ALREADY_GROUP_ADMIN = már csoport adminisztrátor
NOT_GROUP_ADMIN = ez a tag nem csoport adminisztrátor ALREADY_GROUP_MEMBER = már csoporttag
INVALID_LIFETIME = érvénytelen élettartam ALREADY_VOTED_FOR_THAT_OPTION = erre a lehetőségre már szavaztál
INVITE_UNKNOWN = ismeretlen csoport meghívás ASSET_ALREADY_EXISTS = ez a tőke már létezik
ASSET_DOES_NOT_EXIST = tőke nem létezik
ASSET_DOES_NOT_MATCH_AT = a tőke nem egyezik az AT tőkéjével
ASSET_NOT_SPENDABLE = ez a tőke nem értékesíthető
AT_ALREADY_EXISTS = az AT már létezik
AT_IS_FINISHED = az AT végzett
AT_UNKNOWN = az AT ismeretlen
BAN_EXISTS = már ki van tiltva BAN_EXISTS = már ki van tiltva
@ -116,80 +34,162 @@ BAN_UNKNOWN = kitiltás nem létezik
BANNED_FROM_GROUP = ki van tiltva a csoportból BANNED_FROM_GROUP = ki van tiltva a csoportból
JOIN_REQUEST_EXISTS = a csoporthoz való csatlakozási kérelem már megtöretént BUYER_ALREADY_OWNER = ez a vevő már a tulajdonos
INVALID_GROUP_APPROVAL_THRESHOLD = érvénytelen jóváhagyási küszöbérték
GROUP_ID_MISMATCH = csoportazonosító nem egyezik
INVALID_GROUP_ID = csoportazonosító érvénytelen
TRANSACTION_UNKNOWN = ismeretlen tranzakció
TRANSACTION_ALREADY_CONFIRMED = ez a tranzakció már meg van erősítve
INVALID_TX_GROUP_ID = a tranzakció csoportazonosítója érvénytelen
TX_GROUP_ID_MISMATCH = a tranzakció csoportazonosítója nem egyezik
MULTIPLE_NAMES_FORBIDDEN = fiókonként több név regisztrálása tilos
INVALID_ASSET_OWNER = érvénytelen tőke tulajdonos
AT_IS_FINISHED = az AT végzett
NO_FLAG_PERMISSION = ez a fiók nem rendelkezik ezzel az engedéllyel
NOT_MINTING_ACCOUNT = ez a fiók nem tud QORT-ot verni
REWARD_SHARE_UNKNOWN = ez a jutalék-megosztás ismeretlen
INVALID_REWARD_SHARE_PERCENT = ez a jutalék-megosztási arány érvénytelen
PUBLIC_KEY_UNKNOWN = ismeretlen nyilvános kulcs
INVALID_PUBLIC_KEY = érvénytelen nyilvános kulcs
AT_UNKNOWN = az AT ismeretlen
AT_ALREADY_EXISTS = az AT már létezik
GROUP_APPROVAL_NOT_REQUIRED = csoport általi jóváhagyás nem szükséges
GROUP_APPROVAL_DECIDED = csoport általi jóváhagyás el van döntve
MAXIMUM_REWARD_SHARES = ez a fiókcím már elérte a maximális lehetséges jutalék-megosztási részesedést
TRANSACTION_ALREADY_EXISTS = ez a tranzakció már létezik
NO_BLOCKCHAIN_LOCK = csomópont blokklánca jelenleg elfoglalt
ORDER_ALREADY_CLOSED = ez a tőke értékesítés már befejeződött
CLOCK_NOT_SYNCED = az óra nincs szinkronizálva CLOCK_NOT_SYNCED = az óra nincs szinkronizálva
ASSET_NOT_SPENDABLE = ez a tőke nem értékesíthető DUPLICATE_MESSAGE = ez a cím duplikált üzenetet küldött
ACCOUNT_CANNOT_REWARD_SHARE = ez a fiók nem vehet részt jutalék-megosztásban DUPLICATE_OPTION = ez a lehetőség már létezik
SELF_SHARE_EXISTS = önrészes jutalék-megosztás már létezik GROUP_ALREADY_EXISTS = ez a csoport már létezik
ACCOUNT_ALREADY_EXISTS = ez a fiók már létezik GROUP_APPROVAL_DECIDED = csoport általi jóváhagyás el van döntve
INVALID_GROUP_BLOCK_DELAY = invalid group-approval block delay GROUP_APPROVAL_NOT_REQUIRED = csoport általi jóváhagyás nem szükséges
GROUP_DOES_NOT_EXIST = ez a csoport nem létezik
GROUP_ID_MISMATCH = csoportazonosító nem egyezik
GROUP_OWNER_CANNOT_LEAVE = a csoport tulajdonosa nem tudja elhagyni a csoportot
HAVE_EQUALS_WANT = saját tőke egyenlő a csere tőkével
INCORRECT_NONCE = helytelen Proof-of-Work Nonce INCORRECT_NONCE = helytelen Proof-of-Work Nonce
INVALID_TIMESTAMP_SIGNATURE = érvénytelen időbélyeg aláírás INSUFFICIENT_FEE = elégtelen díj
ADDRESS_BLOCKED = this address is blocked INVALID_ADDRESS = érvénytelen név vagy cím
NAME_BLOCKED = this name is blocked INVALID_AMOUNT = érvénytelen összeg
ADDRESS_ABOVE_RATE_LIMIT = ez a cím elérte a megengedett mérték korlátot INVALID_ASSET_OWNER = érvénytelen tőke tulajdonos
DUPLICATE_MESSAGE = ez a cím duplikált üzenetet küldött INVALID_AT_TRANSACTION = érvénytelen AT tranzakció
INVALID_AT_TYPE_LENGTH = érvénytelen AT típushossz
INVALID_BUT_OK = érvénytelen de elfogadva INVALID_BUT_OK = érvénytelen de elfogadva
INVALID_CREATION_BYTES = érvénytelen létrehozási bájtok
INVALID_DATA_LENGTH = érvénytelen adathossz
INVALID_DESCRIPTION_LENGTH = érvénytelen leíráshossz
INVALID_GROUP_APPROVAL_THRESHOLD = érvénytelen jóváhagyási küszöbérték
INVALID_GROUP_BLOCK_DELAY = invalid group-approval block delay
INVALID_GROUP_ID = csoportazonosító érvénytelen
INVALID_GROUP_OWNER = érvénytelen csoporttulajdonos
INVALID_LIFETIME = érvénytelen élettartam
INVALID_NAME_LENGTH = érvénytelen névhossz
INVALID_NAME_OWNER = érvénytelen névtulajdonos
INVALID_OPTION_LENGTH = érvénytelen opciószám
INVALID_OPTIONS_COUNT = invalid options count
INVALID_ORDER_CREATOR = érvénytelen a rendelés létrehozója
INVALID_PAYMENTS_COUNT = a kifizetések száma érvénytelen
INVALID_PUBLIC_KEY = érvénytelen nyilvános kulcs
INVALID_QUANTITY = érvénytelen mennyiség
INVALID_REFERENCE = érvénytelen hivatkozás
INVALID_RETURN = érvénytelen csere tőke
INVALID_REWARD_SHARE_PERCENT = ez a jutalék-megosztási arány érvénytelen
INVALID_SELLER = érvénytelen eladó
INVALID_TAGS_LENGTH = érvénytelen cimkehossz
INVALID_TIMESTAMP_SIGNATURE = érvénytelen időbélyeg-aláírás
INVALID_TX_GROUP_ID = a tranzakció csoportazonosítója érvénytelen
INVALID_VALUE_LENGTH = érvénytelen értékhossz
INVITE_UNKNOWN = ismeretlen csoport meghívás
JOIN_REQUEST_EXISTS = a csoporthoz való csatlakozási kérelem már létezik
MAXIMUM_REWARD_SHARES = ez a fiókcím már elérte a maximális lehetséges jutalék-megosztási részesedést
MISSING_CREATOR = hiányzó létrehozó
MULTIPLE_NAMES_FORBIDDEN = fiókonként több név regisztrálása tilos
NAME_ALREADY_FOR_SALE = ez a név már eladó
NAME_ALREADY_REGISTERED = ez a név már regisztrált
NAME_BLOCKED = ez a név tiltva van
NAME_DOES_NOT_EXIST = ez a név nem létezik
NAME_NOT_FOR_SALE = ez a név nem eladó
NAME_NOT_NORMALIZED = ez a név nincs "normalizált" Unicode formátumban
NEGATIVE_AMOUNT = érvénytelen/negatív összeg
NEGATIVE_FEE = érvénytelen/negatív tranzakciós díj
NEGATIVE_PRICE = érvénytelen/negatív ár
NO_BALANCE = elégtelen egyenleg
NO_BLOCKCHAIN_LOCK = csomópont blokklánca jelenleg foglalt
NO_FLAG_PERMISSION = ez a fiók nem rendelkezik ezzel az engedéllyel
NOT_GROUP_ADMIN = ez a tag nem csoportadminisztrátor
NOT_GROUP_MEMBER = ez a tag nem csoporttag
NOT_MINTING_ACCOUNT = ez a fiók nem tud QORT-ot verni
NOT_YET_RELEASED = ez a funkció még nem került kiadásra NOT_YET_RELEASED = ez a funkció még nem került kiadásra
OK = OK
ORDER_ALREADY_CLOSED = ez a tőkeértékesítés már befejeződött
ORDER_DOES_NOT_EXIST = tőkerendelés nem létezik
POLL_ALREADY_EXISTS = ez a szavazás már létezik
POLL_DOES_NOT_EXIST = ez a szavazás nem létezik
POLL_OPTION_DOES_NOT_EXIST = ez a válaszlehetőség nem létezik
PUBLIC_KEY_UNKNOWN = ismeretlen nyilvános kulcs
REWARD_SHARE_UNKNOWN = ez a jutalék-megosztás ismeretlen
SELF_SHARE_EXISTS = önrészes jutalék-megosztás már létezik
TIMESTAMP_TOO_NEW = időbélyeg túl friss
TIMESTAMP_TOO_OLD = időbélyeg túl régi
TOO_MANY_UNCONFIRMED = ennek a fióknak túl sok meg nem erősített tranzakciója van folyamatban
TRANSACTION_ALREADY_CONFIRMED = ez a tranzakció már meg van erősítve
TRANSACTION_ALREADY_EXISTS = ez a tranzakció már létezik
TRANSACTION_UNKNOWN = ismeretlen tranzakció
TX_GROUP_ID_MISMATCH = a tranzakció csoportazonosítója nem egyezik

View File

@ -1,12 +1,16 @@
# Italian translation by Pabs 2021 # Italian translation by Pabs 2021
ACCOUNT_ALREADY_EXISTS = l'account gia esiste ACCOUNT_ALREADY_EXISTS = l'account esiste già
ACCOUNT_CANNOT_REWARD_SHARE = l'account non può fare la condivisione di ricompensa ACCOUNT_CANNOT_REWARD_SHARE = l'account non può ricevere ricompense
ALREADY_GROUP_ADMIN = è già amministratore del gruppo ADDRESS_ABOVE_RATE_LIMIT = l'indirizzo ha raggiunto il limite stabilito
ALREADY_GROUP_MEMBER = è già membro del gruppo ADDRESS_BLOCKED = questo indirizzo è bloccato
ALREADY_GROUP_ADMIN = già amministratore del gruppo
ALREADY_GROUP_MEMBER = già membro del gruppo
ALREADY_VOTED_FOR_THAT_OPTION = già votato per questa opzione ALREADY_VOTED_FOR_THAT_OPTION = già votato per questa opzione
@ -24,31 +28,33 @@ AT_IS_FINISHED = AT ha finito
AT_UNKNOWN = AT sconosciuto AT_UNKNOWN = AT sconosciuto
BANNED_FROM_GROUP = divietato dal gruppo
BAN_EXISTS = il divieto esiste già BAN_EXISTS = il divieto esiste già
BAN_UNKNOWN = divieto sconosciuto BAN_UNKNOWN = divieto sconosciuto
BANNED_FROM_GROUP = vietato dal gruppo
BUYER_ALREADY_OWNER = l'acquirente è già proprietario BUYER_ALREADY_OWNER = l'acquirente è già proprietario
CLOCK_NOT_SYNCED = orologio non sincronizzato CLOCK_NOT_SYNCED = orologio non sincronizzato
DUPLICATE_MESSAGE = l'indirizzo ha inviato un messaggio duplicato
DUPLICATE_OPTION = opzione duplicata DUPLICATE_OPTION = opzione duplicata
GROUP_ALREADY_EXISTS = gruppo già esistente GROUP_ALREADY_EXISTS = gruppo già esistente
GROUP_APPROVAL_DECIDED = approvazione di gruppo già decisa GROUP_APPROVAL_DECIDED = approvazione di gruppo già decisa
GROUP_APPROVAL_NOT_REQUIRED = approvazione di gruppo non richiesto GROUP_APPROVAL_NOT_REQUIRED = approvazione di gruppo non richiesta
GROUP_DOES_NOT_EXIST = gruppo non esiste GROUP_DOES_NOT_EXIST = il gruppo non esiste
GROUP_ID_MISMATCH = identificazione di gruppo non corrispondente GROUP_ID_MISMATCH = identificazione di gruppo non corrispondente
GROUP_OWNER_CANNOT_LEAVE = il proprietario del gruppo non può lasciare il gruppo GROUP_OWNER_CANNOT_LEAVE = il proprietario del gruppo non può lasciare il gruppo
HAVE_EQUALS_WANT = la risorsa avere è uguale a la risorsa volere HAVE_EQUALS_WANT = la richiesta è uguale a ciò che è già posseduto
INCORRECT_NONCE = PoW nonce sbagliato INCORRECT_NONCE = PoW nonce sbagliato
@ -64,9 +70,11 @@ INVALID_AT_TRANSACTION = transazione AT non valida
INVALID_AT_TYPE_LENGTH = lunghezza di "tipo" AT non valida INVALID_AT_TYPE_LENGTH = lunghezza di "tipo" AT non valida
INVALID_CREATION_BYTES = byte di creazione non validi INVALID_BUT_OK = non valido ma accettato
INVALID_DATA_LENGTH = lunghezza di dati non valida INVALID_CREATION_BYTES = creazione di byte non validi
INVALID_DATA_LENGTH = lunghezza dati non valida
INVALID_DESCRIPTION_LENGTH = lunghezza della descrizione non valida INVALID_DESCRIPTION_LENGTH = lunghezza della descrizione non valida
@ -78,16 +86,16 @@ INVALID_GROUP_ID = identificazione di gruppo non valida
INVALID_GROUP_OWNER = proprietario di gruppo non valido INVALID_GROUP_OWNER = proprietario di gruppo non valido
INVALID_LIFETIME = durata della vita non valida INVALID_LIFETIME = durata non valida
INVALID_NAME_LENGTH = lunghezza del nome non valida INVALID_NAME_LENGTH = lunghezza del nome non valida
INVALID_NAME_OWNER = proprietario del nome non valido INVALID_NAME_OWNER = proprietario del nome non valido
INVALID_OPTIONS_COUNT = conteggio di opzioni non validi
INVALID_OPTION_LENGTH = lunghezza di opzioni non valida INVALID_OPTION_LENGTH = lunghezza di opzioni non valida
INVALID_OPTIONS_COUNT = conteggio di opzioni non validi
INVALID_ORDER_CREATOR = creatore dell'ordine non valido INVALID_ORDER_CREATOR = creatore dell'ordine non valido
INVALID_PAYMENTS_COUNT = conteggio pagamenti non validi INVALID_PAYMENTS_COUNT = conteggio pagamenti non validi
@ -98,7 +106,7 @@ INVALID_QUANTITY = quantità non valida
INVALID_REFERENCE = riferimento non valido INVALID_REFERENCE = riferimento non valido
INVALID_RETURN = ritorno non valido INVALID_RETURN = risposta non valida
INVALID_REWARD_SHARE_PERCENT = percentuale condivisione di ricompensa non valida INVALID_REWARD_SHARE_PERCENT = percentuale condivisione di ricompensa non valida
@ -106,6 +114,8 @@ INVALID_SELLER = venditore non valido
INVALID_TAGS_LENGTH = lunghezza dei "tag" non valida INVALID_TAGS_LENGTH = lunghezza dei "tag" non valida
INVALID_TIMESTAMP_SIGNATURE = firma timestamp non valida
INVALID_TX_GROUP_ID = identificazione di gruppo di transazioni non valida INVALID_TX_GROUP_ID = identificazione di gruppo di transazioni non valida
INVALID_VALUE_LENGTH = lunghezza "valore" non valida INVALID_VALUE_LENGTH = lunghezza "valore" non valida
@ -114,16 +124,18 @@ INVITE_UNKNOWN = invito di gruppo sconosciuto
JOIN_REQUEST_EXISTS = la richiesta di iscrizione al gruppo già esiste JOIN_REQUEST_EXISTS = la richiesta di iscrizione al gruppo già esiste
MAXIMUM_REWARD_SHARES = numero massimo di condivisione di ricompensa raggiunto per l'account MAXIMUM_REWARD_SHARES = numero massimo di condivisione di ricompensa raggiunto per l'account
MISSING_CREATOR = creatore mancante MISSING_CREATOR = creatore mancante
MULTIPLE_NAMES_FORBIDDEN = è vietata la registrazione di multipli nomi per account MULTIPLE_NAMES_FORBIDDEN = è vietata la registrazione di nomi multipli per singolo account
NAME_ALREADY_FOR_SALE = nome già in vendita NAME_ALREADY_FOR_SALE = nome già in vendita
NAME_ALREADY_REGISTERED = nome già registrato NAME_ALREADY_REGISTERED = nome già registrato
NAME_BLOCKED = questo nome è bloccato
NAME_DOES_NOT_EXIST = il nome non esiste NAME_DOES_NOT_EXIST = il nome non esiste
NAME_NOT_FOR_SALE = il nome non è in vendita NAME_NOT_FOR_SALE = il nome non è in vendita
@ -136,6 +148,12 @@ NEGATIVE_FEE = tariffa non valida / negativa
NEGATIVE_PRICE = prezzo non valido / negativo NEGATIVE_PRICE = prezzo non valido / negativo
NO_BALANCE = bilancio insufficiente
NO_BLOCKCHAIN_LOCK = nodo di blockchain attualmente occupato
NO_FLAG_PERMISSION = l'account non dispone di questa autorizzazione
NOT_GROUP_ADMIN = l'account non è un amministratore di gruppo NOT_GROUP_ADMIN = l'account non è un amministratore di gruppo
NOT_GROUP_MEMBER = l'account non è un membro del gruppo NOT_GROUP_MEMBER = l'account non è un membro del gruppo
@ -144,17 +162,11 @@ NOT_MINTING_ACCOUNT = l'account non può coniare
NOT_YET_RELEASED = funzione non ancora rilasciata NOT_YET_RELEASED = funzione non ancora rilasciata
NO_BALANCE = equilibrio insufficiente
NO_BLOCKCHAIN_LOCK = nodo di blockchain attualmente occupato
NO_FLAG_PERMISSION = l'account non dispone di questa autorizzazione
OK = OK OK = OK
ORDER_ALREADY_CLOSED = l'ordine di scambio di risorsa è già chiuso ORDER_ALREADY_CLOSED = l'ordine di scambio di risorsa è già chiuso
ORDER_DOES_NOT_EXIST = l'ordine di scambio di risorsa non esiste ORDER_DOES_NOT_EXIST = l'ordine di scambio di risorsa non esiste
POLL_ALREADY_EXISTS = il sondaggio già esiste POLL_ALREADY_EXISTS = il sondaggio già esiste
@ -166,7 +178,7 @@ PUBLIC_KEY_UNKNOWN = chiave pubblica sconosciuta
REWARD_SHARE_UNKNOWN = condivisione di ricompensa sconosciuta REWARD_SHARE_UNKNOWN = condivisione di ricompensa sconosciuta
SELF_SHARE_EXISTS = condivisione di sé (condivisione di ricompensa) già esiste SELF_SHARE_EXISTS = condivisione di ricompensa già esiste
TIMESTAMP_TOO_NEW = timestamp troppo nuovo TIMESTAMP_TOO_NEW = timestamp troppo nuovo
@ -181,15 +193,3 @@ TRANSACTION_ALREADY_EXISTS = la transazione già esiste
TRANSACTION_UNKNOWN = transazione sconosciuta TRANSACTION_UNKNOWN = transazione sconosciuta
TX_GROUP_ID_MISMATCH = identificazione di gruppo della transazione non corrisponde TX_GROUP_ID_MISMATCH = identificazione di gruppo della transazione non corrisponde
ADDRESS_BLOCKED = this address is blocked
NAME_BLOCKED = this name is blocked
ADDRESS_ABOVE_RATE_LIMIT = address reached specified rate limit
DUPLICATE_MESSAGE = address sent duplicate message
INVALID_TIMESTAMP_SIGNATURE = Invalid timestamp signature
INVALID_BUT_OK = Invalid but OK

View File

@ -1,10 +1,16 @@
#
ACCOUNT_ALREADY_EXISTS = account bestaat al ACCOUNT_ALREADY_EXISTS = account bestaat al
ACCOUNT_CANNOT_REWARD_SHARE = account kan geen beloningen delen ACCOUNT_CANNOT_REWARD_SHARE = account kan geen beloningen delen
ALREADY_GROUP_ADMIN = reeds groepsadministrator ADDRESS_ABOVE_RATE_LIMIT = adres heeft een waarde limiet bereikt
ALREADY_GROUP_MEMBER = reeds groepslid ADDRESS_BLOCKED = adres is geblokkeerd
ALREADY_GROUP_ADMIN = groeps administrator bestaat al
ALREADY_GROUP_MEMBER = groeps lid bestaat al
ALREADY_VOTED_FOR_THAT_OPTION = reeds gestemd voor die optie ALREADY_VOTED_FOR_THAT_OPTION = reeds gestemd voor die optie
@ -12,9 +18,9 @@ ASSET_ALREADY_EXISTS = asset bestaat al
ASSET_DOES_NOT_EXIST = asset bestaat niet ASSET_DOES_NOT_EXIST = asset bestaat niet
ASSET_DOES_NOT_MATCH_AT = asset matcht niet met de asset van de AT ASSET_DOES_NOT_MATCH_AT = asset komt niet overeen met de asset van de AT
ASSET_NOT_SPENDABLE = asset is niet uitgeefbaar ASSET_NOT_SPENDABLE = asset is niet toerijkend
AT_ALREADY_EXISTS = AT bestaat al AT_ALREADY_EXISTS = AT bestaat al
@ -22,31 +28,33 @@ AT_IS_FINISHED = AT is afgelopen
AT_UNKNOWN = AT onbekend AT_UNKNOWN = AT onbekend
BANNED_FROM_GROUP = verbannen uit groep BAN_EXISTS = hiervoor bestaat een verbod
BAN_EXISTS = ban bestaat al BAN_UNKNOWN = onbekend verbod
BAN_UNKNOWN = ban onbekend BANNED_FROM_GROUP = verbod om deel te nemen aan de groep
BUYER_ALREADY_OWNER = koper is al eigenaar BUYER_ALREADY_OWNER = koper is al de eigenaar
CLOCK_NOT_SYNCED = klok is niet gesynchronizeerd CLOCK_NOT_SYNCED = klok is niet gesynchronizeerd
DUPLICATE_MESSAGE = dubbel adres bericht
DUPLICATE_OPTION = dubbele optie DUPLICATE_OPTION = dubbele optie
GROUP_ALREADY_EXISTS = groep bestaat reeds GROUP_ALREADY_EXISTS = groep bestaat reeds
GROUP_APPROVAL_DECIDED = groepsgoedkeuring reeds afgewezen GROUP_APPROVAL_DECIDED = groeps goedkeuring afgewezen
GROUP_APPROVAL_NOT_REQUIRED = groepsgoedkeuring niet vereist GROUP_APPROVAL_NOT_REQUIRED = groeps goedkeuring niet vereist
GROUP_DOES_NOT_EXIST = groep bestaat niet GROUP_DOES_NOT_EXIST = groep bestaat niet
GROUP_ID_MISMATCH = ongeldige match met groep-ID GROUP_ID_MISMATCH = groeps ID komt niet overeen
GROUP_OWNER_CANNOT_LEAVE = groepseigenaar kan de groep niet verlaten GROUP_OWNER_CANNOT_LEAVE = groep eigenaar kan de groep niet verlaten
HAVE_EQUALS_WANT = have-asset is gelijk aan want-asset HAVE_EQUALS_WANT = asset is gelijk aan Want-asset
INCORRECT_NONCE = incorrecte PoW nonce INCORRECT_NONCE = incorrecte PoW nonce
@ -60,21 +68,23 @@ INVALID_ASSET_OWNER = ongeldige asset-eigenaar
INVALID_AT_TRANSACTION = ongeldige AT-transactie INVALID_AT_TRANSACTION = ongeldige AT-transactie
INVALID_AT_TYPE_LENGTH = ongeldige lengte voor AT 'type' INVALID_AT_TYPE_LENGTH = ongeldige lengte voor AT type
INVALID_CREATION_BYTES = ongeldige creation bytes INVALID_BUT_OK = ongeldig maar is in orde
INVALID_DATA_LENGTH = ongeldige lengte voor data INVALID_CREATION_BYTES = ongeldige gecreerde bytes
INVALID_DESCRIPTION_LENGTH = ongeldige lengte voor beschrijving INVALID_DATA_LENGTH = ongeldige data lengte
INVALID_DESCRIPTION_LENGTH = ongeldige lengte voor de beschrijving
INVALID_GROUP_APPROVAL_THRESHOLD = ongeldige drempelwaarde voor groepsgoedkeuring INVALID_GROUP_APPROVAL_THRESHOLD = ongeldige drempelwaarde voor groepsgoedkeuring
INVALID_GROUP_BLOCK_DELAY = ongeldige groepsgoedkeuring voor blokvertraging INVALID_GROUP_BLOCK_DELAY = ongeldige groep blok vertraging
INVALID_GROUP_ID = ongeldige groep-ID INVALID_GROUP_ID = ongeldige groep-ID
INVALID_GROUP_OWNER = ongeldige groepseigenaar INVALID_GROUP_OWNER = ongeldige groep eigenaar
INVALID_LIFETIME = ongeldige levensduur INVALID_LIFETIME = ongeldige levensduur
@ -82,13 +92,13 @@ INVALID_NAME_LENGTH = ongeldige lengte voor naam
INVALID_NAME_OWNER = ongeldige naam voor eigenaar INVALID_NAME_OWNER = ongeldige naam voor eigenaar
INVALID_OPTIONS_COUNT = ongeldige hoeveelheid opties
INVALID_OPTION_LENGTH = ongeldige lengte voor opties INVALID_OPTION_LENGTH = ongeldige lengte voor opties
INVALID_ORDER_CREATOR = ongeldige aanmaker voor order INVALID_OPTIONS_COUNT = ongeldige hoeveelheid opties
INVALID_PAYMENTS_COUNT = ongeldige hoeveelheid betalingen INVALID_ORDER_CREATOR = ongeldige gebruiker voor deze order
INVALID_PAYMENTS_COUNT = ongeldige betalings waarde
INVALID_PUBLIC_KEY = ongeldige public key INVALID_PUBLIC_KEY = ongeldige public key
@ -98,21 +108,23 @@ INVALID_REFERENCE = ongeldige verwijzing
INVALID_RETURN = ongeldige return INVALID_RETURN = ongeldige return
INVALID_REWARD_SHARE_PERCENT = ongeldig percentage voor beloningsdeling INVALID_REWARD_SHARE_PERCENT = ongeldig belonings percentage
INVALID_SELLER = ongeldige verkoper INVALID_SELLER = ongeldige verkoper
INVALID_TAGS_LENGTH = ongeldige lengte voor 'tags' INVALID_TAGS_LENGTH = ongeldige lengte voor 'tags'
INVALID_TIMESTAMP_SIGNATURE = ongeldig tijd aanduiding
INVALID_TX_GROUP_ID = ongeldige transactiegroep-ID INVALID_TX_GROUP_ID = ongeldige transactiegroep-ID
INVALID_VALUE_LENGTH = ongeldige lengte voor 'waarde' INVALID_VALUE_LENGTH = ongeldige lengte voor de waarde
INVITE_UNKNOWN = onbekende groepsuitnodiging INVITE_UNKNOWN = onbekende groepsuitnodiging
JOIN_REQUEST_EXISTS = aanvraag om lid van groep te worden bestaat al JOIN_REQUEST_EXISTS = aanvraag om lid van groep te worden bestaat al
MAXIMUM_REWARD_SHARES = limiet aan beloningsdelingen voor dit account is bereikt MAXIMUM_REWARD_SHARES = limiet aan belonen voor dit account bereikt
MISSING_CREATOR = ontbrekende aanmaker MISSING_CREATOR = ontbrekende aanmaker
@ -122,33 +134,35 @@ NAME_ALREADY_FOR_SALE = naam reeds te koop
NAME_ALREADY_REGISTERED = naam reeds geregistreerd NAME_ALREADY_REGISTERED = naam reeds geregistreerd
NAME_BLOCKED = deze naam is geblokkeerd
NAME_DOES_NOT_EXIST = naam bestaat niet NAME_DOES_NOT_EXIST = naam bestaat niet
NAME_NOT_FOR_SALE = naam is niet te koop NAME_NOT_FOR_SALE = naam is niet te koop
NAME_NOT_NORMALIZED = naam is niet in 'genormalizeerde' Unicode-vorm NAME_NOT_NORMALIZED = naam voldoet niet aan Unicode-vorm
NEGATIVE_AMOUNT = ongeldige/negatieve hoeveelheid NEGATIVE_AMOUNT = negatieve hoeveelheid
NEGATIVE_FEE = ongeldige/negatieve vergoeding NEGATIVE_FEE = negatieve vergoeding
NEGATIVE_PRICE = ongeldige/negatieve prijs NEGATIVE_PRICE = negatieve prijs
NO_BALANCE = onvoldoende balans
NO_BLOCKCHAIN_LOCK = geen blockchain slot
NO_FLAG_PERMISSION = account heeft hier geen toestemming voor
NOT_GROUP_ADMIN = account is geen groepsadministrator NOT_GROUP_ADMIN = account is geen groepsadministrator
NOT_GROUP_MEMBER = account is geen groepslid NOT_GROUP_MEMBER = account is geen groepslid
NOT_MINTING_ACCOUNT = account kan niet munten NOT_MINTING_ACCOUNT = account kan niet minten
NOT_YET_RELEASED = functie nog niet uitgebracht NOT_YET_RELEASED = functie nog niet uitgebracht
NO_BALANCE = onvoldoende balans OK = Ok
NO_BLOCKCHAIN_LOCK = blockchain van node is momenteel bezig
NO_FLAG_PERMISSION = account heeft hier geen toestemming voor
OK = Oke
ORDER_ALREADY_CLOSED = asset handelsorder is al gesloten ORDER_ALREADY_CLOSED = asset handelsorder is al gesloten
@ -162,9 +176,9 @@ POLL_OPTION_DOES_NOT_EXIST = peilingsoptie bestaat niet
PUBLIC_KEY_UNKNOWN = public key onbekend PUBLIC_KEY_UNKNOWN = public key onbekend
REWARD_SHARE_UNKNOWN = beloningsdeling onbekend REWARD_SHARE_UNKNOWN = beloning vergoeding onbekend
SELF_SHARE_EXISTS = zelfdeling (beloningsdeling) bestaat reeds SELF_SHARE_EXISTS = zelf vergoeding bestaat reeds
TIMESTAMP_TOO_NEW = tijdstempel te nieuw TIMESTAMP_TOO_NEW = tijdstempel te nieuw
@ -178,16 +192,4 @@ TRANSACTION_ALREADY_EXISTS = transactie bestaat al
TRANSACTION_UNKNOWN = transactie onbekend TRANSACTION_UNKNOWN = transactie onbekend
TX_GROUP_ID_MISMATCH = groep-ID van transactie matcht niet TX_GROUP_ID_MISMATCH = groep ID komt niet overeen
ADDRESS_BLOCKED = this address is blocked
NAME_BLOCKED = this name is blocked
ADDRESS_ABOVE_RATE_LIMIT = address reached specified rate limit
DUPLICATE_MESSAGE = address sent duplicate message
INVALID_TIMESTAMP_SIGNATURE = Invalid timestamp signature
INVALID_BUT_OK = Invalid but OK

View File

@ -1,187 +1,195 @@
ACCOUNT_ALREADY_EXISTS = аккаунт уже существует #
ACCOUNT_CANNOT_REWARD_SHARE = аккаунт не может делиться вознаграждением ACCOUNT_ALREADY_EXISTS = аккаунт уже существует
ALREADY_GROUP_ADMIN = уже администратор группы ACCOUNT_CANNOT_REWARD_SHARE = аккаунт не может делиться вознаграждением
ALREADY_GROUP_MEMBER = уже член группы ADDRESS_ABOVE_RATE_LIMIT = адрес достиг указанного предела скорости
ALREADY_VOTED_FOR_THAT_OPTION = уже проголосовали за этот вариант ADDRESS_BLOCKED = этот адрес заблокирован
ASSET_ALREADY_EXISTS = актив уже существует ALREADY_GROUP_ADMIN = уже администратор группы
ASSET_DOES_NOT_EXIST = Актив не существует ALREADY_GROUP_MEMBER = уже член группы
ASSET_DOES_NOT_MATCH_AT = актив не совпадает с АТ ALREADY_VOTED_FOR_THAT_OPTION = уже проголосовали за этот вариант
ASSET_NOT_SPENDABLE = актив не подлежит расходованию ASSET_ALREADY_EXISTS = актив уже существует
AT_ALREADY_EXISTS = AT уже существует ASSET_DOES_NOT_EXIST = Актив не существует
AT_IS_FINISHED = AT в завершении ASSET_DOES_NOT_MATCH_AT = актив не совпадает с АТ
AT_UNKNOWN = не известный АТ ASSET_NOT_SPENDABLE = актив не подлежит расходованию
BANNED_FROM_GROUP = исключен из группы AT_ALREADY_EXISTS = AT уже существует
BAN_EXISTS = Бан AT_IS_FINISHED = AT в завершении
BAN_UNKNOWN = не известный бан AT_UNKNOWN = неизвестный АТ
BUYER_ALREADY_OWNER = покупатель уже собственник BAN_EXISTS = Бан
CLOCK_NOT_SYNCED = часы не синхронизированы BAN_UNKNOWN = неизвестный бан
DUPLICATE_OPTION = дублировать вариант BANNED_FROM_GROUP = исключен из группы
GROUP_ALREADY_EXISTS = группа уже существует BUYER_ALREADY_OWNER = покупатель уже собственник
GROUP_APPROVAL_DECIDED = гуппа одобрена CLOCK_NOT_SYNCED = часы не синхронизированы
GROUP_APPROVAL_NOT_REQUIRED = гупповое одобрение не требуется DUPLICATE_MESSAGE = адрес отправил дубликат сообщения
GROUP_DOES_NOT_EXIST = группа не существует DUPLICATE_OPTION = дублировать вариант
GROUP_ID_MISMATCH = не соответствие идентификатора группы GROUP_ALREADY_EXISTS = группа уже существует
GROUP_OWNER_CANNOT_LEAVE = владелец группы не может уйти GROUP_APPROVAL_DECIDED = группа одобрена
HAVE_EQUALS_WANT = иммеются равные желания GROUP_APPROVAL_NOT_REQUIRED = групповое одобрение не требуется
INSUFFICIENT_FEE = недостаточная плата GROUP_DOES_NOT_EXIST = группа не существует
INVALID_ADDRESS = недействительный адрес GROUP_ID_MISMATCH = несоответствие идентификатора группы
INVALID_AMOUNT = недопустимая сумма GROUP_OWNER_CANNOT_LEAVE = владелец группы не может уйти
INVALID_ASSET_OWNER = недействительный владелец актива HAVE_EQUALS_WANT = имеются равные желания
INVALID_AT_TRANSACTION = недействительная АТ транзакция INCORRECT_NONCE = неправильный одноразовый номер PoW
INVALID_AT_TYPE_LENGTH = недействительно для типа длины AT INSUFFICIENT_FEE = недостаточная плата
INVALID_CREATION_BYTES = недопустимые байты создания INVALID_ADDRESS = недействительный адрес
INVALID_DATA_LENGTH = недопустимая длина данных INVALID_AMOUNT = недопустимая сумма
INVALID_DESCRIPTION_LENGTH = недопустимая длина описания INVALID_ASSET_OWNER = недействительный владелец актива
INVALID_GROUP_APPROVAL_THRESHOLD = недопустимый порог утверждения группы INVALID_AT_TRANSACTION = недействительная АТ транзакция
INVALID_GROUP_ID = недопустимый идентификатор группы INVALID_AT_TYPE_LENGTH = недействительно для типа длины AT
INVALID_GROUP_OWNER = недопу владелец группы INVALID_BUT_OK = Недействительно, но ОК
INVALID_LIFETIME = недопу срок службы INVALID_CREATION_BYTES = недопустимые байты создания
INVALID_NAME_LENGTH = недопустимая длина группы INVALID_DATA_LENGTH = недопустимая длина данных
INVALID_NAME_OWNER = недопустимое имя владельца INVALID_DESCRIPTION_LENGTH = недопустимая длина описания
INVALID_OPTIONS_COUNT = неверное количество опций INVALID_GROUP_APPROVAL_THRESHOLD = недопустимый порог утверждения группы
INVALID_OPTION_LENGTH = недопустимая длина опции INVALID_GROUP_BLOCK_DELAY = недопустимая задержка блокировки группового утверждения
INVALID_ORDER_CREATOR = недопустимый создатель заказа INVALID_GROUP_ID = недопустимый идентификатор группы
INVALID_PAYMENTS_COUNT = неверный подсчет платежей INVALID_GROUP_OWNER = недопустимый владелец группы
INVALID_PUBLIC_KEY = недействительный открытый ключ INVALID_LIFETIME = недопустимый срок службы
INVALID_QUANTITY = недопустимое количество INVALID_NAME_LENGTH = недопустимая длина группы
INVALID_REFERENCE = неверная ссылка INVALID_NAME_OWNER = недопустимое имя владельца
INVALID_RETURN = недопустимый возврат INVALID_OPTION_LENGTH = недопустимая длина опции
INVALID_REWARD_SHARE_PERCENT = недействительный процент награждения INVALID_OPTIONS_COUNT = неверное количество опций
INVALID_SELLER = недействительный продавец INVALID_ORDER_CREATOR = недопустимый создатель заказа
INVALID_TAGS_LENGTH = недействительная длина тэгов INVALID_PAYMENTS_COUNT = неверный подсчет платежей
INVALID_TX_GROUP_ID = недействительный идентификатор группы передачи INVALID_PUBLIC_KEY = недействительный открытый ключ
INVALID_VALUE_LENGTH = недопустимое значение длины INVALID_QUANTITY = недопустимое количество
INVITE_UNKNOWN = приглашать неизветсных INVALID_REFERENCE = неверная ссылка
JOIN_REQUEST_EXISTS = запрос на присоединение существует INVALID_RETURN = недопустимый возврат
MAXIMUM_REWARD_SHARES = максимальное вознаграждение INVALID_REWARD_SHARE_PERCENT = недопустимый процент доли вознаграждения
MISSING_CREATOR = отсутствующий создатель INVALID_SELLER = недействительный продавец
MULTIPLE_NAMES_FORBIDDEN = несколько имен запрещено INVALID_TAGS_LENGTH = недействительная длина тэгов
NAME_ALREADY_FOR_SALE = имя уже в продаже INVALID_TIMESTAMP_SIGNATURE = неверная подпись временной метки
NAME_ALREADY_REGISTERED = имя уже зарегистрировано INVALID_TX_GROUP_ID = недействительный идентификатор группы передачи
NAME_DOES_NOT_EXIST = имя не существует INVALID_VALUE_LENGTH = недопустимое значение длины
NAME_NOT_FOR_SALE = имя не продается INVITE_UNKNOWN = приглашать неизветсных
NAME_NOT_LOWER_CASE = иммя не должно содержать строчный регистр JOIN_REQUEST_EXISTS = запрос на присоединение существует
NEGATIVE_AMOUNT = недостаточная сумма MAXIMUM_REWARD_SHARES = максимальное вознаграждение
NEGATIVE_FEE = недостаточная комиссия MISSING_CREATOR = отсутствующий создатель
NEGATIVE_PRICE = недостаточная стоимость MULTIPLE_NAMES_FORBIDDEN = несколько имен запрещено
NOT_GROUP_ADMIN = не администратор группы NAME_ALREADY_FOR_SALE = имя уже в продаже
NOT_GROUP_MEMBER = не член группы NAME_ALREADY_REGISTERED = имя уже зарегистрировано
NOT_MINTING_ACCOUNT = счет не чеканит NAME_BLOCKED = это имя заблокировано
NOT_YET_RELEASED = еще не выпущено NAME_DOES_NOT_EXIST = имя не существует
NO_BALANCE = нет баланса NAME_NOT_FOR_SALE = имя не продается
NO_BLOCKCHAIN_LOCK = блокчейн узла в настоящее время занят NAME_NOT_LOWER_CASE = имя не должно содержать строчный регистр
NO_FLAG_PERMISSION = нет разрешения на флаг NEGATIVE_AMOUNT = недостаточная сумма
OK = OK NEGATIVE_FEE = недостаточная комиссия
ORDER_ALREADY_CLOSED = заказ закрыт NEGATIVE_PRICE = недостаточная стоимость
ORDER_DOES_NOT_EXIST = заказа не существует NO_BALANCE = нет баланса
POLL_ALREADY_EXISTS = опрос уже существует NO_BLOCKCHAIN_LOCK = блокчейн узла в настоящее время занят
POLL_DOES_NOT_EXIST = опроса не существует NO_FLAG_PERMISSION = нет разрешения на флаг
POLL_OPTION_DOES_NOT_EXIST = вариантов ответа не существует NOT_GROUP_ADMIN = не администратор группы
PUBLIC_KEY_UNKNOWN = открытый ключ неизвестен NOT_GROUP_MEMBER = не член группы
SELF_SHARE_EXISTS = поделиться долей NOT_MINTING_ACCOUNT = счет не чеканит
TIMESTAMP_TOO_NEW = новая метка времени NOT_YET_RELEASED = еще не выпущено
TIMESTAMP_TOO_OLD = старая метка времени OK = OK
TOO_MANY_UNCONFIRMED = много не подтвержденных ORDER_ALREADY_CLOSED = заказ закрыт
TRANSACTION_ALREADY_CONFIRMED = транзакция уже подтверждена ORDER_DOES_NOT_EXIST = заказа не существует
TRANSACTION_ALREADY_EXISTS = транзакция существует POLL_ALREADY_EXISTS = опрос уже существует
TRANSACTION_UNKNOWN = неизвестная транзакция POLL_DOES_NOT_EXIST = опроса не существует
TX_GROUP_ID_MISMATCH = не соответствие идентификатора группы c хэш транзации POLL_OPTION_DOES_NOT_EXIST = вариантов ответа не существует
ADDRESS_BLOCKED = this address is blocked PUBLIC_KEY_UNKNOWN = открытый ключ неизвестен
NAME_BLOCKED = this name is blocked REWARD_SHARE_UNKNOWN = доля награды неизвестна
ADDRESS_ABOVE_RATE_LIMIT = address reached specified rate limit SELF_SHARE_EXISTS = поделиться долей
DUPLICATE_MESSAGE = address sent duplicate message TIMESTAMP_TOO_NEW = новая метка времени
INVALID_TIMESTAMP_SIGNATURE = Invalid timestamp signature TIMESTAMP_TOO_OLD = старая метка времени
INVALID_BUT_OK = Invalid but OK TOO_MANY_UNCONFIRMED = много не подтвержденных
TRANSACTION_ALREADY_CONFIRMED = транзакция уже подтверждена
TRANSACTION_ALREADY_EXISTS = транзакция существует
TRANSACTION_UNKNOWN = неизвестная транзакция
TX_GROUP_ID_MISMATCH = не соответствие идентификатора группы в хэш транзации

View File

@ -0,0 +1,195 @@
#
ACCOUNT_ALREADY_EXISTS = kontot finns redan
ACCOUNT_CANNOT_REWARD_SHARE = kontot kan inte dela ut en belöning
ADDRESS_ABOVE_RATE_LIMIT = adressen nådde angiven gräns
ADDRESS_BLOCKED = denna adress är blockerad
ALREADY_GROUP_ADMIN = redan gruppadministratör
ALREADY_GROUP_MEMBER = redan gruppmedlem
ALREADY_VOTED_FOR_THAT_OPTION = redan röstat för det alternativet
ASSET_ALREADY_EXISTS = tillgången finns redan
ASSET_DOES_NOT_EXIST = tillgången finns inte
ASSET_DOES_NOT_MATCH_AT = tillgången matchar inte AT:s tillgång
ASSET_NOT_SPENDABLE = tillgången är inte förbrukbar
AT_ALREADY_EXISTS = AT finns redan
AT_IS_FINISHED = AT har avslutats
AT_UNKNOWN = okänd AT
BAN_EXISTS = förbud finns redan
BAN_UNKNOWN = okänt förbud
BANNED_FROM_GROUP = avstängd från gruppen
BUYER_ALREADY_OWNER = köparen är redan ägare
CLOCK_NOT_SYNCED = klockan inte synkroniserad
DUPLICATE_MESSAGE = adress skickade dubblettmeddelande
DUPLICATE_OPTION = dubblettalternativ
GROUP_ALREADY_EXISTS = grupp finns redan
GROUP_APPROVAL_DECIDED = gruppgodkännande redan beslutat
GROUP_APPROVAL_NOT_REQUIRED = gruppgodkännande krävs inte
GROUP_DOES_NOT_EXIST = grupp finns inte
GROUP_ID_MISMATCH = grupp-ID överensstämmer inte
GROUP_OWNER_CANNOT_LEAVE = gruppägare kan inte lämna gruppen
HAVE_EQUALS_WANT = ha-tillgång är detsamma som vill-tillgång
INCORRECT_NONCE = felaktig PoW nonce
INSUFFICIENT_FEE = otillräcklig avgift
INVALID_ADDRESS = ogiltig adress
INVALID_AMOUNT = ogiltigt belopp
INVALID_ASSET_OWNER = ogiltig tillgångsägare
INVALID_AT_TRANSACTION = ogiltig AT-transaktion
INVALID_AT_TYPE_LENGTH = ogiltig AT-typlängd
INVALID_BUT_OK = ogiltig men OK
INVALID_CREATION_BYTES = ogiltiga skapande bytes
INVALID_DATA_LENGTH = ogiltig datalängd
INVALID_DESCRIPTION_LENGTH = ogiltig beskrivningslängd
INVALID_GROUP_APPROVAL_THRESHOLD = ogiltig tröskel för gruppgodkännande
INVALID_GROUP_BLOCK_DELAY = ogiltig grupp-godkännande fördröjning
INVALID_GROUP_ID = ogiltigt grupp-ID
INVALID_GROUP_OWNER = ogiltig gruppägare
INVALID_LIFETIME = ogiltig livstid
INVALID_NAME_LENGTH = ogiltig namnlängd
INVALID_NAME_OWNER = ogiltig namnägare
INVALID_OPTION_LENGTH = ogiltig alternativlängd
INVALID_OPTIONS_COUNT = ogiltigt antal alternativ
INVALID_ORDER_CREATOR = ogiltig orderskapare
INVALID_PAYMENTS_COUNT = ogiltiga antal betalningar
INVALID_PUBLIC_KEY = ogiltig offentlig nyckel
INVALID_QUANTITY = ogiltig kvantitet
INVALID_REFERENCE = ogiltig referens
INVALID_RETURN = ogiltig retur
INVALID_REWARD_SHARE_PERCENT = ogiltig belöningsandelsprocent
INVALID_SELLER = ogiltig säljare
INVALID_TAGS_LENGTH = ogiltig 'tagg'-längd
INVALID_TIMESTAMP_SIGNATURE = ogiltig tidsstämpelsignatur
INVALID_TX_GROUP_ID = ogiltigt transaktionsgrupp-ID
INVALID_VALUE_LENGTH = ogiltig 'värdes'-längd
INVITE_UNKNOWN = okänd gruppinbjudan
JOIN_REQUEST_EXISTS = gruppanslutning finns redan
MAXIMUM_REWARD_SHARES = redan vid maximalt antal belöningsandelar för detta konto
MISSING_CREATOR = saknad skapare
MULTIPLE_NAMES_FORBIDDEN = flera registrerade namn per konto är förbjudet
NAME_ALREADY_FOR_SALE = namn redan till salu
NAME_ALREADY_REGISTERED = namn redan registrerat
NAME_BLOCKED = detta namn är blockerat
NAME_DOES_NOT_EXIST = namnet finns inte
NAME_NOT_FOR_SALE = namnet är inte till salu
NAME_NOT_NORMALIZED = namn inte i Unicode 'normaliserad' form
NEGATIVE_AMOUNT = ogiltigt/negativt belopp
NEGATIVE_FEE = ogiltig/negativ avgift
NEGATIVE_PRICE = ogiltigt/negativt pris
NO_BALANCE = otillräcklig balans
NO_BLOCKCHAIN_LOCK = nodens blockchain för närvarande upptagen
NO_FLAG_PERMISSION = kontot har inte den behörigheten
NOT_GROUP_ADMIN = kontot är inte en gruppadministratör
NOT_GROUP_MEMBER = kontot är inte en gruppmedlem
NOT_MINTING_ACCOUNT = konto kan inte präglas
NOT_YET_RELEASED = funktionen ännu inte släppt
OK = OK
ORDER_ALREADY_CLOSED = handelsorder för tillgångar är redan stängd
ORDER_DOES_NOT_EXIST = handelsorder för tillgångar finns inte
POLL_ALREADY_EXISTS = omröstning finns redan
POLL_DOES_NOT_EXIST = omröstning finns inte
POLL_OPTION_DOES_NOT_EXIST = omröstningsalternativet finns inte
PUBLIC_KEY_UNKNOWN = offentlig nyckel okänd
REWARD_SHARE_UNKNOWN = okänd belöningsandel
SELF_SHARE_EXISTS = egenandel (belöningsandel) finns redan
TIMESTAMP_TOO_NEW = tidsstämpeln är för ny
TIMESTAMP_TOO_OLD = tidsstämpeln är för gammal
TOO_MANY_UNCONFIRMED = kontot har för många obekräftade transaktioner som väntar
TRANSACTION_ALREADY_CONFIRMED = transaktionen har redan bekräftats
TRANSACTION_ALREADY_EXISTS = transaktionen finns redan
TRANSACTION_UNKNOWN = okänd transaktion
TX_GROUP_ID_MISMATCH = transaktionens grupp-ID matchar inte

View File

@ -0,0 +1,195 @@
#
ACCOUNT_ALREADY_EXISTS = 账号已存在
ACCOUNT_CANNOT_REWARD_SHARE = 账户不能创建奖励分享
ADDRESS_ABOVE_RATE_LIMIT = 账号已达到指定限制
ADDRESS_BLOCKED = 此账号已被封锁
ALREADY_GROUP_ADMIN = 你已是群组管理员
ALREADY_GROUP_MEMBER = 你已是群组的成员
ALREADY_VOTED_FOR_THAT_OPTION = 你已投票该选项
ASSET_ALREADY_EXISTS = 资产已存在
ASSET_DOES_NOT_EXIST = 资产不存在
ASSET_DOES_NOT_MATCH_AT = 选择的资产与AT资产不吻合
ASSET_NOT_SPENDABLE = 资产不能使用
AT_ALREADY_EXISTS = AT已存在
AT_IS_FINISHED = AT已完成
AT_UNKNOWN = 未知的AT
BAN_EXISTS = 禁止功能已存在
BAN_UNKNOWN = 未知的禁止动作
BANNED_FROM_GROUP = 已被群组禁止进入
BUYER_ALREADY_OWNER = 购买者已是名称拥有者
CLOCK_NOT_SYNCED = 节点时间未同步
DUPLICATE_MESSAGE = 账号传送重复信息
DUPLICATE_OPTION = 重复的选项
GROUP_ALREADY_EXISTS = 群组已存在
GROUP_APPROVAL_DECIDED = 已审批
GROUP_APPROVAL_NOT_REQUIRED = 不需审批
GROUP_DOES_NOT_EXIST = 群组不存在
GROUP_ID_MISMATCH = 群组ID不吻合
GROUP_OWNER_CANNOT_LEAVE = 群组拥有者不能离开群组
HAVE_EQUALS_WANT = 已存在相同的资产名称
INCORRECT_NONCE = 错误的PoW数值
INSUFFICIENT_FEE = 手续费不足
INVALID_ADDRESS = 无效的钱包地址
INVALID_AMOUNT = 无效的数量
INVALID_ASSET_OWNER = 无效的资产拥有者
INVALID_AT_TRANSACTION = 无效的AT交易
INVALID_AT_TYPE_LENGTH = 无效的AT种类长度
INVALID_BUT_OK = 无效但不影响
INVALID_CREATION_BYTES = 无效的创建字节
INVALID_DATA_LENGTH = 无效的数据长度
INVALID_DESCRIPTION_LENGTH = 无效的描述长度
INVALID_GROUP_APPROVAL_THRESHOLD = 无效的群组审批门槛
INVALID_GROUP_BLOCK_DELAY = 无效的群组审批延迟值
INVALID_GROUP_ID = 无效的群组ID
INVALID_GROUP_OWNER = 无效的群组创建者
INVALID_LIFETIME = 无效的周期
INVALID_NAME_LENGTH = 无效的名称长度
INVALID_NAME_OWNER = 无效的名称拥有者
INVALID_OPTION_LENGTH = 无效的选项长度
INVALID_OPTIONS_COUNT = 无效的选项
INVALID_ORDER_CREATOR = 无效的交易创建者
INVALID_PAYMENTS_COUNT = 无效的付款
INVALID_PUBLIC_KEY = 无效的公共密钥
INVALID_QUANTITY = 无效的数量
INVALID_REFERENCE = 无效的参考资料
INVALID_RETURN = 无效的回应
INVALID_REWARD_SHARE_PERCENT = 无效的奖励分享百分比
INVALID_SELLER = 无效的卖家
INVALID_TAGS_LENGTH = 无效的“标记”长度
INVALID_TIMESTAMP_SIGNATURE = 无效的时间戳签名
INVALID_TX_GROUP_ID = 无效的群组ID交易
INVALID_VALUE_LENGTH = 无效的数值长度
INVITE_UNKNOWN = 未知的群组邀请
JOIN_REQUEST_EXISTS = 加入群组的请求已存在
MAXIMUM_REWARD_SHARES = 奖励分享次数已达到上限
MISSING_CREATOR = 请填写创建者
MULTIPLE_NAMES_FORBIDDEN = 禁止注册多个名称
NAME_ALREADY_FOR_SALE = 名称可被购买
NAME_ALREADY_REGISTERED = 名称已被注册
NAME_BLOCKED = 此名称已被封锁
NAME_DOES_NOT_EXIST = 名称不存在
NAME_NOT_FOR_SALE = 名称为非卖品
NAME_NOT_NORMALIZED = 名称必须使用Unicode标准格式
NEGATIVE_AMOUNT = 无效数量或负数
NEGATIVE_FEE = 无效或负数的手续费
NEGATIVE_PRICE = 无效/负数标价
NO_BALANCE = 余额不足
NO_BLOCKCHAIN_LOCK = 节点现时忙碌
NO_FLAG_PERMISSION = 此账号没有该权限
NOT_GROUP_ADMIN = 此地址不是群组管理员
NOT_GROUP_MEMBER = 此地址不是群组成员
NOT_MINTING_ACCOUNT = 账号不能铸币
NOT_YET_RELEASED = 功能未启用
OK = 确定
ORDER_ALREADY_CLOSED = 资产交易已关闭
ORDER_DOES_NOT_EXIST = 资产交易不存在
POLL_ALREADY_EXISTS = 投票已存在
POLL_DOES_NOT_EXIST = 投票不存在
POLL_OPTION_DOES_NOT_EXIST = 投票选项不存在
PUBLIC_KEY_UNKNOWN = 未知的公共密钥
REWARD_SHARE_UNKNOWN = 未知的奖励分享
SELF_SHARE_EXISTS = 奖励分享已存在
TIMESTAMP_TOO_NEW = 时间戳太新
TIMESTAMP_TOO_OLD = 时间戳太久
TOO_MANY_UNCONFIRMED = 钱包有太多未确认的交易等待进行
TRANSACTION_ALREADY_CONFIRMED = 此交易已确认
TRANSACTION_ALREADY_EXISTS = 此交易已存在
TRANSACTION_UNKNOWN = 未知的交易
TX_GROUP_ID_MISMATCH = 群组ID交易不吻合

View File

@ -0,0 +1,195 @@
#
ACCOUNT_ALREADY_EXISTS = 賬號已存在
ACCOUNT_CANNOT_REWARD_SHARE = 賬戶不能創建獎勵分享
ADDRESS_ABOVE_RATE_LIMIT = 賬號已達到指定限制
ADDRESS_BLOCKED = 此賬號已被封鎖
ALREADY_GROUP_ADMIN = 你已是群組管理員
ALREADY_GROUP_MEMBER = 你已是群組的成員
ALREADY_VOTED_FOR_THAT_OPTION = 你已投票該選項
ASSET_ALREADY_EXISTS = 資產已存在
ASSET_DOES_NOT_EXIST = 資產不存在
ASSET_DOES_NOT_MATCH_AT = 選擇的資產與AT資產不吻合
ASSET_NOT_SPENDABLE = 資產不能使用
AT_ALREADY_EXISTS = AT已存在
AT_IS_FINISHED = AT已完成
AT_UNKNOWN = 未知的AT
BAN_EXISTS = 禁止功能已存在
BAN_UNKNOWN = 未知的禁止動作
BANNED_FROM_GROUP = 已被群組禁止進入
BUYER_ALREADY_OWNER = 購買者已是名稱擁有者
CLOCK_NOT_SYNCED = 節點時間未同步
DUPLICATE_MESSAGE = 賬號傳送重複信息
DUPLICATE_OPTION = 重複的選項
GROUP_ALREADY_EXISTS = 群組已存在
GROUP_APPROVAL_DECIDED = 已審批
GROUP_APPROVAL_NOT_REQUIRED = 不需審批
GROUP_DOES_NOT_EXIST = 群組不存在
GROUP_ID_MISMATCH = 群組ID不吻合
GROUP_OWNER_CANNOT_LEAVE = 群組擁有者不能離開群組
HAVE_EQUALS_WANT = 已存在相同的資產名稱
INCORRECT_NONCE = 錯誤的PoW數值
INSUFFICIENT_FEE = 手續費不足
INVALID_ADDRESS = 無效的錢包地址
INVALID_AMOUNT = 無效的數量
INVALID_ASSET_OWNER = 無效的資產擁有者
INVALID_AT_TRANSACTION = 無效的AT交易
INVALID_AT_TYPE_LENGTH = 無效的AT種類長度
INVALID_BUT_OK = 無效但不影響
INVALID_CREATION_BYTES = 無效的創建字節
INVALID_DATA_LENGTH = 無效的數據長度
INVALID_DESCRIPTION_LENGTH = 無效的描述長度
INVALID_GROUP_APPROVAL_THRESHOLD = 無效的群組審批門檻
INVALID_GROUP_BLOCK_DELAY = 無效的群組審批延遲值
INVALID_GROUP_ID = 無效的群組ID
INVALID_GROUP_OWNER = 無效的群組創建者
INVALID_LIFETIME = 無效的周期
INVALID_NAME_LENGTH = 無效的名稱長度
INVALID_NAME_OWNER = 無效的名稱擁有者
INVALID_OPTION_LENGTH = 無效的選項長度
INVALID_OPTIONS_COUNT = 無效的選項
INVALID_ORDER_CREATOR = 無效的交易創建者
INVALID_PAYMENTS_COUNT = 無效的付款
INVALID_PUBLIC_KEY = 無效的公共密鑰
INVALID_QUANTITY = 無效的數量
INVALID_REFERENCE = 無效的參考資料
INVALID_RETURN = 無效的回應
INVALID_REWARD_SHARE_PERCENT = 無效的獎勵分享百分比
INVALID_SELLER = 無效的賣家
INVALID_TAGS_LENGTH = 無效的“標記”長度
INVALID_TIMESTAMP_SIGNATURE = 無效的時間戳簽名
INVALID_TX_GROUP_ID = 無效的群組ID交易
INVALID_VALUE_LENGTH = 無效的數值長度
INVITE_UNKNOWN = 未知的群組邀請
JOIN_REQUEST_EXISTS = 加入群組的請求已存在
MAXIMUM_REWARD_SHARES = 獎勵分享次數已達到上限
MISSING_CREATOR = 請填寫創建者
MULTIPLE_NAMES_FORBIDDEN = 禁止註冊多個名稱
NAME_ALREADY_FOR_SALE = 名稱可被購買
NAME_ALREADY_REGISTERED = 名稱已被註冊
NAME_BLOCKED = 此名稱已被封鎖
NAME_DOES_NOT_EXIST = 名稱不存在
NAME_NOT_FOR_SALE = 名稱為非賣品
NAME_NOT_NORMALIZED = 名稱必須使用Unicode標準格式
NEGATIVE_AMOUNT = 無效數量或負數
NEGATIVE_FEE = 無效或負數的手續費
NEGATIVE_PRICE = 無效/負數標價
NO_BALANCE = 餘額不足
NO_BLOCKCHAIN_LOCK = 節點現時忙碌
NO_FLAG_PERMISSION = 此賬號沒有該權限
NOT_GROUP_ADMIN = 此地址不是群組管理員
NOT_GROUP_MEMBER = 此地址不是群組成員
NOT_MINTING_ACCOUNT = 賬號不能鑄幣
NOT_YET_RELEASED = 功能未啓用
OK = 確定
ORDER_ALREADY_CLOSED = 資產交易已關閉
ORDER_DOES_NOT_EXIST = 資產交易不存在
POLL_ALREADY_EXISTS = 投票已存在
POLL_DOES_NOT_EXIST = 投票不存在
POLL_OPTION_DOES_NOT_EXIST = 投票選項不存在
PUBLIC_KEY_UNKNOWN = 未知的公共密鑰
REWARD_SHARE_UNKNOWN = 未知的獎勵分享
SELF_SHARE_EXISTS = 獎勵分享已存在
TIMESTAMP_TOO_NEW = 時間戳太新
TIMESTAMP_TOO_OLD = 時間戳太久
TOO_MANY_UNCONFIRMED = 錢包有太多未確認的交易等待進行
TRANSACTION_ALREADY_CONFIRMED = 此交易已確認
TRANSACTION_ALREADY_EXISTS = 此交易已存在
TRANSACTION_UNKNOWN = 未知的交易
TX_GROUP_ID_MISMATCH = 群組ID交易不吻合

View File

@ -32,19 +32,40 @@ public class ByteArrayTests {
private static void fillMap(Map<ByteArray, String> map) { private static void fillMap(Map<ByteArray, String> map) {
for (byte[] testValue : testValues) for (byte[] testValue : testValues)
map.put(new ByteArray(testValue), String.valueOf(map.size())); map.put(ByteArray.wrap(testValue), String.valueOf(map.size()));
} }
private static byte[] dup(byte[] value) { private static byte[] dup(byte[] value) {
return Arrays.copyOf(value, value.length); return Arrays.copyOf(value, value.length);
} }
@Test
@SuppressWarnings("unlikely-arg-type")
public void testOriginatingIssue() {
Map<byte[], String> testMap = new HashMap<>();
byte[] someValue = testValues.get(3);
testMap.put(someValue, "someValue");
byte[] copiedValue = dup(someValue);
// Show that a byte[] with same values is not found
System.out.printf("byte[] hashCode: 0x%08x%n", someValue.hashCode());
System.out.printf("duplicated byte[] hashCode: 0x%08x%n", copiedValue.hashCode());
/*
* Unfortunately this doesn't work because HashMap::containsKey compares hashCodes first,
* followed by object references, and copiedValue.hashCode() will never match someValue.hashCode().
*/
assertFalse("byte[] with same values, but difference reference, not found", testMap.containsKey(copiedValue));
}
@Test @Test
public void testSameContentReference() { public void testSameContentReference() {
// Create two objects, which will have different references, but same content. // Create two objects, which will have different references, but same content references.
byte[] testValue = testValues.get(0); byte[] testValue = testValues.get(0);
ByteArray ba1 = new ByteArray(testValue); ByteArray ba1 = ByteArray.wrap(testValue);
ByteArray ba2 = new ByteArray(testValue); ByteArray ba2 = ByteArray.wrap(testValue);
// Confirm JVM-assigned references are different // Confirm JVM-assigned references are different
assertNotSame(ba1, ba2); assertNotSame(ba1, ba2);
@ -58,13 +79,31 @@ public class ByteArrayTests {
} }
@Test @Test
public void testSameContentValue() { public void testSameWrappedContentValue() {
// Create two objects, which will have different references, but same content. // Create two objects, which will have different references, and different content references, but same content values.
byte[] testValue = testValues.get(0); byte[] testValue = testValues.get(0);
ByteArray ba1 = new ByteArray(testValue); ByteArray ba1 = ByteArray.wrap(testValue);
byte[] copiedValue = dup(testValue); byte[] copiedValue = dup(testValue);
ByteArray ba2 = new ByteArray(copiedValue); ByteArray ba2 = ByteArray.wrap(copiedValue);
// Confirm JVM-assigned references are different
assertNotSame(ba1, ba2);
// Confirm "equals" works as intended
assertTrue("equals did not return true", ba1.equals(ba2));
assertEquals("ba1 not equal to ba2", ba1, ba2);
// Confirm "hashCode" results match
assertEquals("hashCodes do not match", ba1.hashCode(), ba2.hashCode());
}
@Test
public void testSameCopiedContentValue() {
// Create two objects, which will have different references, and different content references, but same content values.
byte[] testValue = testValues.get(0);
ByteArray ba1 = ByteArray.wrap(testValue);
ByteArray ba2 = ByteArray.copyOf(testValue);
// Confirm JVM-assigned references are different // Confirm JVM-assigned references are different
assertNotSame(ba1, ba2); assertNotSame(ba1, ba2);
@ -81,13 +120,17 @@ public class ByteArrayTests {
@SuppressWarnings("unlikely-arg-type") @SuppressWarnings("unlikely-arg-type")
public void testCompareBoxedWithPrimitive() { public void testCompareBoxedWithPrimitive() {
byte[] testValue = testValues.get(0); byte[] testValue = testValues.get(0);
ByteArray ba1 = new ByteArray(testValue); ByteArray wrappedByteArray = ByteArray.wrap(testValue);
byte[] copiedValue = dup(testValue); byte[] copiedValue = dup(testValue);
ByteArray copiedByteArray = ByteArray.copyOf(copiedValue);
// Confirm "equals" works as intended // Confirm "equals" works as intended
assertTrue("equals did not return true", ba1.equals(copiedValue)); assertTrue("equals did not return true", wrappedByteArray.equals(copiedValue));
assertEquals("boxed not equal to primitive", ba1, copiedValue); assertEquals("boxed not equal to primitive", wrappedByteArray, copiedValue);
assertTrue("equals did not return true", copiedByteArray.equals(testValue));
assertEquals("boxed not equal to primitive", copiedByteArray, testValue);
} }
@Test @Test
@ -98,7 +141,7 @@ public class ByteArrayTests {
// Create new ByteArray object with an existing value. // Create new ByteArray object with an existing value.
byte[] copiedValue = dup(testValues.get(3)); byte[] copiedValue = dup(testValues.get(3));
ByteArray ba = new ByteArray(copiedValue); ByteArray ba = ByteArray.wrap(copiedValue);
// Confirm object can be found in map // Confirm object can be found in map
assertTrue("ByteArray not found in map", testMap.containsKey(ba)); assertTrue("ByteArray not found in map", testMap.containsKey(ba));
@ -120,7 +163,7 @@ public class ByteArrayTests {
// Create new ByteArray object with an existing value. // Create new ByteArray object with an existing value.
byte[] copiedValue = dup(testValues.get(3)); byte[] copiedValue = dup(testValues.get(3));
ByteArray ba = new ByteArray(copiedValue); ByteArray ba = ByteArray.wrap(copiedValue);
// Confirm object can be found in map // Confirm object can be found in map
assertTrue("ByteArray not found in map", testMap.containsKey(ba)); assertTrue("ByteArray not found in map", testMap.containsKey(ba));
@ -128,7 +171,7 @@ public class ByteArrayTests {
assertTrue("boxed not equal to primitive", ba.equals(copiedValue)); assertTrue("boxed not equal to primitive", ba.equals(copiedValue));
/* /*
* Unfortunately this doesn't work because TreeMap::containsKey(x) wants to cast x to * Unfortunately this doesn't work because TreeMap::containsKey(byte[]) wants to cast byte[] to
* Comparable<? super ByteArray> and byte[] does not fit <? super ByteArray> * Comparable<? super ByteArray> and byte[] does not fit <? super ByteArray>
* so this throws a ClassCastException. * so this throws a ClassCastException.
*/ */
@ -145,7 +188,7 @@ public class ByteArrayTests {
public void testArrayListContains() { public void testArrayListContains() {
// Create new ByteArray object with an existing value. // Create new ByteArray object with an existing value.
byte[] copiedValue = dup(testValues.get(3)); byte[] copiedValue = dup(testValues.get(3));
ByteArray ba = new ByteArray(copiedValue); ByteArray ba = ByteArray.wrap(copiedValue);
// Confirm object can be found in list // Confirm object can be found in list
assertTrue("ByteArray not found in map", testValues.contains(ba)); assertTrue("ByteArray not found in map", testValues.contains(ba));
@ -154,7 +197,7 @@ public class ByteArrayTests {
/* /*
* Unfortunately this doesn't work because ArrayList::contains performs * Unfortunately this doesn't work because ArrayList::contains performs
* copiedValue.equals(x) for each x in testValues, and byte[].equals() * copiedValue.equals(byte[]) for each byte[] in testValues, and byte[].equals()
* simply compares object references, so will never match any ByteArray. * simply compares object references, so will never match any ByteArray.
*/ */
assertFalse("Primitive shouldn't be found in ArrayList", testValues.contains(copiedValue)); assertFalse("Primitive shouldn't be found in ArrayList", testValues.contains(copiedValue));
@ -163,23 +206,25 @@ public class ByteArrayTests {
@Test @Test
public void debugBoxedVersusPrimitive() { public void debugBoxedVersusPrimitive() {
byte[] testValue = testValues.get(0); byte[] testValue = testValues.get(0);
ByteArray ba1 = new ByteArray(testValue); ByteArray ba1 = ByteArray.wrap(testValue);
byte[] copiedValue = dup(testValue); byte[] copiedValue = dup(testValue);
System.out.println(String.format("Primitive hashCode: 0x%08x", testValue.hashCode())); System.out.printf("Primitive hashCode: 0x%08x%n", testValue.hashCode());
System.out.println(String.format("Boxed hashCode: 0x%08x", ba1.hashCode())); System.out.printf("Boxed hashCode: 0x%08x%n", ba1.hashCode());
System.out.println(String.format("Duplicated primitive hashCode: 0x%08x", copiedValue.hashCode())); System.out.printf("Duplicated primitive hashCode: 0x%08x%n", copiedValue.hashCode());
} }
@Test @Test
public void testCompareTo() { public void testCompareTo() {
ByteArray testValue0 = new ByteArray(new byte[] { 0x00 }); ByteArray testValue0 = ByteArray.wrap(new byte[] { 0x00 });
ByteArray testValue1 = new ByteArray(new byte[] { 0x01 }); ByteArray testValue1 = ByteArray.wrap(new byte[] { 0x01 });
ByteArray testValueFf = ByteArray.wrap(new byte[] {(byte) 0xFF});
assertEquals("0 should be the same as 0", 0, testValue0.compareTo(testValue0)); assertTrue("0 should be the same as 0", testValue0.compareTo(testValue0) == 0);
assertEquals("0 should be before 1", -1, testValue0.compareTo(testValue1)); assertTrue("0 should be before 1", testValue0.compareTo(testValue1) < 0);
assertEquals("1 should be after 0", 1, testValue1.compareTo(testValue0)); assertTrue("1 should be after 0", testValue1.compareTo(testValue0) > 0);
assertTrue("FF should be after 0", testValueFf.compareTo(testValue0) > 0);
} }
} }

View File

@ -78,6 +78,118 @@ public class ArbitraryTransactionMetadataTests extends Common {
} }
} }
@Test
public void testSingleChunkWithMetadata() throws DataException, IOException, MissingDataException {
try (final Repository repository = RepositoryManager.getRepository()) {
PrivateKeyAccount alice = Common.getTestAccount(repository, "alice");
String publicKey58 = Base58.encode(alice.getPublicKey());
String name = "TEST"; // Can be anything for this test
String identifier = null; // Not used for this test
Service service = Service.ARBITRARY_DATA;
int chunkSize = 1000;
int dataLength = 10; // Actual data length will be longer due to encryption
String title = "Test title";
String description = "Test description";
List<String> tags = Arrays.asList("Test", "tag", "another tag");
Category category = Category.QORTAL;
// Register the name to Alice
RegisterNameTransactionData transactionData = new RegisterNameTransactionData(TestTransaction.generateBase(alice), name, "");
transactionData.setFee(new RegisterNameTransaction(null, null).getUnitFee(transactionData.getTimestamp()));
TransactionUtils.signAndMint(repository, transactionData, alice);
// Create PUT transaction
Path path1 = ArbitraryUtils.generateRandomDataPath(dataLength);
ArbitraryDataFile arbitraryDataFile = ArbitraryUtils.createAndMintTxn(repository, publicKey58, path1, name,
identifier, ArbitraryTransactionData.Method.PUT, service, alice, chunkSize,
title, description, tags, category);
// Check the chunk count is correct
assertEquals(0, arbitraryDataFile.chunkCount());
// Check the metadata is correct
assertEquals(title, arbitraryDataFile.getMetadata().getTitle());
assertEquals(description, arbitraryDataFile.getMetadata().getDescription());
assertEquals(tags, arbitraryDataFile.getMetadata().getTags());
assertEquals(category, arbitraryDataFile.getMetadata().getCategory());
// Now build the latest data state for this name
ArbitraryDataReader arbitraryDataReader = new ArbitraryDataReader(name, ResourceIdType.NAME, service, identifier);
arbitraryDataReader.loadSynchronously(true);
Path initialLayerPath = arbitraryDataReader.getFilePath();
ArbitraryDataDigest initialLayerDigest = new ArbitraryDataDigest(initialLayerPath);
initialLayerDigest.compute();
// Its directory hash should match the original directory hash
ArbitraryDataDigest path1Digest = new ArbitraryDataDigest(path1);
path1Digest.compute();
assertEquals(path1Digest.getHash58(), initialLayerDigest.getHash58());
}
}
@Test
public void testSingleNonLocalChunkWithMetadata() throws DataException, IOException, MissingDataException {
try (final Repository repository = RepositoryManager.getRepository()) {
PrivateKeyAccount alice = Common.getTestAccount(repository, "alice");
String publicKey58 = Base58.encode(alice.getPublicKey());
String name = "TEST"; // Can be anything for this test
String identifier = null; // Not used for this test
Service service = Service.ARBITRARY_DATA;
int chunkSize = 1000;
int dataLength = 10; // Actual data length will be longer due to encryption
String title = "Test title";
String description = "Test description";
List<String> tags = Arrays.asList("Test", "tag", "another tag");
Category category = Category.QORTAL;
// Register the name to Alice
RegisterNameTransactionData transactionData = new RegisterNameTransactionData(TestTransaction.generateBase(alice), name, "");
transactionData.setFee(new RegisterNameTransaction(null, null).getUnitFee(transactionData.getTimestamp()));
TransactionUtils.signAndMint(repository, transactionData, alice);
// Create PUT transaction
Path path1 = ArbitraryUtils.generateRandomDataPath(dataLength);
ArbitraryDataFile arbitraryDataFile = ArbitraryUtils.createAndMintTxn(repository, publicKey58, path1, name,
identifier, ArbitraryTransactionData.Method.PUT, service, alice, chunkSize,
title, description, tags, category);
// Check the chunk count is correct
assertEquals(0, arbitraryDataFile.chunkCount());
// Check the metadata is correct
assertEquals(title, arbitraryDataFile.getMetadata().getTitle());
assertEquals(description, arbitraryDataFile.getMetadata().getDescription());
assertEquals(tags, arbitraryDataFile.getMetadata().getTags());
assertEquals(category, arbitraryDataFile.getMetadata().getCategory());
// Delete the file, to simulate that it hasn't been fetched from the network yet
arbitraryDataFile.delete();
boolean missingDataExceptionCaught = false;
boolean ioExceptionCaught = false;
// Now build the latest data state for this name
ArbitraryDataReader arbitraryDataReader = new ArbitraryDataReader(name, ResourceIdType.NAME, service, identifier);
try {
arbitraryDataReader.loadSynchronously(true);
}
catch (MissingDataException e) {
missingDataExceptionCaught = true;
}
catch (IOException e) {
ioExceptionCaught = true;
}
// We expect a MissingDataException, not an IOException.
// This is because MissingDataException means that the core has correctly identified a file is missing,
// whereas an IOException would be due to trying to build without first having everything that is needed.
assertTrue(missingDataExceptionCaught);
assertFalse(ioExceptionCaught);
}
}
@Test @Test
public void testDescriptiveMetadata() throws DataException, IOException, MissingDataException { public void testDescriptiveMetadata() throws DataException, IOException, MissingDataException {
try (final Repository repository = RepositoryManager.getRepository()) { try (final Repository repository = RepositoryManager.getRepository()) {

View File

@ -55,7 +55,7 @@ public class TradeBotPresenceTests {
@Test @Test
public void testEnforceLatestTimestamp() { public void testEnforceLatestTimestamp() {
ByteArray pubkeyByteArray = ByteArray.of("publickey".getBytes(StandardCharsets.UTF_8)); ByteArray pubkeyByteArray = ByteArray.wrap("publickey".getBytes(StandardCharsets.UTF_8));
Map<ByteArray, Long> timestampsByPublicKey = new HashMap<>(); Map<ByteArray, Long> timestampsByPublicKey = new HashMap<>();

View File

@ -2,21 +2,22 @@ package org.qortal.test.naming;
import static org.junit.Assert.*; import static org.junit.Assert.*;
import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Optional;
import org.apache.commons.lang3.reflect.FieldUtils; import org.apache.commons.lang3.reflect.FieldUtils;
import org.junit.Before; import org.junit.Before;
import org.junit.Test; import org.junit.Test;
import org.qortal.account.PrivateKeyAccount; import org.qortal.account.PrivateKeyAccount;
import org.qortal.api.AmountTypeAdapter;
import org.qortal.block.BlockChain; import org.qortal.block.BlockChain;
import org.qortal.block.BlockChain.*;
import org.qortal.controller.BlockMinter; import org.qortal.controller.BlockMinter;
import org.qortal.data.transaction.*; import org.qortal.data.transaction.*;
import org.qortal.naming.Name; import org.qortal.naming.Name;
import org.qortal.repository.DataException; import org.qortal.repository.DataException;
import org.qortal.repository.Repository; import org.qortal.repository.Repository;
import org.qortal.repository.RepositoryManager; import org.qortal.repository.RepositoryManager;
import org.qortal.settings.Settings;
import org.qortal.test.common.*; import org.qortal.test.common.*;
import org.qortal.test.common.transaction.TestTransaction; import org.qortal.test.common.transaction.TestTransaction;
import org.qortal.transaction.RegisterNameTransaction; import org.qortal.transaction.RegisterNameTransaction;
@ -325,17 +326,20 @@ public class MiscTests extends Common {
// test name registration fee increase // test name registration fee increase
@Test @Test
public void testRegisterNameFeeIncrease() throws DataException, IllegalAccessException { public void testRegisterNameFeeIncrease() throws Exception {
try (final Repository repository = RepositoryManager.getRepository()) { try (final Repository repository = RepositoryManager.getRepository()) {
// Set nameRegistrationUnitFeeTimestamp to a time far in the future // Set nameRegistrationUnitFeeTimestamp to a time far in the future
long futureTimestamp = 9999999999999L; // 20 Nov 2286 UnitFeesByTimestamp futureFeeIncrease = new UnitFeesByTimestamp();
FieldUtils.writeField(BlockChain.getInstance(), "nameRegistrationUnitFeeTimestamp", futureTimestamp, true); futureFeeIncrease.timestamp = 9999999999999L; // 20 Nov 2286
assertEquals(futureTimestamp, BlockChain.getInstance().getNameRegistrationUnitFeeTimestamp()); futureFeeIncrease.fee = new AmountTypeAdapter().unmarshal("5");
FieldUtils.writeField(BlockChain.getInstance(), "nameRegistrationUnitFees", Arrays.asList(futureFeeIncrease), true);
assertEquals(futureFeeIncrease.fee, BlockChain.getInstance().getNameRegistrationUnitFeeAtTimestamp(futureFeeIncrease.timestamp));
// Validate unit fees pre and post timestamp // Validate unit fees pre and post timestamp
assertEquals(10000000, BlockChain.getInstance().getUnitFee()); // 0.1 QORT assertEquals(10000000, BlockChain.getInstance().getUnitFee()); // 0.1 QORT
assertEquals(500000000, BlockChain.getInstance().getNameRegistrationUnitFee()); // 5 QORT assertEquals(10000000, BlockChain.getInstance().getNameRegistrationUnitFeeAtTimestamp(futureFeeIncrease.timestamp - 1)); // 0.1 QORT
assertEquals(500000000, BlockChain.getInstance().getNameRegistrationUnitFeeAtTimestamp(futureFeeIncrease.timestamp)); // 5 QORT
// Register-name // Register-name
PrivateKeyAccount alice = Common.getTestAccount(repository, "alice"); PrivateKeyAccount alice = Common.getTestAccount(repository, "alice");
@ -349,8 +353,11 @@ public class MiscTests extends Common {
// Set nameRegistrationUnitFeeTimestamp to a time in the past // Set nameRegistrationUnitFeeTimestamp to a time in the past
Long now = NTP.getTime(); Long now = NTP.getTime();
FieldUtils.writeField(BlockChain.getInstance(), "nameRegistrationUnitFeeTimestamp", now - 1000L, true); UnitFeesByTimestamp pastFeeIncrease = new UnitFeesByTimestamp();
assertEquals(now - 1000L, BlockChain.getInstance().getNameRegistrationUnitFeeTimestamp()); pastFeeIncrease.timestamp = now - 1000L; // 1 second ago
pastFeeIncrease.fee = new AmountTypeAdapter().unmarshal("3");
FieldUtils.writeField(BlockChain.getInstance(), "nameRegistrationUnitFees", Arrays.asList(pastFeeIncrease), true);
assertEquals(pastFeeIncrease.fee, BlockChain.getInstance().getNameRegistrationUnitFeeAtTimestamp(pastFeeIncrease.timestamp));
// Register a different name // Register a different name
// First try with the default unit fee // First try with the default unit fee
@ -365,7 +372,7 @@ public class MiscTests extends Common {
// Now try using correct fee (this is specified by the UI, via the /transaction/unitfee API endpoint) // Now try using correct fee (this is specified by the UI, via the /transaction/unitfee API endpoint)
transactionData = new RegisterNameTransactionData(TestTransaction.generateBase(alice), name2, data); transactionData = new RegisterNameTransactionData(TestTransaction.generateBase(alice), name2, data);
transactionData.setFee(new RegisterNameTransaction(null, null).getUnitFee(transactionData.getTimestamp())); transactionData.setFee(new RegisterNameTransaction(null, null).getUnitFee(transactionData.getTimestamp()));
assertEquals(500000000L, transactionData.getFee().longValue()); assertEquals(300000000L, transactionData.getFee().longValue());
transaction = Transaction.fromData(repository, transactionData); transaction = Transaction.fromData(repository, transactionData);
transaction.sign(alice); transaction.sign(alice);
result = transaction.importAsUnconfirmed(); result = transaction.importAsUnconfirmed();

View File

@ -5,7 +5,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.1", "unitFee": "0.1",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
{ "timestamp": 1645372800000, "fee": "5" }
],
"requireGroupForApproval": false, "requireGroupForApproval": false,
"minAccountLevelToRewardShare": 5, "minAccountLevelToRewardShare": 5,
"maxRewardSharesPerMintingAccount": 20, "maxRewardSharesPerMintingAccount": 20,

View File

@ -5,7 +5,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.1", "unitFee": "0.1",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
{ "timestamp": 1645372800000, "fee": "5" }
],
"requireGroupForApproval": false, "requireGroupForApproval": false,
"minAccountLevelToRewardShare": 5, "minAccountLevelToRewardShare": 5,
"maxRewardSharesPerMintingAccount": 20, "maxRewardSharesPerMintingAccount": 20,

View File

@ -5,7 +5,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.1", "unitFee": "0.1",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
{ "timestamp": 1645372800000, "fee": "5" }
],
"requireGroupForApproval": false, "requireGroupForApproval": false,
"minAccountLevelToRewardShare": 5, "minAccountLevelToRewardShare": 5,
"maxRewardSharesPerMintingAccount": 20, "maxRewardSharesPerMintingAccount": 20,

View File

@ -5,7 +5,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.1", "unitFee": "0.1",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
{ "timestamp": 1645372800000, "fee": "5" }
],
"requireGroupForApproval": false, "requireGroupForApproval": false,
"minAccountLevelToRewardShare": 5, "minAccountLevelToRewardShare": 5,
"maxRewardSharesPerMintingAccount": 20, "maxRewardSharesPerMintingAccount": 20,

View File

@ -5,7 +5,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.1", "unitFee": "0.1",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
{ "timestamp": 1645372800000, "fee": "5" }
],
"requireGroupForApproval": false, "requireGroupForApproval": false,
"minAccountLevelToRewardShare": 5, "minAccountLevelToRewardShare": 5,
"maxRewardSharesPerMintingAccount": 20, "maxRewardSharesPerMintingAccount": 20,

View File

@ -5,7 +5,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.1", "unitFee": "0.1",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
{ "timestamp": 1645372800000, "fee": "5" }
],
"requireGroupForApproval": false, "requireGroupForApproval": false,
"minAccountLevelToRewardShare": 5, "minAccountLevelToRewardShare": 5,
"maxRewardSharesPerMintingAccount": 20, "maxRewardSharesPerMintingAccount": 20,

View File

@ -5,7 +5,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.1", "unitFee": "0.1",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
{ "timestamp": 1645372800000, "fee": "5" }
],
"requireGroupForApproval": false, "requireGroupForApproval": false,
"minAccountLevelToRewardShare": 5, "minAccountLevelToRewardShare": 5,
"maxRewardSharesPerMintingAccount": 20, "maxRewardSharesPerMintingAccount": 20,

View File

@ -5,7 +5,9 @@
"maxBlockSize": 2097152, "maxBlockSize": 2097152,
"maxBytesPerUnitFee": 1024, "maxBytesPerUnitFee": 1024,
"unitFee": "0.1", "unitFee": "0.1",
"nameRegistrationUnitFee": "5", "nameRegistrationUnitFees": [
{ "timestamp": 1645372800000, "fee": "5" }
],
"requireGroupForApproval": false, "requireGroupForApproval": false,
"minAccountLevelToRewardShare": 5, "minAccountLevelToRewardShare": 5,
"maxRewardSharesPerMintingAccount": 20, "maxRewardSharesPerMintingAccount": 20,