aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.am28
-rw-r--r--src/Makefile.bench.include2
-rw-r--r--src/Makefile.qt_locale.include10
-rw-r--r--src/Makefile.test.include41
-rw-r--r--src/addrman.cpp9
-rw-r--r--src/bench/wallet_ismine.cpp74
-rw-r--r--src/bitcoin-chainstate.cpp1
-rw-r--r--src/chain.h7
-rw-r--r--src/common/settings.cpp19
-rw-r--r--src/crypto/sha256.cpp18
-rw-r--r--src/headerssync.cpp4
-rw-r--r--src/init.cpp7
-rw-r--r--src/ipc/capnp/common-types.h108
-rw-r--r--src/kernel/chainparams.cpp6
-rw-r--r--src/kernel/chainstatemanager_opts.h1
-rw-r--r--src/kernel/mempool_persist.cpp2
-rw-r--r--src/net.cpp12
-rw-r--r--src/net.h11
-rw-r--r--src/net_processing.cpp53
-rw-r--r--src/net_processing.h27
-rw-r--r--src/netaddress.h24
-rw-r--r--src/node/blockstorage.cpp12
-rw-r--r--src/node/miner.cpp8
-rw-r--r--src/node/transaction.cpp2
-rw-r--r--src/policy/fees.cpp2
-rw-r--r--src/policy/rbf.cpp4
-rw-r--r--src/policy/rbf.h2
-rw-r--r--src/policy/v3_policy.cpp219
-rw-r--r--src/policy/v3_policy.h83
-rw-r--r--src/prevector.h37
-rw-r--r--src/protocol.cpp14
-rw-r--r--src/protocol.h43
-rw-r--r--src/qt/bitcoin_locale.qrc10
-rw-r--r--src/qt/bitcoingui.cpp6
-rw-r--r--src/qt/bitcoinstrings.cpp16
-rw-r--r--src/qt/forms/optionsdialog.ui121
-rw-r--r--src/qt/guiconstants.h2
-rw-r--r--src/qt/intro.cpp8
-rw-r--r--src/qt/intro.h1
-rw-r--r--src/qt/locale/bitcoin_af.ts748
-rw-r--r--src/qt/locale/bitcoin_am.ts30
-rw-r--r--src/qt/locale/bitcoin_ar.ts4479
-rw-r--r--src/qt/locale/bitcoin_az.ts56
-rw-r--r--src/qt/locale/bitcoin_az@latin.ts52
-rw-r--r--src/qt/locale/bitcoin_be.ts40
-rw-r--r--src/qt/locale/bitcoin_bg.ts60
-rw-r--r--src/qt/locale/bitcoin_bn.ts64
-rw-r--r--src/qt/locale/bitcoin_bs.ts48
-rw-r--r--src/qt/locale/bitcoin_ca.ts91
-rw-r--r--src/qt/locale/bitcoin_cmn.ts290
-rw-r--r--src/qt/locale/bitcoin_cs.ts96
-rw-r--r--src/qt/locale/bitcoin_cy.ts16
-rw-r--r--src/qt/locale/bitcoin_da.ts72
-rw-r--r--src/qt/locale/bitcoin_de.ts4621
-rw-r--r--src/qt/locale/bitcoin_de_AT.ts245
-rw-r--r--src/qt/locale/bitcoin_de_CH.ts245
-rw-r--r--src/qt/locale/bitcoin_el.ts102
-rw-r--r--src/qt/locale/bitcoin_en.ts208
-rw-r--r--src/qt/locale/bitcoin_en.xlf2220
-rw-r--r--src/qt/locale/bitcoin_eo.ts44
-rw-r--r--src/qt/locale/bitcoin_es.ts697
-rw-r--r--src/qt/locale/bitcoin_es_CL.ts261
-rw-r--r--src/qt/locale/bitcoin_es_CO.ts438
-rw-r--r--src/qt/locale/bitcoin_es_DO.ts272
-rw-r--r--src/qt/locale/bitcoin_es_MX.ts1469
-rw-r--r--src/qt/locale/bitcoin_es_SV.ts476
-rw-r--r--src/qt/locale/bitcoin_es_VE.ts339
-rw-r--r--src/qt/locale/bitcoin_et.ts44
-rw-r--r--src/qt/locale/bitcoin_eu.ts48
-rw-r--r--src/qt/locale/bitcoin_fa.ts388
-rw-r--r--src/qt/locale/bitcoin_fi.ts86
-rw-r--r--src/qt/locale/bitcoin_fil.ts48
-rw-r--r--src/qt/locale/bitcoin_fo.ts1364
-rw-r--r--src/qt/locale/bitcoin_fr.ts271
-rw-r--r--src/qt/locale/bitcoin_fr_CM.ts234
-rw-r--r--src/qt/locale/bitcoin_fr_LU.ts232
-rw-r--r--src/qt/locale/bitcoin_ga.ts64
-rw-r--r--src/qt/locale/bitcoin_ga_IE.ts64
-rw-r--r--src/qt/locale/bitcoin_gd.ts4
-rw-r--r--src/qt/locale/bitcoin_gl.ts48
-rw-r--r--src/qt/locale/bitcoin_gl_ES.ts32
-rw-r--r--src/qt/locale/bitcoin_gu.ts15
-rw-r--r--src/qt/locale/bitcoin_ha.ts12
-rw-r--r--src/qt/locale/bitcoin_hak.ts290
-rw-r--r--src/qt/locale/bitcoin_he.ts192
-rw-r--r--src/qt/locale/bitcoin_hi.ts203
-rw-r--r--src/qt/locale/bitcoin_hr.ts76
-rw-r--r--src/qt/locale/bitcoin_hu.ts154
-rw-r--r--src/qt/locale/bitcoin_id.ts280
-rw-r--r--src/qt/locale/bitcoin_is.ts27
-rw-r--r--src/qt/locale/bitcoin_it.ts246
-rw-r--r--src/qt/locale/bitcoin_ja.ts887
-rw-r--r--src/qt/locale/bitcoin_ka.ts56
-rw-r--r--src/qt/locale/bitcoin_kk.ts26
-rw-r--r--src/qt/locale/bitcoin_kk@latin.ts891
-rw-r--r--src/qt/locale/bitcoin_km.ts97
-rw-r--r--src/qt/locale/bitcoin_kn.ts18
-rw-r--r--src/qt/locale/bitcoin_ko.ts145
-rw-r--r--src/qt/locale/bitcoin_ku.ts18
-rw-r--r--src/qt/locale/bitcoin_ku_IQ.ts16
-rw-r--r--src/qt/locale/bitcoin_la.ts15
-rw-r--r--src/qt/locale/bitcoin_lb.ts197
-rw-r--r--src/qt/locale/bitcoin_lt.ts48
-rw-r--r--src/qt/locale/bitcoin_lv.ts8
-rw-r--r--src/qt/locale/bitcoin_mg.ts16
-rw-r--r--src/qt/locale/bitcoin_mi.ts732
-rw-r--r--src/qt/locale/bitcoin_mk.ts782
-rw-r--r--src/qt/locale/bitcoin_ml.ts154
-rw-r--r--src/qt/locale/bitcoin_mn.ts16
-rw-r--r--src/qt/locale/bitcoin_mr.ts8
-rw-r--r--src/qt/locale/bitcoin_mr_IN.ts8
-rw-r--r--src/qt/locale/bitcoin_ms.ts8
-rw-r--r--src/qt/locale/bitcoin_mt.ts1082
-rw-r--r--src/qt/locale/bitcoin_my.ts16
-rw-r--r--src/qt/locale/bitcoin_nb.ts64
-rw-r--r--src/qt/locale/bitcoin_ne.ts22
-rw-r--r--src/qt/locale/bitcoin_nl.ts138
-rw-r--r--src/qt/locale/bitcoin_no.ts8
-rw-r--r--src/qt/locale/bitcoin_pa.ts8
-rw-r--r--src/qt/locale/bitcoin_pam.ts23
-rw-r--r--src/qt/locale/bitcoin_pl.ts134
-rw-r--r--src/qt/locale/bitcoin_pt.ts234
-rw-r--r--src/qt/locale/bitcoin_pt@qtfiletype.ts250
-rw-r--r--src/qt/locale/bitcoin_pt_BR.ts242
-rw-r--r--src/qt/locale/bitcoin_ro.ts138
-rw-r--r--src/qt/locale/bitcoin_ru.ts419
-rw-r--r--src/qt/locale/bitcoin_ru_RU.ts4858
-rw-r--r--src/qt/locale/bitcoin_sc.ts8
-rw-r--r--src/qt/locale/bitcoin_sd.ts281
-rw-r--r--src/qt/locale/bitcoin_si.ts18
-rw-r--r--src/qt/locale/bitcoin_sk.ts209
-rw-r--r--src/qt/locale/bitcoin_sl.ts108
-rw-r--r--src/qt/locale/bitcoin_sn.ts8
-rw-r--r--src/qt/locale/bitcoin_so.ts28
-rw-r--r--src/qt/locale/bitcoin_sq.ts20
-rw-r--r--src/qt/locale/bitcoin_sr.ts64
-rw-r--r--src/qt/locale/bitcoin_sr@ijekavianlatin.ts72
-rw-r--r--src/qt/locale/bitcoin_sr@latin.ts66
-rw-r--r--src/qt/locale/bitcoin_sv.ts291
-rw-r--r--src/qt/locale/bitcoin_sw.ts373
-rw-r--r--src/qt/locale/bitcoin_szl.ts40
-rw-r--r--src/qt/locale/bitcoin_ta.ts52
-rw-r--r--src/qt/locale/bitcoin_te.ts56
-rw-r--r--src/qt/locale/bitcoin_th.ts126
-rw-r--r--src/qt/locale/bitcoin_tk.ts1213
-rw-r--r--src/qt/locale/bitcoin_tl.ts66
-rw-r--r--src/qt/locale/bitcoin_tr.ts102
-rw-r--r--src/qt/locale/bitcoin_ug.ts16
-rw-r--r--src/qt/locale/bitcoin_uk.ts327
-rw-r--r--src/qt/locale/bitcoin_ur.ts56
-rw-r--r--src/qt/locale/bitcoin_uz.ts93
-rw-r--r--src/qt/locale/bitcoin_uz@Cyrl.ts67
-rw-r--r--src/qt/locale/bitcoin_uz@Latn.ts60
-rw-r--r--src/qt/locale/bitcoin_vi.ts94
-rw-r--r--src/qt/locale/bitcoin_yue.ts271
-rw-r--r--src/qt/locale/bitcoin_zh-Hans.ts280
-rw-r--r--src/qt/locale/bitcoin_zh-Hant.ts290
-rw-r--r--src/qt/locale/bitcoin_zh.ts348
-rw-r--r--src/qt/locale/bitcoin_zh_CN.ts3791
-rw-r--r--src/qt/locale/bitcoin_zh_HK.ts276
-rw-r--r--src/qt/locale/bitcoin_zh_TW.ts752
-rw-r--r--src/qt/locale/bitcoin_zu.ts4
-rw-r--r--src/qt/optionsdialog.cpp76
-rw-r--r--src/qt/optionsmodel.cpp77
-rw-r--r--src/qt/optionsmodel.h23
-rw-r--r--src/qt/overviewpage.cpp8
-rw-r--r--src/qt/overviewpage.h2
-rw-r--r--src/qt/rpcconsole.cpp12
-rw-r--r--src/qt/rpcconsole.h2
-rw-r--r--src/qt/test/optiontests.cpp4
-rw-r--r--src/qt/utilitydialog.cpp3
-rw-r--r--src/qt/walletmodel.cpp7
-rw-r--r--src/qt/winshutdownmonitor.h2
-rw-r--r--src/rpc/blockchain.cpp5
-rw-r--r--src/rpc/client.cpp1
-rw-r--r--src/rpc/mempool.cpp27
-rw-r--r--src/rpc/mining.cpp6
-rw-r--r--src/rpc/net.cpp12
-rw-r--r--src/rpc/rawtransaction_util.cpp37
-rw-r--r--src/rpc/rawtransaction_util.h11
-rw-r--r--src/rpc/util.cpp9
-rw-r--r--src/rpc/util.h5
-rw-r--r--src/serialize.h16
-rw-r--r--src/span.h2
-rw-r--r--src/test/.gitignore2
-rw-r--r--src/test/README.md3
-rw-r--r--src/test/data/tx_valid.json4
-rw-r--r--src/test/fuzz/addrman.cpp25
-rw-r--r--src/test/fuzz/banman.cpp12
-rw-r--r--src/test/fuzz/integer.cpp1
-rw-r--r--src/test/fuzz/net_permissions.cpp2
-rw-r--r--src/test/fuzz/netaddress.cpp12
-rw-r--r--src/test/fuzz/package_eval.cpp35
-rw-r--r--src/test/fuzz/tx_pool.cpp9
-rw-r--r--src/test/fuzz/util/net.cpp78
-rw-r--r--src/test/fuzz/util/net.h10
-rw-r--r--src/test/ipc_test.capnp18
-rw-r--r--src/test/ipc_test.cpp67
-rw-r--r--src/test/ipc_test.h21
-rw-r--r--src/test/ipc_tests.cpp13
-rw-r--r--src/test/miner_tests.cpp1
-rw-r--r--src/test/peerman_tests.cpp76
-rw-r--r--src/test/rbf_tests.cpp2
-rw-r--r--src/test/settings_tests.cpp4
-rw-r--r--src/test/transaction_tests.cpp2
-rw-r--r--src/test/txvalidation_tests.cpp293
-rw-r--r--src/test/util/setup_common.cpp2
-rw-r--r--src/test/util/txmempool.cpp26
-rw-r--r--src/test/util/txmempool.h10
-rw-r--r--src/test/validation_chainstatemanager_tests.cpp2
-rw-r--r--src/timedata.cpp5
-rw-r--r--src/timedata.h6
-rw-r--r--src/txmempool.cpp17
-rw-r--r--src/txmempool.h3
-rw-r--r--src/validation.cpp62
-rw-r--r--src/validation.h1
-rw-r--r--src/wallet/bdb.cpp9
-rw-r--r--src/wallet/coinselection.cpp365
-rw-r--r--src/wallet/coinselection.h25
-rw-r--r--src/wallet/db.h1
-rw-r--r--src/wallet/rpc/backup.cpp10
-rw-r--r--src/wallet/rpc/spend.cpp156
-rw-r--r--src/wallet/rpc/transactions.cpp4
-rw-r--r--src/wallet/rpc/wallet.cpp4
-rw-r--r--src/wallet/scriptpubkeyman.cpp38
-rw-r--r--src/wallet/scriptpubkeyman.h13
-rw-r--r--src/wallet/spend.cpp46
-rw-r--r--src/wallet/spend.h2
-rw-r--r--src/wallet/sqlite.cpp75
-rw-r--r--src/wallet/sqlite.h31
-rw-r--r--src/wallet/test/coinselector_tests.cpp211
-rw-r--r--src/wallet/test/db_tests.cpp150
-rw-r--r--src/wallet/test/fuzz/coinselection.cpp139
-rw-r--r--src/wallet/test/fuzz/notifications.cpp16
-rw-r--r--src/wallet/test/wallet_tests.cpp14
-rw-r--r--src/wallet/wallet.cpp478
-rw-r--r--src/wallet/wallet.h22
-rw-r--r--src/wallet/walletdb.cpp169
-rw-r--r--src/wallet/walletdb.h16
239 files changed, 32287 insertions, 15841 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 780f547b4b..3e8870c828 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -9,7 +9,7 @@ print-%: FORCE
DIST_SUBDIRS = secp256k1
AM_LDFLAGS = $(LIBTOOL_LDFLAGS) $(HARDENED_LDFLAGS) $(GPROF_LDFLAGS) $(SANITIZER_LDFLAGS) $(CORE_LDFLAGS)
-AM_CXXFLAGS = $(DEBUG_CXXFLAGS) $(HARDENED_CXXFLAGS) $(WARN_CXXFLAGS) $(NOWARN_CXXFLAGS) $(ERROR_CXXFLAGS) $(GPROF_CXXFLAGS) $(SANITIZER_CXXFLAGS) $(CORE_CXXFLAGS)
+AM_CXXFLAGS = $(CORE_CXXFLAGS) $(DEBUG_CXXFLAGS) $(HARDENED_CXXFLAGS) $(WARN_CXXFLAGS) $(NOWARN_CXXFLAGS) $(ERROR_CXXFLAGS) $(GPROF_CXXFLAGS) $(SANITIZER_CXXFLAGS)
AM_CPPFLAGS = $(DEBUG_CPPFLAGS) $(HARDENED_CPPFLAGS) $(CORE_CPPFLAGS)
AM_LIBTOOLFLAGS = --preserve-dup-deps
PTHREAD_FLAGS = $(PTHREAD_CFLAGS) $(PTHREAD_LIBS)
@@ -50,6 +50,10 @@ LIBBITCOIN_WALLET_TOOL=libbitcoin_wallet_tool.a
endif
LIBBITCOIN_CRYPTO = $(LIBBITCOIN_CRYPTO_BASE)
+if USE_ASM
+LIBBITCOIN_CRYPTO_SSE4 = crypto/libbitcoin_crypto_sse4.la
+LIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_SSE4)
+endif
if ENABLE_SSE41
LIBBITCOIN_CRYPTO_SSE41 = crypto/libbitcoin_crypto_sse41.la
LIBBITCOIN_CRYPTO += $(LIBBITCOIN_CRYPTO_SSE41)
@@ -238,6 +242,7 @@ BITCOIN_CORE_H = \
node/validation_cache_args.h \
noui.h \
outputtype.h \
+ policy/v3_policy.h \
policy/feerate.h \
policy/fees.h \
policy/fees_args.h \
@@ -437,6 +442,7 @@ libbitcoin_node_a_SOURCES = \
node/utxo_snapshot.cpp \
node/validation_cache_args.cpp \
noui.cpp \
+ policy/v3_policy.cpp \
policy/fees.cpp \
policy/fees_args.cpp \
policy/packages.cpp \
@@ -541,6 +547,10 @@ libbitcoin_wallet_tool_a_SOURCES = \
#
# crypto #
+
+# crypto_base contains the unspecialized (unoptimized) versions of our
+# crypto functions. Functions that require custom compiler flags and/or
+# runtime opt-in are omitted.
crypto_libbitcoin_crypto_base_la_CPPFLAGS = $(AM_CPPFLAGS)
# Specify -static in both CXXFLAGS and LDFLAGS so libtool will only build a
@@ -581,9 +591,12 @@ crypto_libbitcoin_crypto_base_la_SOURCES = \
crypto/siphash.cpp \
crypto/siphash.h
-if USE_ASM
-crypto_libbitcoin_crypto_base_la_SOURCES += crypto/sha256_sse4.cpp
-endif
+# See explanation for -static in crypto_libbitcoin_crypto_base_la's LDFLAGS and
+# CXXFLAGS above
+crypto_libbitcoin_crypto_sse4_la_LDFLAGS = $(AM_LDFLAGS) -static
+crypto_libbitcoin_crypto_sse4_la_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) -static
+crypto_libbitcoin_crypto_sse4_la_CPPFLAGS = $(AM_CPPFLAGS)
+crypto_libbitcoin_crypto_sse4_la_SOURCES = crypto/sha256_sse4.cpp
# See explanation for -static in crypto_libbitcoin_crypto_base_la's LDFLAGS and
# CXXFLAGS above
@@ -691,6 +704,7 @@ libbitcoin_common_a_SOURCES = \
netbase.cpp \
net_permissions.cpp \
outputtype.cpp \
+ policy/v3_policy.cpp \
policy/feerate.cpp \
policy/policy.cpp \
protocol.cpp \
@@ -906,7 +920,7 @@ lib_LTLIBRARIES += $(LIBBITCOINKERNEL)
libbitcoinkernel_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined $(RELDFLAGS) $(PTHREAD_FLAGS)
libbitcoinkernel_la_LIBADD = $(LIBBITCOIN_CRYPTO) $(LIBLEVELDB) $(LIBMEMENV) $(LIBSECP256K1)
-libbitcoinkernel_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/obj -I$(srcdir)/secp256k1/include -DBUILD_BITCOIN_INTERNAL $(BOOST_CPPFLAGS) $(LEVELDB_CPPFLAGS)
+libbitcoinkernel_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/obj -I$(srcdir)/secp256k1/include $(BOOST_CPPFLAGS) $(LEVELDB_CPPFLAGS)
# libbitcoinkernel requires default symbol visibility, explicitly specify that
# here so that things still work even when user configures with
@@ -949,6 +963,7 @@ libbitcoinkernel_la_SOURCES = \
node/blockstorage.cpp \
node/chainstate.cpp \
node/utxo_snapshot.cpp \
+ policy/v3_policy.cpp \
policy/feerate.cpp \
policy/packages.cpp \
policy/policy.cpp \
@@ -1012,7 +1027,7 @@ libbitcoinconsensus_la_SOURCES = support/cleanse.cpp $(crypto_libbitcoin_crypto_
libbitcoinconsensus_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined $(RELDFLAGS)
libbitcoinconsensus_la_LIBADD = $(LIBSECP256K1)
-libbitcoinconsensus_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/obj -I$(srcdir)/secp256k1/include -DBUILD_BITCOIN_INTERNAL
+libbitcoinconsensus_la_CPPFLAGS = $(AM_CPPFLAGS) -I$(builddir)/obj -I$(srcdir)/secp256k1/include -DBUILD_BITCOIN_INTERNAL -DDISABLE_OPTIMIZED_SHA256
libbitcoinconsensus_la_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS)
endif
@@ -1090,6 +1105,7 @@ ipc/capnp/libbitcoin_ipc_a-protocol.$(OBJEXT): $(libbitcoin_ipc_mpgen_input:=.h)
if BUILD_MULTIPROCESS
LIBBITCOIN_IPC=libbitcoin_ipc.a
libbitcoin_ipc_a_SOURCES = \
+ ipc/capnp/common-types.h \
ipc/capnp/context.h \
ipc/capnp/init-types.h \
ipc/capnp/protocol.cpp \
diff --git a/src/Makefile.bench.include b/src/Makefile.bench.include
index 9e5366f0b4..b24405ce19 100644
--- a/src/Makefile.bench.include
+++ b/src/Makefile.bench.include
@@ -88,6 +88,8 @@ bench_bench_bitcoin_SOURCES += bench/wallet_balance.cpp
bench_bench_bitcoin_SOURCES += bench/wallet_create.cpp
bench_bench_bitcoin_SOURCES += bench/wallet_loading.cpp
bench_bench_bitcoin_SOURCES += bench/wallet_create_tx.cpp
+bench_bench_bitcoin_SOURCES += bench/wallet_ismine.cpp
+
bench_bench_bitcoin_LDADD += $(BDB_LIBS) $(SQLITE_LIBS)
endif
diff --git a/src/Makefile.qt_locale.include b/src/Makefile.qt_locale.include
index d7f586f3dc..4712b1e11f 100644
--- a/src/Makefile.qt_locale.include
+++ b/src/Makefile.qt_locale.include
@@ -1,6 +1,6 @@
QT_TS = \
+ qt/locale/bitcoin_af.ts \
qt/locale/bitcoin_am.ts \
- qt/locale/bitcoin_ar.ts \
qt/locale/bitcoin_az.ts \
qt/locale/bitcoin_az@latin.ts \
qt/locale/bitcoin_be.ts \
@@ -31,6 +31,7 @@ QT_TS = \
qt/locale/bitcoin_fa.ts \
qt/locale/bitcoin_fi.ts \
qt/locale/bitcoin_fil.ts \
+ qt/locale/bitcoin_fo.ts \
qt/locale/bitcoin_fr.ts \
qt/locale/bitcoin_fr_CM.ts \
qt/locale/bitcoin_fr_LU.ts \
@@ -52,6 +53,7 @@ QT_TS = \
qt/locale/bitcoin_ja.ts \
qt/locale/bitcoin_ka.ts \
qt/locale/bitcoin_kk.ts \
+ qt/locale/bitcoin_kk@latin.ts \
qt/locale/bitcoin_kl.ts \
qt/locale/bitcoin_km.ts \
qt/locale/bitcoin_kn.ts \
@@ -60,15 +62,18 @@ QT_TS = \
qt/locale/bitcoin_ku_IQ.ts \
qt/locale/bitcoin_ky.ts \
qt/locale/bitcoin_la.ts \
+ qt/locale/bitcoin_lb.ts \
qt/locale/bitcoin_lt.ts \
qt/locale/bitcoin_lv.ts \
qt/locale/bitcoin_mg.ts \
+ qt/locale/bitcoin_mi.ts \
qt/locale/bitcoin_mk.ts \
qt/locale/bitcoin_ml.ts \
qt/locale/bitcoin_mn.ts \
qt/locale/bitcoin_mr.ts \
qt/locale/bitcoin_mr_IN.ts \
qt/locale/bitcoin_ms.ts \
+ qt/locale/bitcoin_mt.ts \
qt/locale/bitcoin_my.ts \
qt/locale/bitcoin_nb.ts \
qt/locale/bitcoin_ne.ts \
@@ -78,11 +83,12 @@ QT_TS = \
qt/locale/bitcoin_pam.ts \
qt/locale/bitcoin_pl.ts \
qt/locale/bitcoin_pt.ts \
- qt/locale/bitcoin_pt@qtfiletype.ts \
qt/locale/bitcoin_pt_BR.ts \
qt/locale/bitcoin_ro.ts \
qt/locale/bitcoin_ru.ts \
+ qt/locale/bitcoin_ru_RU.ts \
qt/locale/bitcoin_sc.ts \
+ qt/locale/bitcoin_sd.ts \
qt/locale/bitcoin_si.ts \
qt/locale/bitcoin_sk.ts \
qt/locale/bitcoin_sl.ts \
diff --git a/src/Makefile.test.include b/src/Makefile.test.include
index 870e49bd75..9f9bdbbd0c 100644
--- a/src/Makefile.test.include
+++ b/src/Makefile.test.include
@@ -117,6 +117,7 @@ BITCOIN_TESTS =\
test/net_tests.cpp \
test/netbase_tests.cpp \
test/orphanage_tests.cpp \
+ test/peerman_tests.cpp \
test/pmt_tests.cpp \
test/policy_fee_tests.cpp \
test/policyestimator_tests.cpp \
@@ -216,6 +217,39 @@ BITCOIN_TEST_SUITE += \
wallet/test/init_test_fixture.h
endif # ENABLE_WALLET
+if BUILD_MULTIPROCESS
+# Add boost ipc_tests definition to BITCOIN_TESTS
+BITCOIN_TESTS += test/ipc_tests.cpp
+
+# Build ipc_test code in a separate library so it can be compiled with custom
+# LIBMULTIPROCESS_CFLAGS without those flags affecting other tests
+LIBBITCOIN_IPC_TEST=libbitcoin_ipc_test.a
+EXTRA_LIBRARIES += $(LIBBITCOIN_IPC_TEST)
+libbitcoin_ipc_test_a_SOURCES = \
+ test/ipc_test.cpp \
+ test/ipc_test.h
+libbitcoin_ipc_test_a_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES)
+libbitcoin_ipc_test_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) $(LIBMULTIPROCESS_CFLAGS)
+
+# Generate various .c++/.h files from the ipc_test.capnp file
+include $(MPGEN_PREFIX)/include/mpgen.mk
+EXTRA_DIST += test/ipc_test.capnp
+libbitcoin_ipc_test_mpgen_output = \
+ test/ipc_test.capnp.c++ \
+ test/ipc_test.capnp.h \
+ test/ipc_test.capnp.proxy-client.c++ \
+ test/ipc_test.capnp.proxy-server.c++ \
+ test/ipc_test.capnp.proxy-types.c++ \
+ test/ipc_test.capnp.proxy-types.h \
+ test/ipc_test.capnp.proxy.h
+nodist_libbitcoin_ipc_test_a_SOURCES = $(libbitcoin_ipc_test_mpgen_output)
+CLEANFILES += $(libbitcoin_ipc_test_mpgen_output)
+endif
+
+# Explicitly list dependencies on generated headers as described in
+# https://www.gnu.org/software/automake/manual/html_node/Built-Sources-Example.html#Recording-Dependencies-manually
+test/libbitcoin_ipc_test_a-ipc_test.$(OBJEXT): test/ipc_test.capnp.h
+
test_test_bitcoin_SOURCES = $(BITCOIN_TEST_SUITE) $(BITCOIN_TESTS) $(JSON_TEST_FILES) $(RAW_TEST_FILES)
test_test_bitcoin_CPPFLAGS = $(AM_CPPFLAGS) $(BITCOIN_INCLUDES) $(TESTDEFS) $(BOOST_CPPFLAGS) $(EVENT_CFLAGS)
test_test_bitcoin_LDADD = $(LIBTEST_UTIL)
@@ -223,6 +257,9 @@ if ENABLE_WALLET
test_test_bitcoin_LDADD += $(LIBBITCOIN_WALLET)
test_test_bitcoin_CPPFLAGS += $(BDB_CPPFLAGS)
endif
+if BUILD_MULTIPROCESS
+test_test_bitcoin_LDADD += $(LIBBITCOIN_IPC_TEST) $(LIBMULTIPROCESS_LIBS)
+endif
test_test_bitcoin_LDADD += $(LIBBITCOIN_NODE) $(LIBBITCOIN_CLI) $(LIBBITCOIN_COMMON) $(LIBBITCOIN_UTIL) $(LIBBITCOIN_CONSENSUS) $(LIBBITCOIN_CRYPTO) $(LIBUNIVALUE) \
$(LIBLEVELDB) $(LIBMEMENV) $(LIBSECP256K1) $(EVENT_LIBS) $(EVENT_PTHREADS_LIBS) $(MINISKETCH_LIBS)
@@ -382,7 +419,9 @@ bitcoin_test_check: $(TEST_BINARY) FORCE
bitcoin_test_clean : FORCE
rm -f $(CLEAN_BITCOIN_TEST) $(test_test_bitcoin_OBJECTS) $(TEST_BINARY)
-check-local: $(BITCOIN_TESTS:.cpp=.cpp.test)
+check-unit: $(BITCOIN_TESTS:.cpp=.cpp.test)
+
+check-local: check-unit
if BUILD_BITCOIN_TX
@echo "Running test/util/test_runner.py..."
$(PYTHON) $(top_builddir)/test/util/test_runner.py
diff --git a/src/addrman.cpp b/src/addrman.cpp
index a8206de6ee..5b2375bc9a 100644
--- a/src/addrman.cpp
+++ b/src/addrman.cpp
@@ -585,11 +585,10 @@ bool AddrManImpl::AddSingle(const CAddress& addr, const CNetAddr& source, std::c
return false;
// stochastic test: previous nRefCount == N: 2^N times harder to increase it
- int nFactor = 1;
- for (int n = 0; n < pinfo->nRefCount; n++)
- nFactor *= 2;
- if (nFactor > 1 && (insecure_rand.randrange(nFactor) != 0))
- return false;
+ if (pinfo->nRefCount > 0) {
+ const int nFactor{1 << pinfo->nRefCount};
+ if (insecure_rand.randrange(nFactor) != 0) return false;
+ }
} else {
pinfo = Create(addr, source, &nId);
pinfo->nTime = std::max(NodeSeconds{0s}, pinfo->nTime - time_penalty);
diff --git a/src/bench/wallet_ismine.cpp b/src/bench/wallet_ismine.cpp
new file mode 100644
index 0000000000..261c95c7c8
--- /dev/null
+++ b/src/bench/wallet_ismine.cpp
@@ -0,0 +1,74 @@
+// Copyright (c) 2022 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#include <bench/bench.h>
+#include <interfaces/chain.h>
+#include <key.h>
+#include <key_io.h>
+#include <node/context.h>
+#include <test/util/setup_common.h>
+#include <util/translation.h>
+#include <validationinterface.h>
+#include <wallet/context.h>
+#include <wallet/wallet.h>
+#include <wallet/walletutil.h>
+#include <wallet/test/util.h>
+
+namespace wallet {
+static void WalletIsMine(benchmark::Bench& bench, bool legacy_wallet, int num_combo = 0)
+{
+ const auto test_setup = MakeNoLogFileContext<TestingSetup>();
+
+ WalletContext context;
+ context.args = &test_setup->m_args;
+ context.chain = test_setup->m_node.chain.get();
+
+ // Setup the wallet
+ // Loading the wallet will also create it
+ uint64_t create_flags = 0;
+ if (!legacy_wallet) {
+ create_flags = WALLET_FLAG_DESCRIPTORS;
+ }
+ auto database = CreateMockableWalletDatabase();
+ auto wallet = TestLoadWallet(std::move(database), context, create_flags);
+
+ // For a descriptor wallet, fill with num_combo combo descriptors with random keys
+ // This benchmarks a non-HD wallet migrated to descriptors
+ if (!legacy_wallet && num_combo > 0) {
+ LOCK(wallet->cs_wallet);
+ for (int i = 0; i < num_combo; ++i) {
+ CKey key;
+ key.MakeNewKey(/*fCompressed=*/true);
+ FlatSigningProvider keys;
+ std::string error;
+ std::unique_ptr<Descriptor> desc = Parse("combo(" + EncodeSecret(key) + ")", keys, error, /*require_checksum=*/false);
+ WalletDescriptor w_desc(std::move(desc), /*creation_time=*/0, /*range_start=*/0, /*range_end=*/0, /*next_index=*/0);
+ auto spkm = wallet->AddWalletDescriptor(w_desc, keys, /*label=*/"", /*internal=*/false);
+ assert(spkm);
+ }
+ }
+
+ const CScript script = GetScriptForDestination(DecodeDestination(ADDRESS_BCRT1_UNSPENDABLE));
+
+ bench.run([&] {
+ LOCK(wallet->cs_wallet);
+ isminetype mine = wallet->IsMine(script);
+ assert(mine == ISMINE_NO);
+ });
+
+ TestUnloadWallet(std::move(wallet));
+}
+
+#ifdef USE_BDB
+static void WalletIsMineLegacy(benchmark::Bench& bench) { WalletIsMine(bench, /*legacy_wallet=*/true); }
+BENCHMARK(WalletIsMineLegacy, benchmark::PriorityLevel::LOW);
+#endif
+
+#ifdef USE_SQLITE
+static void WalletIsMineDescriptors(benchmark::Bench& bench) { WalletIsMine(bench, /*legacy_wallet=*/false); }
+static void WalletIsMineMigratedDescriptors(benchmark::Bench& bench) { WalletIsMine(bench, /*legacy_wallet=*/false, /*num_combo=*/2000); }
+BENCHMARK(WalletIsMineDescriptors, benchmark::PriorityLevel::LOW);
+BENCHMARK(WalletIsMineMigratedDescriptors, benchmark::PriorityLevel::LOW);
+#endif
+} // namespace wallet
diff --git a/src/bitcoin-chainstate.cpp b/src/bitcoin-chainstate.cpp
index ee8b0a44c5..c1a71ed749 100644
--- a/src/bitcoin-chainstate.cpp
+++ b/src/bitcoin-chainstate.cpp
@@ -117,7 +117,6 @@ int main(int argc, char* argv[])
const ChainstateManager::Options chainman_opts{
.chainparams = *chainparams,
.datadir = abs_datadir,
- .adjusted_time_callback = NodeClock::now,
.notifications = *notifications,
};
const node::BlockManager::Options blockman_opts{
diff --git a/src/chain.h b/src/chain.h
index f9121fb861..fa165a4aa7 100644
--- a/src/chain.h
+++ b/src/chain.h
@@ -11,15 +11,20 @@
#include <flatfile.h>
#include <kernel/cs_main.h>
#include <primitives/block.h>
+#include <serialize.h>
#include <sync.h>
#include <uint256.h>
#include <util/time.h>
+#include <algorithm>
+#include <cassert>
+#include <cstdint>
+#include <string>
#include <vector>
/**
* Maximum amount of time that a block timestamp is allowed to exceed the
- * current network-adjusted time before the block will be accepted.
+ * current time before the block will be accepted.
*/
static constexpr int64_t MAX_FUTURE_BLOCK_TIME = 2 * 60 * 60;
diff --git a/src/common/settings.cpp b/src/common/settings.cpp
index 5761e8b321..db1001111a 100644
--- a/src/common/settings.cpp
+++ b/src/common/settings.cpp
@@ -4,6 +4,10 @@
#include <common/settings.h>
+#if defined(HAVE_CONFIG_H)
+#include <config/bitcoin-config.h>
+#endif
+
#include <tinyformat.h>
#include <univalue.h>
#include <util/fs.h>
@@ -27,6 +31,9 @@ enum class Source {
CONFIG_FILE_DEFAULT_SECTION
};
+// Json object key for the auto-generated warning comment
+const std::string SETTINGS_WARN_MSG_KEY{"_warning_"};
+
//! Merge settings from multiple sources in precedence order:
//! Forced config > command line > read-write settings file > config file network-specific section > config file default section
//!
@@ -81,7 +88,9 @@ bool ReadSettings(const fs::path& path, std::map<std::string, SettingsValue>& va
SettingsValue in;
if (!in.read(std::string{std::istreambuf_iterator<char>(file), std::istreambuf_iterator<char>()})) {
- errors.emplace_back(strprintf("Unable to parse settings file %s", fs::PathToString(path)));
+ errors.emplace_back(strprintf("Settings file %s does not contain valid JSON. This is probably caused by disk corruption or a crash, "
+ "and can be fixed by removing the file, which will reset settings to default values.",
+ fs::PathToString(path)));
return false;
}
@@ -106,6 +115,10 @@ bool ReadSettings(const fs::path& path, std::map<std::string, SettingsValue>& va
break;
}
}
+
+ // Remove auto-generated warning comment from the accessible settings.
+ values.erase(SETTINGS_WARN_MSG_KEY);
+
return errors.empty();
}
@@ -114,6 +127,10 @@ bool WriteSettings(const fs::path& path,
std::vector<std::string>& errors)
{
SettingsValue out(SettingsValue::VOBJ);
+ // Add auto-generated warning comment
+ out.pushKV(SETTINGS_WARN_MSG_KEY, strprintf("This file is automatically generated and updated by %s. Please do not edit this file while the node "
+ "is running, as any changes might be ignored or overwritten.", PACKAGE_NAME));
+ // Push settings values
for (const auto& value : values) {
out.pushKVEnd(value.first, value.second);
}
diff --git a/src/crypto/sha256.cpp b/src/crypto/sha256.cpp
index 5eacaa44e1..11aabeb1da 100644
--- a/src/crypto/sha256.cpp
+++ b/src/crypto/sha256.cpp
@@ -8,14 +8,15 @@
#include <assert.h>
#include <string.h>
+#if !defined(DISABLE_OPTIMIZED_SHA256)
#include <compat/cpuid.h>
-#if defined(__linux__) && defined(ENABLE_ARM_SHANI) && !defined(BUILD_BITCOIN_INTERNAL)
+#if defined(__linux__) && defined(ENABLE_ARM_SHANI)
#include <sys/auxv.h>
#include <asm/hwcap.h>
#endif
-#if defined(MAC_OSX) && defined(ENABLE_ARM_SHANI) && !defined(BUILD_BITCOIN_INTERNAL)
+#if defined(MAC_OSX) && defined(ENABLE_ARM_SHANI)
#include <sys/types.h>
#include <sys/sysctl.h>
#endif
@@ -58,6 +59,7 @@ namespace sha256d64_arm_shani
{
void Transform_2way(unsigned char* out, const unsigned char* in);
}
+#endif // DISABLE_OPTIMIZED_SHA256
// Internal implementation code.
namespace
@@ -567,6 +569,7 @@ bool SelfTest() {
return true;
}
+#if !defined(DISABLE_OPTIMIZED_SHA256)
#if defined(USE_ASM) && (defined(__x86_64__) || defined(__amd64__) || defined(__i386__))
/** Check whether the OS has enabled AVX registers. */
bool AVXEnabled()
@@ -576,6 +579,7 @@ bool AVXEnabled()
return (a & 6) == 6;
}
#endif
+#endif // DISABLE_OPTIMIZED_SHA256
} // namespace
@@ -588,6 +592,7 @@ std::string SHA256AutoDetect(sha256_implementation::UseImplementation use_implem
TransformD64_4way = nullptr;
TransformD64_8way = nullptr;
+#if !defined(DISABLE_OPTIMIZED_SHA256)
#if defined(USE_ASM) && defined(HAVE_GETCPUID)
bool have_sse4 = false;
bool have_xsave = false;
@@ -616,7 +621,7 @@ std::string SHA256AutoDetect(sha256_implementation::UseImplementation use_implem
}
}
-#if defined(ENABLE_X86_SHANI) && !defined(BUILD_BITCOIN_INTERNAL)
+#if defined(ENABLE_X86_SHANI)
if (have_x86_shani) {
Transform = sha256_x86_shani::Transform;
TransformD64 = TransformD64Wrapper<sha256_x86_shani::Transform>;
@@ -633,13 +638,13 @@ std::string SHA256AutoDetect(sha256_implementation::UseImplementation use_implem
TransformD64 = TransformD64Wrapper<sha256_sse4::Transform>;
ret = "sse4(1way)";
#endif
-#if defined(ENABLE_SSE41) && !defined(BUILD_BITCOIN_INTERNAL)
+#if defined(ENABLE_SSE41)
TransformD64_4way = sha256d64_sse41::Transform_4way;
ret += ",sse41(4way)";
#endif
}
-#if defined(ENABLE_AVX2) && !defined(BUILD_BITCOIN_INTERNAL)
+#if defined(ENABLE_AVX2)
if (have_avx2 && have_avx && enabled_avx) {
TransformD64_8way = sha256d64_avx2::Transform_8way;
ret += ",avx2(8way)";
@@ -647,7 +652,7 @@ std::string SHA256AutoDetect(sha256_implementation::UseImplementation use_implem
#endif
#endif // defined(USE_ASM) && defined(HAVE_GETCPUID)
-#if defined(ENABLE_ARM_SHANI) && !defined(BUILD_BITCOIN_INTERNAL)
+#if defined(ENABLE_ARM_SHANI)
bool have_arm_shani = false;
if (use_implementation & sha256_implementation::USE_SHANI) {
#if defined(__linux__)
@@ -679,6 +684,7 @@ std::string SHA256AutoDetect(sha256_implementation::UseImplementation use_implem
ret = "arm_shani(1way,2way)";
}
#endif
+#endif // DISABLE_OPTIMIZED_SHA256
assert(SelfTest());
return ret;
diff --git a/src/headerssync.cpp b/src/headerssync.cpp
index 234fc8da60..e14de004f5 100644
--- a/src/headerssync.cpp
+++ b/src/headerssync.cpp
@@ -5,8 +5,8 @@
#include <headerssync.h>
#include <logging.h>
#include <pow.h>
-#include <timedata.h>
#include <util/check.h>
+#include <util/time.h>
#include <util/vector.h>
// The two constants below are computed using the simulation script in
@@ -41,7 +41,7 @@ HeadersSyncState::HeadersSyncState(NodeId id, const Consensus::Params& consensus
// exceeds this bound, because it's not possible for a consensus-valid
// chain to be longer than this (at the current time -- in the future we
// could try again, if necessary, to sync a longer chain).
- m_max_commitments = 6*(Ticks<std::chrono::seconds>(GetAdjustedTime() - NodeSeconds{std::chrono::seconds{chain_start->GetMedianTimePast()}}) + MAX_FUTURE_BLOCK_TIME) / HEADER_COMMITMENT_PERIOD;
+ m_max_commitments = 6*(Ticks<std::chrono::seconds>(NodeClock::now() - NodeSeconds{std::chrono::seconds{chain_start->GetMedianTimePast()}}) + MAX_FUTURE_BLOCK_TIME) / HEADER_COMMITMENT_PERIOD;
LogPrint(BCLog::NET, "Initial headers sync started with peer=%d: height=%i, max_commitments=%i, min_work=%s\n", m_id, m_current_height, m_max_commitments, m_minimum_required_work.ToString());
}
diff --git a/src/init.cpp b/src/init.cpp
index b825c8ce21..988daefeec 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -1448,7 +1448,6 @@ bool AppInitMain(NodeContext& node, interfaces::BlockAndHeaderTipInfo* tip_info)
ChainstateManager::Options chainman_opts{
.chainparams = chainparams,
.datadir = args.GetDataDirNet(),
- .adjusted_time_callback = GetAdjustedTime,
.notifications = *node.notifications,
};
Assert(ApplyArgsManOptions(args, chainman_opts)); // no error can happen, already checked in AppInitParameterInteraction
@@ -1743,13 +1742,15 @@ bool AppInitMain(NodeContext& node, interfaces::BlockAndHeaderTipInfo* tip_info)
// ********************************************************* Step 12: start node
//// debug print
+ int64_t best_block_time{};
{
LOCK(cs_main);
LogPrintf("block tree size = %u\n", chainman.BlockIndex().size());
chain_active_height = chainman.ActiveChain().Height();
+ best_block_time = chainman.ActiveChain().Tip() ? chainman.ActiveChain().Tip()->GetBlockTime() : chainman.GetParams().GenesisBlock().GetBlockTime();
if (tip_info) {
tip_info->block_height = chain_active_height;
- tip_info->block_time = chainman.ActiveChain().Tip() ? chainman.ActiveChain().Tip()->GetBlockTime() : chainman.GetParams().GenesisBlock().GetBlockTime();
+ tip_info->block_time = best_block_time;
tip_info->verification_progress = GuessVerificationProgress(chainman.GetParams().TxData(), chainman.ActiveChain().Tip());
}
if (tip_info && chainman.m_best_header) {
@@ -1758,7 +1759,7 @@ bool AppInitMain(NodeContext& node, interfaces::BlockAndHeaderTipInfo* tip_info)
}
}
LogPrintf("nBestHeight = %d\n", chain_active_height);
- if (node.peerman) node.peerman->SetBestHeight(chain_active_height);
+ if (node.peerman) node.peerman->SetBestBlock(chain_active_height, std::chrono::seconds{best_block_time});
// Map ports with UPnP or NAT-PMP.
StartMapPort(args.GetBoolArg("-upnp", DEFAULT_UPNP), args.GetBoolArg("-natpmp", DEFAULT_NATPMP));
diff --git a/src/ipc/capnp/common-types.h b/src/ipc/capnp/common-types.h
new file mode 100644
index 0000000000..39e368491b
--- /dev/null
+++ b/src/ipc/capnp/common-types.h
@@ -0,0 +1,108 @@
+// Copyright (c) 2023 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#ifndef BITCOIN_IPC_CAPNP_COMMON_TYPES_H
+#define BITCOIN_IPC_CAPNP_COMMON_TYPES_H
+
+#include <clientversion.h>
+#include <streams.h>
+#include <univalue.h>
+
+#include <cstddef>
+#include <mp/proxy-types.h>
+#include <type_traits>
+#include <utility>
+
+namespace ipc {
+namespace capnp {
+//! Use SFINAE to define Serializeable<T> trait which is true if type T has a
+//! Serialize(stream) method, false otherwise.
+template <typename T>
+struct Serializable {
+private:
+ template <typename C>
+ static std::true_type test(decltype(std::declval<C>().Serialize(std::declval<std::nullptr_t&>()))*);
+ template <typename>
+ static std::false_type test(...);
+
+public:
+ static constexpr bool value = decltype(test<T>(nullptr))::value;
+};
+
+//! Use SFINAE to define Unserializeable<T> trait which is true if type T has
+//! an Unserialize(stream) method, false otherwise.
+template <typename T>
+struct Unserializable {
+private:
+ template <typename C>
+ static std::true_type test(decltype(std::declval<C>().Unserialize(std::declval<std::nullptr_t&>()))*);
+ template <typename>
+ static std::false_type test(...);
+
+public:
+ static constexpr bool value = decltype(test<T>(nullptr))::value;
+};
+} // namespace capnp
+} // namespace ipc
+
+//! Functions to serialize / deserialize common bitcoin types.
+namespace mp {
+//! Overload multiprocess library's CustomBuildField hook to allow any
+//! serializable object to be stored in a capnproto Data field or passed to a
+//! canproto interface. Use Priority<1> so this hook has medium priority, and
+//! higher priority hooks could take precedence over this one.
+template <typename LocalType, typename Value, typename Output>
+void CustomBuildField(
+ TypeList<LocalType>, Priority<1>, InvokeContext& invoke_context, Value&& value, Output&& output,
+ // Enable if serializeable and if LocalType is not cv or reference
+ // qualified. If LocalType is cv or reference qualified, it is important to
+ // fall back to lower-priority Priority<0> implementation of this function
+ // that strips cv references, to prevent this CustomBuildField overload from
+ // taking precedence over more narrow overloads for specific LocalTypes.
+ std::enable_if_t<ipc::capnp::Serializable<LocalType>::value &&
+ std::is_same_v<LocalType, std::remove_cv_t<std::remove_reference_t<LocalType>>>>* enable = nullptr)
+{
+ DataStream stream;
+ value.Serialize(stream);
+ auto result = output.init(stream.size());
+ memcpy(result.begin(), stream.data(), stream.size());
+}
+
+//! Overload multiprocess library's CustomReadField hook to allow any object
+//! with an Unserialize method to be read from a capnproto Data field or
+//! returned from canproto interface. Use Priority<1> so this hook has medium
+//! priority, and higher priority hooks could take precedence over this one.
+template <typename LocalType, typename Input, typename ReadDest>
+decltype(auto)
+CustomReadField(TypeList<LocalType>, Priority<1>, InvokeContext& invoke_context, Input&& input, ReadDest&& read_dest,
+ std::enable_if_t<ipc::capnp::Unserializable<LocalType>::value>* enable = nullptr)
+{
+ return read_dest.update([&](auto& value) {
+ if (!input.has()) return;
+ auto data = input.get();
+ SpanReader stream({data.begin(), data.end()});
+ value.Unserialize(stream);
+ });
+}
+
+template <typename Value, typename Output>
+void CustomBuildField(TypeList<UniValue>, Priority<1>, InvokeContext& invoke_context, Value&& value, Output&& output)
+{
+ std::string str = value.write();
+ auto result = output.init(str.size());
+ memcpy(result.begin(), str.data(), str.size());
+}
+
+template <typename Input, typename ReadDest>
+decltype(auto) CustomReadField(TypeList<UniValue>, Priority<1>, InvokeContext& invoke_context, Input&& input,
+ ReadDest&& read_dest)
+{
+ return read_dest.update([&](auto& value) {
+ auto data = input.get();
+ value.read(std::string_view{data.begin(), data.size()});
+ });
+}
+} // namespace mp
+
+#endif // BITCOIN_IPC_CAPNP_COMMON_TYPES_H
diff --git a/src/kernel/chainparams.cpp b/src/kernel/chainparams.cpp
index 56cb3a63a0..b0e657ba45 100644
--- a/src/kernel/chainparams.cpp
+++ b/src/kernel/chainparams.cpp
@@ -501,9 +501,9 @@ public:
{
// For use by test/functional/feature_assumeutxo.py
.height = 299,
- .hash_serialized = AssumeutxoHash{uint256S("0x61d9c2b29a2571a5fe285fe2d8554f91f93309666fc9b8223ee96338de25ff53")},
- .nChainTx = 300,
- .blockhash = uint256S("0x7e0517ef3ea6ecbed9117858e42eedc8eb39e8698a38dcbd1b3962a283233f4c")
+ .hash_serialized = AssumeutxoHash{uint256S("0xa4bf3407ccb2cc0145c49ebba8fa91199f8a3903daf0883875941497d2493c27")},
+ .nChainTx = 334,
+ .blockhash = uint256S("0x3bb7ce5eba0be48939b7a521ac1ba9316afee2c7bada3a0cca24188e6d7d96c0")
},
};
diff --git a/src/kernel/chainstatemanager_opts.h b/src/kernel/chainstatemanager_opts.h
index ee20eabd79..864aac336e 100644
--- a/src/kernel/chainstatemanager_opts.h
+++ b/src/kernel/chainstatemanager_opts.h
@@ -32,7 +32,6 @@ namespace kernel {
struct ChainstateManagerOpts {
const CChainParams& chainparams;
fs::path datadir;
- const std::function<NodeClock::time_point()> adjusted_time_callback{nullptr};
std::optional<bool> check_block_index{};
bool checkpoints_enabled{DEFAULT_CHECKPOINTS_ENABLED};
//! If set, it will override the minimum work we will assume exists on some valid chain.
diff --git a/src/kernel/mempool_persist.cpp b/src/kernel/mempool_persist.cpp
index cae4b04bf6..57c5168e9f 100644
--- a/src/kernel/mempool_persist.cpp
+++ b/src/kernel/mempool_persist.cpp
@@ -205,7 +205,7 @@ bool DumpMempool(const CTxMemPool& pool, const fs::path& dump_path, FopenFn mock
}
auto last = SteadyClock::now();
- LogPrintf("Dumped mempool: %gs to copy, %gs to dump\n",
+ LogPrintf("Dumped mempool: %.3fs to copy, %.3fs to dump\n",
Ticks<SecondsDouble>(mid - start),
Ticks<SecondsDouble>(last - mid));
} catch (const std::exception& e) {
diff --git a/src/net.cpp b/src/net.cpp
index 0cc794c2c3..7c82f01d75 100644
--- a/src/net.cpp
+++ b/src/net.cpp
@@ -203,7 +203,7 @@ static std::vector<CAddress> ConvertSeeds(const std::vector<uint8_t> &vSeedsIn)
while (!s.eof()) {
CService endpoint;
s >> endpoint;
- CAddress addr{endpoint, GetDesirableServiceFlags(NODE_NONE)};
+ CAddress addr{endpoint, SeedsServiceFlags()};
addr.nTime = rng.rand_uniform_delay(Now<NodeSeconds>() - one_week, -one_week);
LogPrint(BCLog::NET, "Added hardcoded seed: %s\n", addr.ToStringAddrPort());
vSeedsOut.push_back(addr);
@@ -1827,7 +1827,7 @@ void CConnman::CreateNodeFromAcceptedSocket(std::unique_ptr<Sock>&& sock,
RandAddEvent((uint32_t)id);
}
-bool CConnman::AddConnection(const std::string& address, ConnectionType conn_type)
+bool CConnman::AddConnection(const std::string& address, ConnectionType conn_type, bool use_v2transport = false)
{
AssertLockNotHeld(m_unused_i2p_sessions_mutex);
std::optional<int> max_connections;
@@ -1860,7 +1860,7 @@ bool CConnman::AddConnection(const std::string& address, ConnectionType conn_typ
CSemaphoreGrant grant(*semOutbound, true);
if (!grant) return false;
- OpenNetworkConnection(CAddress(), false, std::move(grant), address.c_str(), conn_type, /*use_v2transport=*/false);
+ OpenNetworkConnection(CAddress(), false, std::move(grant), address.c_str(), conn_type, /*use_v2transport=*/use_v2transport);
return true;
}
@@ -2267,7 +2267,7 @@ void CConnman::ThreadDNSAddressSeed()
AddAddrFetch(seed);
} else {
std::vector<CAddress> vAdd;
- ServiceFlags requiredServiceBits = GetDesirableServiceFlags(NODE_NONE);
+ constexpr ServiceFlags requiredServiceBits{SeedsServiceFlags()};
std::string host = strprintf("x%x.%s", requiredServiceBits, seed);
CNetAddr resolveSource;
if (!resolveSource.SetInternal(host)) {
@@ -2638,7 +2638,7 @@ void CConnman::ThreadOpenConnections(const std::vector<std::string> connect)
const CAddress addr = m_anchors.back();
m_anchors.pop_back();
if (!addr.IsValid() || IsLocal(addr) || !g_reachable_nets.Contains(addr) ||
- !HasAllDesirableServiceFlags(addr.nServices) ||
+ !m_msgproc->HasAllDesirableServiceFlags(addr.nServices) ||
outbound_ipv46_peer_netgroups.count(m_netgroupman.GetGroup(addr))) continue;
addrConnect = addr;
LogPrint(BCLog::NET, "Trying to make an anchor connection to %s\n", addrConnect.ToStringAddrPort());
@@ -2704,7 +2704,7 @@ void CConnman::ThreadOpenConnections(const std::vector<std::string> connect)
// for non-feelers, require all the services we'll want,
// for feelers, only require they be a full node (only because most
// SPV clients don't have a good address DB available)
- if (!fFeeler && !HasAllDesirableServiceFlags(addr.nServices)) {
+ if (!fFeeler && !m_msgproc->HasAllDesirableServiceFlags(addr.nServices)) {
continue;
} else if (fFeeler && !MayHaveUsefulAddressDB(addr.nServices)) {
continue;
diff --git a/src/net.h b/src/net.h
index 6b9386e511..e78e122c44 100644
--- a/src/net.h
+++ b/src/net.h
@@ -97,7 +97,7 @@ static constexpr bool DEFAULT_FIXEDSEEDS{true};
static const size_t DEFAULT_MAXRECEIVEBUFFER = 5 * 1000;
static const size_t DEFAULT_MAXSENDBUFFER = 1 * 1000;
-static constexpr bool DEFAULT_V2_TRANSPORT{false};
+static constexpr bool DEFAULT_V2_TRANSPORT{true};
typedef int64_t NodeId;
@@ -1006,6 +1006,12 @@ public:
virtual void FinalizeNode(const CNode& node) = 0;
/**
+ * Callback to determine whether the given set of service flags are sufficient
+ * for a peer to be "relevant".
+ */
+ virtual bool HasAllDesirableServiceFlags(ServiceFlags services) const = 0;
+
+ /**
* Process protocol messages received from a given node
*
* @param[in] pnode The node which we have received messages from.
@@ -1189,13 +1195,14 @@ public:
* @param[in] address Address of node to try connecting to
* @param[in] conn_type ConnectionType::OUTBOUND, ConnectionType::BLOCK_RELAY,
* ConnectionType::ADDR_FETCH or ConnectionType::FEELER
+ * @param[in] use_v2transport Set to true if node attempts to connect using BIP 324 v2 transport protocol.
* @return bool Returns false if there are no available
* slots for this connection:
* - conn_type not a supported ConnectionType
* - Max total outbound connection capacity filled
* - Max connection capacity for type is filled
*/
- bool AddConnection(const std::string& address, ConnectionType conn_type) EXCLUSIVE_LOCKS_REQUIRED(!m_unused_i2p_sessions_mutex);
+ bool AddConnection(const std::string& address, ConnectionType conn_type, bool use_v2transport) EXCLUSIVE_LOCKS_REQUIRED(!m_unused_i2p_sessions_mutex);
size_t GetNodeCount(ConnectionDirection) const;
uint32_t GetMappedAS(const CNetAddr& addr) const;
diff --git a/src/net_processing.cpp b/src/net_processing.cpp
index 80cf610a0d..c8da927763 100644
--- a/src/net_processing.cpp
+++ b/src/net_processing.cpp
@@ -41,12 +41,12 @@
#include <txrequest.h>
#include <util/check.h>
#include <util/strencodings.h>
+#include <util/time.h>
#include <util/trace.h>
#include <validation.h>
#include <algorithm>
#include <atomic>
-#include <chrono>
#include <future>
#include <memory>
#include <optional>
@@ -133,6 +133,8 @@ static const unsigned int MAX_BLOCKS_TO_ANNOUNCE = 8;
static const int MAX_NUM_UNCONNECTING_HEADERS_MSGS = 10;
/** Minimum blocks required to signal NODE_NETWORK_LIMITED */
static const unsigned int NODE_NETWORK_LIMITED_MIN_BLOCKS = 288;
+/** Window, in blocks, for connecting to NODE_NETWORK_LIMITED peers */
+static const unsigned int NODE_NETWORK_LIMITED_ALLOW_CONN_BLOCKS = 144;
/** Average delay between local address broadcasts */
static constexpr auto AVG_LOCAL_ADDRESS_BROADCAST_INTERVAL{24h};
/** Average delay between peer address broadcasts */
@@ -499,6 +501,7 @@ public:
/** Implement NetEventsInterface */
void InitializeNode(CNode& node, ServiceFlags our_services) override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex);
void FinalizeNode(const CNode& node) override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex, !m_headers_presync_mutex);
+ bool HasAllDesirableServiceFlags(ServiceFlags services) const override;
bool ProcessMessages(CNode* pfrom, std::atomic<bool>& interrupt) override
EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex, !m_recent_confirmed_transactions_mutex, !m_most_recent_block_mutex, !m_headers_presync_mutex, g_msgproc_mutex);
bool SendMessages(CNode* pto) override
@@ -513,12 +516,17 @@ public:
bool IgnoresIncomingTxs() override { return m_opts.ignore_incoming_txs; }
void SendPings() override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex);
void RelayTransaction(const uint256& txid, const uint256& wtxid) override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex);
- void SetBestHeight(int height) override { m_best_height = height; };
+ void SetBestBlock(int height, std::chrono::seconds time) override
+ {
+ m_best_height = height;
+ m_best_block_time = time;
+ };
void UnitTestMisbehaving(NodeId peer_id, int howmuch) override EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex) { Misbehaving(*Assert(GetPeerRef(peer_id)), howmuch, ""); };
void ProcessMessage(CNode& pfrom, const std::string& msg_type, DataStream& vRecv,
const std::chrono::microseconds time_received, const std::atomic<bool>& interruptMsgProc) override
EXCLUSIVE_LOCKS_REQUIRED(!m_peer_mutex, !m_recent_confirmed_transactions_mutex, !m_most_recent_block_mutex, !m_headers_presync_mutex, g_msgproc_mutex);
void UpdateLastBlockAnnounceTime(NodeId node, int64_t time_in_seconds) override;
+ ServiceFlags GetDesirableServiceFlags(ServiceFlags services) const override;
private:
/** Consider evicting an outbound peer based on the amount of time they've been behind our tip */
@@ -721,6 +729,8 @@ private:
/** The height of the best chain */
std::atomic<int> m_best_height{-1};
+ /** The time of the best chain tip block */
+ std::atomic<std::chrono::seconds> m_best_block_time{0s};
/** Next time to check for stale tip */
std::chrono::seconds m_stale_tip_check_time GUARDED_BY(cs_main){0s};
@@ -993,6 +1003,12 @@ private:
bool CanDirectFetch() EXCLUSIVE_LOCKS_REQUIRED(cs_main);
/**
+ * Estimates the distance, in blocks, between the best-known block and the network chain tip.
+ * Utilizes the best-block time and the chainparams blocks spacing to approximate it.
+ */
+ int64_t ApproximateBestBlockDepth() const;
+
+ /**
* To prevent fingerprinting attacks, only send blocks/headers outside of
* the active chain if they are no more than a month older (both in time,
* and in best equivalent proof of work) than the best header chain we know
@@ -1311,9 +1327,14 @@ bool PeerManagerImpl::TipMayBeStale()
return m_last_tip_update.load() < GetTime<std::chrono::seconds>() - std::chrono::seconds{consensusParams.nPowTargetSpacing * 3} && mapBlocksInFlight.empty();
}
+int64_t PeerManagerImpl::ApproximateBestBlockDepth() const
+{
+ return (GetTime<std::chrono::seconds>() - m_best_block_time.load()).count() / m_chainparams.GetConsensus().nPowTargetSpacing;
+}
+
bool PeerManagerImpl::CanDirectFetch()
{
- return m_chainman.ActiveChain().Tip()->Time() > GetAdjustedTime() - m_chainparams.GetConsensus().PowTargetSpacing() * 20;
+ return m_chainman.ActiveChain().Tip()->Time() > NodeClock::now() - m_chainparams.GetConsensus().PowTargetSpacing() * 20;
}
static bool PeerHasHeader(CNodeState *state, const CBlockIndex *pindex) EXCLUSIVE_LOCKS_REQUIRED(cs_main)
@@ -1651,6 +1672,23 @@ void PeerManagerImpl::FinalizeNode(const CNode& node)
LogPrint(BCLog::NET, "Cleared nodestate for peer=%d\n", nodeid);
}
+bool PeerManagerImpl::HasAllDesirableServiceFlags(ServiceFlags services) const
+{
+ // Shortcut for (services & GetDesirableServiceFlags(services)) == GetDesirableServiceFlags(services)
+ return !(GetDesirableServiceFlags(services) & (~services));
+}
+
+ServiceFlags PeerManagerImpl::GetDesirableServiceFlags(ServiceFlags services) const
+{
+ if (services & NODE_NETWORK_LIMITED) {
+ // Limited peers are desirable when we are close to the tip.
+ if (ApproximateBestBlockDepth() < NODE_NETWORK_LIMITED_ALLOW_CONN_BLOCKS) {
+ return ServiceFlags(NODE_NETWORK_LIMITED | NODE_WITNESS);
+ }
+ }
+ return ServiceFlags(NODE_NETWORK | NODE_WITNESS);
+}
+
PeerRef PeerManagerImpl::GetPeerRef(NodeId id) const
{
LOCK(m_peer_mutex);
@@ -2047,8 +2085,7 @@ void PeerManagerImpl::NewPoWValidBlock(const CBlockIndex *pindex, const std::sha
*/
void PeerManagerImpl::UpdatedBlockTip(const CBlockIndex *pindexNew, const CBlockIndex *pindexFork, bool fInitialDownload)
{
- SetBestHeight(pindexNew->nHeight);
- SetServiceFlagsIBDCache(!fInitialDownload);
+ SetBestBlock(pindexNew->nHeight, std::chrono::seconds{pindexNew->GetBlockTime()});
// Don't relay inventory during initial block download.
if (fInitialDownload) return;
@@ -5555,7 +5592,7 @@ bool PeerManagerImpl::SendMessages(CNode* pto)
if (!state.fSyncStarted && CanServeBlocks(*peer) && !m_chainman.m_blockman.LoadingBlocks()) {
// Only actively request headers from a single peer, unless we're close to today.
- if ((nSyncStarted == 0 && sync_blocks_and_headers_from_peer) || m_chainman.m_best_header->Time() > GetAdjustedTime() - 24h) {
+ if ((nSyncStarted == 0 && sync_blocks_and_headers_from_peer) || m_chainman.m_best_header->Time() > NodeClock::now() - 24h) {
const CBlockIndex* pindexStart = m_chainman.m_best_header;
/* If possible, start at the block preceding the currently
best known header. This ensures that we always get a
@@ -5575,7 +5612,7 @@ bool PeerManagerImpl::SendMessages(CNode* pto)
// Convert HEADERS_DOWNLOAD_TIMEOUT_PER_HEADER to microseconds before scaling
// to maintain precision
std::chrono::microseconds{HEADERS_DOWNLOAD_TIMEOUT_PER_HEADER} *
- Ticks<std::chrono::seconds>(GetAdjustedTime() - m_chainman.m_best_header->Time()) / consensusParams.nPowTargetSpacing
+ Ticks<std::chrono::seconds>(NodeClock::now() - m_chainman.m_best_header->Time()) / consensusParams.nPowTargetSpacing
);
nSyncStarted++;
}
@@ -5879,7 +5916,7 @@ bool PeerManagerImpl::SendMessages(CNode* pto)
// Check for headers sync timeouts
if (state.fSyncStarted && peer->m_headers_sync_timeout < std::chrono::microseconds::max()) {
// Detect whether this is a stalling initial-headers-sync peer
- if (m_chainman.m_best_header->Time() <= GetAdjustedTime() - 24h) {
+ if (m_chainman.m_best_header->Time() <= NodeClock::now() - 24h) {
if (current_time > peer->m_headers_sync_timeout && nSyncStarted == 1 && (m_num_preferred_download_peers - state.fPreferredDownload >= 1)) {
// Disconnect a peer (without NetPermissionFlags::NoBan permission) if it is our only sync peer,
// and we have others we could be using instead.
diff --git a/src/net_processing.h b/src/net_processing.h
index afdef00067..f8d7a8f511 100644
--- a/src/net_processing.h
+++ b/src/net_processing.h
@@ -92,8 +92,8 @@ public:
/** Send ping message to all peers */
virtual void SendPings() = 0;
- /** Set the best height */
- virtual void SetBestHeight(int height) = 0;
+ /** Set the height of the best block and its time (seconds since epoch). */
+ virtual void SetBestBlock(int height, std::chrono::seconds time) = 0;
/* Public for unit testing. */
virtual void UnitTestMisbehaving(NodeId peer_id, int howmuch) = 0;
@@ -110,6 +110,29 @@ public:
/** This function is used for testing the stale tip eviction logic, see denialofservice_tests.cpp */
virtual void UpdateLastBlockAnnounceTime(NodeId node, int64_t time_in_seconds) = 0;
+
+ /**
+ * Gets the set of service flags which are "desirable" for a given peer.
+ *
+ * These are the flags which are required for a peer to support for them
+ * to be "interesting" to us, ie for us to wish to use one of our few
+ * outbound connection slots for or for us to wish to prioritize keeping
+ * their connection around.
+ *
+ * Relevant service flags may be peer- and state-specific in that the
+ * version of the peer may determine which flags are required (eg in the
+ * case of NODE_NETWORK_LIMITED where we seek out NODE_NETWORK peers
+ * unless they set NODE_NETWORK_LIMITED and we are out of IBD, in which
+ * case NODE_NETWORK_LIMITED suffices).
+ *
+ * Thus, generally, avoid calling with 'services' == NODE_NONE, unless
+ * state-specific flags must absolutely be avoided. When called with
+ * 'services' == NODE_NONE, the returned desirable service flags are
+ * guaranteed to not change dependent on state - ie they are suitable for
+ * use when describing peers which we know to be desirable, but for which
+ * we do not have a confirmed set of service flags.
+ */
+ virtual ServiceFlags GetDesirableServiceFlags(ServiceFlags services) const = 0;
};
#endif // BITCOIN_NET_PROCESSING_H
diff --git a/src/netaddress.h b/src/netaddress.h
index 08dd77c0ff..0bbde43dd7 100644
--- a/src/netaddress.h
+++ b/src/netaddress.h
@@ -261,6 +261,18 @@ public:
}
}
+ /**
+ * BIP155 network ids recognized by this software.
+ */
+ enum BIP155Network : uint8_t {
+ IPV4 = 1,
+ IPV6 = 2,
+ TORV2 = 3,
+ TORV3 = 4,
+ I2P = 5,
+ CJDNS = 6,
+ };
+
friend class CSubNet;
private:
@@ -283,18 +295,6 @@ private:
bool SetI2P(const std::string& addr);
/**
- * BIP155 network ids recognized by this software.
- */
- enum BIP155Network : uint8_t {
- IPV4 = 1,
- IPV6 = 2,
- TORV2 = 3,
- TORV3 = 4,
- I2P = 5,
- CJDNS = 6,
- };
-
- /**
* Size of CNetAddr when serialized as ADDRv1 (pre-BIP155) (in bytes).
*/
static constexpr size_t V1_SERIALIZATION_SIZE = ADDR_IPV6_SIZE;
diff --git a/src/node/blockstorage.cpp b/src/node/blockstorage.cpp
index e6164c2e59..c499bbfa6a 100644
--- a/src/node/blockstorage.cpp
+++ b/src/node/blockstorage.cpp
@@ -307,6 +307,7 @@ void BlockManager::FindFilesToPrune(
// Distribute our -prune budget over all chainstates.
const auto target = std::max(
MIN_DISK_SPACE_FOR_BLOCK_FILES, GetPruneTarget() / chainman.GetAll().size());
+ const uint64_t target_sync_height = chainman.m_best_header->nHeight;
if (chain.m_chain.Height() < 0 || target == 0) {
return;
@@ -329,10 +330,13 @@ void BlockManager::FindFilesToPrune(
// On a prune event, the chainstate DB is flushed.
// To avoid excessive prune events negating the benefit of high dbcache
// values, we should not prune too rapidly.
- // So when pruning in IBD, increase the buffer a bit to avoid a re-prune too soon.
- if (chainman.IsInitialBlockDownload()) {
- // Since this is only relevant during IBD, we use a fixed 10%
- nBuffer += target / 10;
+ // So when pruning in IBD, increase the buffer to avoid a re-prune too soon.
+ const auto chain_tip_height = chain.m_chain.Height();
+ if (chainman.IsInitialBlockDownload() && target_sync_height > (uint64_t)chain_tip_height) {
+ // Since this is only relevant during IBD, we assume blocks are at least 1 MB on average
+ static constexpr uint64_t average_block_size = 1000000; /* 1 MB */
+ const uint64_t remaining_blocks = target_sync_height - chain_tip_height;
+ nBuffer += average_block_size * remaining_blocks;
}
for (int fileNumber = 0; fileNumber < this->MaxBlockfileNum(); fileNumber++) {
diff --git a/src/node/miner.cpp b/src/node/miner.cpp
index ce5452d1f9..87f40e993f 100644
--- a/src/node/miner.cpp
+++ b/src/node/miner.cpp
@@ -20,8 +20,8 @@
#include <policy/policy.h>
#include <pow.h>
#include <primitives/transaction.h>
-#include <timedata.h>
#include <util/moneystr.h>
+#include <util/time.h>
#include <validation.h>
#include <algorithm>
@@ -31,7 +31,7 @@ namespace node {
int64_t UpdateTime(CBlockHeader* pblock, const Consensus::Params& consensusParams, const CBlockIndex* pindexPrev)
{
int64_t nOldTime = pblock->nTime;
- int64_t nNewTime{std::max<int64_t>(pindexPrev->GetMedianTimePast() + 1, TicksSinceEpoch<std::chrono::seconds>(GetAdjustedTime()))};
+ int64_t nNewTime{std::max<int64_t>(pindexPrev->GetMedianTimePast() + 1, TicksSinceEpoch<std::chrono::seconds>(NodeClock::now()))};
if (nOldTime < nNewTime) {
pblock->nTime = nNewTime;
@@ -133,7 +133,7 @@ std::unique_ptr<CBlockTemplate> BlockAssembler::CreateNewBlock(const CScript& sc
pblock->nVersion = gArgs.GetIntArg("-blockversion", pblock->nVersion);
}
- pblock->nTime = TicksSinceEpoch<std::chrono::seconds>(GetAdjustedTime());
+ pblock->nTime = TicksSinceEpoch<std::chrono::seconds>(NodeClock::now());
m_lock_time_cutoff = pindexPrev->GetMedianTimePast();
int nPackagesSelected = 0;
@@ -171,7 +171,7 @@ std::unique_ptr<CBlockTemplate> BlockAssembler::CreateNewBlock(const CScript& sc
BlockValidationState state;
if (m_options.test_block_validity && !TestBlockValidity(state, chainparams, m_chainstate, *pblock, pindexPrev,
- GetAdjustedTime, /*fCheckPOW=*/false, /*fCheckMerkleRoot=*/false)) {
+ /*fCheckPOW=*/false, /*fCheckMerkleRoot=*/false)) {
throw std::runtime_error(strprintf("%s: TestBlockValidity failed: %s", __func__, state.ToString()));
}
const auto time_2{SteadyClock::now()};
diff --git a/src/node/transaction.cpp b/src/node/transaction.cpp
index e8ab2326c1..ef9a30a076 100644
--- a/src/node/transaction.cpp
+++ b/src/node/transaction.cpp
@@ -32,7 +32,7 @@ static TransactionError HandleATMPError(const TxValidationState& state, std::str
TransactionError BroadcastTransaction(NodeContext& node, const CTransactionRef tx, std::string& err_string, const CAmount& max_tx_fee, bool relay, bool wait_callback)
{
- // BroadcastTransaction can be called by either sendrawtransaction RPC or the wallet.
+ // BroadcastTransaction can be called by RPC or by the wallet.
// chainman, mempool and peerman are initialized before the RPC server and wallet are started
// and reset after the RPC sever and wallet are stopped.
assert(node.chainman);
diff --git a/src/policy/fees.cpp b/src/policy/fees.cpp
index 5440548636..5f1d15c5f2 100644
--- a/src/policy/fees.cpp
+++ b/src/policy/fees.cpp
@@ -1055,7 +1055,7 @@ void CBlockPolicyEstimator::FlushUnconfirmed()
_removeTx(mi->first, false); // this calls erase() on mapMemPoolTxs
}
const auto endclear{SteadyClock::now()};
- LogPrint(BCLog::ESTIMATEFEE, "Recorded %u unconfirmed txs from mempool in %gs\n", num_entries, Ticks<SecondsDouble>(endclear - startclear));
+ LogPrint(BCLog::ESTIMATEFEE, "Recorded %u unconfirmed txs from mempool in %.3fs\n", num_entries, Ticks<SecondsDouble>(endclear - startclear));
}
std::chrono::hours CBlockPolicyEstimator::GetFeeEstimatorFileAge()
diff --git a/src/policy/rbf.cpp b/src/policy/rbf.cpp
index 76ab2b1a96..f0830d8f22 100644
--- a/src/policy/rbf.cpp
+++ b/src/policy/rbf.cpp
@@ -115,11 +115,11 @@ std::optional<std::string> HasNoNewUnconfirmed(const CTransaction& tx,
}
std::optional<std::string> EntriesAndTxidsDisjoint(const CTxMemPool::setEntries& ancestors,
- const std::set<uint256>& direct_conflicts,
+ const std::set<Txid>& direct_conflicts,
const uint256& txid)
{
for (CTxMemPool::txiter ancestorIt : ancestors) {
- const uint256& hashAncestor = ancestorIt->GetTx().GetHash();
+ const Txid& hashAncestor = ancestorIt->GetTx().GetHash();
if (direct_conflicts.count(hashAncestor)) {
return strprintf("%s spends conflicting transaction %s",
txid.ToString(),
diff --git a/src/policy/rbf.h b/src/policy/rbf.h
index fff9828482..5a33ed64a3 100644
--- a/src/policy/rbf.h
+++ b/src/policy/rbf.h
@@ -80,7 +80,7 @@ std::optional<std::string> HasNoNewUnconfirmed(const CTransaction& tx, const CTx
* @returns error message if the sets intersect, std::nullopt if they are disjoint.
*/
std::optional<std::string> EntriesAndTxidsDisjoint(const CTxMemPool::setEntries& ancestors,
- const std::set<uint256>& direct_conflicts,
+ const std::set<Txid>& direct_conflicts,
const uint256& txid);
/** Check that the feerate of the replacement transaction(s) is higher than the feerate of each
diff --git a/src/policy/v3_policy.cpp b/src/policy/v3_policy.cpp
new file mode 100644
index 0000000000..f838dc6c0f
--- /dev/null
+++ b/src/policy/v3_policy.cpp
@@ -0,0 +1,219 @@
+// Copyright (c) 2022 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#include <policy/v3_policy.h>
+
+#include <coins.h>
+#include <consensus/amount.h>
+#include <logging.h>
+#include <tinyformat.h>
+#include <util/check.h>
+
+#include <algorithm>
+#include <numeric>
+#include <vector>
+
+/** Helper for PackageV3Checks: Returns a vector containing the indices of transactions (within
+ * package) that are direct parents of ptx. */
+std::vector<size_t> FindInPackageParents(const Package& package, const CTransactionRef& ptx)
+{
+ std::vector<size_t> in_package_parents;
+
+ std::set<Txid> possible_parents;
+ for (auto &input : ptx->vin) {
+ possible_parents.insert(input.prevout.hash);
+ }
+
+ for (size_t i{0}; i < package.size(); ++i) {
+ const auto& tx = package.at(i);
+ // We assume the package is sorted, so that we don't need to continue
+ // looking past the transaction itself.
+ if (&(*tx) == &(*ptx)) break;
+ if (possible_parents.count(tx->GetHash())) {
+ in_package_parents.push_back(i);
+ }
+ }
+ return in_package_parents;
+}
+
+/** Helper for PackageV3Checks, storing info for a mempool or package parent. */
+struct ParentInfo {
+ /** Txid used to identify this parent by prevout */
+ const Txid& m_txid;
+ /** Wtxid used for debug string */
+ const Wtxid& m_wtxid;
+ /** nVersion used to check inheritance of v3 and non-v3 */
+ decltype(CTransaction::nVersion) m_version;
+ /** If parent is in mempool, whether it has any descendants in mempool. */
+ bool m_has_mempool_descendant;
+
+ ParentInfo() = delete;
+ ParentInfo(const Txid& txid, const Wtxid& wtxid, decltype(CTransaction::nVersion) version, bool has_mempool_descendant) :
+ m_txid{txid}, m_wtxid{wtxid}, m_version{version},
+ m_has_mempool_descendant{has_mempool_descendant}
+ {}
+};
+
+std::optional<std::string> PackageV3Checks(const CTransactionRef& ptx, int64_t vsize,
+ const Package& package,
+ const CTxMemPool::setEntries& mempool_ancestors)
+{
+ // This function is specialized for these limits, and must be reimplemented if they ever change.
+ static_assert(V3_ANCESTOR_LIMIT == 2);
+ static_assert(V3_DESCENDANT_LIMIT == 2);
+
+ const auto in_package_parents{FindInPackageParents(package, ptx)};
+
+ // Now we have all ancestors, so we can start checking v3 rules.
+ if (ptx->nVersion == 3) {
+ if (mempool_ancestors.size() + in_package_parents.size() + 1 > V3_ANCESTOR_LIMIT) {
+ return strprintf("tx %s (wtxid=%s) would have too many ancestors",
+ ptx->GetHash().ToString(), ptx->GetWitnessHash().ToString());
+ }
+
+ const bool has_parent{mempool_ancestors.size() + in_package_parents.size() > 0};
+ if (has_parent) {
+ // A v3 child cannot be too large.
+ if (vsize > V3_CHILD_MAX_VSIZE) {
+ return strprintf("v3 child tx %s (wtxid=%s) is too big: %u > %u virtual bytes",
+ ptx->GetHash().ToString(), ptx->GetWitnessHash().ToString(),
+ vsize, V3_CHILD_MAX_VSIZE);
+ }
+
+ // Exactly 1 parent exists, either in mempool or package. Find it.
+ const auto parent_info = [&] {
+ if (mempool_ancestors.size() > 0) {
+ auto& mempool_parent = *mempool_ancestors.begin();
+ Assume(mempool_parent->GetCountWithDescendants() == 1);
+ return ParentInfo{mempool_parent->GetTx().GetHash(),
+ mempool_parent->GetTx().GetWitnessHash(),
+ mempool_parent->GetTx().nVersion,
+ /*has_mempool_descendant=*/mempool_parent->GetCountWithDescendants() > 1};
+ } else {
+ auto& parent_index = in_package_parents.front();
+ auto& package_parent = package.at(parent_index);
+ return ParentInfo{package_parent->GetHash(),
+ package_parent->GetWitnessHash(),
+ package_parent->nVersion,
+ /*has_mempool_descendant=*/false};
+ }
+ }();
+
+ // If there is a parent, it must have the right version.
+ if (parent_info.m_version != 3) {
+ return strprintf("v3 tx %s (wtxid=%s) cannot spend from non-v3 tx %s (wtxid=%s)",
+ ptx->GetHash().ToString(), ptx->GetWitnessHash().ToString(),
+ parent_info.m_txid.ToString(), parent_info.m_wtxid.ToString());
+ }
+
+ for (const auto& package_tx : package) {
+ // Skip same tx.
+ if (&(*package_tx) == &(*ptx)) continue;
+
+ for (auto& input : package_tx->vin) {
+ // Fail if we find another tx with the same parent. We don't check whether the
+ // sibling is to-be-replaced (done in SingleV3Checks) because these transactions
+ // are within the same package.
+ if (input.prevout.hash == parent_info.m_txid) {
+ return strprintf("tx %s (wtxid=%s) would exceed descendant count limit",
+ parent_info.m_txid.ToString(),
+ parent_info.m_wtxid.ToString());
+ }
+
+ // This tx can't have both a parent and an in-package child.
+ if (input.prevout.hash == ptx->GetHash()) {
+ return strprintf("tx %s (wtxid=%s) would have too many ancestors",
+ package_tx->GetHash().ToString(), package_tx->GetWitnessHash().ToString());
+ }
+ }
+ }
+
+ // It shouldn't be possible to have any mempool siblings at this point. SingleV3Checks
+ // catches mempool siblings. Also, if the package consists of connected transactions,
+ // any tx having a mempool ancestor would mean the package exceeds ancestor limits.
+ if (!Assume(!parent_info.m_has_mempool_descendant)) {
+ return strprintf("tx %u would exceed descendant count limit", parent_info.m_wtxid.ToString());
+ }
+ }
+ } else {
+ // Non-v3 transactions cannot have v3 parents.
+ for (auto it : mempool_ancestors) {
+ if (it->GetTx().nVersion == 3) {
+ return strprintf("non-v3 tx %s (wtxid=%s) cannot spend from v3 tx %s (wtxid=%s)",
+ ptx->GetHash().ToString(), ptx->GetWitnessHash().ToString(),
+ it->GetSharedTx()->GetHash().ToString(), it->GetSharedTx()->GetWitnessHash().ToString());
+ }
+ }
+ for (const auto& index: in_package_parents) {
+ if (package.at(index)->nVersion == 3) {
+ return strprintf("non-v3 tx %s (wtxid=%s) cannot spend from v3 tx %s (wtxid=%s)",
+ ptx->GetHash().ToString(),
+ ptx->GetWitnessHash().ToString(),
+ package.at(index)->GetHash().ToString(),
+ package.at(index)->GetWitnessHash().ToString());
+ }
+ }
+ }
+ return std::nullopt;
+}
+
+std::optional<std::string> SingleV3Checks(const CTransactionRef& ptx,
+ const CTxMemPool::setEntries& mempool_ancestors,
+ const std::set<Txid>& direct_conflicts,
+ int64_t vsize)
+{
+ // Check v3 and non-v3 inheritance.
+ for (const auto& entry : mempool_ancestors) {
+ if (ptx->nVersion != 3 && entry->GetTx().nVersion == 3) {
+ return strprintf("non-v3 tx %s (wtxid=%s) cannot spend from v3 tx %s (wtxid=%s)",
+ ptx->GetHash().ToString(), ptx->GetWitnessHash().ToString(),
+ entry->GetSharedTx()->GetHash().ToString(), entry->GetSharedTx()->GetWitnessHash().ToString());
+ } else if (ptx->nVersion == 3 && entry->GetTx().nVersion != 3) {
+ return strprintf("v3 tx %s (wtxid=%s) cannot spend from non-v3 tx %s (wtxid=%s)",
+ ptx->GetHash().ToString(), ptx->GetWitnessHash().ToString(),
+ entry->GetSharedTx()->GetHash().ToString(), entry->GetSharedTx()->GetWitnessHash().ToString());
+ }
+ }
+
+ // This function is specialized for these limits, and must be reimplemented if they ever change.
+ static_assert(V3_ANCESTOR_LIMIT == 2);
+ static_assert(V3_DESCENDANT_LIMIT == 2);
+
+ // The rest of the rules only apply to transactions with nVersion=3.
+ if (ptx->nVersion != 3) return std::nullopt;
+
+ // Check that V3_ANCESTOR_LIMIT would not be violated.
+ if (mempool_ancestors.size() + 1 > V3_ANCESTOR_LIMIT) {
+ return strprintf("tx %s (wtxid=%s) would have too many ancestors",
+ ptx->GetHash().ToString(), ptx->GetWitnessHash().ToString());
+ }
+
+ // Remaining checks only pertain to transactions with unconfirmed ancestors.
+ if (mempool_ancestors.size() > 0) {
+ // If this transaction spends V3 parents, it cannot be too large.
+ if (vsize > V3_CHILD_MAX_VSIZE) {
+ return strprintf("v3 child tx %s (wtxid=%s) is too big: %u > %u virtual bytes",
+ ptx->GetHash().ToString(), ptx->GetWitnessHash().ToString(), vsize, V3_CHILD_MAX_VSIZE);
+ }
+
+ // Check the descendant counts of in-mempool ancestors.
+ const auto& parent_entry = *mempool_ancestors.begin();
+ // If there are any ancestors, this is the only child allowed. The parent cannot have any
+ // other descendants. We handle the possibility of multiple children as that case is
+ // possible through a reorg.
+ const auto& children = parent_entry->GetMemPoolChildrenConst();
+ // Don't double-count a transaction that is going to be replaced. This logic assumes that
+ // any descendant of the V3 transaction is a direct child, which makes sense because a V3
+ // transaction can only have 1 descendant.
+ const bool child_will_be_replaced = !children.empty() &&
+ std::any_of(children.cbegin(), children.cend(),
+ [&direct_conflicts](const CTxMemPoolEntry& child){return direct_conflicts.count(child.GetTx().GetHash()) > 0;});
+ if (parent_entry->GetCountWithDescendants() + 1 > V3_DESCENDANT_LIMIT && !child_will_be_replaced) {
+ return strprintf("tx %u (wtxid=%s) would exceed descendant count limit",
+ parent_entry->GetSharedTx()->GetHash().ToString(),
+ parent_entry->GetSharedTx()->GetWitnessHash().ToString());
+ }
+ }
+ return std::nullopt;
+}
diff --git a/src/policy/v3_policy.h b/src/policy/v3_policy.h
new file mode 100644
index 0000000000..9e871915e5
--- /dev/null
+++ b/src/policy/v3_policy.h
@@ -0,0 +1,83 @@
+// Copyright (c) 2022 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#ifndef BITCOIN_POLICY_V3_POLICY_H
+#define BITCOIN_POLICY_V3_POLICY_H
+
+#include <consensus/amount.h>
+#include <policy/packages.h>
+#include <policy/policy.h>
+#include <primitives/transaction.h>
+#include <txmempool.h>
+#include <util/result.h>
+
+#include <set>
+#include <string>
+
+// This module enforces rules for transactions with nVersion=3 ("v3 transactions") which help make
+// RBF abilities more robust.
+
+// v3 only allows 1 parent and 1 child when unconfirmed.
+/** Maximum number of transactions including an unconfirmed tx and its descendants. */
+static constexpr unsigned int V3_DESCENDANT_LIMIT{2};
+/** Maximum number of transactions including a V3 tx and all its mempool ancestors. */
+static constexpr unsigned int V3_ANCESTOR_LIMIT{2};
+
+/** Maximum sigop-adjusted virtual size of a tx which spends from an unconfirmed v3 transaction. */
+static constexpr int64_t V3_CHILD_MAX_VSIZE{1000};
+// These limits are within the default ancestor/descendant limits.
+static_assert(V3_CHILD_MAX_VSIZE + MAX_STANDARD_TX_WEIGHT / WITNESS_SCALE_FACTOR <= DEFAULT_ANCESTOR_SIZE_LIMIT_KVB * 1000);
+static_assert(V3_CHILD_MAX_VSIZE + MAX_STANDARD_TX_WEIGHT / WITNESS_SCALE_FACTOR <= DEFAULT_DESCENDANT_SIZE_LIMIT_KVB * 1000);
+
+/** Must be called for every transaction, even if not v3. Not strictly necessary for transactions
+ * accepted through AcceptMultipleTransactions.
+ *
+ * Checks the following rules:
+ * 1. A v3 tx must only have v3 unconfirmed ancestors.
+ * 2. A non-v3 tx must only have non-v3 unconfirmed ancestors.
+ * 3. A v3's ancestor set, including itself, must be within V3_ANCESTOR_LIMIT.
+ * 4. A v3's descendant set, including itself, must be within V3_DESCENDANT_LIMIT.
+ * 5. If a v3 tx has any unconfirmed ancestors, the tx's sigop-adjusted vsize must be within
+ * V3_CHILD_MAX_VSIZE.
+ *
+ *
+ * @param[in] mempool_ancestors The in-mempool ancestors of ptx.
+ * @param[in] direct_conflicts In-mempool transactions this tx conflicts with. These conflicts
+ * are used to more accurately calculate the resulting descendant
+ * count of in-mempool ancestors.
+ * @param[in] vsize The sigop-adjusted virtual size of ptx.
+ *
+ * @returns debug string if an error occurs, std::nullopt otherwise.
+ */
+std::optional<std::string> SingleV3Checks(const CTransactionRef& ptx,
+ const CTxMemPool::setEntries& mempool_ancestors,
+ const std::set<Txid>& direct_conflicts,
+ int64_t vsize);
+
+/** Must be called for every transaction that is submitted within a package, even if not v3.
+ *
+ * For each transaction in a package:
+ * If it's not a v3 transaction, verify it has no direct v3 parents in the mempool or the package.
+
+ * If it is a v3 transaction, verify that any direct parents in the mempool or the package are v3.
+ * If such a parent exists, verify that parent has no other children in the package or the mempool,
+ * and that the transaction itself has no children in the package.
+ *
+ * If any v3 violations in the package exist, this test will fail for one of them:
+ * - if a v3 transaction T has a parent in the mempool and a child in the package, then PV3C(T) will fail
+ * - if a v3 transaction T has a parent in the package and a child in the package, then PV3C(T) will fail
+ * - if a v3 transaction T and a v3 (sibling) transaction U have some parent in the mempool,
+ * then PV3C(T) and PV3C(U) will fail
+ * - if a v3 transaction T and a v3 (sibling) transaction U have some parent in the package,
+ * then PV3C(T) and PV3C(U) will fail
+ * - if a v3 transaction T has a parent P and a grandparent G in the package, then
+ * PV3C(P) will fail (though PV3C(G) and PV3C(T) might succeed).
+ *
+ * @returns debug string if an error occurs, std::nullopt otherwise.
+ * */
+std::optional<std::string> PackageV3Checks(const CTransactionRef& ptx, int64_t vsize,
+ const Package& package,
+ const CTxMemPool::setEntries& mempool_ancestors);
+
+#endif // BITCOIN_POLICY_V3_POLICY_H
diff --git a/src/prevector.h b/src/prevector.h
index bcab1ff00c..4776db789b 100644
--- a/src/prevector.h
+++ b/src/prevector.h
@@ -47,26 +47,28 @@ public:
typedef const value_type* const_pointer;
class iterator {
- T* ptr;
+ T* ptr{};
public:
typedef Diff difference_type;
typedef T value_type;
typedef T* pointer;
typedef T& reference;
- typedef std::random_access_iterator_tag iterator_category;
+ using element_type = T;
+ using iterator_category = std::contiguous_iterator_tag;
+ iterator() = default;
iterator(T* ptr_) : ptr(ptr_) {}
T& operator*() const { return *ptr; }
T* operator->() const { return ptr; }
- T& operator[](size_type pos) { return ptr[pos]; }
- const T& operator[](size_type pos) const { return ptr[pos]; }
+ T& operator[](size_type pos) const { return ptr[pos]; }
iterator& operator++() { ptr++; return *this; }
iterator& operator--() { ptr--; return *this; }
iterator operator++(int) { iterator copy(*this); ++(*this); return copy; }
iterator operator--(int) { iterator copy(*this); --(*this); return copy; }
difference_type friend operator-(iterator a, iterator b) { return (&(*a) - &(*b)); }
- iterator operator+(size_type n) { return iterator(ptr + n); }
+ iterator operator+(size_type n) const { return iterator(ptr + n); }
+ iterator friend operator+(size_type n, iterator x) { return x + n; }
iterator& operator+=(size_type n) { ptr += n; return *this; }
- iterator operator-(size_type n) { return iterator(ptr - n); }
+ iterator operator-(size_type n) const { return iterator(ptr - n); }
iterator& operator-=(size_type n) { ptr -= n; return *this; }
bool operator==(iterator x) const { return ptr == x.ptr; }
bool operator!=(iterator x) const { return ptr != x.ptr; }
@@ -77,18 +79,17 @@ public:
};
class reverse_iterator {
- T* ptr;
+ T* ptr{};
public:
typedef Diff difference_type;
typedef T value_type;
typedef T* pointer;
typedef T& reference;
typedef std::bidirectional_iterator_tag iterator_category;
+ reverse_iterator() = default;
reverse_iterator(T* ptr_) : ptr(ptr_) {}
- T& operator*() { return *ptr; }
- const T& operator*() const { return *ptr; }
- T* operator->() { return ptr; }
- const T* operator->() const { return ptr; }
+ T& operator*() const { return *ptr; }
+ T* operator->() const { return ptr; }
reverse_iterator& operator--() { ptr++; return *this; }
reverse_iterator& operator++() { ptr--; return *this; }
reverse_iterator operator++(int) { reverse_iterator copy(*this); ++(*this); return copy; }
@@ -98,13 +99,15 @@ public:
};
class const_iterator {
- const T* ptr;
+ const T* ptr{};
public:
typedef Diff difference_type;
typedef const T value_type;
typedef const T* pointer;
typedef const T& reference;
- typedef std::random_access_iterator_tag iterator_category;
+ using element_type = const T;
+ using iterator_category = std::contiguous_iterator_tag;
+ const_iterator() = default;
const_iterator(const T* ptr_) : ptr(ptr_) {}
const_iterator(iterator x) : ptr(&(*x)) {}
const T& operator*() const { return *ptr; }
@@ -115,9 +118,10 @@ public:
const_iterator operator++(int) { const_iterator copy(*this); ++(*this); return copy; }
const_iterator operator--(int) { const_iterator copy(*this); --(*this); return copy; }
difference_type friend operator-(const_iterator a, const_iterator b) { return (&(*a) - &(*b)); }
- const_iterator operator+(size_type n) { return const_iterator(ptr + n); }
+ const_iterator operator+(size_type n) const { return const_iterator(ptr + n); }
+ const_iterator friend operator+(size_type n, const_iterator x) { return x + n; }
const_iterator& operator+=(size_type n) { ptr += n; return *this; }
- const_iterator operator-(size_type n) { return const_iterator(ptr - n); }
+ const_iterator operator-(size_type n) const { return const_iterator(ptr - n); }
const_iterator& operator-=(size_type n) { ptr -= n; return *this; }
bool operator==(const_iterator x) const { return ptr == x.ptr; }
bool operator!=(const_iterator x) const { return ptr != x.ptr; }
@@ -128,13 +132,14 @@ public:
};
class const_reverse_iterator {
- const T* ptr;
+ const T* ptr{};
public:
typedef Diff difference_type;
typedef const T value_type;
typedef const T* pointer;
typedef const T& reference;
typedef std::bidirectional_iterator_tag iterator_category;
+ const_reverse_iterator() = default;
const_reverse_iterator(const T* ptr_) : ptr(ptr_) {}
const_reverse_iterator(reverse_iterator x) : ptr(&(*x)) {}
const T& operator*() const { return *ptr; }
diff --git a/src/protocol.cpp b/src/protocol.cpp
index 27a0a2ffc1..0da160768d 100644
--- a/src/protocol.cpp
+++ b/src/protocol.cpp
@@ -9,8 +9,6 @@
#include <atomic>
-static std::atomic<bool> g_initial_block_download_completed(false);
-
namespace NetMsgType {
const char* VERSION = "version";
const char* VERACK = "verack";
@@ -125,18 +123,6 @@ bool CMessageHeader::IsCommandValid() const
return true;
}
-
-ServiceFlags GetDesirableServiceFlags(ServiceFlags services) {
- if ((services & NODE_NETWORK_LIMITED) && g_initial_block_download_completed) {
- return ServiceFlags(NODE_NETWORK_LIMITED | NODE_WITNESS);
- }
- return ServiceFlags(NODE_NETWORK | NODE_WITNESS);
-}
-
-void SetServiceFlagsIBDCache(bool state) {
- g_initial_block_download_completed = state;
-}
-
CInv::CInv()
{
type = 0;
diff --git a/src/protocol.h b/src/protocol.h
index e405253632..243cd23e6e 100644
--- a/src/protocol.h
+++ b/src/protocol.h
@@ -311,43 +311,12 @@ enum ServiceFlags : uint64_t {
std::vector<std::string> serviceFlagsToStr(uint64_t flags);
/**
- * Gets the set of service flags which are "desirable" for a given peer.
- *
- * These are the flags which are required for a peer to support for them
- * to be "interesting" to us, ie for us to wish to use one of our few
- * outbound connection slots for or for us to wish to prioritize keeping
- * their connection around.
- *
- * Relevant service flags may be peer- and state-specific in that the
- * version of the peer may determine which flags are required (eg in the
- * case of NODE_NETWORK_LIMITED where we seek out NODE_NETWORK peers
- * unless they set NODE_NETWORK_LIMITED and we are out of IBD, in which
- * case NODE_NETWORK_LIMITED suffices).
- *
- * Thus, generally, avoid calling with peerServices == NODE_NONE, unless
- * state-specific flags must absolutely be avoided. When called with
- * peerServices == NODE_NONE, the returned desirable service flags are
- * guaranteed to not change dependent on state - ie they are suitable for
- * use when describing peers which we know to be desirable, but for which
- * we do not have a confirmed set of service flags.
- *
- * If the NODE_NONE return value is changed, contrib/seeds/makeseeds.py
- * should be updated appropriately to filter for the same nodes.
- */
-ServiceFlags GetDesirableServiceFlags(ServiceFlags services);
-
-/** Set the current IBD status in order to figure out the desirable service flags */
-void SetServiceFlagsIBDCache(bool status);
-
-/**
- * A shortcut for (services & GetDesirableServiceFlags(services))
- * == GetDesirableServiceFlags(services), ie determines whether the given
- * set of service flags are sufficient for a peer to be "relevant".
- */
-static inline bool HasAllDesirableServiceFlags(ServiceFlags services)
-{
- return !(GetDesirableServiceFlags(services) & (~services));
-}
+ * State independent service flags.
+ * If the return value is changed, contrib/seeds/makeseeds.py
+ * should be updated appropriately to filter for nodes with
+ * desired service flags (compatible with our new flags).
+ */
+constexpr ServiceFlags SeedsServiceFlags() { return ServiceFlags(NODE_NETWORK | NODE_WITNESS); }
/**
* Checks if a peer with the given service flags may be capable of having a
diff --git a/src/qt/bitcoin_locale.qrc b/src/qt/bitcoin_locale.qrc
index cdfa98acea..d10387f226 100644
--- a/src/qt/bitcoin_locale.qrc
+++ b/src/qt/bitcoin_locale.qrc
@@ -1,7 +1,7 @@
<!DOCTYPE RCC><RCC version="1.0">
<qresource prefix="/translations">
+ <file alias="af">locale/bitcoin_af.qm</file>
<file alias="am">locale/bitcoin_am.qm</file>
- <file alias="ar">locale/bitcoin_ar.qm</file>
<file alias="az">locale/bitcoin_az.qm</file>
<file alias="az@latin">locale/bitcoin_az@latin.qm</file>
<file alias="be">locale/bitcoin_be.qm</file>
@@ -32,6 +32,7 @@
<file alias="fa">locale/bitcoin_fa.qm</file>
<file alias="fi">locale/bitcoin_fi.qm</file>
<file alias="fil">locale/bitcoin_fil.qm</file>
+ <file alias="fo">locale/bitcoin_fo.qm</file>
<file alias="fr">locale/bitcoin_fr.qm</file>
<file alias="fr_CM">locale/bitcoin_fr_CM.qm</file>
<file alias="fr_LU">locale/bitcoin_fr_LU.qm</file>
@@ -53,6 +54,7 @@
<file alias="ja">locale/bitcoin_ja.qm</file>
<file alias="ka">locale/bitcoin_ka.qm</file>
<file alias="kk">locale/bitcoin_kk.qm</file>
+ <file alias="kk@latin">locale/bitcoin_kk@latin.qm</file>
<file alias="kl">locale/bitcoin_kl.qm</file>
<file alias="km">locale/bitcoin_km.qm</file>
<file alias="kn">locale/bitcoin_kn.qm</file>
@@ -61,15 +63,18 @@
<file alias="ku_IQ">locale/bitcoin_ku_IQ.qm</file>
<file alias="ky">locale/bitcoin_ky.qm</file>
<file alias="la">locale/bitcoin_la.qm</file>
+ <file alias="lb">locale/bitcoin_lb.qm</file>
<file alias="lt">locale/bitcoin_lt.qm</file>
<file alias="lv">locale/bitcoin_lv.qm</file>
<file alias="mg">locale/bitcoin_mg.qm</file>
+ <file alias="mi">locale/bitcoin_mi.qm</file>
<file alias="mk">locale/bitcoin_mk.qm</file>
<file alias="ml">locale/bitcoin_ml.qm</file>
<file alias="mn">locale/bitcoin_mn.qm</file>
<file alias="mr">locale/bitcoin_mr.qm</file>
<file alias="mr_IN">locale/bitcoin_mr_IN.qm</file>
<file alias="ms">locale/bitcoin_ms.qm</file>
+ <file alias="mt">locale/bitcoin_mt.qm</file>
<file alias="my">locale/bitcoin_my.qm</file>
<file alias="nb">locale/bitcoin_nb.qm</file>
<file alias="ne">locale/bitcoin_ne.qm</file>
@@ -79,11 +84,12 @@
<file alias="pam">locale/bitcoin_pam.qm</file>
<file alias="pl">locale/bitcoin_pl.qm</file>
<file alias="pt">locale/bitcoin_pt.qm</file>
- <file alias="pt@qtfiletype">locale/bitcoin_pt@qtfiletype.qm</file>
<file alias="pt_BR">locale/bitcoin_pt_BR.qm</file>
<file alias="ro">locale/bitcoin_ro.qm</file>
<file alias="ru">locale/bitcoin_ru.qm</file>
+ <file alias="ru_RU">locale/bitcoin_ru_RU.qm</file>
<file alias="sc">locale/bitcoin_sc.qm</file>
+ <file alias="sd">locale/bitcoin_sd.qm</file>
<file alias="si">locale/bitcoin_si.qm</file>
<file alias="sk">locale/bitcoin_sk.qm</file>
<file alias="sl">locale/bitcoin_sl.qm</file>
diff --git a/src/qt/bitcoingui.cpp b/src/qt/bitcoingui.cpp
index fd71938b60..3e177af53c 100644
--- a/src/qt/bitcoingui.cpp
+++ b/src/qt/bitcoingui.cpp
@@ -673,8 +673,10 @@ void BitcoinGUI::setClientModel(ClientModel *_clientModel, interfaces::BlockAndH
#ifdef ENABLE_WALLET
void BitcoinGUI::enableHistoryAction(bool privacy)
{
- historyAction->setEnabled(!privacy);
- if (historyAction->isChecked()) gotoOverviewPage();
+ if (walletFrame->currentWalletModel()) {
+ historyAction->setEnabled(!privacy);
+ if (historyAction->isChecked()) gotoOverviewPage();
+ }
}
void BitcoinGUI::setWalletController(WalletController* wallet_controller, bool show_loading_minimized)
diff --git a/src/qt/bitcoinstrings.cpp b/src/qt/bitcoinstrings.cpp
index d7b1c70c59..6035647f1c 100644
--- a/src/qt/bitcoinstrings.cpp
+++ b/src/qt/bitcoinstrings.cpp
@@ -258,6 +258,7 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Disk space is too low!"),
QT_TRANSLATE_NOOP("bitcoin-core", "Do you want to rebuild the block database now?"),
QT_TRANSLATE_NOOP("bitcoin-core", "Done loading"),
QT_TRANSLATE_NOOP("bitcoin-core", "Dump file %s does not exist."),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error committing db txn for wallet transactions removal"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error creating %s"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error initializing block database"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error initializing wallet database environment %s!"),
@@ -270,9 +271,10 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Error opening block database"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error reading configuration file: %s"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error reading from database, shutting down."),
QT_TRANSLATE_NOOP("bitcoin-core", "Error reading next record from wallet database"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error starting db txn for wallet transactions removal"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Cannot extract destination from the generated scriptpubkey"),
-QT_TRANSLATE_NOOP("bitcoin-core", "Error: Could not add watchonly tx to watchonly wallet"),
-QT_TRANSLATE_NOOP("bitcoin-core", "Error: Could not delete watchonly transactions"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error: Could not add watchonly tx %s to watchonly wallet"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error: Could not delete watchonly transactions. "),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Couldn't create cursor into database"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Disk space is low for %s"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Dumpfile checksum does not match. Computed %s, expected %s"),
@@ -282,19 +284,24 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Error: Got value that was not hex: %s"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Keypool ran out, please call keypoolrefill first"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Missing checksum"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: No %s addresses available."),
-QT_TRANSLATE_NOOP("bitcoin-core", "Error: Not all watchonly txs could be deleted"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: This wallet already uses SQLite"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: This wallet is already a descriptor wallet"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to begin reading all records in the database"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to make a backup of your wallet"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to parse version %u as a uint32_t"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to read all records in the database"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to read wallet's best block locator record"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to remove watchonly address book data"),
QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to write record to new wallet"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to write solvable wallet best block locator record"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error: Unable to write watchonly wallet best block locator record"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error: address book copy failed for wallet %s"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Error: database transaction cannot be executed for wallet %s"),
QT_TRANSLATE_NOOP("bitcoin-core", "Failed to listen on any port. Use -listen=0 if you want this."),
QT_TRANSLATE_NOOP("bitcoin-core", "Failed to rescan the wallet during initialization"),
QT_TRANSLATE_NOOP("bitcoin-core", "Failed to start indexes, shutting down.."),
QT_TRANSLATE_NOOP("bitcoin-core", "Failed to verify database"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Failure removing transaction: %s"),
QT_TRANSLATE_NOOP("bitcoin-core", "Fee rate (%s) is lower than the minimum fee rate setting (%s)"),
QT_TRANSLATE_NOOP("bitcoin-core", "Ignoring duplicate -wallet %s."),
QT_TRANSLATE_NOOP("bitcoin-core", "Importing…"),
@@ -352,10 +359,10 @@ QT_TRANSLATE_NOOP("bitcoin-core", "The wallet will avoid paying less than the mi
QT_TRANSLATE_NOOP("bitcoin-core", "This is experimental software."),
QT_TRANSLATE_NOOP("bitcoin-core", "This is the minimum transaction fee you pay on every transaction."),
QT_TRANSLATE_NOOP("bitcoin-core", "This is the transaction fee you will pay if you send a transaction."),
+QT_TRANSLATE_NOOP("bitcoin-core", "Transaction %s does not belong to this wallet"),
QT_TRANSLATE_NOOP("bitcoin-core", "Transaction amount too small"),
QT_TRANSLATE_NOOP("bitcoin-core", "Transaction amounts must not be negative"),
QT_TRANSLATE_NOOP("bitcoin-core", "Transaction change output index out of range"),
-QT_TRANSLATE_NOOP("bitcoin-core", "Transaction has too long of a mempool chain"),
QT_TRANSLATE_NOOP("bitcoin-core", "Transaction must have at least one recipient"),
QT_TRANSLATE_NOOP("bitcoin-core", "Transaction needs a change address, but we can't generate it."),
QT_TRANSLATE_NOOP("bitcoin-core", "Transaction too large"),
@@ -380,6 +387,7 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Unsupported logging category %s=%s."),
QT_TRANSLATE_NOOP("bitcoin-core", "User Agent comment (%s) contains unsafe characters."),
QT_TRANSLATE_NOOP("bitcoin-core", "Verifying blocks…"),
QT_TRANSLATE_NOOP("bitcoin-core", "Verifying wallet(s)…"),
+QT_TRANSLATE_NOOP("bitcoin-core", "Wallet file creation failed: %s"),
QT_TRANSLATE_NOOP("bitcoin-core", "Wallet needed to be rewritten: restart %s to complete"),
QT_TRANSLATE_NOOP("bitcoin-core", "acceptstalefeeestimates is not supported on %s chain."),
};
diff --git a/src/qt/forms/optionsdialog.ui b/src/qt/forms/optionsdialog.ui
index 6be47e94fe..99fb238772 100644
--- a/src/qt/forms/optionsdialog.ui
+++ b/src/qt/forms/optionsdialog.ui
@@ -772,104 +772,29 @@
</layout>
</item>
<item>
- <widget class="QGroupBox" name="font_groupBox">
- <property name="title">
- <string>Monospaced font in the Overview tab:</string>
- </property>
- <layout class="QVBoxLayout" name="font_verticalLayout">
- <item>
- <layout class="QHBoxLayout" name="embeddedFont_horizontalLayout">
- <item>
- <widget class="QRadioButton" name="embeddedFont_radioButton">
- <property name="text">
- <string>embedded &quot;%1&quot;</string>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="embeddedFont_horizontalSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <layout class="QVBoxLayout" name="embeddedFont_verticalLayout">
- <item>
- <widget class="QLabel" name="embeddedFont_label_1">
- <property name="text">
- <string notr="true">111.11111111 BTC</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="embeddedFont_label_9">
- <property name="text">
- <string notr="true">909.09090909 BTC</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </item>
- <item>
- <widget class="Line" name="font_line">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
- <item>
- <layout class="QHBoxLayout" name="systemFont_horizontalLayout">
- <item>
- <widget class="QRadioButton" name="systemFont_radioButton">
- <property name="text">
- <string>closest matching &quot;%1&quot;</string>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="systemFont_horizontalSpacer">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <layout class="QVBoxLayout" name="systemFont_verticalLayout">
- <item>
- <widget class="QLabel" name="systemFont_label_1">
- <property name="text">
- <string notr="true">111.11111111 BTC</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QLabel" name="systemFont_label_9">
- <property name="text">
- <string notr="true">909.09090909 BTC</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
+ <layout class="QHBoxLayout" name="horizontalLayout_4_Display">
+ <item>
+ <widget class="QLabel" name="moneyFontLabel">
+ <property name="text">
+ <string>Font in the Overview tab: </string>
+ </property>
+ <property name="buddy">
+ <cstring>moneyFont</cstring>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QComboBox" name="moneyFont"/>
+ </item>
+ <item>
+ <widget class="QLabel" name="moneyFont_preview">
+ <property name="text">
+ <string notr="true">111.11111111 BTC
+909.09090909 BTC</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
</item>
<item>
<spacer name="verticalSpacer_Display">
diff --git a/src/qt/guiconstants.h b/src/qt/guiconstants.h
index 0f76770772..0386689baf 100644
--- a/src/qt/guiconstants.h
+++ b/src/qt/guiconstants.h
@@ -25,7 +25,7 @@ static const int STATUSBAR_ICONSIZE = 16;
static const bool DEFAULT_SPLASHSCREEN = true;
/* Invalid field background style */
-#define STYLE_INVALID "background:#FF8080"
+#define STYLE_INVALID "border: 3px solid #FF8080"
/* Transaction list -- unconfirmed transaction */
#define COLOR_UNCONFIRMED QColor(128, 128, 128)
diff --git a/src/qt/intro.cpp b/src/qt/intro.cpp
index f86b167076..5371dbaa30 100644
--- a/src/qt/intro.cpp
+++ b/src/qt/intro.cpp
@@ -142,8 +142,9 @@ Intro::Intro(QWidget *parent, int64_t blockchain_size_gb, int64_t chain_state_si
const int min_prune_target_GB = std::ceil(MIN_DISK_SPACE_FOR_BLOCK_FILES / 1e9);
ui->pruneGB->setRange(min_prune_target_GB, std::numeric_limits<int>::max());
- if (gArgs.GetIntArg("-prune", 0) > 1) { // -prune=1 means enabled, above that it's a size in MiB
- ui->prune->setChecked(true);
+ if (gArgs.IsArgSet("-prune")) {
+ m_prune_checkbox_is_default = false;
+ ui->prune->setChecked(gArgs.GetIntArg("-prune", 0) >= 1);
ui->prune->setEnabled(false);
}
ui->pruneGB->setValue(m_prune_target_gb);
@@ -152,6 +153,7 @@ Intro::Intro(QWidget *parent, int64_t blockchain_size_gb, int64_t chain_state_si
UpdatePruneLabels(ui->prune->isChecked());
connect(ui->prune, &QCheckBox::toggled, [this](bool prune_checked) {
+ m_prune_checkbox_is_default = false;
UpdatePruneLabels(prune_checked);
UpdateFreeSpaceLabel();
});
@@ -287,7 +289,7 @@ void Intro::setStatus(int status, const QString &message, quint64 bytesAvailable
ui->freeSpace->setText("");
} else {
m_bytes_available = bytesAvailable;
- if (ui->prune->isEnabled() && !(gArgs.IsArgSet("-prune") && gArgs.GetIntArg("-prune", 0) == 0)) {
+ if (ui->prune->isEnabled() && m_prune_checkbox_is_default) {
ui->prune->setChecked(m_bytes_available < (m_blockchain_size_gb + m_chain_state_size_gb + 10) * GB_BYTES);
}
UpdateFreeSpaceLabel();
diff --git a/src/qt/intro.h b/src/qt/intro.h
index 900c657b27..7b34c73b02 100644
--- a/src/qt/intro.h
+++ b/src/qt/intro.h
@@ -64,6 +64,7 @@ private Q_SLOTS:
private:
Ui::Intro *ui;
+ bool m_prune_checkbox_is_default{true};
QThread* thread{nullptr};
QMutex mutex;
bool signalled{false};
diff --git a/src/qt/locale/bitcoin_af.ts b/src/qt/locale/bitcoin_af.ts
new file mode 100644
index 0000000000..9535b35bb8
--- /dev/null
+++ b/src/qt/locale/bitcoin_af.ts
@@ -0,0 +1,748 @@
+<TS version="2.1" language="af">
+<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Right-click to edit address or label</source>
+ <translation type="unfinished">Regsklik om adres of etiket te verander</translation>
+ </message>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">Skep ’n nuwe adres</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
+Signing is only possible with addresses of the type 'legacy'.</source>
+ <translation type="unfinished">
+Hierdie is die adresse waar u Bitcoins sal ontvang. Ons beveel aan dat u 'n nuwe adres kies vir elke transaksie</translation>
+ </message>
+ <message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Stuur adresse -%1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Ontvangs van adresse - %1</translation>
+ </message>
+ </context>
+<context>
+ <name>AskPassphraseDialog</name>
+ <message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">Die wagwoordfrase wat vir die beursie-dekripsie ingevoer is, is verkeerd. Dit bevat 'n nulkarakter (dws - 'n nulgreep). As die wagwoordfrase gestel is met 'n weergawe van hierdie sagteware voor 25.0, probeer asseblief weer met slegs die karakters tot - maar nie ingesluit nie - die eerste nulkarakter. As dit suksesvol is, stel asseblief 'n nuwe wagwoordfrase in om hierdie probleem in die toekoms te vermy.</translation>
+ </message>
+ <message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Wagfraseverandering het misluk</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">Die ou wagwoordfrase wat vir die beursie-dekripsie ingevoer is, is verkeerd. Dit bevat 'n nulkarakter (dws - 'n nulgreep). As die wagwoordfrase gestel is met 'n weergawe van hierdie sagteware voor 25.0, probeer asseblief weer met slegs die karakters tot - maar nie ingesluit nie - die eerste nulkarakter.</translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinApplication</name>
+ <message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">Instellingslêer %1 kan korrup of ongeldig wees.</translation>
+ </message>
+ </context>
+<context>
+ <name>QObject</name>
+ <message>
+ <source>Onion</source>
+ <comment>network name</comment>
+ <extracomment>Name of Tor network in peer info</extracomment>
+ <translation type="unfinished">Ui</translation>
+ </message>
+ <message>
+ <source>CJDNS</source>
+ <comment>network name</comment>
+ <extracomment>Name of CJDNS network in peer info</extracomment>
+ <translation type="unfinished">CJDNS </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n second(s)</numerusform>
+ <numerusform>%n second(s)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n minute(s)</numerusform>
+ <numerusform>%n minute(s)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n hour(s)</numerusform>
+ <numerusform>%n hour(s)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n day(s)</numerusform>
+ <numerusform>%n day(s)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n week(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n week(s)</numerusform>
+ <numerusform>%n week(s)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n year(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n year(s)</numerusform>
+ <numerusform>%n year(s)</numerusform>
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinGUI</name>
+ <message numerus="yes">
+ <source>Processed %n block(s) of transaction history.</source>
+ <translation type="unfinished">
+ <numerusform>Processed %n block(s) of transaction history.</numerusform>
+ <numerusform>Processed %n block(s) of transaction history.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Restore Wallet…</source>
+ <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
+ <translation type="unfinished">Stel beursie terug …</translation>
+ </message>
+ <message>
+ <source>Restore a wallet from a backup file</source>
+ <extracomment>Status tip for Restore Wallet menu item</extracomment>
+ <translation type="unfinished">Herstel 'n beursie vanaf 'n rugsteunlêer</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migreer Wallet</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migreer Wallet</translation>
+ </message>
+ <message>
+ <source>Load Wallet Backup</source>
+ <extracomment>The title for Restore Wallet File Windows</extracomment>
+ <translation type="unfinished">Laai Wallet-rugsteun</translation>
+ </message>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">Herstel beursie</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n active connection(s) to Bitcoin network.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">
+ <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">Voor-sinkroniseringsopskrifte (%1%)...</translation>
+ </message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Kon nie beursie skep nie</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Kan nie nuwe beursie skep nie, die sagteware is saamgestel sonder sqlite-ondersteuning (vereis vir beskrywer-beursies)</translation>
+ </message>
+ </context>
+<context>
+ <name>CreateWalletActivity</name>
+ <message>
+ <source>Too many external signers found</source>
+ <translation type="unfinished">Te veel eksterne ondertekenaars gevind</translation>
+ </message>
+</context>
+<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migreer beursie</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Is jy seker jy wil die beursie migreer &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">Om die beursie te migreer, sal hierdie beursie na een of meer beskrywer-beursies omskakel. 'n Nuwe beursie-rugsteun sal gemaak moet word.
+As hierdie beursie enige oplosbare maar nie gekykte skrifte bevat nie, sal 'n ander en nuwe beursie geskep word wat daardie skrifte bevat.
+As hierdie beursie enige oplosbare maar nie gekykte skrifte bevat nie, sal 'n ander en nuwe beursie geskep word wat daardie skrifte bevat.
+
+Die migrasieproses sal 'n rugsteun van die beursie skep voordat dit migreer. Hierdie rugsteunlêer sal 'n naam kry &lt;wallet name&gt;-&lt;timestamp&gt;. legacy.bak en kan gevind word in die gids vir hierdie beursie. In die geval van 'n verkeerde migrasie, kan die rugsteun met die "Herstel Wallet"-funksie herstel word.</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migreer Wallet</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migreer Wallet &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Die beursie'%1' is suksesvol gemigreer.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Slegs kyk-skripte is na 'n nuwe beursie genaamd ' gemigreer%1.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Oplosbare maar nie gekykte skrifte is na 'n nuwe beursie genaamd ' gemigreer %1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migrasie het misluk</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migrasie suksesvol</translation>
+ </message>
+</context>
+<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">Herstel beursie</translation>
+ </message>
+ <message>
+ <source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
+ <translation type="unfinished">Herstel beursie &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>Restore wallet failed</source>
+ <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
+ <translation type="unfinished">Herstel beursie het misluk</translation>
+ </message>
+ <message>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">Herstel beursie waarskuwing</translation>
+ </message>
+ <message>
+ <source>Restore wallet message</source>
+ <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
+ <translation type="unfinished">Herstel beursieboodskap</translation>
+ </message>
+</context>
+<context>
+ <name>CreateWalletDialog</name>
+ <message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Jy is een stap weg van die skep van jou nuwe beursie!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Verskaf asseblief 'n naam en, indien verlang, aktiveer enige gevorderde opsies</translation>
+ </message>
+ </context>
+<context>
+ <name>Intro</name>
+ <message numerus="yes">
+ <source>%n GB of space available</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(of %n GB needed)</source>
+ <translation type="unfinished">
+ <numerusform>(of %n GB needed)</numerusform>
+ <numerusform>(of %n GB needed)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(%n GB needed for full chain)</source>
+ <translation type="unfinished">
+ <numerusform>(%n GB needed for full chain)</numerusform>
+ <numerusform>(%n GB needed for full chain)</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">Kies datagids</translation>
+ </message>
+ <message numerus="yes">
+ <source>(sufficient to restore backups %n day(s) old)</source>
+ <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
+ <translation type="unfinished">
+ <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
+ <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
+ <translation type="unfinished">Wanneer jy OK klik, %1 sal begin om die volledige af te laai en te verwerk %4 blok ketting (%2GB) begin met die vroegste transaksies in %3 wanneer %4 aanvanklik van stapel gestuur.</translation>
+ </message>
+ </context>
+<context>
+ <name>ModalOverlay</name>
+ <message>
+ <source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">Onbekend. Voor-sinkronisering opskrifte (%1, %2%)...</translation>
+ </message>
+</context>
+<context>
+ <name>OptionsDialog</name>
+ <message>
+ <source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
+ <translation type="unfinished">Volle pad na 'n%1 versoenbare skrip (bv. C:\Downloads\hwi.exe of /Users/you/Downloads/hwi.py). Pasop: wanware kan jou munte steel!</translation>
+ </message>
+ <message>
+ <source>Options set in this dialog are overridden by the command line:</source>
+ <translation type="unfinished">Opsies wat in hierdie dialoog gestel word, word deur die opdragreël oorheers:</translation>
+ </message>
+ <message>
+ <source>Current settings will be backed up at "%1".</source>
+ <extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
+ <translation type="unfinished">Huidige instellings sal gerugsteun word by "%1".</translation>
+ </message>
+ </context>
+<context>
+ <name>OptionsModel</name>
+ <message>
+ <source>Could not read setting "%1", %2.</source>
+ <translation type="unfinished">Kon nie instelling lees nie "%1", %2.</translation>
+ </message>
+</context>
+<context>
+ <name>PSBTOperationsDialog</name>
+ <message>
+ <source>PSBT Operations</source>
+ <translation type="unfinished">PSBT-bedrywighede</translation>
+ </message>
+ </context>
+<context>
+ <name>PeerTableModel</name>
+ <message>
+ <source>Age</source>
+ <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
+ <translation type="unfinished">Ouderdom</translation>
+ </message>
+ </context>
+<context>
+ <name>RPCConsole</name>
+ <message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Die vervoerlaag weergawe: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Vervoer</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Die BIP324-sessie-ID-string in heks, indien enige.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">Sessie ID</translation>
+ </message>
+ <message>
+ <source>Whether we relay transactions to this peer.</source>
+ <translation type="unfinished">Of ons transaksies aan hierdie eweknie oordra.</translation>
+ </message>
+ <message>
+ <source>Transaction Relay</source>
+ <translation type="unfinished">Transaksie-aflos</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
+ <extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Die totale aantal adresse ontvang van hierdie eweknie wat verwerk is (sluit adresse uit wat weens tariefbeperking weggelaat is).</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
+ <extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
+ <translation type="unfinished">Die totale aantal adresse wat van hierdie eweknie ontvang is wat weggelaat is (nie verwerk nie) as gevolg van tariefbeperking.</translation>
+ </message>
+ <message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">bespeur: eweknie kan v1 of v2 wees</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: ongeënkripteerde, gewone teks vervoer protokol</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324 geënkripteerde vervoerprotokol</translation>
+ </message>
+ </context>
+<context>
+ <name>ReceiveCoinsDialog</name>
+ <message>
+ <source>Base58 (Legacy)</source>
+ <translation type="unfinished">Base58 (Nalatenskap)</translation>
+ </message>
+ <message>
+ <source>Not recommended due to higher fees and less protection against typos.</source>
+ <translation type="unfinished">Nie aanbeveel nie weens hoër fooie en minder beskerming teen tikfoute.</translation>
+ </message>
+ <message>
+ <source>Generates an address compatible with older wallets.</source>
+ <translation type="unfinished">Genereer 'n adres wat versoenbaar is met ouer beursies.</translation>
+ </message>
+ <message>
+ <source>Generates a native segwit address (BIP-173). Some old wallets don't support it.</source>
+ <translation type="unfinished">Genereer 'n inheemse segwit-adres (BIP-173). Sommige ou beursies ondersteun dit nie.</translation>
+ </message>
+ <message>
+ <source>Bech32m (Taproot)</source>
+ <translation type="unfinished">Bech32m (Penwortel)</translation>
+ </message>
+ <message>
+ <source>Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
+ <translation type="unfinished">Bech32m (BIP-350) is 'n opgradering na Bech32, beursie-ondersteuning is steeds beperk.</translation>
+ </message>
+ </context>
+<context>
+ <name>SendCoinsDialog</name>
+ <message>
+ <source>%1 kvB</source>
+ <comment>PSBT transaction creation</comment>
+ <extracomment>When reviewing a newly created PSBT (via Send flow), the transaction fee is shown, with "virtual size" of the transaction displayed for context</extracomment>
+ <translation type="unfinished">%1kvB</translation>
+ </message>
+ <message>
+ <source>Unsigned Transaction</source>
+ <comment>PSBT copied</comment>
+ <extracomment>Caption of "PSBT has been copied" messagebox</extracomment>
+ <translation type="unfinished">Ongetekende transaksie</translation>
+ </message>
+ <message>
+ <source>The PSBT has been copied to the clipboard. You can also save it.</source>
+ <translation type="unfinished">Die PSBT is na die knipbord gekopieer. Jy kan dit ook stoor.</translation>
+ </message>
+ <message>
+ <source>PSBT saved to disk</source>
+ <translation type="unfinished">PSBT gestoor op skyf</translation>
+ </message>
+ <message numerus="yes">
+ <source>Estimated to begin confirmation within %n block(s).</source>
+ <translation type="unfinished">
+ <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
+ <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionDesc</name>
+ <message>
+ <source>0/unconfirmed, in memory pool</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
+ <translation type="unfinished">0/onbevestig, in geheuepoel</translation>
+ </message>
+ <message>
+ <source>0/unconfirmed, not in memory pool</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
+ <translation type="unfinished">0/onbevestig, nie in geheuepoel nie</translation>
+ </message>
+ <message numerus="yes">
+ <source>matures in %n more block(s)</source>
+ <translation type="unfinished">
+ <numerusform>matures in %n more block(s)</numerusform>
+ <numerusform>matures in %n more block(s)</numerusform>
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>WalletModel</name>
+ <message>
+ <source>Copied to clipboard</source>
+ <comment>Fee-bump PSBT saved</comment>
+ <translation type="unfinished">Gekopieer na knipbord</translation>
+ </message>
+ </context>
+<context>
+ <name>bitcoin-core</name>
+ <message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s ailed om die -assumeutxo momentopname toestand te bekragtig. Dit dui op 'n hardeware probleem, of 'n fout in die sagteware, of 'n slegte sagteware wysiging wat toegelaat het dat 'n ongeldige momentopname gelaai word. As gevolg hiervan sal die nodus afskakel en ophou om enige toestand te gebruik wat op die momentopname gebou is, en die kettinghoogte vanaf%d aan %d. Met die volgende herbegin, sal die nodus hervat sinkronisering vanaf %d sonder om enige foto-data te gebruik. Rapporteer asseblief hierdie voorval by %s, insluitend hoe jy die momentopname gekry het. Die ongeldige momentopname-kettingtoestand sal op skyf gelaat word ingeval dit nuttig is om die probleem te diagnoseer wat hierdie fout veroorsaak het.</translation>
+ </message>
+ <message>
+ <source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
+ <translation type="unfinished">%s versoek om op port te luister %u. hierdie poort word as "sleg" beskou en dit is dus onwaarskynlik dat enige eweknie daaraan sal koppel. Sien doc/p2p-bad-ports.md vir besonderhede en 'n volledige lys.</translation>
+ </message>
+ <message>
+ <source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
+ <translation type="unfinished">Skyfspasie vir %s sal dalk nie die bloklêers akkommodeer nie. Ongeveer%u GB se data sal in hierdie gids gestoor word.</translation>
+ </message>
+ <message>
+ <source>Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
+ <translation type="unfinished">Kon nie beursie laai nie. Wallet vereis dat blokke afgelaai word, en sagteware ondersteun tans nie die laai van beursies terwyl blokke buite werking afgelaai word wanneer assumeutxo-kiekies gebruik word nie. Wallet behoort suksesvol te kan laai nadat nodussinkronisering hoogte bereik het %s</translation>
+ </message>
+ <message>
+ <source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
+ <translation type="unfinished">Fout: Kan nie beskrywings vir hierdie verouderde beursie produseer nie. Maak seker dat jy die beursie se wagwoordfrase verskaf as dit geïnkripteer is.</translation>
+ </message>
+ <message>
+ <source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
+ <translation type="unfinished">Snoeimodus is onversoenbaar met -reindex-chainstate. Gebruik eerder volledige -herindeks.</translation>
+ </message>
+ <message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Hernoem van '%s' -&gt; '%s' misluk. Jy behoort dit op te los deur die ongeldige momentopnamegids handmatig te skuif of uit te vee%s, anders sal jy weer dieselfde fout teëkom by die volgende opstart.</translation>
+ </message>
+ <message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Ongesteunde kategorie-spesifieke aantekenvlak %1$s=%2$s. verwag%1$s=&lt;category&gt;:&lt;loglevel&gt;.Geldige kategorieë: %3 $s.  Geldige loglevels: %4$s.</translation>
+ </message>
+ <message>
+ <source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
+ <translation type="unfinished">Ongesteunde chainstate-databasisformaat gevind. Herbegin asseblief met -reindex-chainstate. Dit sal die chainstate-databasis herbou.</translation>
+ </message>
+ <message>
+ <source>Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
+ <translation type="unfinished">Wallet is suksesvol geskep. Die tipe ou beursie word opgeskort en ondersteuning vir die skep en oopmaak van ou beursies sal in die toekoms verwyder word.</translation>
+ </message>
+ <message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Wallet is suksesvol gelaai. Die tipe ou beursie word opgeskort en ondersteuning vir die skep en oopmaak van ou beursies sal in die toekoms verwyder word. Ouderwetse beursies kan na 'n beskrywer-beursie met migratewallet gemigreer word.</translation>
+ </message>
+ <message>
+ <source>%s is set very high! Fees this large could be paid on a single transaction.</source>
+ <translation type="unfinished">%s is baie hoog gestel! So groot fooie kan op 'n enkele transaksie betaal word.</translation>
+ </message>
+ <message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Kon nie lees nie %s! Alle sleutels lees korrek, maar transaksiedata of adresmetadata kan ontbreek of verkeerd wees.</translation>
+ </message>
+ <message>
+ <source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
+ <translation type="unfinished">Fout: adresboekdata in beursie kan nie geïdentifiseer word om aan gemigreerde beursies te behoort nie</translation>
+ </message>
+ <message>
+ <source>Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
+ <translation type="unfinished">Fout: Duplikaatbeskrywings wat tydens migrasie geskep is. Jou beursie is dalk korrup.</translation>
+ </message>
+ <message>
+ <source>Error: Transaction %s in wallet cannot be identified to belong to migrated wallets</source>
+ <translation type="unfinished">Fout: Transaksie %s in beursie kan nie geïdentifiseer word om aan gemigreerde beursies te behoort nie</translation>
+ </message>
+ <message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Kon nie stampfooie bereken nie, want onbevestigde UTXO's is afhanklik van 'n enorme groep onbevestigde transaksies.</translation>
+ </message>
+ <message>
+ <source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
+ <translation type="unfinished">Fooiberaming het misluk. Terugvalfooi is gedeaktiveer. Wag 'n paar blokke of aktiveer %s.</translation>
+ </message>
+ <message>
+ <source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
+ <translation type="unfinished">Onversoenbare opsies: -dnsseed=1 is uitdruklik gespesifiseer, maar -onlynet verbied verbindings met IPv4/IPv6</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
+ <translation type="unfinished">Ongeldige bedrag vir %s=&lt;amount&gt;: '%s' (moet ten minste die minaflosfooi van%s om vasgekeerde transaksies te voorkom)</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
+ <translation type="unfinished">Uitgaande verbindings beperk tot CJDNS (-onlynet=cjdns) maar -cjdnsreachable word nie verskaf nie</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is explicitly forbidden: -onion=0</source>
+ <translation type="unfinished">Uitgaande verbindings beperk tot Tor (-onlynet=ui), maar die proxy om die Tor-netwerk te bereik is uitdruklik verbode: -onion=0</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is not provided: none of -proxy, -onion or -listenonion is given</source>
+ <translation type="unfinished">Uitgaande verbindings beperk tot Tor (-onlynet=ui), maar die proxy om die Tor-netwerk te bereik word nie verskaf nie: geen van -proxy, -onion of -listenonion word gegee nie</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to i2p (-onlynet=i2p) but -i2psam is not provided</source>
+ <translation type="unfinished">Uitgaande verbindings beperk tot i2p (-onlynet=i2p), maar -i2psam word nie verskaf nie</translation>
+ </message>
+ <message>
+ <source>The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet's UTXOs</source>
+ <translation type="unfinished">Die invoergrootte oorskry die maksimum gewig. Probeer asseblief om 'n kleiner bedrag te stuur of handmatig jou beursie se UTXO's te konsolideer</translation>
+ </message>
+ <message>
+ <source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
+ <translation type="unfinished">Die voorafgeselekteerde munte totale bedrag dek nie die transaksiedoelwit nie. Laat asseblief toe dat ander insette outomaties gekies word of sluit meer munte handmatig in</translation>
+ </message>
+ <message>
+ <source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
+ <translation type="unfinished">Transaksie vereis een bestemming van nie-0 waarde, 'n nie-0 fooi, of 'n vooraf geselekteerde invoer</translation>
+ </message>
+ <message>
+ <source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
+ <translation type="unfinished">UTXO-kiekie kon nie bekragtig nie. Herbegin om normale aanvanklike blokaflaai te hervat, of probeer om 'n ander momentopname te laai.</translation>
+ </message>
+ <message>
+ <source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
+ <translation type="unfinished">Onbevestigde UTXO's is beskikbaar, maar die besteding daarvan skep 'n ketting van transaksies wat deur die mempool verwerp sal word</translation>
+ </message>
+ <message>
+ <source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
+
+The wallet might have been tampered with or created with malicious intent.
+</source>
+ <translation type="unfinished">Onverwagte erfenisinskrywing in beskrywerbeursie gevind. Laai beursie %s
+
+Daar is dalk met die beursie gepeuter of met kwaadwillige opset geskep.
+</translation>
+ </message>
+ <message>
+ <source>Unrecognized descriptor found. Loading wallet %s
+
+The wallet might had been created on a newer version.
+Please try running the latest software version.
+</source>
+ <translation type="unfinished">Onherkende beskrywing gevind. Laai beursie %s
+
+Die beursie is moontlik op 'n nuwer weergawe geskep.
+Probeer asseblief om die nuutste sagteware weergawe te laat loop.
+</translation>
+ </message>
+ <message>
+ <source>
+Unable to cleanup failed migration</source>
+ <translation type="unfinished">
+Kon nie skoonmaak nie, mislukte migrasie</translation>
+ </message>
+ <message>
+ <source>
+Unable to restore backup of wallet.</source>
+ <translation type="unfinished">
+Kan nie rugsteun van beursie herstel nie.</translation>
+ </message>
+ <message>
+ <source>Block verification was interrupted</source>
+ <translation type="unfinished">Blokverifikasie is onderbreek</translation>
+ </message>
+ <message>
+ <source>Error reading configuration file: %s</source>
+ <translation type="unfinished">Kon nie konfigurasielêer lees nie: %s</translation>
+ </message>
+ <message>
+ <source>Error: Cannot extract destination from the generated scriptpubkey</source>
+ <translation type="unfinished">Fout: Kan nie bestemming uit die gegenereerde scriptpubkey onttrek nie</translation>
+ </message>
+ <message>
+ <source>Error: Could not add watchonly tx to watchonly wallet</source>
+ <translation type="unfinished">Fout: kon nie watchonly tx by watchonly wallet voeg nie</translation>
+ </message>
+ <message>
+ <source>Error: Could not delete watchonly transactions</source>
+ <translation type="unfinished">Fout: Kon nie net kyktransaksies uitvee nie</translation>
+ </message>
+ <message>
+ <source>Error: Failed to create new watchonly wallet</source>
+ <translation type="unfinished">Fout: Kon nie nuwe kyk-alleen-beursie skep nie</translation>
+ </message>
+ <message>
+ <source>Error: Not all watchonly txs could be deleted</source>
+ <translation type="unfinished">Fout: Nie alle watchonly txs kon uitgevee word nie</translation>
+ </message>
+ <message>
+ <source>Error: This wallet already uses SQLite</source>
+ <translation type="unfinished">Fout: Hierdie beursie gebruik reeds SQLite</translation>
+ </message>
+ <message>
+ <source>Error: This wallet is already a descriptor wallet</source>
+ <translation type="unfinished">Fout: Hierdie beursie is reeds 'n beskrywer-beursie</translation>
+ </message>
+ <message>
+ <source>Error: Unable to begin reading all records in the database</source>
+ <translation type="unfinished">Fout: Kan nie alle rekords in die databasis lees nie</translation>
+ </message>
+ <message>
+ <source>Error: Unable to make a backup of your wallet</source>
+ <translation type="unfinished">Fout: Kan nie 'n rugsteun van jou beursie maak nie</translation>
+ </message>
+ <message>
+ <source>Error: Unable to read all records in the database</source>
+ <translation type="unfinished">Fout: Kan nie alle rekords in die databasis lees nie</translation>
+ </message>
+ <message>
+ <source>Error: Unable to remove watchonly address book data</source>
+ <translation type="unfinished">Fout: Kan nie net kykadresboekdata verwyder nie</translation>
+ </message>
+ <message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Kon nie indekse begin nie, sluit af..</translation>
+ </message>
+ <message>
+ <source>Insufficient dbcache for block verification</source>
+ <translation type="unfinished">Onvoldoende dbcache vir blokverifikasie</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least %s)</source>
+ <translation type="unfinished">Ongeldige bedrag vir %s=&lt;amount&gt;: '%s' (moet ten minste wees%s)</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">Ongeldige bedrag vir %s=&lt;amount&gt;: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid port specified in %s: '%s'</source>
+ <translation type="unfinished">Ongeldige poort gespesifiseer in %s: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid pre-selected input %s</source>
+ <translation type="unfinished">Ongeldige vooraf geselekteerde invoer %s</translation>
+ </message>
+ <message>
+ <source>Listening for incoming connections failed (listen returned error %s)</source>
+ <translation type="unfinished">Kon nie luister na inkomende verbindings nie (luister het fout teruggegee %s)</translation>
+ </message>
+ <message>
+ <source>Not found pre-selected input %s</source>
+ <translation type="unfinished">Nie voorafgeselekteerde invoer gevind nie %s</translation>
+ </message>
+ <message>
+ <source>Not solvable pre-selected input %s</source>
+ <translation type="unfinished">Nie oplosbare vooraf geselekteerde insette nie %s</translation>
+ </message>
+ <message>
+ <source>Specified data directory "%s" does not exist.</source>
+ <translation type="unfinished">Gespesifiseerde datagids "%s" bestaan ​​nie.</translation>
+ </message>
+ <message>
+ <source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
+ <translation type="unfinished">Kan nie geheue vir -maxsigcachesize toewys nie: '%s'MiB</translation>
+ </message>
+ <message>
+ <source>Unable to find UTXO for external input</source>
+ <translation type="unfinished">Kan nie UTXO vir eksterne invoer vind nie</translation>
+ </message>
+ <message>
+ <source>Unable to unload the wallet before migrating</source>
+ <translation type="unfinished">Kan nie die beursie aflaai voor migreer nie</translation>
+ </message>
+ <message>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Ongesteunde globale logvlak %s=%s. Geldige waardes: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates is not supported on %s ketting.</translation>
+ </message>
+ </context>
+</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_am.ts b/src/qt/locale/bitcoin_am.ts
index c9f6fb442a..b26a837a30 100644
--- a/src/qt/locale/bitcoin_am.ts
+++ b/src/qt/locale/bitcoin_am.ts
@@ -7,7 +7,7 @@
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">አዲስ አድራሻ ፍጠር</translation>
+ <translation type="unfinished">አዲስ አድራሻ ይፍጠሩ</translation>
</message>
<message>
<source>&amp;New</source>
@@ -58,16 +58,8 @@
<translation type="unfinished">ምረጥ</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">የመላኪያ አድራሻዎች</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">የመቀበያ አድራሻዎች</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
- <translation type="unfinished">እነኚህ የቢትኮይን ክፍያ የመላኪያ አድራሻዎችዎ ናቸው:: ገንዘብ/ኮይኖች ከመላክዎ በፊት መጠኑን እና የመቀበያ አድራሻውን ሁልጊዜ ያረጋግጡ::</translation>
+ <translation type="unfinished">ክፍያዎችን ለመላክ እነዚህ የእርስዎ ቢትኮይን አድራሻዎች ናቸው። ሳንቲሞችን/ኮይኖች ከመላክዎ በፊት ሁል ጊዜ መጠኑን እና የተቀባዩን አድራሻ ያረጋግጡ።</translation>
</message>
<message>
<source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">የአድራሻ ዝርዝሩን ወደ %1 ለማስቀመጥ ሲሞከር ስህተት አጋጥሟል:: እባክዎ መልሰው ይሞክሩ::</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">አድራሻዎችን በመላክ ላይ - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">አድራሻዎችን በማቀበል ላይ - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">ወደ ውጪ መላክ አልተሳካም</translation>
</message>
@@ -480,14 +480,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ክፍያው ቅዳ</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">አዎ</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">አይ</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(መለያ ስም የለም)</translation>
</message>
@@ -768,7 +760,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Export the data in the current tab to a file</source>
- <translation type="unfinished">በአሁኑ ማውጫ ውስጥ ያለውን መረጃ ወደ አንድ ፋይል ላክ</translation>
+ <translation type="unfinished">በዚህ ማውጫ ውስጥ ያለውን ውሂብ ወደ አንድ ፋይል ቀይረህ አስቀምጥ</translation>
</message>
</context>
</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_ar.ts b/src/qt/locale/bitcoin_ar.ts
deleted file mode 100644
index 1f6ad8bd62..0000000000
--- a/src/qt/locale/bitcoin_ar.ts
+++ /dev/null
@@ -1,4479 +0,0 @@
-<TS version="2.1" language="ar">
-<context>
- <name>AddressBookPage</name>
- <message>
- <source>Right-click to edit address or label</source>
- <translation type="unfinished">انقر بالزر الايمن لتعديل العنوان</translation>
- </message>
- <message>
- <source>Create a new address</source>
- <translation type="unfinished">أنشئ عنوان جديد</translation>
- </message>
- <message>
- <source>&amp;New</source>
- <translation type="unfinished">&amp;جديد</translation>
- </message>
- <message>
- <source>Copy the currently selected address to the system clipboard</source>
- <translation type="unfinished">‫انسخ العنوان المحدد للحافظة‬</translation>
- </message>
- <message>
- <source>&amp;Copy</source>
- <translation type="unfinished">&amp;نسخ</translation>
- </message>
- <message>
- <source>C&amp;lose</source>
- <translation type="unfinished">ا&amp;غلاق</translation>
- </message>
- <message>
- <source>Delete the currently selected address from the list</source>
- <translation type="unfinished">احذف العنوان المحدد من القائمة</translation>
- </message>
- <message>
- <source>Enter address or label to search</source>
- <translation type="unfinished">أدخل عنوانا أو مذكرة للبحث</translation>
- </message>
- <message>
- <source>Export the data in the current tab to a file</source>
- <translation type="unfinished">صدّر البيانات في التبويب الحالي الى ملف</translation>
- </message>
- <message>
- <source>&amp;Export</source>
- <translation type="unfinished">&amp;تصدير</translation>
- </message>
- <message>
- <source>&amp;Delete</source>
- <translation type="unfinished">&amp;حذف</translation>
- </message>
- <message>
- <source>Choose the address to send coins to</source>
- <translation type="unfinished">اختر العنوان الذي ترغب بارسال بتكوين اليه</translation>
- </message>
- <message>
- <source>Choose the address to receive coins with</source>
- <translation type="unfinished">اختر العنوان الذي ترغب باستلام البتكوين فيه</translation>
- </message>
- <message>
- <source>C&amp;hoose</source>
- <translation type="unfinished">ا&amp;ختر</translation>
- </message>
- <message>
- <source>Sending addresses</source>
- <translation type="unfinished">‫العناوين المرسِلة‬</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">العناوين المستلمة</translation>
- </message>
- <message>
- <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
- <translation type="unfinished">‫هذه عناوين البتكوين الخاصة بك لإرسال المدفوعات. تأكد دائما من القيم المدخلة ومن العنوان المستلم قبل الارسال.‬</translation>
- </message>
- <message>
- <source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
-Signing is only possible with addresses of the type 'legacy'.</source>
- <translation type="unfinished">هذه عناوين البتكوين الخاصة بك لاستلام المدفوعات. قم بالنقر على زر انشاء عنوان استلام جديد لإنشاء عناوين جديدة.
-التوقيع ممكن باستخدام العناوين القديمة "Legacy" فقط.</translation>
- </message>
- <message>
- <source>&amp;Copy Address</source>
- <translation type="unfinished">&amp;نسخ العنوان</translation>
- </message>
- <message>
- <source>Copy &amp;Label</source>
- <translation type="unfinished">نسخ &amp;المذكرة</translation>
- </message>
- <message>
- <source>&amp;Edit</source>
- <translation type="unfinished">&amp;تحرير</translation>
- </message>
- <message>
- <source>Export Address List</source>
- <translation type="unfinished">تصدير قائمة العناوين</translation>
- </message>
- <message>
- <source>Comma separated file</source>
- <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">ملف القيم المفصولة بفاصلة</translation>
- </message>
- <message>
- <source>There was an error trying to save the address list to %1. Please try again.</source>
- <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
- <translation type="unfinished">حدث خطأ أثناء محاولة حفظ قائمة العناوين في %1. يرجى معاودة المحاولة. </translation>
- </message>
- <message>
- <source>Exporting Failed</source>
- <translation type="unfinished">فشل التصدير</translation>
- </message>
-</context>
-<context>
- <name>AddressTableModel</name>
- <message>
- <source>Label</source>
- <translation type="unfinished">المذكرة</translation>
- </message>
- <message>
- <source>Address</source>
- <translation type="unfinished">العنوان</translation>
- </message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">( لا وجود لمذكرة)</translation>
- </message>
-</context>
-<context>
- <name>AskPassphraseDialog</name>
- <message>
- <source>Passphrase Dialog</source>
- <translation type="unfinished">‫حوار عبارة المرور‬</translation>
- </message>
- <message>
- <source>Enter passphrase</source>
- <translation type="unfinished">‫ادخل عبارة المرور‬</translation>
- </message>
- <message>
- <source>New passphrase</source>
- <translation type="unfinished">‫أنشئ عبارة مرور‬</translation>
- </message>
- <message>
- <source>Repeat new passphrase</source>
- <translation type="unfinished">‫أعد عبارة المرور‬</translation>
- </message>
- <message>
- <source>Show passphrase</source>
- <translation type="unfinished">‫عرض عبارة المرور‬</translation>
- </message>
- <message>
- <source>Encrypt wallet</source>
- <translation type="unfinished">تشفير المحفظة</translation>
- </message>
- <message>
- <source>This operation needs your wallet passphrase to unlock the wallet.</source>
- <translation type="unfinished">‫هذه العملية تتطلب عبارة المرور لفك تشفير المحفظة.‬</translation>
- </message>
- <message>
- <source>Unlock wallet</source>
- <translation type="unfinished">فتح قفل المحفظة</translation>
- </message>
- <message>
- <source>Change passphrase</source>
- <translation type="unfinished">‫تغيير عبارة المرور‬</translation>
- </message>
- <message>
- <source>Confirm wallet encryption</source>
- <translation type="unfinished">تأكيد تشفير المحفظة</translation>
- </message>
- <message>
- <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
- <translation type="unfinished">تحذير: إذا قمت بتشفير المحفظة وأضعت الكلمة السرية؛ &lt;b&gt;ستفقد كل البتكوين&lt;/b&gt;!</translation>
- </message>
- <message>
- <source>Are you sure you wish to encrypt your wallet?</source>
- <translation type="unfinished">هل أنت متأكد من رغبتك في تشفير المحفظة؟</translation>
- </message>
- <message>
- <source>Wallet encrypted</source>
- <translation type="unfinished">المحفظة مشفرة</translation>
- </message>
- <message>
- <source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
- <translation type="unfinished">أدخل عبارة المرور للمحفظة. &lt;br/&gt;الرجاء استخدام عبارة مرور تتكون من &lt;b&gt;عشر خانات عشوائية أو أكثر&lt;/b&gt;، أو &lt;b&gt;ثمان كلمات أو أكثر&lt;/b&gt;.</translation>
- </message>
- <message>
- <source>Enter the old passphrase and new passphrase for the wallet.</source>
- <translation type="unfinished">أدخل ‫عبارة المرور‬ السابقة و‫عبارة المرور‬ الجديدة للمحفظة</translation>
- </message>
- <message>
- <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
- <translation type="unfinished">تذكر أن تشفير محفظتك قد لا يحميك بشكل كامل من البرمجيات الخبيثة التي تصيب جهازك.</translation>
- </message>
- <message>
- <source>Wallet to be encrypted</source>
- <translation type="unfinished">‫المحفظة سيتم تشفيرها‬</translation>
- </message>
- <message>
- <source>Your wallet is about to be encrypted. </source>
- <translation type="unfinished">سوف تشفر محفظتك.</translation>
- </message>
- <message>
- <source>Your wallet is now encrypted. </source>
- <translation type="unfinished">محفظتك الان مشفرة.</translation>
- </message>
- <message>
- <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
- <translation type="unfinished">مهم!!!: يجب استبدال أي نسخة احتياطية سابقة بملف المحفظة المشفر الجديد. لأسباب أمنية، لن تستطيع استخدام النسخ الاحتياطية السابقة الغير مشفرة عندما تبدأ في استخدام المحفظة المشفرة الجديدة.</translation>
- </message>
- <message>
- <source>Wallet encryption failed</source>
- <translation type="unfinished">فشل تشفير المحفظة</translation>
- </message>
- <message>
- <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
- <translation type="unfinished">فشل تشفير المحفظة بسبب خطأ داخلي. لم يتم تشفير محفظتك.</translation>
- </message>
- <message>
- <source>The supplied passphrases do not match.</source>
- <translation type="unfinished">عبارتي مرور غير متطابقتين.</translation>
- </message>
- <message>
- <source>Wallet unlock failed</source>
- <translation type="unfinished">فشل فتح المحفظة</translation>
- </message>
- <message>
- <source>The passphrase entered for the wallet decryption was incorrect.</source>
- <translation type="unfinished">‫عبارة المرور التي تم إدخالها لفك تشفير المحفظة غير صحيحة.‬</translation>
- </message>
- <message>
- <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
- <translation type="unfinished">العبارة المدخلة لفك تشفير المحفظة غير صحيحة: تحتوي على خانة فارغة. إذا تم تعيين هذه العبارة في نسخة سابقة لـ 25.0، يرجى المحاولة مجددا بإدخال جميع الخانات السابقة للخانة الفارغة والتوقف عند الخانة الفارغة دون إدخال الفراغ. إذا نجحت المحاولة، يرجى تغيير العبارة لتفادي هذه المشكلة مستقبلا.</translation>
- </message>
- <message>
- <source>Wallet passphrase was successfully changed.</source>
- <translation type="unfinished">لقد تم تغير عبارة مرور المحفظة بنجاح</translation>
- </message>
- <message>
- <source>Passphrase change failed</source>
- <translation type="unfinished">فشل تغيير العبارة </translation>
- </message>
- <message>
- <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
- <translation type="unfinished">العبارة السابقة المدخلة لفك تشفير المحفظة غير صحيحة: تحتوي على خانة فارغة. إذا تم تعيين هذه العبارة في نسخة سابقة لـ 25.0، يرجى المحاولة مجددا بإدخال جميع الخانات السابقة للخانة الفارغة والتوقف عند الخانة الفارغة دون إدخال الفراغ.</translation>
- </message>
- <message>
- <source>Warning: The Caps Lock key is on!</source>
- <translation type="unfinished">‫تحذير: مفتاح الحروف الكبيرة مفعل!‬</translation>
- </message>
-</context>
-<context>
- <name>BanTableModel</name>
- <message>
- <source>IP/Netmask</source>
- <translation type="unfinished">‫بروتوكول الانترنت/قناع الشبكة‬</translation>
- </message>
- <message>
- <source>Banned Until</source>
- <translation type="unfinished">محظور حتى</translation>
- </message>
-</context>
-<context>
- <name>BitcoinApplication</name>
- <message>
- <source>Settings file %1 might be corrupt or invalid.</source>
- <translation type="unfinished">ملف الاعدادات %1 قد يكون تالف او غير صالح</translation>
- </message>
- <message>
- <source>Runaway exception</source>
- <translation type="unfinished">‫‫Runaway exception‬</translation>
- </message>
- <message>
- <source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
- <translation type="unfinished">حدث خطأ فادح. لم يعد بإمكان %1 المتابعة بأمان وسيتم الإنهاء.</translation>
- </message>
- <message>
- <source>Internal error</source>
- <translation type="unfinished">خطأ داخلي</translation>
- </message>
- <message>
- <source>An internal error occurred. %1 will attempt to continue safely. This is an unexpected bug which can be reported as described below.</source>
- <translation type="unfinished">حدث خطأ داخلي. سيحاول %1 المتابعة بأمان. هذا خطأ غير متوقع يمكن الإبلاغ عنه كما هو موضح أدناه.</translation>
- </message>
-</context>
-<context>
- <name>QObject</name>
- <message>
- <source>Do you want to reset settings to default values, or to abort without making changes?</source>
- <extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
- <translation type="unfinished">‫هل تريد اعادة ضبط الاعدادات للقيم الافتراضية؟ أو الالغاء دون اجراء تغييرات؟‬</translation>
- </message>
- <message>
- <source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
- <extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
- <translation type="unfinished">‫حدث خطأ فادح. تأكد أن أذونات ملف الاعدادات تسمح بالكتابة، جرب الاستمرار بتفعيل خيار -دون اعدادات.‬</translation>
- </message>
- <message>
- <source>Error: %1</source>
- <translation type="unfinished">خطأ: %1</translation>
- </message>
- <message>
- <source>%1 didn't yet exit safely…</source>
- <translation type="unfinished">‫%1 لم يغلق بامان بعد…‬</translation>
- </message>
- <message>
- <source>unknown</source>
- <translation type="unfinished">غير معروف</translation>
- </message>
- <message>
- <source>Amount</source>
- <translation type="unfinished">‫القيمة‬</translation>
- </message>
- <message>
- <source>Enter a Bitcoin address (e.g. %1)</source>
- <translation type="unfinished">ادخل عنوان محفطة البتكوين (مثال %1)</translation>
- </message>
- <message>
- <source>Unroutable</source>
- <translation type="unfinished">‫غير قابل للتوجيه‬</translation>
- </message>
- <message>
- <source>Inbound</source>
- <extracomment>An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</extracomment>
- <translation type="unfinished">‫وارد‬</translation>
- </message>
- <message>
- <source>Outbound</source>
- <extracomment>An outbound connection to a peer. An outbound connection is a connection initiated by us.</extracomment>
- <translation type="unfinished">‫صادر‬</translation>
- </message>
- <message>
- <source>Full Relay</source>
- <extracomment>Peer connection type that relays all network information.</extracomment>
- <translation type="unfinished">‫موصل كامل‬</translation>
- </message>
- <message>
- <source>Block Relay</source>
- <extracomment>Peer connection type that relays network information about blocks and not transactions or addresses.</extracomment>
- <translation type="unfinished">‫موصل طابق‬</translation>
- </message>
- <message>
- <source>Manual</source>
- <extracomment>Peer connection type established manually through one of several methods.</extracomment>
- <translation type="unfinished">يدوي</translation>
- </message>
- <message>
- <source>Feeler</source>
- <extracomment>Short-lived peer connection type that tests the aliveness of known addresses.</extracomment>
- <translation type="unfinished">‫تفقدي‬</translation>
- </message>
- <message>
- <source>Address Fetch</source>
- <extracomment>Short-lived peer connection type that solicits known addresses from a peer.</extracomment>
- <translation type="unfinished">‫جلب العنوان‬</translation>
- </message>
- <message>
- <source>%1 d</source>
- <translation type="unfinished">%1 يوم</translation>
- </message>
- <message>
- <source>%1 h</source>
- <translation type="unfinished">%1 ساعة</translation>
- </message>
- <message>
- <source>%1 m</source>
- <translation type="unfinished">%1 دقيقة</translation>
- </message>
- <message>
- <source>%1 s</source>
- <translation type="unfinished">%1 ثانية</translation>
- </message>
- <message>
- <source>None</source>
- <translation type="unfinished">لا شيء</translation>
- </message>
- <message>
- <source>N/A</source>
- <translation type="unfinished">غير معروف</translation>
- </message>
- <message>
- <source>%1 ms</source>
- <translation type="unfinished">%1 جزء من الثانية</translation>
- </message>
- <message numerus="yes">
- <source>%n second(s)</source>
- <translation type="unfinished">
- <numerusform>%n second(s)</numerusform>
- <numerusform>%n second(s)</numerusform>
- <numerusform>%n second(s)</numerusform>
- <numerusform>%n second(s)</numerusform>
- <numerusform>%n second(s)</numerusform>
- <numerusform>%n‫‫ ثواني‬</numerusform>
- </translation>
- </message>
- <message numerus="yes">
- <source>%n minute(s)</source>
- <translation type="unfinished">
- <numerusform>%n minute(s)</numerusform>
- <numerusform>%n minute(s)</numerusform>
- <numerusform>%n minute(s)</numerusform>
- <numerusform>%n minute(s)</numerusform>
- <numerusform>%n minute(s)</numerusform>
- <numerusform>%n ‫دقائق‬</numerusform>
- </translation>
- </message>
- <message numerus="yes">
- <source>%n hour(s)</source>
- <translation type="unfinished">
- <numerusform>%n hour(s)</numerusform>
- <numerusform>%n hour(s)</numerusform>
- <numerusform>%n hour(s)</numerusform>
- <numerusform>%n hour(s)</numerusform>
- <numerusform>%n hour(s)</numerusform>
- <numerusform>%n‫ساعات‬</numerusform>
- </translation>
- </message>
- <message numerus="yes">
- <source>%n day(s)</source>
- <translation type="unfinished">
- <numerusform>%n day(s)</numerusform>
- <numerusform>%n day(s)</numerusform>
- <numerusform>%n day(s)</numerusform>
- <numerusform>%n day(s)</numerusform>
- <numerusform>%n day(s)</numerusform>
- <numerusform>%n ‫أيام‬</numerusform>
- </translation>
- </message>
- <message numerus="yes">
- <source>%n week(s)</source>
- <translation type="unfinished">
- <numerusform>%n week(s)</numerusform>
- <numerusform>%n week(s)</numerusform>
- <numerusform>%n week(s)</numerusform>
- <numerusform>%n week(s)</numerusform>
- <numerusform>%n week(s)</numerusform>
- <numerusform>%n ‫أسابيع‬</numerusform>
- </translation>
- </message>
- <message>
- <source>%1 and %2</source>
- <translation type="unfinished">%1 و %2</translation>
- </message>
- <message numerus="yes">
- <source>%n year(s)</source>
- <translation type="unfinished">
- <numerusform>%n year(s)</numerusform>
- <numerusform>%n year(s)</numerusform>
- <numerusform>%n year(s)</numerusform>
- <numerusform>%n year(s)</numerusform>
- <numerusform>%n year(s)</numerusform>
- <numerusform>%n ‫سنوات‬</numerusform>
- </translation>
- </message>
- <message>
- <source>%1 B</source>
- <translation type="unfinished">%1 بايت</translation>
- </message>
- <message>
- <source>%1 kB</source>
- <translation type="unfinished">%1 كيلو بايت</translation>
- </message>
- <message>
- <source>%1 MB</source>
- <translation type="unfinished">%1 ‫ميجابايت‬</translation>
- </message>
- <message>
- <source>%1 GB</source>
- <translation type="unfinished">%1 ‫جيجابايت‬</translation>
- </message>
-</context>
-<context>
- <name>BitcoinGUI</name>
- <message>
- <source>&amp;Overview</source>
- <translation type="unfinished">&amp;نظرة عامة</translation>
- </message>
- <message>
- <source>Show general overview of wallet</source>
- <translation type="unfinished">إظهار نظرة عامة على المحفظة</translation>
- </message>
- <message>
- <source>&amp;Transactions</source>
- <translation type="unfinished">&amp;المعاملات</translation>
- </message>
- <message>
- <source>Browse transaction history</source>
- <translation type="unfinished">تصفح تاريخ العمليات</translation>
- </message>
- <message>
- <source>E&amp;xit</source>
- <translation type="unfinished">خروج</translation>
- </message>
- <message>
- <source>Quit application</source>
- <translation type="unfinished">إغلاق التطبيق</translation>
- </message>
- <message>
- <source>&amp;About %1</source>
- <translation type="unfinished">حوالي %1</translation>
- </message>
- <message>
- <source>Show information about %1</source>
- <translation type="unfinished">أظهر المعلومات حولة %1</translation>
- </message>
- <message>
- <source>About &amp;Qt</source>
- <translation type="unfinished">عن &amp;Qt</translation>
- </message>
- <message>
- <source>Show information about Qt</source>
- <translation type="unfinished">اظهر المعلومات</translation>
- </message>
- <message>
- <source>Modify configuration options for %1</source>
- <translation type="unfinished">تغيير خيارات الإعداد لأساس ل%1</translation>
- </message>
- <message>
- <source>Create a new wallet</source>
- <translation type="unfinished">إنشاء محفظة جديدة</translation>
- </message>
- <message>
- <source>Wallet:</source>
- <translation type="unfinished">المحفظة:</translation>
- </message>
- <message>
- <source>Network activity disabled.</source>
- <extracomment>A substring of the tooltip.</extracomment>
- <translation type="unfinished">تم إلغاء تفعيل الشبكه</translation>
- </message>
- <message>
- <source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
- <translation type="unfinished">%1 اتصال نشط بشبكة البيتكوين</translation>
- </message>
- <message>
- <source>Send coins to a Bitcoin address</source>
- <translation type="unfinished">ارسل عملات الى عنوان بيتكوين</translation>
- </message>
- <message>
- <source>Backup wallet to another location</source>
- <translation type="unfinished">احفظ نسخة احتياطية للمحفظة في مكان آخر</translation>
- </message>
- <message>
- <source>Change the passphrase used for wallet encryption</source>
- <translation type="unfinished">تغيير كلمة المرور المستخدمة لتشفير المحفظة</translation>
- </message>
- <message>
- <source>&amp;Send</source>
- <translation type="unfinished">&amp;ارسل</translation>
- </message>
- <message>
- <source>&amp;Receive</source>
- <translation type="unfinished">&amp;استقبل</translation>
- </message>
- <message>
- <source>&amp;Options…</source>
- <translation type="unfinished">&amp; خيارات</translation>
- </message>
- <message>
- <source>&amp;Encrypt Wallet…</source>
- <translation type="unfinished">&amp; تشفير المحفظة</translation>
- </message>
- <message>
- <source>Encrypt the private keys that belong to your wallet</source>
- <translation type="unfinished">تشفير المفتاح الخاص بمحفظتك</translation>
- </message>
- <message>
- <source>&amp;Backup Wallet…</source>
- <translation type="unfinished">&amp; محفظة احتياطية</translation>
- </message>
- <message>
- <source>&amp;Change Passphrase…</source>
- <translation type="unfinished">وتغيير العبارات...</translation>
- </message>
- <message>
- <source>Sign &amp;message…</source>
- <translation type="unfinished">علامة ورسالة...</translation>
- </message>
- <message>
- <source>Sign messages with your Bitcoin addresses to prove you own them</source>
- <translation type="unfinished">وقَع الرسائل بواسطة ال: Bitcoin الخاص بك لإثبات امتلاكك لهم</translation>
- </message>
- <message>
- <source>&amp;Verify message…</source>
- <translation type="unfinished">&amp; تحقق من الرسالة</translation>
- </message>
- <message>
- <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
- <translation type="unfinished">تحقق من الرسائل للتأكد من أنَها وُقعت برسائل Bitcoin محدَدة</translation>
- </message>
- <message>
- <source>&amp;Load PSBT from file…</source>
- <translation type="unfinished">وتحميل PSBT من ملف...</translation>
- </message>
- <message>
- <source>Open &amp;URI…</source>
- <translation type="unfinished">فتح ورابط...</translation>
- </message>
- <message>
- <source>Close Wallet…</source>
- <translation type="unfinished">اغلاق المحفظة</translation>
- </message>
- <message>
- <source>Create Wallet…</source>
- <translation type="unfinished">انشاء المحفظة</translation>
- </message>
- <message>
- <source>Close All Wallets…</source>
- <translation type="unfinished">اغلاق جميع المحافظ</translation>
- </message>
- <message>
- <source>&amp;File</source>
- <translation type="unfinished">&amp;ملف</translation>
- </message>
- <message>
- <source>&amp;Settings</source>
- <translation type="unfinished">&amp;الاعدادات</translation>
- </message>
- <message>
- <source>&amp;Help</source>
- <translation type="unfinished">&amp;مساعدة</translation>
- </message>
- <message>
- <source>Tabs toolbar</source>
- <translation type="unfinished">شريط أدوات علامات التبويب</translation>
- </message>
- <message>
- <source>Synchronizing with network…</source>
- <translation type="unfinished">مزامنة مع الشبكة ...</translation>
- </message>
- <message>
- <source>Indexing blocks on disk…</source>
- <translation type="unfinished">كتل الفهرسة على القرص ...</translation>
- </message>
- <message>
- <source>Processing blocks on disk…</source>
- <translation type="unfinished">كتل المعالجة على القرص ...</translation>
- </message>
- <message>
- <source>Connecting to peers…</source>
- <translation type="unfinished">الاتصال بالأقران ...</translation>
- </message>
- <message>
- <source>Request payments (generates QR codes and bitcoin: URIs)</source>
- <translation type="unfinished">أطلب دفعات (يولد كودات الرمز المربع وبيت كوين: العناوين المعطاة)</translation>
- </message>
- <message>
- <source>Show the list of used sending addresses and labels</source>
- <translation type="unfinished">عرض قائمة عناوين الإرسال المستخدمة والملصقات</translation>
- </message>
- <message>
- <source>Show the list of used receiving addresses and labels</source>
- <translation type="unfinished">عرض قائمة عناوين الإستقبال المستخدمة والملصقات</translation>
- </message>
- <message>
- <source>&amp;Command-line options</source>
- <translation type="unfinished">&amp;خيارات سطر الأوامر</translation>
- </message>
- <message numerus="yes">
- <source>Processed %n block(s) of transaction history.</source>
- <translation type="unfinished">
- <numerusform>Processed %n block(s) of transaction history.</numerusform>
- <numerusform>Processed %n block(s) of transaction history.</numerusform>
- <numerusform>Processed %n block(s) of transaction history.</numerusform>
- <numerusform>Processed %n block(s) of transaction history.</numerusform>
- <numerusform>Processed %n block(s) of transaction history.</numerusform>
- <numerusform>‫تمت معالجة %n طوابق من العمليات التاريخية.‬</numerusform>
- </translation>
- </message>
- <message>
- <source>%1 behind</source>
- <translation type="unfinished">خلف %1</translation>
- </message>
- <message>
- <source>Catching up…</source>
- <translation type="unfinished">يمسك…</translation>
- </message>
- <message>
- <source>Last received block was generated %1 ago.</source>
- <translation type="unfinished">تم توليد الكتلة المستقبلة الأخيرة منذ %1.</translation>
- </message>
- <message>
- <source>Transactions after this will not yet be visible.</source>
- <translation type="unfinished">المعاملات بعد ذلك لن تكون مريئة بعد.</translation>
- </message>
- <message>
- <source>Error</source>
- <translation type="unfinished">خطأ</translation>
- </message>
- <message>
- <source>Warning</source>
- <translation type="unfinished">تحذير</translation>
- </message>
- <message>
- <source>Information</source>
- <translation type="unfinished">المعلومات</translation>
- </message>
- <message>
- <source>Up to date</source>
- <translation type="unfinished">محدث</translation>
- </message>
- <message>
- <source>Load Partially Signed Bitcoin Transaction</source>
- <translation type="unfinished">تحميل معاملة بتكوين الموقعة جزئيًا</translation>
- </message>
- <message>
- <source>Load Partially Signed Bitcoin Transaction from clipboard</source>
- <translation type="unfinished">تحميل معاملة بتكوين الموقعة جزئيًا من الحافظة</translation>
- </message>
- <message>
- <source>Node window</source>
- <translation type="unfinished">نافذة Node </translation>
- </message>
- <message>
- <source>Open node debugging and diagnostic console</source>
- <translation type="unfinished">افتح وحدة التحكم في تصحيح أخطاء node والتشخيص</translation>
- </message>
- <message>
- <source>&amp;Sending addresses</source>
- <translation type="unfinished">&amp;عناوين الإرسال</translation>
- </message>
- <message>
- <source>&amp;Receiving addresses</source>
- <translation type="unfinished">&amp;عناوين الإستقبال</translation>
- </message>
- <message>
- <source>Open a bitcoin: URI</source>
- <translation type="unfinished">افتح عملة بيتكوين: URI</translation>
- </message>
- <message>
- <source>Open Wallet</source>
- <translation type="unfinished">افتح المحفظة</translation>
- </message>
- <message>
- <source>Open a wallet</source>
- <translation type="unfinished">افتح المحفظة</translation>
- </message>
- <message>
- <source>Close wallet</source>
- <translation type="unfinished">اغلق المحفظة</translation>
- </message>
- <message>
- <source>Restore Wallet…</source>
- <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
- <translation type="unfinished">‫استعادة محفظة…‬</translation>
- </message>
- <message>
- <source>Restore a wallet from a backup file</source>
- <extracomment>Status tip for Restore Wallet menu item</extracomment>
- <translation type="unfinished">‫استعادة محفظة من ملف النسخ الاحتياطي‬</translation>
- </message>
- <message>
- <source>Close all wallets</source>
- <translation type="unfinished">إغلاق جميع المحافظ ...</translation>
- </message>
- <message>
- <source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">بين اشارة المساعدة %1 للحصول على قائمة من خيارات اوامر البت كوين المحتملة </translation>
- </message>
- <message>
- <source>&amp;Mask values</source>
- <translation type="unfinished">&amp; إخفاء القيم</translation>
- </message>
- <message>
- <source>Mask the values in the Overview tab</source>
- <translation type="unfinished">إخفاء القيم في علامة التبويب نظرة عامة</translation>
- </message>
- <message>
- <source>default wallet</source>
- <translation type="unfinished">المحفظة الإفتراضية</translation>
- </message>
- <message>
- <source>No wallets available</source>
- <translation type="unfinished">المحفظة الرقمية غير متوفرة</translation>
- </message>
- <message>
- <source>Wallet Data</source>
- <extracomment>Name of the wallet data file format.</extracomment>
- <translation type="unfinished">بيانات المحفظة</translation>
- </message>
- <message>
- <source>Load Wallet Backup</source>
- <extracomment>The title for Restore Wallet File Windows</extracomment>
- <translation type="unfinished">‫تحميل النسخة الاحتياطية لمحفظة‬</translation>
- </message>
- <message>
- <source>Restore Wallet</source>
- <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
- <translation type="unfinished">استعادة المحفظة</translation>
- </message>
- <message>
- <source>Wallet Name</source>
- <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
- <translation type="unfinished">إسم المحفظة</translation>
- </message>
- <message>
- <source>&amp;Window</source>
- <translation type="unfinished">&amp;نافذة</translation>
- </message>
- <message>
- <source>Zoom</source>
- <translation type="unfinished">تكبير</translation>
- </message>
- <message>
- <source>Main Window</source>
- <translation type="unfinished">النافذة الرئيسية</translation>
- </message>
- <message>
- <source>%1 client</source>
- <translation type="unfinished">‫العميل %1</translation>
- </message>
- <message>
- <source>&amp;Hide</source>
- <translation type="unfinished">‫&amp;اخفاء‬</translation>
- </message>
- <message>
- <source>S&amp;how</source>
- <translation type="unfinished">‫ع&amp;رض‬</translation>
- </message>
- <message numerus="yes">
- <source>%n active connection(s) to Bitcoin network.</source>
- <extracomment>A substring of the tooltip.</extracomment>
- <translation type="unfinished">
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
- <numerusform>%n اتصال نشط بشبكة البتكوين.</numerusform>
- </translation>
- </message>
- <message>
- <source>Click for more actions.</source>
- <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
- <translation type="unfinished">انقر لمزيد من الإجراءات.</translation>
- </message>
- <message>
- <source>Show Peers tab</source>
- <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
- <translation type="unfinished">‫إظهار تبويب الأقران‬</translation>
- </message>
- <message>
- <source>Disable network activity</source>
- <extracomment>A context menu item.</extracomment>
- <translation type="unfinished">تعطيل نشاط الشبكة</translation>
- </message>
- <message>
- <source>Enable network activity</source>
- <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
- <translation type="unfinished">تمكين نشاط الشبكة</translation>
- </message>
- <message>
- <source>Pre-syncing Headers (%1%)…</source>
- <translation type="unfinished">ما قبل مزامنة الرؤوس (%1%)…</translation>
- </message>
- <message>
- <source>Error: %1</source>
- <translation type="unfinished">خطأ: %1</translation>
- </message>
- <message>
- <source>Warning: %1</source>
- <translation type="unfinished">تحذير: %1</translation>
- </message>
- <message>
- <source>Date: %1
-</source>
- <translation type="unfinished">التاريخ %1
-</translation>
- </message>
- <message>
- <source>Amount: %1
-</source>
- <translation type="unfinished">القيمة %1
-</translation>
- </message>
- <message>
- <source>Wallet: %1
-</source>
- <translation type="unfinished">المحفظة: %1
-</translation>
- </message>
- <message>
- <source>Type: %1
-</source>
- <translation type="unfinished">النوع %1
-</translation>
- </message>
- <message>
- <source>Label: %1
-</source>
- <translation type="unfinished">‫المذكرة‬: %1
-</translation>
- </message>
- <message>
- <source>Address: %1
-</source>
- <translation type="unfinished">العنوان %1
-</translation>
- </message>
- <message>
- <source>Sent transaction</source>
- <translation type="unfinished">‫العمليات المرسلة‬</translation>
- </message>
- <message>
- <source>Incoming transaction</source>
- <translation type="unfinished">‫العمليات الواردة‬</translation>
- </message>
- <message>
- <source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
- <translation type="unfinished">توليد المفاتيح الهرمية الحتمية HD &lt;b&gt;مفعل&lt;/b&gt;</translation>
- </message>
- <message>
- <source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
- <translation type="unfinished">توليد المفاتيح الهرمية الحتمية HD &lt;b&gt;معطل&lt;/b&gt;</translation>
- </message>
- <message>
- <source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
- <translation type="unfinished">المفتاح الخاص &lt;b&gt;معطل&lt;/b&gt;</translation>
- </message>
- <message>
- <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
- <translation type="unfinished">المحفظة &lt;b&gt;مشفرة&lt;/b&gt; و &lt;b&gt;مفتوحة&lt;/b&gt; حاليا</translation>
- </message>
- <message>
- <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;locked&lt;/b&gt;</source>
- <translation type="unfinished">المحفظة &lt;b&gt;مشفرة&lt;/b&gt; و &lt;b&gt;مقفلة&lt;/b&gt; حاليا</translation>
- </message>
- <message>
- <source>Original message:</source>
- <translation type="unfinished">الرسالة الأصلية:</translation>
- </message>
-</context>
-<context>
- <name>UnitDisplayStatusBarControl</name>
- <message>
- <source>Unit to show amounts in. Click to select another unit.</source>
- <translation type="unfinished">‫وحدة عرض القيمة. انقر لتغيير وحدة العرض.‬</translation>
- </message>
-</context>
-<context>
- <name>CoinControlDialog</name>
- <message>
- <source>Coin Selection</source>
- <translation type="unfinished">اختيار وحدات البتكوين</translation>
- </message>
- <message>
- <source>Quantity:</source>
- <translation type="unfinished">الكمية:</translation>
- </message>
- <message>
- <source>Bytes:</source>
- <translation type="unfinished">بايت:</translation>
- </message>
- <message>
- <source>Amount:</source>
- <translation type="unfinished">القيمة:</translation>
- </message>
- <message>
- <source>Fee:</source>
- <translation type="unfinished">الرسوم:</translation>
- </message>
- <message>
- <source>Dust:</source>
- <translation type="unfinished">غبار:</translation>
- </message>
- <message>
- <source>After Fee:</source>
- <translation type="unfinished">بعد الرسوم:</translation>
- </message>
- <message>
- <source>Change:</source>
- <translation type="unfinished">تعديل:</translation>
- </message>
- <message>
- <source>(un)select all</source>
- <translation type="unfinished">‫الغاء تحديد الكل‬</translation>
- </message>
- <message>
- <source>Tree mode</source>
- <translation type="unfinished">صيغة الشجرة</translation>
- </message>
- <message>
- <source>List mode</source>
- <translation type="unfinished">صيغة القائمة</translation>
- </message>
- <message>
- <source>Amount</source>
- <translation type="unfinished">‫القيمة‬</translation>
- </message>
- <message>
- <source>Received with label</source>
- <translation type="unfinished">‫استُلم وله مذكرة‬</translation>
- </message>
- <message>
- <source>Received with address</source>
- <translation type="unfinished">‫مستلم مع عنوان‬</translation>
- </message>
- <message>
- <source>Date</source>
- <translation type="unfinished">التاريخ</translation>
- </message>
- <message>
- <source>Confirmations</source>
- <translation type="unfinished">التأكيدات</translation>
- </message>
- <message>
- <source>Confirmed</source>
- <translation type="unfinished">‫نافذ‬</translation>
- </message>
- <message>
- <source>Copy amount</source>
- <translation type="unfinished">‫نسخ القيمة‬</translation>
- </message>
- <message>
- <source>&amp;Copy address</source>
- <translation type="unfinished">‫&amp;انسخ العنوان‬</translation>
- </message>
- <message>
- <source>Copy &amp;label</source>
- <translation type="unfinished">‫نسخ &amp;مذكرة‬</translation>
- </message>
- <message>
- <source>Copy &amp;amount</source>
- <translation type="unfinished">‫نسخ &amp;القيمة‬</translation>
- </message>
- <message>
- <source>Copy transaction &amp;ID and output index</source>
- <translation type="unfinished">‫نسخ &amp;معرف العملية وفهرس المخرجات‬</translation>
- </message>
- <message>
- <source>L&amp;ock unspent</source>
- <translation type="unfinished">قفل غير منفق</translation>
- </message>
- <message>
- <source>&amp;Unlock unspent</source>
- <translation type="unfinished">&amp; إفتح غير المنفق</translation>
- </message>
- <message>
- <source>Copy quantity</source>
- <translation type="unfinished">نسخ الكمية </translation>
- </message>
- <message>
- <source>Copy fee</source>
- <translation type="unfinished">نسخ الرسوم</translation>
- </message>
- <message>
- <source>Copy after fee</source>
- <translation type="unfinished">نسخ بعد الرسوم</translation>
- </message>
- <message>
- <source>Copy bytes</source>
- <translation type="unfinished">نسخ البايتات </translation>
- </message>
- <message>
- <source>Copy dust</source>
- <translation type="unfinished">نسخ الغبار</translation>
- </message>
- <message>
- <source>Copy change</source>
- <translation type="unfinished">‫نسخ الفكة‬</translation>
- </message>
- <message>
- <source>(%1 locked)</source>
- <translation type="unfinished">(%1 تم قفله)</translation>
- </message>
- <message>
- <source>yes</source>
- <translation type="unfinished">نعم</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">لا</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">‫تتحول هذه المذكرة إلى اللون الأحمر إذا تلقى مستلم كمية أقل من الحد الأعلى الحالي للغبار .‬</translation>
- </message>
- <message>
- <source>Can vary +/- %1 satoshi(s) per input.</source>
- <translation type="unfinished">‫يمكن يزيد أو ينقص %1 ساتوشي لكل مدخل.‬</translation>
- </message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">( لا وجود لمذكرة)</translation>
- </message>
- <message>
- <source>change from %1 (%2)</source>
- <translation type="unfinished">تغيير من %1 (%2)</translation>
- </message>
- <message>
- <source>(change)</source>
- <translation type="unfinished">‫(غيّر)‬</translation>
- </message>
-</context>
-<context>
- <name>CreateWalletActivity</name>
- <message>
- <source>Create Wallet</source>
- <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
- <translation type="unfinished">إنشاء محفظة</translation>
- </message>
- <message>
- <source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
- <extracomment>Descriptive text of the create wallet progress window which indicates to the user which wallet is currently being created.</extracomment>
- <translation type="unfinished">جار انشاء المحفظة &lt;b&gt;%1&lt;/b&gt;...</translation>
- </message>
- <message>
- <source>Create wallet failed</source>
- <translation type="unfinished">‫تعذر إنشاء المحفظة‬</translation>
- </message>
- <message>
- <source>Create wallet warning</source>
- <translation type="unfinished">تحذير إنشاء محفظة</translation>
- </message>
- <message>
- <source>Can't list signers</source>
- <translation type="unfinished">لا يمكن سرد الموقعين</translation>
- </message>
- <message>
- <source>Too many external signers found</source>
- <translation type="unfinished">‫تم العثور على موقّعين خارجيين كُثر (Too Many)‬</translation>
- </message>
-</context>
-<context>
- <name>OpenWalletActivity</name>
- <message>
- <source>Open wallet failed</source>
- <translation type="unfinished">فشل فتح محفظة</translation>
- </message>
- <message>
- <source>Open wallet warning</source>
- <translation type="unfinished">تحذير محفظة مفتوحة</translation>
- </message>
- <message>
- <source>default wallet</source>
- <translation type="unfinished">المحفظة الإفتراضية</translation>
- </message>
- <message>
- <source>Open Wallet</source>
- <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">افتح المحفظة</translation>
- </message>
- <message>
- <source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
- <extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
- <translation type="unfinished">جاري فتح المحفظة&lt;b&gt;%1&lt;/b&gt;...</translation>
- </message>
-</context>
-<context>
- <name>RestoreWalletActivity</name>
- <message>
- <source>Restore Wallet</source>
- <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
- <translation type="unfinished">استعادة المحفظة</translation>
- </message>
- <message>
- <source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
- <extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
- <translation type="unfinished">استعادة المحفظة &lt;b&gt;%1&lt;/b&gt;...</translation>
- </message>
- <message>
- <source>Restore wallet failed</source>
- <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
- <translation type="unfinished">‫تعذر استعادة المحفظة‬</translation>
- </message>
- <message>
- <source>Restore wallet warning</source>
- <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
- <translation type="unfinished">‫تحذير استعادة المحفظة‬</translation>
- </message>
- <message>
- <source>Restore wallet message</source>
- <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
- <translation type="unfinished">‫رسالة استعادة محفظة‬</translation>
- </message>
-</context>
-<context>
- <name>WalletController</name>
- <message>
- <source>Close wallet</source>
- <translation type="unfinished">اغلق المحفظة</translation>
- </message>
- <message>
- <source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
- <translation type="unfinished">اغلاق المحفظة لفترة طويلة قد يؤدي الى الاضطرار الى اعادة مزامنة السلسلة بأكملها اذا تم تمكين التلقيم.</translation>
- </message>
- <message>
- <source>Close all wallets</source>
- <translation type="unfinished">إغلاق جميع المحافظ ...</translation>
- </message>
- <message>
- <source>Are you sure you wish to close all wallets?</source>
- <translation type="unfinished">هل أنت متأكد من رغبتك في اغلاق جميع المحافظ؟</translation>
- </message>
-</context>
-<context>
- <name>CreateWalletDialog</name>
- <message>
- <source>Create Wallet</source>
- <translation type="unfinished">إنشاء محفظة</translation>
- </message>
- <message>
- <source>Wallet Name</source>
- <translation type="unfinished">إسم المحفظة</translation>
- </message>
- <message>
- <source>Wallet</source>
- <translation type="unfinished">محفظة</translation>
- </message>
- <message>
- <source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
- <translation type="unfinished">شفر المحفظة. المحفظة سيتم تشفيرها بإستخدام كلمة مرور من إختيارك.</translation>
- </message>
- <message>
- <source>Encrypt Wallet</source>
- <translation type="unfinished">تشفير محفظة</translation>
- </message>
- <message>
- <source>Advanced Options</source>
- <translation type="unfinished">خيارات متقدمة</translation>
- </message>
- <message>
- <source>Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets.</source>
- <translation type="unfinished">تعطيل المفاتيح الخاصة لهذه المحفظة. لن تحتوي المحافظ ذات المفاتيح الخاصة المعطلة على مفاتيح خاصة ولا يمكن أن تحتوي على مفتاح HD أو مفاتيح خاصة مستوردة. هذا مثالي لمحافظ مشاهدة فقط فقط.</translation>
- </message>
- <message>
- <source>Disable Private Keys</source>
- <translation type="unfinished">إيقاف المفاتيح الخاصة</translation>
- </message>
- <message>
- <source>Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time.</source>
- <translation type="unfinished">اصنع محفظة فارغة. لا تحتوي المحافظ الفارغة في البداية على مفاتيح خاصة أو نصوص. يمكن استيراد المفاتيح والعناوين الخاصة، أو يمكن تعيين مصدر HD في وقت لاحق.</translation>
- </message>
- <message>
- <source>Make Blank Wallet</source>
- <translation type="unfinished">أنشئ محفظة فارغة</translation>
- </message>
- <message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">استخدم الواصفات لإدارة scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">المحفظة الوصفية</translation>
- </message>
- <message>
- <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
- <translation type="unfinished">استخدم جهاز توقيع خارجي مثل محفظة الأجهزة. قم بتكوين البرنامج النصي للموقِّع الخارجي في تفضيلات المحفظة أولاً.</translation>
- </message>
- <message>
- <source>External signer</source>
- <translation type="unfinished">الموقّع الخارجي</translation>
- </message>
- <message>
- <source>Create</source>
- <translation type="unfinished">إنشاء</translation>
- </message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">تم تجميعه بدون دعم sqlite (مطلوب لمحافظ الواصف)</translation>
- </message>
- <message>
- <source>Compiled without external signing support (required for external signing)</source>
- <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">مجمعة بدون دعم توقيع خارجي (مطلوب للتوقيع الخارجي)</translation>
- </message>
-</context>
-<context>
- <name>EditAddressDialog</name>
- <message>
- <source>Edit Address</source>
- <translation type="unfinished">تعديل العنوان</translation>
- </message>
- <message>
- <source>&amp;Label</source>
- <translation type="unfinished">&amp;وصف</translation>
- </message>
- <message>
- <source>The label associated with this address list entry</source>
- <translation type="unfinished">الملصق المرتبط بقائمة العناوين المدخلة</translation>
- </message>
- <message>
- <source>The address associated with this address list entry. This can only be modified for sending addresses.</source>
- <translation type="unfinished">العنوان المرتبط بقائمة العناوين المدخلة. و التي يمكن تعديلها فقط بواسطة ارسال العناوين</translation>
- </message>
- <message>
- <source>&amp;Address</source>
- <translation type="unfinished">&amp;العنوان</translation>
- </message>
- <message>
- <source>New sending address</source>
- <translation type="unfinished">عنوان إرسال جديد</translation>
- </message>
- <message>
- <source>Edit receiving address</source>
- <translation type="unfinished">تعديل عنوان الأستلام</translation>
- </message>
- <message>
- <source>Edit sending address</source>
- <translation type="unfinished">تعديل عنوان الارسال</translation>
- </message>
- <message>
- <source>The entered address "%1" is not a valid Bitcoin address.</source>
- <translation type="unfinished">العنوان المدخل "%1" ليس عنوان بيت كوين صحيح.</translation>
- </message>
- <message>
- <source>Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address.</source>
- <translation type="unfinished">العنوان "%1" موجود بالفعل كعنوان إستقبال تحت مسمى "%2" ولذلك لا يمكن إضافته كعنوان إرسال.</translation>
- </message>
- <message>
- <source>The entered address "%1" is already in the address book with label "%2".</source>
- <translation type="unfinished">العنوان المدخل "%1" موجود بالفعل في سجل العناوين تحت مسمى " "%2".</translation>
- </message>
- <message>
- <source>Could not unlock wallet.</source>
- <translation type="unfinished"> يمكن فتح المحفظة.</translation>
- </message>
- <message>
- <source>New key generation failed.</source>
- <translation type="unfinished">فشل توليد مفتاح جديد.</translation>
- </message>
-</context>
-<context>
- <name>FreespaceChecker</name>
- <message>
- <source>A new data directory will be created.</source>
- <translation type="unfinished">سيتم انشاء دليل بيانات جديد.</translation>
- </message>
- <message>
- <source>name</source>
- <translation type="unfinished">الإسم</translation>
- </message>
- <message>
- <source>Directory already exists. Add %1 if you intend to create a new directory here.</source>
- <translation type="unfinished">الدليل موجوج بالفعل. أضف %1 اذا نويت إنشاء دليل جديد هنا.</translation>
- </message>
- <message>
- <source>Path already exists, and is not a directory.</source>
- <translation type="unfinished">المسار موجود بالفعل، وهو ليس دليلاً.</translation>
- </message>
- <message>
- <source>Cannot create data directory here.</source>
- <translation type="unfinished">لا يمكن انشاء دليل بيانات هنا .</translation>
- </message>
-</context>
-<context>
- <name>Intro</name>
- <message>
- <source>Bitcoin</source>
- <translation type="unfinished">بتكوين</translation>
- </message>
- <message numerus="yes">
- <source>%n GB of space available</source>
- <translation type="unfinished">
- <numerusform>%n GB of space available</numerusform>
- <numerusform>%n GB of space available</numerusform>
- <numerusform>%n GB of space available</numerusform>
- <numerusform>%n GB of space available</numerusform>
- <numerusform>%n GB of space available</numerusform>
- <numerusform>‫‫%n جيجابايت من المساحة متوفرة</numerusform>
- </translation>
- </message>
- <message numerus="yes">
- <source>(of %n GB needed)</source>
- <translation type="unfinished">
- <numerusform>(of %n GB needed)</numerusform>
- <numerusform>(of %n GB needed)</numerusform>
- <numerusform>(of %n GB needed)</numerusform>
- <numerusform>(of %n GB needed)</numerusform>
- <numerusform>(of %n GB needed)</numerusform>
- <numerusform>‫(مطلوب %n جيجابايت)‬</numerusform>
- </translation>
- </message>
- <message numerus="yes">
- <source>(%n GB needed for full chain)</source>
- <translation type="unfinished">
- <numerusform>(%n GB needed for full chain)</numerusform>
- <numerusform>(%n GB needed for full chain)</numerusform>
- <numerusform>(%n GB needed for full chain)</numerusform>
- <numerusform>(%n GB needed for full chain)</numerusform>
- <numerusform>(%n GB needed for full chain)</numerusform>
- <numerusform>‫( مطلوب %n جيجابايت لكامل المتتالية)‬</numerusform>
- </translation>
- </message>
- <message>
- <source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
- <translation type="unfinished">سيتم تخزين %1 جيجابايت على الأقل من البيانات في هذا الدليل، وستنمو مع الوقت.</translation>
- </message>
- <message>
- <source>Approximately %1 GB of data will be stored in this directory.</source>
- <translation type="unfinished">سيتم تخزين %1 جيجابايت تقريباً من البيانات في هذا الدليل.</translation>
- </message>
- <message numerus="yes">
- <source>(sufficient to restore backups %n day(s) old)</source>
- <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
- <translation type="unfinished">
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
- </translation>
- </message>
- <message>
- <source>%1 will download and store a copy of the Bitcoin block chain.</source>
- <translation type="unfinished">سيقوم %1 بتنزيل نسخة من سلسلة كتل بتكوين وتخزينها.</translation>
- </message>
- <message>
- <source>The wallet will also be stored in this directory.</source>
- <translation type="unfinished">سوف يتم تخزين المحفظة في هذا الدليل.</translation>
- </message>
- <message>
- <source>Error: Specified data directory "%1" cannot be created.</source>
- <translation type="unfinished">خطأ: لا يمكن تكوين دليل بيانات مخصص ل %1</translation>
- </message>
- <message>
- <source>Error</source>
- <translation type="unfinished">خطأ</translation>
- </message>
- <message>
- <source>Welcome</source>
- <translation type="unfinished">أهلا</translation>
- </message>
- <message>
- <source>Welcome to %1.</source>
- <translation type="unfinished"> اهلا بكم في %1</translation>
- </message>
- <message>
- <source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
- <translation type="unfinished">بما انه هذه اول مرة لانطلاق هذا البرنامج, فيمكنك ان تختار اين سيخزن %1 بياناته</translation>
- </message>
- <message>
- <source>Limit block chain storage to</source>
- <translation type="unfinished">تقييد تخزين سلسلة الكتل إلى</translation>
- </message>
- <message>
- <source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
- <translation type="unfinished">تتطلب العودة إلى هذا الإعداد إعادة تنزيل سلسلة الكتل بالكامل. من الأسرع تنزيل السلسلة الكاملة أولاً وتقليمها لاحقًا. تعطيل بعض الميزات المتقدمة.</translation>
- </message>
- <message>
- <source> GB</source>
- <translation type="unfinished">غيغابايت</translation>
- </message>
- <message>
- <source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
- <translation type="unfinished">تُعد هذه المزامنة الأولية أمرًا شاقًا للغاية، وقد تعرض جهاز الكمبيوتر الخاص بك للمشاكل الذي لم يلاحظها أحد سابقًا. في كل مرة تقوم فيها بتشغيل %1، سيتابع التحميل من حيث تم التوقف.</translation>
- </message>
- <message>
- <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
- <translation type="unfinished">‫عندما تنقر موافق. %1 سنبدأ التحميل ومعالجة كامل %4 الطوابق المتتالية (%2 GB) بدأً من أوائل العمليات في %3 عندما %4 تم الاطلاق لأول مرة.‬</translation>
- </message>
- <message>
- <source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
- <translation type="unfinished">إذا كنت قد اخترت تقييد تخزين سلسلة الكتل (التجريد)، فيجب تحميل البيانات القديمة ومعالجتها، ولكن سيتم حذفها بعد ذلك للحفاظ على انخفاض استخدام القرص.</translation>
- </message>
- <message>
- <source>Use the default data directory</source>
- <translation type="unfinished">استخدام دليل البانات الافتراضي</translation>
- </message>
- <message>
- <source>Use a custom data directory:</source>
- <translation type="unfinished">استخدام دليل بيانات مخصص:</translation>
- </message>
-</context>
-<context>
- <name>HelpMessageDialog</name>
- <message>
- <source>version</source>
- <translation type="unfinished">النسخة</translation>
- </message>
- <message>
- <source>About %1</source>
- <translation type="unfinished">حوالي %1</translation>
- </message>
- <message>
- <source>Command-line options</source>
- <translation type="unfinished">خيارات سطر الأوامر</translation>
- </message>
-</context>
-<context>
- <name>ShutdownWindow</name>
- <message>
- <source>%1 is shutting down…</source>
- <translation type="unfinished">%1 يتم الإغلاق ...</translation>
- </message>
- <message>
- <source>Do not shut down the computer until this window disappears.</source>
- <translation type="unfinished">لا توقف عمل الكمبيوتر حتى تختفي هذه النافذة</translation>
- </message>
-</context>
-<context>
- <name>ModalOverlay</name>
- <message>
- <source>Form</source>
- <translation type="unfinished">نمودج</translation>
- </message>
- <message>
- <source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
- <translation type="unfinished">قد لا تكون المعاملات الأخيرة مرئية بعد، وبالتالي قد يكون رصيد محفظتك غير صحيح. ستكون هذه المعلومات صحيحة بمجرد الانتهاء من محفظتك مع شبكة البيتكوين، كما هو مفصل أدناه.</translation>
- </message>
- <message>
- <source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
- <translation type="unfinished">لن تقبل الشبكة محاولة إنفاق البتكوين المتأثرة بالمعاملات التي لم يتم عرضها بعد.</translation>
- </message>
- <message>
- <source>Number of blocks left</source>
- <translation type="unfinished">عدد الكتل الفاضلة</translation>
- </message>
- <message>
- <source>Unknown…</source>
- <translation type="unfinished">غير معروف</translation>
- </message>
- <message>
- <source>calculating…</source>
- <translation type="unfinished">جاري الحساب</translation>
- </message>
- <message>
- <source>Last block time</source>
- <translation type="unfinished">اخر وقت الكتلة</translation>
- </message>
- <message>
- <source>Progress</source>
- <translation type="unfinished">تقدم</translation>
- </message>
- <message>
- <source>Progress increase per hour</source>
- <translation type="unfinished">تقدم يزيد بلساعة</translation>
- </message>
- <message>
- <source>Estimated time left until synced</source>
- <translation type="unfinished">الوقت المتبقي للمزامنة</translation>
- </message>
- <message>
- <source>Hide</source>
- <translation type="unfinished">إخفاء</translation>
- </message>
- <message>
- <source>Esc</source>
- <translation type="unfinished">خروج</translation>
- </message>
- <message>
- <source>Unknown. Syncing Headers (%1, %2%)…</source>
- <translation type="unfinished">مجهول. مزامنة الرؤوس (%1،%2٪) ...</translation>
- </message>
- <message>
- <source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
- <translation type="unfinished">‫غير معروف. ما قبل مزامنة الرؤوس (%1, %2%)…‬</translation>
- </message>
-</context>
-<context>
- <name>OpenURIDialog</name>
- <message>
- <source>Open bitcoin URI</source>
- <translation type="unfinished">‫افتح رابط بتكوين (URI)‬</translation>
- </message>
- <message>
- <source>URI:</source>
- <translation type="unfinished">العنوان:</translation>
- </message>
- <message>
- <source>Paste address from clipboard</source>
- <extracomment>Tooltip text for button that allows you to paste an address that is in your clipboard.</extracomment>
- <translation type="unfinished">‫ألصق العنوان من الحافظة‬</translation>
- </message>
-</context>
-<context>
- <name>OptionsDialog</name>
- <message>
- <source>Options</source>
- <translation type="unfinished">خيارات</translation>
- </message>
- <message>
- <source>&amp;Main</source>
- <translation type="unfinished">‫&amp;الرئيسية‬</translation>
- </message>
- <message>
- <source>Automatically start %1 after logging in to the system.</source>
- <translation type="unfinished">‫تشغيل البرنامج تلقائيا %1 بعد تسجيل الدخول إلى النظام.‬</translation>
- </message>
- <message>
- <source>&amp;Start %1 on system login</source>
- <translation type="unfinished">تشغيل %1 عند الدخول إلى النظام</translation>
- </message>
- <message>
- <source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
- <translation type="unfinished">‫يؤدي تمكين خيار اختصار النود إلى تقليل مساحة التخزين المطلوبة بشكل كبير. يتم المصادقة على جميع الطوابق رغم تفعيل هذا الخيار،. إلغاء هذا الاعداد يتطلب اعادة تحميل الطوابق المتتالية من جديد بشكل كامل.‬</translation>
- </message>
- <message>
- <source>Size of &amp;database cache</source>
- <translation type="unfinished">‫حجم ذاكرة التخزين المؤقت ل&amp;قاعدة البيانات‬</translation>
- </message>
- <message>
- <source>Number of script &amp;verification threads</source>
- <translation type="unfinished">عدد مؤشرات التحقق من البرنامج النصي</translation>
- </message>
- <message>
- <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
- <translation type="unfinished">‫عنوان IP للوكيل (مثل IPv4: 127.0.0.1 / IPv6: ::1)‬</translation>
- </message>
- <message>
- <source>Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source>
- <translation type="unfinished">إظهار ما إذا كان وكيل SOCKS5 الافتراضي الموفر تم استخدامه للوصول إلى الأقران عبر نوع الشبكة هذا.</translation>
- </message>
- <message>
- <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source>
- <translation type="unfinished">‫التصغير بدلاً من الخروج من التطبيق عند إغلاق النافذة. عند تفعيل هذا الخيار، سيتم إغلاق التطبيق فقط بعد النقر على خروج من القائمة المنسدلة.‬</translation>
- </message>
- <message>
- <source>Options set in this dialog are overridden by the command line:</source>
- <translation type="unfinished">‫التفضيلات المعينة عن طريق سطر الأوامر لها أولوية أكبر وتتجاوز التفضيلات المختارة هنا:‬</translation>
- </message>
- <message>
- <source>Open the %1 configuration file from the working directory.</source>
- <translation type="unfinished">‫فتح ملف %1 الإعداد من مجلد العمل.‬</translation>
- </message>
- <message>
- <source>Open Configuration File</source>
- <translation type="unfinished">‫فتح ملف الإعداد‬</translation>
- </message>
- <message>
- <source>Reset all client options to default.</source>
- <translation type="unfinished">إعادة تعيين كل إعدادات العميل للحالة الإفتراضية.</translation>
- </message>
- <message>
- <source>&amp;Reset Options</source>
- <translation type="unfinished">‫&amp;اعادة تهيئة الخيارات‬</translation>
- </message>
- <message>
- <source>&amp;Network</source>
- <translation type="unfinished">&amp;الشبكة</translation>
- </message>
- <message>
- <source>Prune &amp;block storage to</source>
- <translation type="unfinished">‫اختصار &amp;تخزين الطابق</translation>
- </message>
- <message>
- <source>GB</source>
- <translation type="unfinished">‫جيجابايت‬</translation>
- </message>
- <message>
- <source>Reverting this setting requires re-downloading the entire blockchain.</source>
- <translation type="unfinished">‫العودة الى هذا الاعداد تتطلب إعادة تنزيل الطوابق المتتالية بالكامل.‬</translation>
- </message>
- <message>
- <source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
- <extracomment>Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</extracomment>
- <translation type="unfinished">‫الحد الأعلى لحجم قاعدة البيانات المؤقتة (الكاش). رفع حد الكاش يزيد من سرعة المزامنة. هذا الخيار مفيد أثناء المزامنة وقد لا يفيد بعد اكتمال المزامنة في معظم الحالات. تخفيض حجم الكاش يقلل من استهلاك الذاكرة. ذاكرة تجمع الذاكرة (mempool) الغير مستخدمة مضمنة في هذا الكاش.‬</translation>
- </message>
- <message>
- <source>MiB</source>
- <translation type="unfinished">‫ميجابايت‬</translation>
- </message>
- <message>
- <source>(0 = auto, &lt;0 = leave that many cores free)</source>
- <translation type="unfinished">‫(0 = تلقائي, &lt;0 = لترك أنوية حرة بقدر الرقم السالب)‬</translation>
- </message>
- <message>
- <source>Enable R&amp;PC server</source>
- <extracomment>An Options window setting to enable the RPC server.</extracomment>
- <translation type="unfinished">‫تفعيل خادم نداء &amp;الاجراء البعيد (RPC)‬</translation>
- </message>
- <message>
- <source>W&amp;allet</source>
- <translation type="unfinished">‫م&amp;حفظة‬</translation>
- </message>
- <message>
- <source>Whether to set subtract fee from amount as default or not.</source>
- <extracomment>Tooltip text for Options window setting that sets subtracting the fee from a sending amount as default.</extracomment>
- <translation type="unfinished">‫تعيين خيار خصم الرسوم من القيمة كخيار افتراضي أم لا.‬</translation>
- </message>
- <message>
- <source>Subtract &amp;fee from amount by default</source>
- <extracomment>An Options window setting to set subtracting the fee from a sending amount as default.</extracomment>
- <translation type="unfinished">‫اخصم &amp;الرسوم من القيمة بشكل افتراضي‬</translation>
- </message>
- <message>
- <source>Expert</source>
- <translation type="unfinished">‫خبير‬</translation>
- </message>
- <message>
- <source>Enable coin &amp;control features</source>
- <translation type="unfinished">‫تفعيل ميزة &amp;التحكم بوحدات البتكوين‬</translation>
- </message>
- <message>
- <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
- <translation type="unfinished">‫اذا قمت بتعطيل خيار الانفاق من الفكة الغير مؤكدة، لن يكون بمقدورك التحكم بتلك الفكة حتى تنْفُذ العملية وتحصل على تأكيد واحد على الأقل. هذا أيضا يؤثر على كيفية حساب رصيدك.‬</translation>
- </message>
- <message>
- <source>&amp;Spend unconfirmed change</source>
- <translation type="unfinished">‫&amp;دفع الفكة غير المؤكدة‬</translation>
- </message>
- <message>
- <source>Enable &amp;PSBT controls</source>
- <extracomment>An options window setting to enable PSBT controls.</extracomment>
- <translation type="unfinished">‫تفعيل التحكم ب &amp;المعاملات الموقعة جزئيا‬</translation>
- </message>
- <message>
- <source>Whether to show PSBT controls.</source>
- <extracomment>Tooltip text for options window setting that enables PSBT controls.</extracomment>
- <translation type="unfinished">‫خيار عرض التحكم بالمعاملات الموقعة جزئيا.‬</translation>
- </message>
- <message>
- <source>External Signer (e.g. hardware wallet)</source>
- <translation type="unfinished">‫جهاز التوقيع الخارجي (مثل المحفظة الخارجية)‬</translation>
- </message>
- <message>
- <source>&amp;External signer script path</source>
- <translation type="unfinished">&amp; مسار البرنامج النصي للموقّع الخارجي</translation>
- </message>
- <message>
- <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
- <translation type="unfinished">‫فتح منفذ عميل البتكوين تلقائيا على الموجه. يعمل فقط عندما يكون الموجه الخاص بك يدعم UPnP ومفعل ايضا.‬</translation>
- </message>
- <message>
- <source>Map port using &amp;UPnP</source>
- <translation type="unfinished">‫ربط المنفذ باستخدام &amp;UPnP‬</translation>
- </message>
- <message>
- <source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
- <translation type="unfinished">‫افتح منفذ عميل بتكوين تلقائيًا على جهاز التوجيه. يعمل هذا فقط عندما يدعم جهاز التوجيه الخاص بك NAT-PMP ويتم تمكينه. يمكن أن يكون المنفذ الخارجي عشوائيًا.‬</translation>
- </message>
- <message>
- <source>Map port using NA&amp;T-PMP</source>
- <translation type="unfinished">منفذ الخريطة باستخدام NAT-PMP</translation>
- </message>
- <message>
- <source>Accept connections from outside.</source>
- <translation type="unfinished">قبول الاتصالات من الخارج.</translation>
- </message>
- <message>
- <source>Allow incomin&amp;g connections</source>
- <translation type="unfinished">‫السماح بالاتصالات الوارد&amp;ة‬</translation>
- </message>
- <message>
- <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source>
- <translation type="unfinished">الاتصال بشبكة البتكوين عبر وكيل SOCKS5.</translation>
- </message>
- <message>
- <source>&amp;Connect through SOCKS5 proxy (default proxy):</source>
- <translation type="unfinished">الاتصال من خلال وكيل SOCKS5 (الوكيل الافتراضي):</translation>
- </message>
- <message>
- <source>Proxy &amp;IP:</source>
- <translation type="unfinished">بروكسي &amp;اي بي:</translation>
- </message>
- <message>
- <source>&amp;Port:</source>
- <translation type="unfinished">&amp;المنفذ:</translation>
- </message>
- <message>
- <source>Port of the proxy (e.g. 9050)</source>
- <translation type="unfinished">منفذ البروكسي (مثلا 9050)</translation>
- </message>
- <message>
- <source>Used for reaching peers via:</source>
- <translation type="unfinished">مستخدم للاتصال بالاقران من خلال:</translation>
- </message>
- <message>
- <source>Tor</source>
- <translation type="unfinished">تور</translation>
- </message>
- <message>
- <source>&amp;Window</source>
- <translation type="unfinished">&amp;نافذة</translation>
- </message>
- <message>
- <source>Show the icon in the system tray.</source>
- <translation type="unfinished">عرض الأيقونة في زاوية الأيقونات.</translation>
- </message>
- <message>
- <source>&amp;Show tray icon</source>
- <translation type="unfinished">‫&amp;اعرض الأيقونة في الزاوية‬</translation>
- </message>
- <message>
- <source>Show only a tray icon after minimizing the window.</source>
- <translation type="unfinished">‫عرض الأيقونة في زاوية الأيقونات فقط بعد تصغير النافذة.‬</translation>
- </message>
- <message>
- <source>&amp;Minimize to the tray instead of the taskbar</source>
- <translation type="unfinished">‫التصغير إلى زاوية الأيقونات بدلاً من شريط المهام‬</translation>
- </message>
- <message>
- <source>M&amp;inimize on close</source>
- <translation type="unfinished">‫ت&amp;صغير عند الإغلاق‬</translation>
- </message>
- <message>
- <source>&amp;Display</source>
- <translation type="unfinished">&amp;عرض</translation>
- </message>
- <message>
- <source>User Interface &amp;language:</source>
- <translation type="unfinished">واجهة المستخدم &amp;اللغة:</translation>
- </message>
- <message>
- <source>The user interface language can be set here. This setting will take effect after restarting %1.</source>
- <translation type="unfinished">‫يمكن ضبط الواجهة اللغوية للمستخدم من هنا. هذا الإعداد يتطلب إعادة تشغيل %1.‬</translation>
- </message>
- <message>
- <source>&amp;Unit to show amounts in:</source>
- <translation type="unfinished">‫وحدة لعرض القيم:‬</translation>
- </message>
- <message>
- <source>Choose the default subdivision unit to show in the interface and when sending coins.</source>
- <translation type="unfinished">‫اختر وحدة التقسيم الفرعية الافتراضية للعرض في الواجهة وعند إرسال البتكوين.‬</translation>
- </message>
- <message>
- <source>Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
- <translation type="unfinished">‫عناوين أطراف أخرى (مثل: مستكشف الطوابق) تظهر في النافذة المبوبة للعمليات كخيار في القائمة المنبثقة. %s في الرابط تُستبدل بمعرف التجزئة. سيتم فصل العناوين بخط أفقي |.‬</translation>
- </message>
- <message>
- <source>&amp;Third-party transaction URLs</source>
- <translation type="unfinished">‫&amp;عناوين عمليات أطراف أخرى‬</translation>
- </message>
- <message>
- <source>Whether to show coin control features or not.</source>
- <translation type="unfinished">‫ما اذا أردت إظهار ميزات التحكم في وحدات البتكوين أم لا.‬</translation>
- </message>
- <message>
- <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services.</source>
- <translation type="unfinished">اتصل بشبكة بتكوين من خلال وكيل SOCKS5 منفصل لخدمات Tor onion.</translation>
- </message>
- <message>
- <source>Use separate SOCKS&amp;5 proxy to reach peers via Tor onion services:</source>
- <translation type="unfinished">استخدم بروكسي SOCKS5 منفصل للوصول إلى الأقران عبر خدمات Tor onion:</translation>
- </message>
- <message>
- <source>Monospaced font in the Overview tab:</source>
- <translation type="unfinished">الخط أحادي المسافة في علامة التبويب "نظرة عامة":</translation>
- </message>
- <message>
- <source>embedded "%1"</source>
- <translation type="unfinished">‫مضمنة "%1"‬</translation>
- </message>
- <message>
- <source>closest matching "%1"</source>
- <translation type="unfinished">‫أقرب تطابق "%1"</translation>
- </message>
- <message>
- <source>&amp;OK</source>
- <translation type="unfinished">&amp;تم</translation>
- </message>
- <message>
- <source>&amp;Cancel</source>
- <translation type="unfinished">الغاء</translation>
- </message>
- <message>
- <source>Compiled without external signing support (required for external signing)</source>
- <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">مجمعة بدون دعم توقيع خارجي (مطلوب للتوقيع الخارجي)</translation>
- </message>
- <message>
- <source>default</source>
- <translation type="unfinished">الافتراضي</translation>
- </message>
- <message>
- <source>none</source>
- <translation type="unfinished">لا شيء</translation>
- </message>
- <message>
- <source>Confirm options reset</source>
- <extracomment>Window title text of pop-up window shown when the user has chosen to reset options.</extracomment>
- <translation type="unfinished">تأكيد استعادة الخيارات</translation>
- </message>
- <message>
- <source>Client restart required to activate changes.</source>
- <extracomment>Text explaining that the settings changed will not come into effect until the client is restarted.</extracomment>
- <translation type="unfinished">‫يجب إعادة تشغيل العميل لتفعيل التغييرات.‬</translation>
- </message>
- <message>
- <source>Current settings will be backed up at "%1".</source>
- <extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
- <translation type="unfinished">‫سيتم النسخ الاحتياطي للاعدادات على “%1”.‬".</translation>
- </message>
- <message>
- <source>Client will be shut down. Do you want to proceed?</source>
- <extracomment>Text asking the user to confirm if they would like to proceed with a client shutdown.</extracomment>
- <translation type="unfinished">‫سوف يتم إيقاف العميل تماماً. هل تريد الإستمرار؟‬</translation>
- </message>
- <message>
- <source>Configuration options</source>
- <extracomment>Window title text of pop-up box that allows opening up of configuration file.</extracomment>
- <translation type="unfinished">‫خيارات الإعداد‬</translation>
- </message>
- <message>
- <source>The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file.</source>
- <extracomment>Explanatory text about the priority order of instructions considered by client. The order from high to low being: command-line, configuration file, GUI settings.</extracomment>
- <translation type="unfinished">‫يتم استخدام ملف الإعداد لتحديد خيارات المستخدم المتقدمة التي تتجاوز إعدادات واجهة المستخدم الرسومية. بالإضافة إلى ذلك ، ستتجاوز خيارات سطر الأوامر ملف الإعداد هذا.‬</translation>
- </message>
- <message>
- <source>Continue</source>
- <translation type="unfinished">‫استمرار‬</translation>
- </message>
- <message>
- <source>Cancel</source>
- <translation type="unfinished">إلغاء</translation>
- </message>
- <message>
- <source>Error</source>
- <translation type="unfinished">خطأ</translation>
- </message>
- <message>
- <source>The configuration file could not be opened.</source>
- <translation type="unfinished">‫لم تتمكن من فتح ملف الإعداد.‬</translation>
- </message>
- <message>
- <source>This change would require a client restart.</source>
- <translation type="unfinished">هذا التغيير يتطلب إعادة تشغيل العميل بشكل كامل.</translation>
- </message>
- <message>
- <source>The supplied proxy address is invalid.</source>
- <translation type="unfinished">‫عنوان الوكيل الذي تم ادخاله غير صالح.‬</translation>
- </message>
-</context>
-<context>
- <name>OptionsModel</name>
- <message>
- <source>Could not read setting "%1", %2.</source>
- <translation type="unfinished">‫لا يمكن قراءة الاعدادات “%1”, %2.‬</translation>
- </message>
-</context>
-<context>
- <name>OverviewPage</name>
- <message>
- <source>Form</source>
- <translation type="unfinished">نمودج</translation>
- </message>
- <message>
- <source>The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet.</source>
- <translation type="unfinished">قد تكون المعلومات المعروضة قديمة. تتزامن محفظتك تلقائيًا مع شبكة البتكوين بعد إنشاء الاتصال، ولكن هذه العملية لم تكتمل بعد.</translation>
- </message>
- <message>
- <source>Watch-only:</source>
- <translation type="unfinished">‫مراقبة فقط:‬</translation>
- </message>
- <message>
- <source>Available:</source>
- <translation type="unfinished">‫متاح:‬</translation>
- </message>
- <message>
- <source>Your current spendable balance</source>
- <translation type="unfinished">‫الرصيد المتاح للصرف‬</translation>
- </message>
- <message>
- <source>Pending:</source>
- <translation type="unfinished">معلق:</translation>
- </message>
- <message>
- <source>Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source>
- <translation type="unfinished">إجمالي المعاملات التي لم يتم تأكيدها بعد ولا تحتسب ضمن الرصيد القابل للانفاق</translation>
- </message>
- <message>
- <source>Immature:</source>
- <translation type="unfinished">‫غير ناضج:‬</translation>
- </message>
- <message>
- <source>Mined balance that has not yet matured</source>
- <translation type="unfinished">الرصيد المعدّن الذي لم ينضج بعد</translation>
- </message>
- <message>
- <source>Balances</source>
- <translation type="unfinished">الأرصدة</translation>
- </message>
- <message>
- <source>Total:</source>
- <translation type="unfinished">المجموع:</translation>
- </message>
- <message>
- <source>Your current total balance</source>
- <translation type="unfinished">رصيدك الكلي الحالي</translation>
- </message>
- <message>
- <source>Your current balance in watch-only addresses</source>
- <translation type="unfinished">‫رصيد عناوين المراقبة‬</translation>
- </message>
- <message>
- <source>Spendable:</source>
- <translation type="unfinished">قابل للصرف:</translation>
- </message>
- <message>
- <source>Recent transactions</source>
- <translation type="unfinished">العمليات الأخيرة</translation>
- </message>
- <message>
- <source>Unconfirmed transactions to watch-only addresses</source>
- <translation type="unfinished">‫عمليات غير مؤكدة لعناوين المراقبة‬</translation>
- </message>
- <message>
- <source>Mined balance in watch-only addresses that has not yet matured</source>
- <translation type="unfinished">‫الرصيد المعدّن في عناوين المراقبة الذي لم ينضج بعد‬</translation>
- </message>
- <message>
- <source>Current total balance in watch-only addresses</source>
- <translation type="unfinished">‫الرصيد الإجمالي الحالي في عناوين المراقبة‬</translation>
- </message>
- <message>
- <source>Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings-&gt;Mask values.</source>
- <translation type="unfinished">تم تنشيط وضع الخصوصية لعلامة التبويب "نظرة عامة". للكشف عن القيم ، قم بإلغاء تحديد الإعدادات-&gt; إخفاء القيم.</translation>
- </message>
-</context>
-<context>
- <name>PSBTOperationsDialog</name>
- <message>
- <source>Sign Tx</source>
- <translation type="unfinished">‫توقيع العملية‬</translation>
- </message>
- <message>
- <source>Broadcast Tx</source>
- <translation type="unfinished">‫بث العملية‬</translation>
- </message>
- <message>
- <source>Copy to Clipboard</source>
- <translation type="unfinished">نسخ إلى الحافظة</translation>
- </message>
- <message>
- <source>Save…</source>
- <translation type="unfinished">‫حفظ…‬</translation>
- </message>
- <message>
- <source>Close</source>
- <translation type="unfinished">إغلاق</translation>
- </message>
- <message>
- <source>Failed to load transaction: %1</source>
- <translation type="unfinished">‫فشل تحميل العملية: %1‬</translation>
- </message>
- <message>
- <source>Failed to sign transaction: %1</source>
- <translation type="unfinished">فشل توقيع المعاملة: %1</translation>
- </message>
- <message>
- <source>Cannot sign inputs while wallet is locked.</source>
- <translation type="unfinished">‫لا يمكن توقيع المدخلات والمحفظة مقفلة.‬</translation>
- </message>
- <message>
- <source>Could not sign any more inputs.</source>
- <translation type="unfinished">تعذر توقيع المزيد من المدخلات.</translation>
- </message>
- <message>
- <source>Signed %1 inputs, but more signatures are still required.</source>
- <translation type="unfinished">‫تم توقيع %1 مدخلات، مطلوب توقيعات اضافية.‬</translation>
- </message>
- <message>
- <source>Signed transaction successfully. Transaction is ready to broadcast.</source>
- <translation type="unfinished">‫تم توقيع المعاملة بنجاح. العملية جاهزة للبث.‬</translation>
- </message>
- <message>
- <source>Unknown error processing transaction.</source>
- <translation type="unfinished">‫خطأ غير معروف في معالجة العملية.‬</translation>
- </message>
- <message>
- <source>Transaction broadcast successfully! Transaction ID: %1</source>
- <translation type="unfinished">‫تم بث العملية بنجاح! معرّف العملية: %1‬</translation>
- </message>
- <message>
- <source>Transaction broadcast failed: %1</source>
- <translation type="unfinished">‫فشل بث العملية: %1‬</translation>
- </message>
- <message>
- <source>PSBT copied to clipboard.</source>
- <translation type="unfinished">‫نسخ المعاملة الموقعة جزئيا إلى الحافظة.‬</translation>
- </message>
- <message>
- <source>Save Transaction Data</source>
- <translation type="unfinished">حفظ بيانات العملية</translation>
- </message>
- <message>
- <source>Partially Signed Transaction (Binary)</source>
- <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
- <translation type="unfinished">معاملة موقعة جزئيًا (ثنائي)</translation>
- </message>
- <message>
- <source>PSBT saved to disk.</source>
- <translation type="unfinished">‫تم حفظ المعاملة الموقعة جزئيا على وحدة التخزين.‬</translation>
- </message>
- <message>
- <source> * Sends %1 to %2</source>
- <translation type="unfinished">* يرسل %1 إلى %2</translation>
- </message>
- <message>
- <source>Unable to calculate transaction fee or total transaction amount.</source>
- <translation type="unfinished">‫غير قادر على حساب رسوم العملية أو إجمالي قيمة العملية.‬</translation>
- </message>
- <message>
- <source>Pays transaction fee: </source>
- <translation type="unfinished">‫دفع رسوم العملية: ‬</translation>
- </message>
- <message>
- <source>Total Amount</source>
- <translation type="unfinished">القيمة الإجمالية</translation>
- </message>
- <message>
- <source>or</source>
- <translation type="unfinished">أو</translation>
- </message>
- <message>
- <source>Transaction has %1 unsigned inputs.</source>
- <translation type="unfinished">‫المعاملة تحتوي على %1 من المدخلات غير موقعة.‬</translation>
- </message>
- <message>
- <source>Transaction is missing some information about inputs.</source>
- <translation type="unfinished">تفتقد المعاملة إلى بعض المعلومات حول المدخلات </translation>
- </message>
- <message>
- <source>Transaction still needs signature(s).</source>
- <translation type="unfinished">المعاملة ما زالت تحتاج التوقيع.</translation>
- </message>
- <message>
- <source>(But no wallet is loaded.)</source>
- <translation type="unfinished">‫(لكن لم يتم تحميل محفظة.)‬</translation>
- </message>
- <message>
- <source>(But this wallet cannot sign transactions.)</source>
- <translation type="unfinished">‫(لكن لا يمكن توقيع العمليات بهذه المحفظة.)‬</translation>
- </message>
- <message>
- <source>(But this wallet does not have the right keys.)</source>
- <translation type="unfinished">‫(لكن هذه المحفظة لا تحتوي على المفاتيح الصحيحة.)‬</translation>
- </message>
- <message>
- <source>Transaction is fully signed and ready for broadcast.</source>
- <translation type="unfinished">‫المعاملة موقعة بالكامل وجاهزة للبث.‬</translation>
- </message>
- <message>
- <source>Transaction status is unknown.</source>
- <translation type="unfinished">‫حالة العملية غير معروفة.‬</translation>
- </message>
-</context>
-<context>
- <name>PaymentServer</name>
- <message>
- <source>Payment request error</source>
- <translation type="unfinished">خطأ في طلب الدفع</translation>
- </message>
- <message>
- <source>Cannot start bitcoin: click-to-pay handler</source>
- <translation type="unfinished">لا يمكن تشغيل بتكوين: معالج النقر للدفع</translation>
- </message>
- <message>
- <source>URI handling</source>
- <translation type="unfinished">التعامل مع العنوان</translation>
- </message>
- <message>
- <source>'bitcoin://' is not a valid URI. Use 'bitcoin:' instead.</source>
- <translation type="unfinished">'bitcoin://' هو ليس عنوان URL صالح. استعمل 'bitcoin:' بدلا من ذلك.</translation>
- </message>
- <message>
- <source>Cannot process payment request because BIP70 is not supported.
-Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
-If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
- <translation type="unfinished">‫لا يمكن معالجة طلب الدفع لأن BIP70 غير مدعوم.
-‬‫‫‫نظرًا لوجود عيوب أمنية كبيرة في ‫BIP70 يوصى بشدة بتجاهل أي تعليمات من المستلمين لتبديل المحافظ.
-‬‫‫‫إذا كنت تتلقى هذا الخطأ ، يجب أن تطلب من المستلم تقديم عنوان URI متوافق مع BIP21.‬</translation>
- </message>
- <message>
- <source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source>
- <translation type="unfinished">‫لا يمكن تحليل العنوان (URI)! يمكن أن يحدث هذا بسبب عنوان بتكوين غير صالح أو محددات عنوان غير صحيحة.‬</translation>
- </message>
- <message>
- <source>Payment request file handling</source>
- <translation type="unfinished">التعامل مع ملف طلب الدفع</translation>
- </message>
-</context>
-<context>
- <name>PeerTableModel</name>
- <message>
- <source>User Agent</source>
- <extracomment>Title of Peers Table column which contains the peer's User Agent string.</extracomment>
- <translation type="unfinished">وكيل المستخدم</translation>
- </message>
- <message>
- <source>Ping</source>
- <extracomment>Title of Peers Table column which indicates the current latency of the connection with the peer.</extracomment>
- <translation type="unfinished">رنين</translation>
- </message>
- <message>
- <source>Peer</source>
- <extracomment>Title of Peers Table column which contains a unique number used to identify a connection.</extracomment>
- <translation type="unfinished">الأقران</translation>
- </message>
- <message>
- <source>Age</source>
- <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
- <translation type="unfinished">العمر</translation>
- </message>
- <message>
- <source>Direction</source>
- <extracomment>Title of Peers Table column which indicates the direction the peer connection was initiated from.</extracomment>
- <translation type="unfinished">جهة</translation>
- </message>
- <message>
- <source>Sent</source>
- <extracomment>Title of Peers Table column which indicates the total amount of network information we have sent to the peer.</extracomment>
- <translation type="unfinished">تم الإرسال</translation>
- </message>
- <message>
- <source>Received</source>
- <extracomment>Title of Peers Table column which indicates the total amount of network information we have received from the peer.</extracomment>
- <translation type="unfinished">‫مستلم‬</translation>
- </message>
- <message>
- <source>Address</source>
- <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
- <translation type="unfinished">العنوان</translation>
- </message>
- <message>
- <source>Type</source>
- <extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
- <translation type="unfinished">النوع</translation>
- </message>
- <message>
- <source>Network</source>
- <extracomment>Title of Peers Table column which states the network the peer connected through.</extracomment>
- <translation type="unfinished">الشبكة</translation>
- </message>
- <message>
- <source>Inbound</source>
- <extracomment>An Inbound Connection from a Peer.</extracomment>
- <translation type="unfinished">‫وارد‬</translation>
- </message>
- <message>
- <source>Outbound</source>
- <extracomment>An Outbound Connection to a Peer.</extracomment>
- <translation type="unfinished">‫صادر‬</translation>
- </message>
-</context>
-<context>
- <name>QRImageWidget</name>
- <message>
- <source>&amp;Save Image…</source>
- <translation type="unfinished">&amp;احفظ الصورة...</translation>
- </message>
- <message>
- <source>&amp;Copy Image</source>
- <translation type="unfinished">&amp;نسخ الصورة</translation>
- </message>
- <message>
- <source>Resulting URI too long, try to reduce the text for label / message.</source>
- <translation type="unfinished">‫العنوان الناتج طويل جدًا، حاول أن تقلص النص للمذكرة / الرسالة.‬</translation>
- </message>
- <message>
- <source>Error encoding URI into QR Code.</source>
- <translation type="unfinished">‫خطأ في ترميز العنوان إلى رمز الاستجابة السريع QR.‬</translation>
- </message>
- <message>
- <source>QR code support not available.</source>
- <translation type="unfinished">‫دعم رمز الاستجابة السريع QR غير متوفر.‬</translation>
- </message>
- <message>
- <source>Save QR Code</source>
- <translation type="unfinished">حفظ رمز الاستجابة السريع QR</translation>
- </message>
- <message>
- <source>PNG Image</source>
- <extracomment>Expanded name of the PNG file format. See: https://en.wikipedia.org/wiki/Portable_Network_Graphics.</extracomment>
- <translation type="unfinished">صورة PNG</translation>
- </message>
-</context>
-<context>
- <name>RPCConsole</name>
- <message>
- <source>N/A</source>
- <translation type="unfinished">غير معروف</translation>
- </message>
- <message>
- <source>Client version</source>
- <translation type="unfinished">‫اصدار العميل‬</translation>
- </message>
- <message>
- <source>&amp;Information</source>
- <translation type="unfinished">‫&amp;المعلومات‬</translation>
- </message>
- <message>
- <source>General</source>
- <translation type="unfinished">عام</translation>
- </message>
- <message>
- <source>Datadir</source>
- <translation type="unfinished">‫مجلد البيانات‬</translation>
- </message>
- <message>
- <source>To specify a non-default location of the data directory use the '%1' option.</source>
- <translation type="unfinished">‫لتحديد مكان غير-إفتراضي لمجلد البيانات استخدم خيار الـ'%1'.‬</translation>
- </message>
- <message>
- <source>Blocksdir</source>
- <translation type="unfinished">‫مجلد الطوابق‬</translation>
- </message>
- <message>
- <source>To specify a non-default location of the blocks directory use the '%1' option.</source>
- <translation type="unfinished">‫لتحديد مكان غير-إفتراضي لمجلد البيانات استخدم خيار الـ'"%1'.‬</translation>
- </message>
- <message>
- <source>Startup time</source>
- <translation type="unfinished">وقت البدء</translation>
- </message>
- <message>
- <source>Network</source>
- <translation type="unfinished">الشبكة</translation>
- </message>
- <message>
- <source>Name</source>
- <translation type="unfinished">الاسم</translation>
- </message>
- <message>
- <source>Number of connections</source>
- <translation type="unfinished">عدد الاتصالات</translation>
- </message>
- <message>
- <source>Block chain</source>
- <translation type="unfinished">سلسلة الكتل</translation>
- </message>
- <message>
- <source>Memory Pool</source>
- <translation type="unfinished">تجمع الذاكرة</translation>
- </message>
- <message>
- <source>Current number of transactions</source>
- <translation type="unfinished">عدد العمليات الحالي</translation>
- </message>
- <message>
- <source>Memory usage</source>
- <translation type="unfinished">استخدام الذاكرة</translation>
- </message>
- <message>
- <source>Wallet: </source>
- <translation type="unfinished">محفظة:</translation>
- </message>
- <message>
- <source>(none)</source>
- <translation type="unfinished">‫(لا شيء)‬</translation>
- </message>
- <message>
- <source>&amp;Reset</source>
- <translation type="unfinished">‫&amp;إعادة تعيين‬</translation>
- </message>
- <message>
- <source>Received</source>
- <translation type="unfinished">‫مستلم‬</translation>
- </message>
- <message>
- <source>Sent</source>
- <translation type="unfinished">تم الإرسال</translation>
- </message>
- <message>
- <source>&amp;Peers</source>
- <translation type="unfinished">‫&amp;أقران‬</translation>
- </message>
- <message>
- <source>Banned peers</source>
- <translation type="unfinished">‫الأقران المحظورون‬</translation>
- </message>
- <message>
- <source>Select a peer to view detailed information.</source>
- <translation type="unfinished">‫اختر قرينا لعرض معلومات مفصلة.‬</translation>
- </message>
- <message>
- <source>Version</source>
- <translation type="unfinished">الإصدار</translation>
- </message>
- <message>
- <source>Starting Block</source>
- <translation type="unfinished">‫طابق البداية‬</translation>
- </message>
- <message>
- <source>Synced Headers</source>
- <translation type="unfinished">‫رؤوس مزامنة‬</translation>
- </message>
- <message>
- <source>Synced Blocks</source>
- <translation type="unfinished">‫طوابق مزامنة‬</translation>
- </message>
- <message>
- <source>Last Transaction</source>
- <translation type="unfinished">‫آخر عملية‬</translation>
- </message>
- <message>
- <source>The mapped Autonomous System used for diversifying peer selection.</source>
- <translation type="unfinished">‫النظام التفصيلي المستقل المستخدم لتنويع اختيار الأقران.‬</translation>
- </message>
- <message>
- <source>Mapped AS</source>
- <translation type="unfinished">‫‫Mapped AS‬</translation>
- </message>
- <message>
- <source>Whether we relay addresses to this peer.</source>
- <extracomment>Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
- <translation type="unfinished">‫توصيل العناوين لهذا القرين أم لا.‬</translation>
- </message>
- <message>
- <source>Address Relay</source>
- <extracomment>Text title for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
- <translation type="unfinished">‫توصيل العنوان‬</translation>
- </message>
- <message>
- <source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
- <extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
- <translation type="unfinished">‫مجموع العناوين المستلمة والمعالجة من هذا القرين (تستثنى العناوين المسقطة بسبب التقييد الحدي)‬</translation>
- </message>
- <message>
- <source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
- <extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">‫مجموع العناوين المستلمة والمسقطة من هذا القرين (غير معالجة) بسبب التقييد الحدي.‬</translation>
- </message>
- <message>
- <source>Addresses Processed</source>
- <extracomment>Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
- <translation type="unfinished">‫العناوين المعالجة‬</translation>
- </message>
- <message>
- <source>Addresses Rate-Limited</source>
- <extracomment>Text title for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">‫عناوين مقيدة حديا‬</translation>
- </message>
- <message>
- <source>User Agent</source>
- <translation type="unfinished">وكيل المستخدم</translation>
- </message>
- <message>
- <source>Node window</source>
- <translation type="unfinished">نافذة Node </translation>
- </message>
- <message>
- <source>Current block height</source>
- <translation type="unfinished">‫ارتفاع الطابق الحالي‬</translation>
- </message>
- <message>
- <source>Open the %1 debug log file from the current data directory. This can take a few seconds for large log files.</source>
- <translation type="unfinished">‫افتح %1 ملف سجل المعالجة والتصحيح من مجلد البيانات الحالي. قد يستغرق عدة ثواني للسجلات الكبيرة.‬</translation>
- </message>
- <message>
- <source>Decrease font size</source>
- <translation type="unfinished">تصغير حجم الخط</translation>
- </message>
- <message>
- <source>Increase font size</source>
- <translation type="unfinished">تكبير حجم الخط</translation>
- </message>
- <message>
- <source>Permissions</source>
- <translation type="unfinished">اذونات</translation>
- </message>
- <message>
- <source>The direction and type of peer connection: %1</source>
- <translation type="unfinished">اتجاه ونوع اتصال الأقران : %1</translation>
- </message>
- <message>
- <source>Direction/Type</source>
- <translation type="unfinished">الاتجاه / النوع</translation>
- </message>
- <message>
- <source>The network protocol this peer is connected through: IPv4, IPv6, Onion, I2P, or CJDNS.</source>
- <translation type="unfinished">‫بروتوكول الشبكة الذي يتصل به هذا القرين من خلال: IPv4 أو IPv6 أو Onion أو I2P أو CJDNS.‬</translation>
- </message>
- <message>
- <source>Services</source>
- <translation type="unfinished">خدمات</translation>
- </message>
- <message>
- <source>High Bandwidth</source>
- <translation type="unfinished">‫نطاق بيانات عالي‬</translation>
- </message>
- <message>
- <source>Connection Time</source>
- <translation type="unfinished">مدة الاتصال</translation>
- </message>
- <message>
- <source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
- <translation type="unfinished">‫الوقت المنقضي منذ استلام طابق جديد مجتاز لاختبارات الصلاحية الأولية من هذا القرين.‬</translation>
- </message>
- <message>
- <source>Last Block</source>
- <translation type="unfinished">‫الطابق الأخير‬</translation>
- </message>
- <message>
- <source>Elapsed time since a novel transaction accepted into our mempool was received from this peer.</source>
- <extracomment>Tooltip text for the Last Transaction field in the peer details area.</extracomment>
- <translation type="unfinished">‫الوقت المنقضي منذ استلام عملية مقبولة في تجمع الذاكرة من هذا النظير.‬</translation>
- </message>
- <message>
- <source>Last Send</source>
- <translation type="unfinished">‫آخر ارسال‬</translation>
- </message>
- <message>
- <source>Last Receive</source>
- <translation type="unfinished">‫آخر إستلام‬</translation>
- </message>
- <message>
- <source>Ping Time</source>
- <translation type="unfinished">وقت الرنين</translation>
- </message>
- <message>
- <source>The duration of a currently outstanding ping.</source>
- <translation type="unfinished">مدة الرنين المعلقة حالياً.</translation>
- </message>
- <message>
- <source>Ping Wait</source>
- <translation type="unfinished">انتظار الرنين</translation>
- </message>
- <message>
- <source>Min Ping</source>
- <translation type="unfinished">أقل رنين</translation>
- </message>
- <message>
- <source>Time Offset</source>
- <translation type="unfinished">إزاحة الوقت</translation>
- </message>
- <message>
- <source>Last block time</source>
- <translation type="unfinished">‫وقت اخر طابق‬</translation>
- </message>
- <message>
- <source>&amp;Open</source>
- <translation type="unfinished">‫&amp;فتح‬</translation>
- </message>
- <message>
- <source>&amp;Console</source>
- <translation type="unfinished">‫&amp;سطر الأوامر‬</translation>
- </message>
- <message>
- <source>&amp;Network Traffic</source>
- <translation type="unfinished">&amp;حركة الشبكة</translation>
- </message>
- <message>
- <source>Totals</source>
- <translation type="unfinished">المجاميع</translation>
- </message>
- <message>
- <source>Debug log file</source>
- <translation type="unfinished">‫ملف سجل تصحيح الأخطاء‬</translation>
- </message>
- <message>
- <source>Clear console</source>
- <translation type="unfinished">‫مسح الأوامر‬</translation>
- </message>
- <message>
- <source>In:</source>
- <translation type="unfinished">داخل:</translation>
- </message>
- <message>
- <source>Out:</source>
- <translation type="unfinished">خارج:</translation>
- </message>
- <message>
- <source>Inbound: initiated by peer</source>
- <extracomment>Explanatory text for an inbound peer connection.</extracomment>
- <translation type="unfinished">‫الواردة: بدأها القرين‬</translation>
- </message>
- <message>
- <source>Outbound Full Relay: default</source>
- <extracomment>Explanatory text for an outbound peer connection that relays all network information. This is the default behavior for outbound connections.</extracomment>
- <translation type="unfinished">‫الموصل الكامل الصادر: افتراضي‬</translation>
- </message>
- <message>
- <source>Outbound Block Relay: does not relay transactions or addresses</source>
- <extracomment>Explanatory text for an outbound peer connection that relays network information about blocks and not transactions or addresses.</extracomment>
- <translation type="unfinished">‫موصل الطابق الصادر: لا يقوم بتوصيل العمليات أو العناوين‬</translation>
- </message>
- <message>
- <source>Outbound Manual: added using RPC %1 or %2/%3 configuration options</source>
- <extracomment>Explanatory text for an outbound peer connection that was established manually through one of several methods. The numbered arguments are stand-ins for the methods available to establish manual connections.</extracomment>
- <translation type="unfinished">‫دليل الصادر: مضاف باستخدام نداء الاجراء البعيد RPC %1 أو %2/%3 خيارات الاعداد‬</translation>
- </message>
- <message>
- <source>Outbound Feeler: short-lived, for testing addresses</source>
- <extracomment>Explanatory text for a short-lived outbound peer connection that is used to test the aliveness of known addresses.</extracomment>
- <translation type="unfinished">‫أداة التفقد الصادر: قصير الأجل ، لاختبار العناوين‬</translation>
- </message>
- <message>
- <source>Outbound Address Fetch: short-lived, for soliciting addresses</source>
- <extracomment>Explanatory text for a short-lived outbound peer connection that is used to request addresses from a peer.</extracomment>
- <translation type="unfinished">إحضار العنوان الصادر: قصير الأجل ، لطلب العناوين</translation>
- </message>
- <message>
- <source>we selected the peer for high bandwidth relay</source>
- <translation type="unfinished">‫اخترنا القرين لتوصيل نطاق البيانات العالي‬</translation>
- </message>
- <message>
- <source>the peer selected us for high bandwidth relay</source>
- <translation type="unfinished">‫القرين اختارنا لتوصيل بيانات ذات نطاق عالي‬</translation>
- </message>
- <message>
- <source>no high bandwidth relay selected</source>
- <translation type="unfinished">‫لم يتم تحديد موصل للبيانات عالية النطاق‬</translation>
- </message>
- <message>
- <source>Ctrl++</source>
- <extracomment>Main shortcut to increase the RPC console font size.</extracomment>
- <translation type="unfinished">Ctrl ++</translation>
- </message>
- <message>
- <source>Ctrl+-</source>
- <extracomment>Main shortcut to decrease the RPC console font size.</extracomment>
- <translation type="unfinished">Ctrl + -</translation>
- </message>
- <message>
- <source>&amp;Copy address</source>
- <extracomment>Context menu action to copy the address of a peer.</extracomment>
- <translation type="unfinished">‫&amp;انسخ العنوان‬</translation>
- </message>
- <message>
- <source>&amp;Disconnect</source>
- <translation type="unfinished">&amp;قطع الاتصال</translation>
- </message>
- <message>
- <source>1 &amp;hour</source>
- <translation type="unfinished">1 &amp;ساعة</translation>
- </message>
- <message>
- <source>1 d&amp;ay</source>
- <translation type="unfinished">ي&amp;وم 1</translation>
- </message>
- <message>
- <source>1 &amp;week</source>
- <translation type="unfinished">1 &amp; اسبوع</translation>
- </message>
- <message>
- <source>1 &amp;year</source>
- <translation type="unfinished">1 &amp; سنة</translation>
- </message>
- <message>
- <source>&amp;Unban</source>
- <translation type="unfinished">&amp;رفع الحظر</translation>
- </message>
- <message>
- <source>Network activity disabled</source>
- <translation type="unfinished">تم تعطيل نشاط الشبكة</translation>
- </message>
- <message>
- <source>Executing command without any wallet</source>
- <translation type="unfinished">‫تنفيذ الأوامر بدون أي محفظة‬</translation>
- </message>
- <message>
- <source>Executing command using "%1" wallet</source>
- <translation type="unfinished">‫تنفيذ الأوامر باستخدام "%1" من المحفظة‬</translation>
- </message>
- <message>
- <source>Executing…</source>
- <extracomment>A console message indicating an entered command is currently being executed.</extracomment>
- <translation type="unfinished">جار التنفيذ...</translation>
- </message>
- <message>
- <source>(peer: %1)</source>
- <translation type="unfinished">(قرين: %1)</translation>
- </message>
- <message>
- <source>via %1</source>
- <translation type="unfinished">خلال %1</translation>
- </message>
- <message>
- <source>Yes</source>
- <translation type="unfinished">نعم</translation>
- </message>
- <message>
- <source>No</source>
- <translation type="unfinished">لا</translation>
- </message>
- <message>
- <source>To</source>
- <translation type="unfinished">الى</translation>
- </message>
- <message>
- <source>From</source>
- <translation type="unfinished">من</translation>
- </message>
- <message>
- <source>Ban for</source>
- <translation type="unfinished">حظر ل</translation>
- </message>
- <message>
- <source>Never</source>
- <translation type="unfinished">مطلقا</translation>
- </message>
- <message>
- <source>Unknown</source>
- <translation type="unfinished">غير معروف</translation>
- </message>
-</context>
-<context>
- <name>ReceiveCoinsDialog</name>
- <message>
- <source>&amp;Amount:</source>
- <translation type="unfinished">&amp;القيمة</translation>
- </message>
- <message>
- <source>&amp;Label:</source>
- <translation type="unfinished">&amp;مذكرة :</translation>
- </message>
- <message>
- <source>&amp;Message:</source>
- <translation type="unfinished">&amp;رسالة:</translation>
- </message>
- <message>
- <source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source>
- <translation type="unfinished">‫رسالة اختيارية لإرفاقها بطلب الدفع، والتي سيتم عرضها عند فتح الطلب. ملاحظة: لن يتم إرسال الرسالة مع العملية عبر شبكة البتكوين.‬</translation>
- </message>
- <message>
- <source>An optional label to associate with the new receiving address.</source>
- <translation type="unfinished">تسمية اختيارية لربطها بعنوان المستلم الجديد.</translation>
- </message>
- <message>
- <source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
- <translation type="unfinished">استخدم هذا النموذج لطلب الدفعات. جميع الحقول &lt;b&gt;اختيارية&lt;/b&gt;.</translation>
- </message>
- <message>
- <source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
- <translation type="unfinished">مبلغ اختياري للطلب. اترك هذا فارغًا أو صفراً لعدم طلب مبلغ محدد.</translation>
- </message>
- <message>
- <source>An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request.</source>
- <translation type="unfinished">‫مذكرة اختيارية للربط مع عنوان الاستلام (يستعمل من قبلك لتعريف فاتورة). هو أيضا مرفق بطلب الدفع.‬</translation>
- </message>
- <message>
- <source>An optional message that is attached to the payment request and may be displayed to the sender.</source>
- <translation type="unfinished">رسالة اختيارية مرفقة بطلب الدفع ومن الممكن أن تعرض للمرسل.</translation>
- </message>
- <message>
- <source>&amp;Create new receiving address</source>
- <translation type="unfinished">&amp;إنشاء عناوين استلام جديدة</translation>
- </message>
- <message>
- <source>Clear all fields of the form.</source>
- <translation type="unfinished">‫مسح كل الحقول من النموذج.‬</translation>
- </message>
- <message>
- <source>Clear</source>
- <translation type="unfinished">مسح</translation>
- </message>
- <message>
- <source>Requested payments history</source>
- <translation type="unfinished">سجل طلبات الدفع</translation>
- </message>
- <message>
- <source>Show the selected request (does the same as double clicking an entry)</source>
- <translation type="unfinished">إظهار الطلب المحدد (يقوم بنفس نتيجة النقر المزدوج على أي إدخال)</translation>
- </message>
- <message>
- <source>Show</source>
- <translation type="unfinished">عرض</translation>
- </message>
- <message>
- <source>Remove the selected entries from the list</source>
- <translation type="unfinished">قم بإزالة الإدخالات المحددة من القائمة</translation>
- </message>
- <message>
- <source>Remove</source>
- <translation type="unfinished">ازل</translation>
- </message>
- <message>
- <source>Copy &amp;URI</source>
- <translation type="unfinished">‫نسخ &amp;الرابط (URI)‬</translation>
- </message>
- <message>
- <source>&amp;Copy address</source>
- <translation type="unfinished">‫&amp;انسخ العنوان‬</translation>
- </message>
- <message>
- <source>Copy &amp;label</source>
- <translation type="unfinished">‫نسخ &amp;مذكرة‬</translation>
- </message>
- <message>
- <source>Copy &amp;message</source>
- <translation type="unfinished">‫نسخ &amp;رسالة‬</translation>
- </message>
- <message>
- <source>Copy &amp;amount</source>
- <translation type="unfinished">‫نسخ &amp;القيمة‬</translation>
- </message>
- <message>
- <source>Could not unlock wallet.</source>
- <translation type="unfinished">‫تعذر فتح المحفظة.‬</translation>
- </message>
- <message>
- <source>Could not generate new %1 address</source>
- <translation type="unfinished">تعذر توليد عنوان %1 جديد.</translation>
- </message>
-</context>
-<context>
- <name>ReceiveRequestDialog</name>
- <message>
- <source>Request payment to …</source>
- <translation type="unfinished"> طلب الدفع لـ ...</translation>
- </message>
- <message>
- <source>Address:</source>
- <translation type="unfinished">العنوان:</translation>
- </message>
- <message>
- <source>Amount:</source>
- <translation type="unfinished">القيمة:</translation>
- </message>
- <message>
- <source>Label:</source>
- <translation type="unfinished">مذكرة:</translation>
- </message>
- <message>
- <source>Message:</source>
- <translation type="unfinished">‫رسالة:‬</translation>
- </message>
- <message>
- <source>Wallet:</source>
- <translation type="unfinished">المحفظة:</translation>
- </message>
- <message>
- <source>Copy &amp;URI</source>
- <translation type="unfinished">‫نسخ &amp;الرابط (URI)‬</translation>
- </message>
- <message>
- <source>Copy &amp;Address</source>
- <translation type="unfinished">نسخ &amp;العنوان</translation>
- </message>
- <message>
- <source>&amp;Verify</source>
- <translation type="unfinished">&amp;تحقق</translation>
- </message>
- <message>
- <source>Verify this address on e.g. a hardware wallet screen</source>
- <translation type="unfinished">تحقق من العنوان على شاشة المحفظة الخارجية</translation>
- </message>
- <message>
- <source>&amp;Save Image…</source>
- <translation type="unfinished">&amp;احفظ الصورة...</translation>
- </message>
- <message>
- <source>Payment information</source>
- <translation type="unfinished">معلومات الدفع</translation>
- </message>
- <message>
- <source>Request payment to %1</source>
- <translation type="unfinished">طلب الدفعة إلى %1</translation>
- </message>
-</context>
-<context>
- <name>RecentRequestsTableModel</name>
- <message>
- <source>Date</source>
- <translation type="unfinished">التاريخ</translation>
- </message>
- <message>
- <source>Label</source>
- <translation type="unfinished">المذكرة</translation>
- </message>
- <message>
- <source>Message</source>
- <translation type="unfinished">رسالة </translation>
- </message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">( لا وجود لمذكرة)</translation>
- </message>
- <message>
- <source>(no message)</source>
- <translation type="unfinished">( لا رسائل )</translation>
- </message>
- <message>
- <source>(no amount requested)</source>
- <translation type="unfinished">(لا يوجد قيمة مطلوبة)</translation>
- </message>
- <message>
- <source>Requested</source>
- <translation type="unfinished">تم الطلب</translation>
- </message>
-</context>
-<context>
- <name>SendCoinsDialog</name>
- <message>
- <source>Send Coins</source>
- <translation type="unfinished">‫إرسال وحدات البتكوين‬</translation>
- </message>
- <message>
- <source>Coin Control Features</source>
- <translation type="unfinished">‫ميزات التحكم بوحدات البتكوين‬</translation>
- </message>
- <message>
- <source>automatically selected</source>
- <translation type="unfinished">اختيار تلقائيا</translation>
- </message>
- <message>
- <source>Insufficient funds!</source>
- <translation type="unfinished">الرصيد غير كافي!</translation>
- </message>
- <message>
- <source>Quantity:</source>
- <translation type="unfinished">الكمية:</translation>
- </message>
- <message>
- <source>Bytes:</source>
- <translation type="unfinished">بايت:</translation>
- </message>
- <message>
- <source>Amount:</source>
- <translation type="unfinished">القيمة:</translation>
- </message>
- <message>
- <source>Fee:</source>
- <translation type="unfinished">الرسوم:</translation>
- </message>
- <message>
- <source>After Fee:</source>
- <translation type="unfinished">بعد الرسوم:</translation>
- </message>
- <message>
- <source>Change:</source>
- <translation type="unfinished">تعديل:</translation>
- </message>
- <message>
- <source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source>
- <translation type="unfinished">‫إذا تم تنشيط هذا، ولكن عنوان الفكة فارغ أو غير صالح، فسيتم إرسال الفكة إلى عنوان مولّد حديثًا.‬</translation>
- </message>
- <message>
- <source>Custom change address</source>
- <translation type="unfinished">تغيير عنوان الفكة</translation>
- </message>
- <message>
- <source>Transaction Fee:</source>
- <translation type="unfinished">رسوم المعاملة:</translation>
- </message>
- <message>
- <source>Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain.</source>
- <translation type="unfinished">‫يمكن أن يؤدي استخدام الرسوم الاحتياطية إلى إرسال معاملة تستغرق عدة ساعات أو أيام (أو أبدًا) للتأكيد. ضع في اعتبارك اختيار الرسوم يدويًا أو انتظر حتى تتحقق من صحة المتتالية الكاملة.‬</translation>
- </message>
- <message>
- <source>Warning: Fee estimation is currently not possible.</source>
- <translation type="unfinished">تحذير: تقدير الرسوم غير ممكن في الوقت الحالي.</translation>
- </message>
- <message>
- <source>per kilobyte</source>
- <translation type="unfinished">لكل كيلوبايت</translation>
- </message>
- <message>
- <source>Hide</source>
- <translation type="unfinished">إخفاء</translation>
- </message>
- <message>
- <source>Recommended:</source>
- <translation type="unfinished">موصى به:</translation>
- </message>
- <message>
- <source>Custom:</source>
- <translation type="unfinished">تخصيص:</translation>
- </message>
- <message>
- <source>Send to multiple recipients at once</source>
- <translation type="unfinished">إرسال إلى عدة مستلمين في وقت واحد</translation>
- </message>
- <message>
- <source>Add &amp;Recipient</source>
- <translation type="unfinished">أضافة &amp;مستلم</translation>
- </message>
- <message>
- <source>Clear all fields of the form.</source>
- <translation type="unfinished">‫مسح كل الحقول من النموذج.‬</translation>
- </message>
- <message>
- <source>Inputs…</source>
- <translation type="unfinished">المدخلات...</translation>
- </message>
- <message>
- <source>Dust:</source>
- <translation type="unfinished">غبار:</translation>
- </message>
- <message>
- <source>Choose…</source>
- <translation type="unfinished">اختيار...</translation>
- </message>
- <message>
- <source>Hide transaction fee settings</source>
- <translation type="unfinished">اخفاء اعدادات رسوم المعاملة</translation>
- </message>
- <message>
- <source>Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size.
-
-Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satoshis per kvB" for a transaction size of 500 virtual bytes (half of 1 kvB) would ultimately yield a fee of only 50 satoshis.</source>
- <translation type="unfinished">‫حدد الرسوم المخصصة لكل كيلوبايت (١٠٠٠ بايت) من حجم العملية الافتراضي.
-
-ملاحظة: بما أن الرسوم تحتسب لكل بايت، معدل الرسوم ل “ ١٠٠ ساتوشي لكل كيلوبايت افتراضي” لعملية بحجم ٥٠٠ بايت افتراضي (نصف كيلوبايت افتراضي) ستكون ٥٠ ساتوشي فقط.‬</translation>
- </message>
- <message>
- <source>When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
- <translation type="unfinished">‫قد يفرض المعدنون والأنواد الموصلة حدا أدنى للرسوم عندما يكون عدد العمليات قليل نسبة لسعة الطوابق. يمكنك دفع الحد الأدنى ولكن كن على دراية بأن العملية قد لا تنفذ في حالة أن الطلب على عمليات البتكوين فاق قدرة الشبكة على المعالجة.‬</translation>
- </message>
- <message>
- <source>A too low fee might result in a never confirming transaction (read the tooltip)</source>
- <translation type="unfinished">‫الرسوم القليلة جدا قد تؤدي الى عملية لا تتأكد أبدا (اقرأ التلميح).‬</translation>
- </message>
- <message>
- <source>(Smart fee not initialized yet. This usually takes a few blocks…)</source>
- <translation type="unfinished">‫(الرسوم الذكية غير مهيأة بعد. عادة يتطلب عدة طوابق…)‬</translation>
- </message>
- <message>
- <source>Confirmation time target:</source>
- <translation type="unfinished">هدف وقت التأكيد:</translation>
- </message>
- <message>
- <source>Enable Replace-By-Fee</source>
- <translation type="unfinished">تفعيل الإستبدال بواسطة الرسوم</translation>
- </message>
- <message>
- <source>With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk.</source>
- <translation type="unfinished">‫يمكنك زيادة رسوم المعاملة بعد إرسالها عند تفعيل الاستبدال بواسطة الرسوم (BIP-125). نوصي بوضع رسوم أعلى اذا لم يتم التفعيل لتفادي مخاطر تأخير العملية.‬</translation>
- </message>
- <message>
- <source>Clear &amp;All</source>
- <translation type="unfinished">مسح الكل</translation>
- </message>
- <message>
- <source>Balance:</source>
- <translation type="unfinished">الرصيد:</translation>
- </message>
- <message>
- <source>Confirm the send action</source>
- <translation type="unfinished">تأكيد الإرسال</translation>
- </message>
- <message>
- <source>S&amp;end</source>
- <translation type="unfinished">‫ا&amp;رسال‬</translation>
- </message>
- <message>
- <source>Copy quantity</source>
- <translation type="unfinished">نسخ الكمية </translation>
- </message>
- <message>
- <source>Copy amount</source>
- <translation type="unfinished">‫نسخ القيمة‬</translation>
- </message>
- <message>
- <source>Copy fee</source>
- <translation type="unfinished">نسخ الرسوم</translation>
- </message>
- <message>
- <source>Copy after fee</source>
- <translation type="unfinished">نسخ بعد الرسوم</translation>
- </message>
- <message>
- <source>Copy bytes</source>
- <translation type="unfinished">نسخ البايتات </translation>
- </message>
- <message>
- <source>Copy dust</source>
- <translation type="unfinished">نسخ الغبار</translation>
- </message>
- <message>
- <source>Copy change</source>
- <translation type="unfinished">‫نسخ الفكة‬</translation>
- </message>
- <message>
- <source>%1 (%2 blocks)</source>
- <translation type="unfinished">%1 (%2 طوابق)</translation>
- </message>
- <message>
- <source>Sign on device</source>
- <extracomment>"device" usually means a hardware wallet.</extracomment>
- <translation type="unfinished">‫جهاز التوقيع‬</translation>
- </message>
- <message>
- <source>Connect your hardware wallet first.</source>
- <translation type="unfinished">‫قم بتوصيل المحفظة الخارجية أولا.‬</translation>
- </message>
- <message>
- <source>Set external signer script path in Options -&gt; Wallet</source>
- <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">‫أعد المسار البرمجي للموقع الخارجي من خيارات -&gt; محفظة‬</translation>
- </message>
- <message>
- <source>Cr&amp;eate Unsigned</source>
- <translation type="unfinished">‫إن&amp;شاء من غير توقيع‬</translation>
- </message>
- <message>
- <source> from wallet '%1'</source>
- <translation type="unfinished">من المحفظة '%1'</translation>
- </message>
- <message>
- <source>%1 to '%2'</source>
- <translation type="unfinished">%1 الى "%2"</translation>
- </message>
- <message>
- <source>%1 to %2</source>
- <translation type="unfinished">%1 الى %2</translation>
- </message>
- <message>
- <source>To review recipient list click "Show Details…"</source>
- <translation type="unfinished">‫لمراجعة قائمة المستلمين انقر على “عرض التفاصيل…”‬</translation>
- </message>
- <message>
- <source>Sign failed</source>
- <translation type="unfinished">‫فشل التوقيع‬</translation>
- </message>
- <message>
- <source>External signer not found</source>
- <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">‫لم يتم العثور على موقّع خارجي‬</translation>
- </message>
- <message>
- <source>External signer failure</source>
- <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">‫فشل الموقّع الخارجي‬</translation>
- </message>
- <message>
- <source>Save Transaction Data</source>
- <translation type="unfinished">حفظ بيانات العملية</translation>
- </message>
- <message>
- <source>Partially Signed Transaction (Binary)</source>
- <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
- <translation type="unfinished">معاملة موقعة جزئيًا (ثنائي)</translation>
- </message>
- <message>
- <source>PSBT saved</source>
- <extracomment>Popup message when a PSBT has been saved to a file</extracomment>
- <translation type="unfinished">تم حفظ PSBT</translation>
- </message>
- <message>
- <source>External balance:</source>
- <translation type="unfinished">رصيد خارجي </translation>
- </message>
- <message>
- <source>or</source>
- <translation type="unfinished">أو</translation>
- </message>
- <message>
- <source>You can increase the fee later (signals Replace-By-Fee, BIP-125).</source>
- <translation type="unfinished">‫يمكنك زيادة الرسوم لاحقًا (الاستبدال بواسطة الرسوم، BIP-125 مفعل).‬</translation>
- </message>
- <message>
- <source>Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
- <extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can only create a PSBT. This string is displayed when private keys are disabled and an external signer is not available.</extracomment>
- <translation type="unfinished">‫رجاء، راجع معاملتك. هذا ينشئ معاملة بتكوين موقعة جزئيا (PSBT) ويمكنك حفظها أو نسخها و التوقيع مع محفظة %1 غير متصلة بالشبكة، أو محفظة خارجية متوافقة مع الـPSBT.‬</translation>
- </message>
- <message>
- <source>Do you want to create this transaction?</source>
- <extracomment>Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</extracomment>
- <translation type="unfinished">‫هل تريد انشاء هذه المعاملة؟‬</translation>
- </message>
- <message>
- <source>Please, review your transaction. You can create and send this transaction or create a Partially Signed Bitcoin Transaction (PSBT), which you can save or copy and then sign with, e.g., an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
- <extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can send their transaction or create a PSBT. This string is displayed when both private keys and PSBT controls are enabled.</extracomment>
- <translation type="unfinished">‫رجاء، راجع معاملتك.تستطيع انشاء وارسال هذه العملية أو انشاء معاملة بتكوين موقعة جزئيا (PSBT) ويمكنك حفظها أو نسخها و التوقيع مع محفظة %1 غير متصلة بالشبكة، أو محفظة خارجية متوافقة مع الـPSBT.‬</translation>
- </message>
- <message>
- <source>Please, review your transaction.</source>
- <extracomment>Text to prompt a user to review the details of the transaction they are attempting to send.</extracomment>
- <translation type="unfinished">رجاء، راجع معاملتك.</translation>
- </message>
- <message>
- <source>Transaction fee</source>
- <translation type="unfinished">رسوم العملية</translation>
- </message>
- <message>
- <source>Not signalling Replace-By-Fee, BIP-125.</source>
- <translation type="unfinished">‫الاستبدال بواسطة الرسوم، BIP-125 غير مفعلة.‬</translation>
- </message>
- <message>
- <source>Total Amount</source>
- <translation type="unfinished">القيمة الإجمالية</translation>
- </message>
- <message>
- <source>Confirm send coins</source>
- <translation type="unfinished">‫تأكيد ارسال وحدات البتكوين‬</translation>
- </message>
- <message>
- <source>Watch-only balance:</source>
- <translation type="unfinished">‫رصيد المراقبة:‬</translation>
- </message>
- <message>
- <source>The recipient address is not valid. Please recheck.</source>
- <translation type="unfinished">‫عنوان المستلم غير صالح. يرجى مراجعة العنوان.‬</translation>
- </message>
- <message>
- <source>The amount to pay must be larger than 0.</source>
- <translation type="unfinished">‫القيمة المدفوعة يجب ان تكون اكبر من 0.‬</translation>
- </message>
- <message>
- <source>The amount exceeds your balance.</source>
- <translation type="unfinished">القيمة تتجاوز رصيدك.</translation>
- </message>
- <message>
- <source>The total exceeds your balance when the %1 transaction fee is included.</source>
- <translation type="unfinished">المجموع يتجاوز رصيدك عندما يتم اضافة %1 رسوم العملية</translation>
- </message>
- <message>
- <source>Duplicate address found: addresses should only be used once each.</source>
- <translation type="unfinished">‫تم العثور على عنوان مكرر: من الأفضل استخدام العناوين مرة واحدة فقط.‬</translation>
- </message>
- <message>
- <source>Transaction creation failed!</source>
- <translation type="unfinished">‫تعذر إنشاء المعاملة!‬</translation>
- </message>
- <message>
- <source>A fee higher than %1 is considered an absurdly high fee.</source>
- <translation type="unfinished">تعتبر الرسوم الأعلى من %1 رسوماً باهظة.</translation>
- </message>
- <message numerus="yes">
- <source>Estimated to begin confirmation within %n block(s).</source>
- <translation type="unfinished">
- <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
- <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
- <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
- <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
- <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
- <numerusform>‫الوقت التقديري للنفاذ خلال %n طوابق.‬</numerusform>
- </translation>
- </message>
- <message>
- <source>Warning: Invalid Bitcoin address</source>
- <translation type="unfinished">تحذير: عنوان بتكوين غير صالح</translation>
- </message>
- <message>
- <source>Warning: Unknown change address</source>
- <translation type="unfinished">تحذير: عنوان الفكة غير معروف</translation>
- </message>
- <message>
- <source>Confirm custom change address</source>
- <translation type="unfinished">تأكيد تغيير العنوان الفكة</translation>
- </message>
- <message>
- <source>The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure?</source>
- <translation type="unfinished">‫العنوان الذي قمت بتحديده للفكة ليس جزءا من هذه المحفظة. بعض أو جميع الأموال في محفظتك قد يتم إرسالها لهذا العنوان. هل أنت متأكد؟‬</translation>
- </message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">( لا وجود لمذكرة)</translation>
- </message>
-</context>
-<context>
- <name>SendCoinsEntry</name>
- <message>
- <source>A&amp;mount:</source>
- <translation type="unfinished">&amp;القيمة</translation>
- </message>
- <message>
- <source>Pay &amp;To:</source>
- <translation type="unfinished">ادفع &amp;الى :</translation>
- </message>
- <message>
- <source>&amp;Label:</source>
- <translation type="unfinished">&amp;مذكرة :</translation>
- </message>
- <message>
- <source>Choose previously used address</source>
- <translation type="unfinished">‫اختر عنوانا تم استخدامه سابقا‬</translation>
- </message>
- <message>
- <source>The Bitcoin address to send the payment to</source>
- <translation type="unfinished">‫عنوان البتكوين لارسال الدفعة له‬</translation>
- </message>
- <message>
- <source>Paste address from clipboard</source>
- <translation type="unfinished">‫ألصق العنوان من الحافظة‬</translation>
- </message>
- <message>
- <source>Remove this entry</source>
- <translation type="unfinished">‫ازل هذا المدخل‬</translation>
- </message>
- <message>
- <source>The amount to send in the selected unit</source>
- <translation type="unfinished">‫القيمة للإرسال في الوحدة المحددة‬</translation>
- </message>
- <message>
- <source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source>
- <translation type="unfinished">‫سيتم خصم الرسوم من المبلغ الذي يتم إرساله. لذا سوف يتلقى المستلم قيمة أقل من البتكوين المدخل في حقل القيمة. في حالة تحديد عدة مستلمين، يتم تقسيم الرسوم بالتساوي.‬</translation>
- </message>
- <message>
- <source>S&amp;ubtract fee from amount</source>
- <translation type="unfinished">‫ط&amp;رح الرسوم من القيمة‬</translation>
- </message>
- <message>
- <source>Use available balance</source>
- <translation type="unfinished">استخدام الرصيد المتاح</translation>
- </message>
- <message>
- <source>Message:</source>
- <translation type="unfinished">‫رسالة:‬</translation>
- </message>
- <message>
- <source>Enter a label for this address to add it to the list of used addresses</source>
- <translation type="unfinished">‫أدخل مذكرة لهذا العنوان لإضافته إلى قائمة العناوين المستخدمة‬</translation>
- </message>
- <message>
- <source>A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network.</source>
- <translation type="unfinished">‫الرسالة يتم إرفاقها مع البتكوين: الرابط سيتم تخزينه مع العملية لك للرجوع إليه. ملاحظة: لن يتم إرسال هذه الرسالة عبر شبكة البتكوين.‬</translation>
- </message>
-</context>
-<context>
- <name>SendConfirmationDialog</name>
- <message>
- <source>Send</source>
- <translation type="unfinished">إرسال</translation>
- </message>
- <message>
- <source>Create Unsigned</source>
- <translation type="unfinished">إنشاء غير موقع</translation>
- </message>
-</context>
-<context>
- <name>SignVerifyMessageDialog</name>
- <message>
- <source>Signatures - Sign / Verify a Message</source>
- <translation type="unfinished">التواقيع - التوقيع / تحقق من الرسالة</translation>
- </message>
- <message>
- <source>&amp;Sign Message</source>
- <translation type="unfinished">&amp;توقيع الرسالة</translation>
- </message>
- <message>
- <source>You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source>
- <translation type="unfinished">‫تستطيع توقيع رسائل/اتفاقيات من عناوينك لإثبات أنه بإمكانك استلام بتكوين مرسل لهذه العناوين. كن حذرا من توقيع أي شيء غامض أو عشوائي، هجمات التصيد قد تحاول خداعك وانتحال هويتك. وقع البيانات الواضحة بالكامل والتي توافق عليها فقط.‬</translation>
- </message>
- <message>
- <source>The Bitcoin address to sign the message with</source>
- <translation type="unfinished">عنوان البتكوين لتوقيع الرسالة منه</translation>
- </message>
- <message>
- <source>Choose previously used address</source>
- <translation type="unfinished">‫اختر عنوانا تم استخدامه سابقا‬</translation>
- </message>
- <message>
- <source>Paste address from clipboard</source>
- <translation type="unfinished">‫ألصق العنوان من الحافظة‬</translation>
- </message>
- <message>
- <source>Enter the message you want to sign here</source>
- <translation type="unfinished">ادخل الرسالة التي تريد توقيعها هنا</translation>
- </message>
- <message>
- <source>Signature</source>
- <translation type="unfinished">التوقيع</translation>
- </message>
- <message>
- <source>Copy the current signature to the system clipboard</source>
- <translation type="unfinished">نسخ التوقيع الحالي إلى حافظة النظام</translation>
- </message>
- <message>
- <source>Sign the message to prove you own this Bitcoin address</source>
- <translation type="unfinished">‫وقع الرسالة لتثبت انك تملك عنوان البتكوين هذا‬</translation>
- </message>
- <message>
- <source>Sign &amp;Message</source>
- <translation type="unfinished">توقيع &amp;الرسالة</translation>
- </message>
- <message>
- <source>Reset all sign message fields</source>
- <translation type="unfinished">‫إعادة تعيين كافة حقول توقيع الرسالة‬</translation>
- </message>
- <message>
- <source>Clear &amp;All</source>
- <translation type="unfinished">مسح الكل</translation>
- </message>
- <message>
- <source>&amp;Verify Message</source>
- <translation type="unfinished">‫&amp;تحقق من الرسالة‬</translation>
- </message>
- <message>
- <source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source>
- <translation type="unfinished">أدخل عنوان المتلقي، راسل (تأكد من نسخ فواصل الأسطر، الفراغات، الخ.. تماما) والتوقيع أسفله لتأكيد الرسالة. كن حذرا من عدم قراءة داخل التوقيع أكثر مما هو موقع بالرسالة نفسها، لتجنب خداعك بهجوم man-in-the-middle. لاحظ أنه هذا لاثبات أن الجهة الموقعة تستقبل مع العنوان فقط، لا تستطيع اثبات الارسال لأي معاملة.</translation>
- </message>
- <message>
- <source>The Bitcoin address the message was signed with</source>
- <translation type="unfinished">عنوان البتكوين الذي تم توقيع الرسالة منه</translation>
- </message>
- <message>
- <source>The signed message to verify</source>
- <translation type="unfinished">الرسالة الموقعة للتحقق.</translation>
- </message>
- <message>
- <source>The signature given when the message was signed</source>
- <translation type="unfinished">‫التوقيع المعطى عند توقيع الرسالة‬</translation>
- </message>
- <message>
- <source>Verify the message to ensure it was signed with the specified Bitcoin address</source>
- <translation type="unfinished">‫تحقق من الرسالة للتأكد أنه تم توقيعها من عنوان البتكوين المحدد‬</translation>
- </message>
- <message>
- <source>Verify &amp;Message</source>
- <translation type="unfinished">تحقق من &amp;الرسالة</translation>
- </message>
- <message>
- <source>Reset all verify message fields</source>
- <translation type="unfinished">إعادة تعيين جميع حقول التحقق من الرسالة</translation>
- </message>
- <message>
- <source>Click "Sign Message" to generate signature</source>
- <translation type="unfinished">‫انقر "توقيع الرسالة" لانشاء التوقيع‬</translation>
- </message>
- <message>
- <source>The entered address is invalid.</source>
- <translation type="unfinished">العنوان المدخل غير صالح</translation>
- </message>
- <message>
- <source>Please check the address and try again.</source>
- <translation type="unfinished">الرجاء التأكد من العنوان والمحاولة مرة اخرى.</translation>
- </message>
- <message>
- <source>The entered address does not refer to a key.</source>
- <translation type="unfinished">العنوان المدخل لا يشير الى مفتاح.</translation>
- </message>
- <message>
- <source>Wallet unlock was cancelled.</source>
- <translation type="unfinished">تم الغاء عملية فتح المحفظة.</translation>
- </message>
- <message>
- <source>No error</source>
- <translation type="unfinished">لا يوجد خطأ</translation>
- </message>
- <message>
- <source>Private key for the entered address is not available.</source>
- <translation type="unfinished">‫المفتاح الخاص للعنوان المدخل غير متاح.‬</translation>
- </message>
- <message>
- <source>Message signing failed.</source>
- <translation type="unfinished">فشل توقيع الرسالة.</translation>
- </message>
- <message>
- <source>Message signed.</source>
- <translation type="unfinished">الرسالة موقعة.</translation>
- </message>
- <message>
- <source>The signature could not be decoded.</source>
- <translation type="unfinished">لا يمكن فك تشفير التوقيع.</translation>
- </message>
- <message>
- <source>Please check the signature and try again.</source>
- <translation type="unfinished">فضلا تاكد من التوقيع وحاول مرة اخرى</translation>
- </message>
- <message>
- <source>The signature did not match the message digest.</source>
- <translation type="unfinished">لم يتطابق التوقيع مع ملخص الرسالة.</translation>
- </message>
- <message>
- <source>Message verification failed.</source>
- <translation type="unfinished">فشلت عملية التأكد من الرسالة.</translation>
- </message>
- <message>
- <source>Message verified.</source>
- <translation type="unfinished">تم تأكيد الرسالة.</translation>
- </message>
-</context>
-<context>
- <name>SplashScreen</name>
- <message>
- <source>(press q to shutdown and continue later)</source>
- <translation type="unfinished">‫(انقر q للاغلاق والمواصلة لاحقا)‬</translation>
- </message>
- <message>
- <source>press q to shutdown</source>
- <translation type="unfinished">‫انقر q للاغلاق‬</translation>
- </message>
-</context>
-<context>
- <name>TrafficGraphWidget</name>
- <message>
- <source>kB/s</source>
- <translation type="unfinished">كيلوبايت/ثانية</translation>
- </message>
-</context>
-<context>
- <name>TransactionDesc</name>
- <message>
- <source>conflicted with a transaction with %1 confirmations</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that conflicts with a confirmed transaction.</extracomment>
- <translation type="unfinished">‫تعارضت مع عملية أخرى تم تأكيدها %1</translation>
- </message>
- <message>
- <source>0/unconfirmed, in memory pool</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
- <translation type="unfinished">‫0/غير مؤكدة، في تجمع الذاكرة‬</translation>
- </message>
- <message>
- <source>0/unconfirmed, not in memory pool</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
- <translation type="unfinished">‫0/غير مؤكدة، ليست في تجمع الذاكرة‬</translation>
- </message>
- <message>
- <source>abandoned</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an abandoned transaction.</extracomment>
- <translation type="unfinished">مهجور</translation>
- </message>
- <message>
- <source>%1/unconfirmed</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in at least one block, but less than 6 blocks.</extracomment>
- <translation type="unfinished">غير مؤكدة/%1</translation>
- </message>
- <message>
- <source>%1 confirmations</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in 6 or more blocks.</extracomment>
- <translation type="unfinished">تأكيد %1</translation>
- </message>
- <message>
- <source>Status</source>
- <translation type="unfinished">الحالة.</translation>
- </message>
- <message>
- <source>Date</source>
- <translation type="unfinished">التاريخ</translation>
- </message>
- <message>
- <source>Source</source>
- <translation type="unfinished">المصدر</translation>
- </message>
- <message>
- <source>Generated</source>
- <translation type="unfinished">‫مُصدر‬</translation>
- </message>
- <message>
- <source>From</source>
- <translation type="unfinished">من</translation>
- </message>
- <message>
- <source>unknown</source>
- <translation type="unfinished">غير معروف</translation>
- </message>
- <message>
- <source>To</source>
- <translation type="unfinished">الى</translation>
- </message>
- <message>
- <source>own address</source>
- <translation type="unfinished">عنوانه</translation>
- </message>
- <message>
- <source>watch-only</source>
- <translation type="unfinished">‫مراقبة فقط‬</translation>
- </message>
- <message>
- <source>label</source>
- <translation type="unfinished">‫مذكرة‬</translation>
- </message>
- <message numerus="yes">
- <source>matures in %n more block(s)</source>
- <translation type="unfinished">
- <numerusform>matures in %n more block(s)</numerusform>
- <numerusform>matures in %n more block(s)</numerusform>
- <numerusform>matures in %n more block(s)</numerusform>
- <numerusform>matures in %n more block(s)</numerusform>
- <numerusform>matures in %n more block(s)</numerusform>
- <numerusform>matures in %n more block(s)</numerusform>
- </translation>
- </message>
- <message>
- <source>not accepted</source>
- <translation type="unfinished">غير مقبولة</translation>
- </message>
- <message>
- <source>Transaction fee</source>
- <translation type="unfinished">رسوم العملية</translation>
- </message>
- <message>
- <source>Net amount</source>
- <translation type="unfinished">‫صافي القيمة‬</translation>
- </message>
- <message>
- <source>Message</source>
- <translation type="unfinished">رسالة </translation>
- </message>
- <message>
- <source>Comment</source>
- <translation type="unfinished">تعليق</translation>
- </message>
- <message>
- <source>Transaction ID</source>
- <translation type="unfinished">‫رقم العملية‬</translation>
- </message>
- <message>
- <source>Transaction total size</source>
- <translation type="unfinished">الحجم الكلي ‫للعملية‬</translation>
- </message>
- <message>
- <source>Transaction virtual size</source>
- <translation type="unfinished">حجم المعاملة الافتراضي</translation>
- </message>
- <message>
- <source>Output index</source>
- <translation type="unfinished">مؤشر المخرجات</translation>
- </message>
- <message>
- <source> (Certificate was not verified)</source>
- <translation type="unfinished">(لم يتم التحقق من الشهادة)</translation>
- </message>
- <message>
- <source>Merchant</source>
- <translation type="unfinished">تاجر</translation>
- </message>
- <message>
- <source>Debug information</source>
- <translation type="unfinished">معلومات التصحيح</translation>
- </message>
- <message>
- <source>Transaction</source>
- <translation type="unfinished">‫عملية‬</translation>
- </message>
- <message>
- <source>Inputs</source>
- <translation type="unfinished">المدخلات</translation>
- </message>
- <message>
- <source>Amount</source>
- <translation type="unfinished">‫القيمة‬</translation>
- </message>
- <message>
- <source>true</source>
- <translation type="unfinished">صحيح</translation>
- </message>
- <message>
- <source>false</source>
- <translation type="unfinished">خاطئ</translation>
- </message>
-</context>
-<context>
- <name>TransactionDescDialog</name>
- <message>
- <source>This pane shows a detailed description of the transaction</source>
- <translation type="unfinished">يبين هذا الجزء وصفا مفصلا لهده المعاملة</translation>
- </message>
- <message>
- <source>Details for %1</source>
- <translation type="unfinished">تفاصيل عن %1</translation>
- </message>
-</context>
-<context>
- <name>TransactionTableModel</name>
- <message>
- <source>Date</source>
- <translation type="unfinished">التاريخ</translation>
- </message>
- <message>
- <source>Type</source>
- <translation type="unfinished">النوع</translation>
- </message>
- <message>
- <source>Label</source>
- <translation type="unfinished">المذكرة</translation>
- </message>
- <message>
- <source>Unconfirmed</source>
- <translation type="unfinished">غير مؤكد</translation>
- </message>
- <message>
- <source>Abandoned</source>
- <translation type="unfinished">مهجور</translation>
- </message>
- <message>
- <source>Confirming (%1 of %2 recommended confirmations)</source>
- <translation type="unfinished">قيد التأكيد (%1 من %2 تأكيد موصى به)</translation>
- </message>
- <message>
- <source>Confirmed (%1 confirmations)</source>
- <translation type="unfinished">‫نافذ (%1 تأكيدات)‬</translation>
- </message>
- <message>
- <source>Conflicted</source>
- <translation type="unfinished">يتعارض</translation>
- </message>
- <message>
- <source>Immature (%1 confirmations, will be available after %2)</source>
- <translation type="unfinished">غير ناضجة (تأكيدات %1 ، ستكون متوفرة بعد %2)</translation>
- </message>
- <message>
- <source>Generated but not accepted</source>
- <translation type="unfinished">ولّدت ولكن لم تقبل</translation>
- </message>
- <message>
- <source>Received with</source>
- <translation type="unfinished">‫استلم في‬</translation>
- </message>
- <message>
- <source>Received from</source>
- <translation type="unfinished">‫استلم من</translation>
- </message>
- <message>
- <source>Sent to</source>
- <translation type="unfinished">أرسل إلى</translation>
- </message>
- <message>
- <source>Payment to yourself</source>
- <translation type="unfinished">دفع لنفسك</translation>
- </message>
- <message>
- <source>Mined</source>
- <translation type="unfinished">‫معدّن‬</translation>
- </message>
- <message>
- <source>watch-only</source>
- <translation type="unfinished">‫مراقبة فقط‬</translation>
- </message>
- <message>
- <source>(n/a)</source>
- <translation type="unfinished">غير متوفر</translation>
- </message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">( لا وجود لمذكرة)</translation>
- </message>
- <message>
- <source>Transaction status. Hover over this field to show number of confirmations.</source>
- <translation type="unfinished">حالة التحويل. مرر فوق هذا الحقل لعرض عدد التأكيدات.</translation>
- </message>
- <message>
- <source>Date and time that the transaction was received.</source>
- <translation type="unfinished">‫التاريخ والوقت الذي تم فيه استلام العملية.‬</translation>
- </message>
- <message>
- <source>Type of transaction.</source>
- <translation type="unfinished">‫نوع العملية.‬</translation>
- </message>
- <message>
- <source>Whether or not a watch-only address is involved in this transaction.</source>
- <translation type="unfinished">‫إذا كان عنوان المراقبة له علاقة بهذه العملية أم لا.‬</translation>
- </message>
- <message>
- <source>User-defined intent/purpose of the transaction.</source>
- <translation type="unfinished">‫سبب تنفيذ العملية للمستخدم.‬</translation>
- </message>
- <message>
- <source>Amount removed from or added to balance.</source>
- <translation type="unfinished">‫القيمة المضافة أو المزالة من الرصيد.‬</translation>
- </message>
-</context>
-<context>
- <name>TransactionView</name>
- <message>
- <source>All</source>
- <translation type="unfinished">الكل</translation>
- </message>
- <message>
- <source>Today</source>
- <translation type="unfinished">اليوم</translation>
- </message>
- <message>
- <source>This week</source>
- <translation type="unfinished">هذا الاسبوع</translation>
- </message>
- <message>
- <source>This month</source>
- <translation type="unfinished">هذا الشهر</translation>
- </message>
- <message>
- <source>Last month</source>
- <translation type="unfinished">الشهر الماضي</translation>
- </message>
- <message>
- <source>This year</source>
- <translation type="unfinished">هذا العام</translation>
- </message>
- <message>
- <source>Received with</source>
- <translation type="unfinished">‫استلم في‬</translation>
- </message>
- <message>
- <source>Sent to</source>
- <translation type="unfinished">أرسل إلى</translation>
- </message>
- <message>
- <source>To yourself</source>
- <translation type="unfinished">إليك</translation>
- </message>
- <message>
- <source>Mined</source>
- <translation type="unfinished">‫معدّن‬</translation>
- </message>
- <message>
- <source>Other</source>
- <translation type="unfinished">أخرى</translation>
- </message>
- <message>
- <source>Enter address, transaction id, or label to search</source>
- <translation type="unfinished">‫أدخل العنوان أو معرف المعاملة أو المذكرة للبحث‬</translation>
- </message>
- <message>
- <source>Min amount</source>
- <translation type="unfinished">الحد الأدنى</translation>
- </message>
- <message>
- <source>Range…</source>
- <translation type="unfinished">نطاق...</translation>
- </message>
- <message>
- <source>&amp;Copy address</source>
- <translation type="unfinished">‫&amp;انسخ العنوان‬</translation>
- </message>
- <message>
- <source>Copy &amp;label</source>
- <translation type="unfinished">‫نسخ &amp;مذكرة‬</translation>
- </message>
- <message>
- <source>Copy &amp;amount</source>
- <translation type="unfinished">‫نسخ &amp;القيمة‬</translation>
- </message>
- <message>
- <source>Copy transaction &amp;ID</source>
- <translation type="unfinished">‫نسخ &amp;معرف العملية‬</translation>
- </message>
- <message>
- <source>Copy &amp;raw transaction</source>
- <translation type="unfinished">‫نسخ &amp;النص الأصلي للعملية‬</translation>
- </message>
- <message>
- <source>Copy full transaction &amp;details</source>
- <translation type="unfinished">‫نسخ كامل &amp;تفاصيل العملية‬</translation>
- </message>
- <message>
- <source>&amp;Show transaction details</source>
- <translation type="unfinished">‫&amp; اظهر تفاصيل العملية‬</translation>
- </message>
- <message>
- <source>Increase transaction &amp;fee</source>
- <translation type="unfinished">‫زيادة العملية و الرسوم‬</translation>
- </message>
- <message>
- <source>A&amp;bandon transaction</source>
- <translation type="unfinished">‫ال&amp;تخلي عن العملية</translation>
- </message>
- <message>
- <source>&amp;Edit address label</source>
- <translation type="unfinished">و تحرير تسمية العنوان </translation>
- </message>
- <message>
- <source>Show in %1</source>
- <extracomment>Transactions table context menu action to show the selected transaction in a third-party block explorer. %1 is a stand-in argument for the URL of the explorer.</extracomment>
- <translation type="unfinished">‫عرض في %1</translation>
- </message>
- <message>
- <source>Export Transaction History</source>
- <translation type="unfinished">‫تصدير سجل العمليات التاريخي‬</translation>
- </message>
- <message>
- <source>Comma separated file</source>
- <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">ملف القيم المفصولة بفاصلة</translation>
- </message>
- <message>
- <source>Confirmed</source>
- <translation type="unfinished">‫نافذ‬</translation>
- </message>
- <message>
- <source>Watch-only</source>
- <translation type="unfinished">‫مراقبة فقط‬</translation>
- </message>
- <message>
- <source>Date</source>
- <translation type="unfinished">التاريخ</translation>
- </message>
- <message>
- <source>Type</source>
- <translation type="unfinished">النوع</translation>
- </message>
- <message>
- <source>Label</source>
- <translation type="unfinished">المذكرة</translation>
- </message>
- <message>
- <source>Address</source>
- <translation type="unfinished">العنوان</translation>
- </message>
- <message>
- <source>ID</source>
- <translation type="unfinished">‫المعرف‬</translation>
- </message>
- <message>
- <source>Exporting Failed</source>
- <translation type="unfinished">فشل التصدير</translation>
- </message>
- <message>
- <source>There was an error trying to save the transaction history to %1.</source>
- <translation type="unfinished">‫حدث خطأ أثناء محاولة حفظ سجل العملية التاريخي في %1.‬</translation>
- </message>
- <message>
- <source>Exporting Successful</source>
- <translation type="unfinished">نجح التصدير</translation>
- </message>
- <message>
- <source>The transaction history was successfully saved to %1.</source>
- <translation type="unfinished">‫تم حفظ سجل العملية التاريخي بنجاح في %1.‬</translation>
- </message>
- <message>
- <source>Range:</source>
- <translation type="unfinished">المدى:</translation>
- </message>
- <message>
- <source>to</source>
- <translation type="unfinished">إلى</translation>
- </message>
-</context>
-<context>
- <name>WalletFrame</name>
- <message>
- <source>No wallet has been loaded.
-Go to File &gt; Open Wallet to load a wallet.
-- OR -</source>
- <translation type="unfinished">لم يتم تحميل أي محافظ.
-اذهب الى ملف &gt; فتح محفظة لتحميل محفظة.
-- أو -</translation>
- </message>
- <message>
- <source>Create a new wallet</source>
- <translation type="unfinished">إنشاء محفظة جديدة</translation>
- </message>
- <message>
- <source>Error</source>
- <translation type="unfinished">خطأ</translation>
- </message>
- <message>
- <source>Unable to decode PSBT from clipboard (invalid base64)</source>
- <translation type="unfinished">‫تعذر قراءة وتحليل ترميز PSBT من الحافظة (base64 غير صالح)‬</translation>
- </message>
- <message>
- <source>Load Transaction Data</source>
- <translation type="unfinished">‫تحميل بيانات العملية‬</translation>
- </message>
- <message>
- <source>Partially Signed Transaction (*.psbt)</source>
- <translation type="unfinished">معاملة موقعة جزئيا (psbt.*)</translation>
- </message>
- <message>
- <source>PSBT file must be smaller than 100 MiB</source>
- <translation type="unfinished">ملف PSBT يجب أن يكون أصغر من 100 ميجابايت</translation>
- </message>
- <message>
- <source>Unable to decode PSBT</source>
- <translation type="unfinished">‫غير قادر على قراءة وتحليل ترميز PSBT‬</translation>
- </message>
-</context>
-<context>
- <name>WalletModel</name>
- <message>
- <source>Send Coins</source>
- <translation type="unfinished">‫إرسال وحدات البتكوين‬</translation>
- </message>
- <message>
- <source>Fee bump error</source>
- <translation type="unfinished">خطأ في زيادة الرسوم</translation>
- </message>
- <message>
- <source>Increasing transaction fee failed</source>
- <translation type="unfinished">فشل في زيادة رسوم العملية</translation>
- </message>
- <message>
- <source>Do you want to increase the fee?</source>
- <extracomment>Asks a user if they would like to manually increase the fee of a transaction that has already been created.</extracomment>
- <translation type="unfinished">هل تريد زيادة الرسوم؟</translation>
- </message>
- <message>
- <source>Current fee:</source>
- <translation type="unfinished">‫الرسوم الان:‬</translation>
- </message>
- <message>
- <source>Increase:</source>
- <translation type="unfinished">زيادة:</translation>
- </message>
- <message>
- <source>New fee:</source>
- <translation type="unfinished">‫رسم جديد:‬</translation>
- </message>
- <message>
- <source>Confirm fee bump</source>
- <translation type="unfinished">تأكيد زيادة الرسوم</translation>
- </message>
- <message>
- <source>Can't draft transaction.</source>
- <translation type="unfinished">لا يمكن صياغة المعاملة</translation>
- </message>
- <message>
- <source>PSBT copied</source>
- <translation type="unfinished">تم نسخ PSBT</translation>
- </message>
- <message>
- <source>Can't sign transaction.</source>
- <translation type="unfinished">لا يمكن توقيع المعاملة.</translation>
- </message>
- <message>
- <source>Could not commit transaction</source>
- <translation type="unfinished">لا يمكن تنفيذ المعاملة</translation>
- </message>
- <message>
- <source>Can't display address</source>
- <translation type="unfinished">لا يمكن عرض العنوان </translation>
- </message>
- <message>
- <source>default wallet</source>
- <translation type="unfinished">المحفظة الإفتراضية</translation>
- </message>
-</context>
-<context>
- <name>WalletView</name>
- <message>
- <source>&amp;Export</source>
- <translation type="unfinished">&amp;تصدير</translation>
- </message>
- <message>
- <source>Export the data in the current tab to a file</source>
- <translation type="unfinished">صدّر البيانات في التبويب الحالي الى ملف</translation>
- </message>
- <message>
- <source>Backup Wallet</source>
- <translation type="unfinished">‫انسخ المحفظة احتياطيا‬</translation>
- </message>
- <message>
- <source>Wallet Data</source>
- <extracomment>Name of the wallet data file format.</extracomment>
- <translation type="unfinished">بيانات المحفظة</translation>
- </message>
- <message>
- <source>Backup Failed</source>
- <translation type="unfinished">‫تعذر النسخ الاحتياطي‬</translation>
- </message>
- <message>
- <source>There was an error trying to save the wallet data to %1.</source>
- <translation type="unfinished">لقد حدث خطأ أثناء محاولة حفظ بيانات المحفظة الى %1.</translation>
- </message>
- <message>
- <source>Backup Successful</source>
- <translation type="unfinished">‫نجح النسخ الاحتياطي‬</translation>
- </message>
- <message>
- <source>The wallet data was successfully saved to %1.</source>
- <translation type="unfinished">تم حفظ بيانات المحفظة بنجاح إلى %1.</translation>
- </message>
- <message>
- <source>Cancel</source>
- <translation type="unfinished">إلغاء</translation>
- </message>
-</context>
-<context>
- <name>bitcoin-core</name>
- <message>
- <source>The %s developers</source>
- <translation type="unfinished">%s المبرمجون</translation>
- </message>
- <message>
- <source>%s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup.</source>
- <translation type="unfinished">‫‫%s مشكل. حاول استخدام أداة محفظة البتكوين للاصلاح أو استعادة نسخة احتياطية.‬</translation>
- </message>
- <message>
- <source>Cannot downgrade wallet from version %i to version %i. Wallet version unchanged.</source>
- <translation type="unfinished">‫لا يمكن استرجاع إصدار المحفظة من %i الى %i. لم يتغير إصدار المحفظة.‬</translation>
- </message>
- <message>
- <source>Cannot obtain a lock on data directory %s. %s is probably already running.</source>
- <translation type="unfinished">‫لا يمكن اقفال المجلد %s. من المحتمل أن %s يعمل بالفعل.‬</translation>
- </message>
- <message>
- <source>Distributed under the MIT software license, see the accompanying file %s or %s</source>
- <translation type="unfinished">موزع بموجب ترخيص برامج MIT ، راجع الملف المصاحب %s أو %s</translation>
- </message>
- <message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">خطأ في قراءة %s! جميع المفاتيح قرأت بشكل صحيح، لكن بيانات المعاملة أو إدخالات سجل العناوين قد تكون مفقودة أو غير صحيحة.</translation>
- </message>
- <message>
- <source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
- <translation type="unfinished">‫خطأ في قراءة %s بيانات العملية قد تكون مفقودة أو غير صحيحة. اعادة فحص المحفظة.‬</translation>
- </message>
- <message>
- <source>File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
- <translation type="unfinished">الملف %s موجود مسبقا , اذا كنت متأكدا من المتابعة يرجى ابعاده للاستمرار.</translation>
- </message>
- <message>
- <source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
- <translation type="unfinished">رجاء تأكد من أن التاريخ والوقت في حاسوبك صحيحان! اذا كانت ساعتك خاطئة، %s لن يعمل بصورة صحيحة.</translation>
- </message>
- <message>
- <source>Please contribute if you find %s useful. Visit %s for further information about the software.</source>
- <translation type="unfinished">يرجى المساهمة إذا وجدت %s مفيداً. تفضل بزيارة %s لمزيد من المعلومات حول البرنامج.</translation>
- </message>
- <message>
- <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source>
- <translation type="unfinished">‫الاختصار أقل من الحد الأدنى %d ميجابايت. من فضلك ارفع الحد.‬</translation>
- </message>
- <message>
- <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
- <translation type="unfinished">‫الاختصار: اخر مزامنة للمحفظة كانت قبل البيانات المختصرة. تحتاج الى - اعادة فهرسة (قم بتنزيل الطوابق المتتالية بأكملها مرة أخرى في حال تم اختصار النود)‬</translation>
- </message>
- <message>
- <source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
- <translation type="unfinished">SQLiteDatabase: اصدار مخطط لمحفظة sqlite غير معروف %d. فقط اصدار %d مدعوم.</translation>
- </message>
- <message>
- <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
- <translation type="unfinished">‫قاعدة بيانات الطوابق تحتوي على طابق مستقبلي كما يبدو. قد يكون هذا بسبب أن التاريخ والوقت في جهازك لم يضبطا بشكل صحيح. قم بإعادة بناء قاعدة بيانات الطوابق في حال كنت متأكدا من أن التاريخ والوقت قد تم ضبطهما بشكل صحيح‬</translation>
- </message>
- <message>
- <source>The transaction amount is too small to send after the fee has been deducted</source>
- <translation type="unfinished">قيمة المعاملة صغيرة جدًا ولا يمكن إرسالها بعد خصم الرسوم</translation>
- </message>
- <message>
- <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source>
- <translation type="unfinished">‫هذه بناء برمجي تجريبي - استخدمه على مسؤوليتك الخاصة - لا تستخدمه للتعدين أو التجارة‬</translation>
- </message>
- <message>
- <source>This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection.</source>
- <translation type="unfinished">‫هذا هو الحد الاعلى للرسوم التي تدفعها (بالاضافة للرسوم العادية) لتفادي الدفع الجزئي واعطاء أولوية لاختيار الوحدات.‬</translation>
- </message>
- <message>
- <source>This is the transaction fee you may discard if change is smaller than dust at this level</source>
- <translation type="unfinished">هذه رسوم المعاملة يمكنك التخلص منها إذا كان المبلغ أصغر من الغبار عند هذا المستوى</translation>
- </message>
- <message>
- <source>This is the transaction fee you may pay when fee estimates are not available.</source>
- <translation type="unfinished">هذه هي رسوم المعاملة التي قد تدفعها عندما تكون عملية حساب الرسوم غير متوفرة.</translation>
- </message>
- <message>
- <source>Unknown wallet file format "%s" provided. Please provide one of "bdb" or "sqlite".</source>
- <translation type="unfinished">‫صيغة ملف المحفظة غير معروفة “%s”. الرجاء تقديم اما “bdb” أو “sqlite”.‬</translation>
- </message>
- <message>
- <source>Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
- <translation type="unfinished">‫تم انشاء المحفظة بنجاح. سيتم الغاء العمل بنوعية المحافظ القديمة ولن يتم دعم انشاءها أو فتحها مستقبلا.‬</translation>
- </message>
- <message>
- <source>Warning: Private keys detected in wallet {%s} with disabled private keys</source>
- <translation type="unfinished">‫تحذير: تم اكتشاف مفاتيح خاصة في المحفظة {%s} رغم أن خيار التعامل مع المفاتيح الخاصة معطل‬} مع مفاتيح خاصة موقفة. </translation>
- </message>
- <message>
- <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source>
- <translation type="unfinished">‫تحذير: لا يبدو أننا نتفق تمامًا مع أقراننا! قد تحتاج إلى الترقية ، أو قد تحتاج الأنواد الأخرى إلى الترقية.‬</translation>
- </message>
- <message>
- <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source>
- <translation type="unfinished">‫تحتاج إلى إعادة إنشاء قاعدة البيانات باستخدام -reindex للعودة إلى الوضعية النود الكامل. هذا سوف يعيد تحميل الطوابق المتتالية بأكملها‬</translation>
- </message>
- <message>
- <source>%s is set very high!</source>
- <translation type="unfinished">ضبط %s مرتفع جدا!‬</translation>
- </message>
- <message>
- <source>-maxmempool must be at least %d MB</source>
- <translation type="unfinished">‫-الحد الأقصى لتجمع الذاكرة %d ميجابايت‬ على الأقل</translation>
- </message>
- <message>
- <source>A fatal internal error occurred, see debug.log for details</source>
- <translation type="unfinished">‫حدث خطأ داخلي شديد، راجع ملف تصحيح الأخطاء للتفاصيل‬</translation>
- </message>
- <message>
- <source>Cannot resolve -%s address: '%s'</source>
- <translation type="unfinished">لا يمكن الحل - %s العنوان: '%s'</translation>
- </message>
- <message>
- <source>Cannot write to data directory '%s'; check permissions.</source>
- <translation type="unfinished">‫لايمكن الكتابة في المجلد '%s'؛ تحقق من الصلاحيات.‬</translation>
- </message>
- <message>
- <source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
- <translation type="unfinished">‫فشل في إعادة تسمية ملف invalid peers.dat. يرجى نقله أو حذفه وحاول مرة أخرى.‬</translation>
- </message>
- <message>
- <source>Config setting for %s only applied on %s network when in [%s] section.</source>
- <translation type="unfinished">يتم تطبيق إعداد التكوين لـ%s فقط على شبكة %s في قسم [%s].</translation>
- </message>
- <message>
- <source>Copyright (C) %i-%i</source>
- <translation type="unfinished">حقوق الطبع والنشر (C) %i-%i</translation>
- </message>
- <message>
- <source>Corrupted block database detected</source>
- <translation type="unfinished">‫تم الكشف عن قاعدة بيانات طوابق تالفة‬</translation>
- </message>
- <message>
- <source>Could not find asmap file %s</source>
- <translation type="unfinished">تعذر العثور على ملف asmap %s</translation>
- </message>
- <message>
- <source>Could not parse asmap file %s</source>
- <translation type="unfinished">تعذر تحليل ملف asmap %s</translation>
- </message>
- <message>
- <source>Disk space is too low!</source>
- <translation type="unfinished">‫تحذير: مساحة التخزين منخفضة!‬</translation>
- </message>
- <message>
- <source>Do you want to rebuild the block database now?</source>
- <translation type="unfinished">‫هل تريد إعادة بناء قاعدة بيانات الطوابق الآن؟‬</translation>
- </message>
- <message>
- <source>Done loading</source>
- <translation type="unfinished">إنتهاء التحميل</translation>
- </message>
- <message>
- <source>Dump file %s does not exist.</source>
- <translation type="unfinished">‫ملف الاسقاط %s غير موجود.‬</translation>
- </message>
- <message>
- <source>Error creating %s</source>
- <translation type="unfinished">خطأ في إنشاء %s</translation>
- </message>
- <message>
- <source>Error loading %s</source>
- <translation type="unfinished">خطأ في تحميل %s</translation>
- </message>
- <message>
- <source>Error loading %s: Private keys can only be disabled during creation</source>
- <translation type="unfinished">‫خطأ في تحميل %s: يمكن تعطيل المفاتيح الخاصة أثناء الانشاء فقط‬</translation>
- </message>
- <message>
- <source>Error loading %s: Wallet corrupted</source>
- <translation type="unfinished">خطأ في التحميل %s: المحفظة تالفة.</translation>
- </message>
- <message>
- <source>Error loading %s: Wallet requires newer version of %s</source>
- <translation type="unfinished">‫خطأ في تحميل %s: المحفظة تتطلب الاصدار الجديد من %s‬</translation>
- </message>
- <message>
- <source>Error loading block database</source>
- <translation type="unfinished">‫خطأ في تحميل قاعدة بيانات الطوابق‬</translation>
- </message>
- <message>
- <source>Error opening block database</source>
- <translation type="unfinished">‫خطأ في فتح قاعدة بيانات الطوابق‬</translation>
- </message>
- <message>
- <source>Error reading from database, shutting down.</source>
- <translation type="unfinished">‫خطأ في القراءة من قاعدة البيانات ، يجري التوقف.‬</translation>
- </message>
- <message>
- <source>Error reading next record from wallet database</source>
- <translation type="unfinished">خطأ قراءة السجل التالي من قاعدة بيانات المحفظة</translation>
- </message>
- <message>
- <source>Error: Could not add watchonly tx to watchonly wallet</source>
- <translation type="unfinished">‫خطأ: لا يمكن اضافة عملية المراقبة فقط لمحفظة المراقبة‬</translation>
- </message>
- <message>
- <source>Error: Could not delete watchonly transactions</source>
- <translation type="unfinished">‫خطأ: لا يمكن حذف عمليات المراقبة فقط‬</translation>
- </message>
- <message>
- <source>Error: Couldn't create cursor into database</source>
- <translation type="unfinished">‫خطأ : لم نتمكن من انشاء علامة فارقة (cursor) في قاعدة البيانات‬</translation>
- </message>
- <message>
- <source>Error: Disk space is low for %s</source>
- <translation type="unfinished">‫خطأ : مساحة التخزين منخفضة ل %s</translation>
- </message>
- <message>
- <source>Error: Failed to create new watchonly wallet</source>
- <translation type="unfinished">‫خطأ: فشل انشاء محفظة المراقبة فقط الجديدة‬</translation>
- </message>
- <message>
- <source>Error: Got key that was not hex: %s</source>
- <translation type="unfinished">‫خطأ: المفتاح ليس في صيغة ست عشرية: %s</translation>
- </message>
- <message>
- <source>Error: Got value that was not hex: %s</source>
- <translation type="unfinished">‫خطأ: القيمة ليست في صيغة ست عشرية: %s</translation>
- </message>
- <message>
- <source>Error: Missing checksum</source>
- <translation type="unfinished">خطأ : مجموع اختباري مفقود </translation>
- </message>
- <message>
- <source>Error: No %s addresses available.</source>
- <translation type="unfinished">‫خطأ : لا يتوفر %s عناوين.‬</translation>
- </message>
- <message>
- <source>Error: Unable to begin reading all records in the database</source>
- <translation type="unfinished">‫خطأ: غير قادر على قراءة السجلات في قاعدة البيانات‬</translation>
- </message>
- <message>
- <source>Error: Unable to make a backup of your wallet</source>
- <translation type="unfinished">‫خطأ: غير قادر النسخ الاحتياطي للمحفظة‬</translation>
- </message>
- <message>
- <source>Error: Unable to read all records in the database</source>
- <translation type="unfinished">‫خطأ: غير قادر على قراءة السجلات في قاعدة البيانات‬</translation>
- </message>
- <message>
- <source>Error: Unable to remove watchonly address book data</source>
- <translation type="unfinished">‫خطأ: غير قادر على ازالة عناوين المراقبة فقط من السجل‬</translation>
- </message>
- <message>
- <source>Error: Unable to write record to new wallet</source>
- <translation type="unfinished">خطأ : لا يمكن كتابة السجل للمحفظة الجديدة</translation>
- </message>
- <message>
- <source>Failed to listen on any port. Use -listen=0 if you want this.</source>
- <translation type="unfinished">فشل في الاستماع على أي منفذ. استخدام الاستماع = 0 إذا كنت تريد هذا.</translation>
- </message>
- <message>
- <source>Failed to rescan the wallet during initialization</source>
- <translation type="unfinished">‫فشلت عملية اعادة تفحص وتدقيق المحفظة أثناء التهيئة‬</translation>
- </message>
- <message>
- <source>Failed to verify database</source>
- <translation type="unfinished">فشل في التحقق من قاعدة البيانات</translation>
- </message>
- <message>
- <source>Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
- <translation type="unfinished">‫معدل الرسوم (%s) أقل من الحد الادنى لاعدادات معدل الرسوم (%s)‬</translation>
- </message>
- <message>
- <source>Ignoring duplicate -wallet %s.</source>
- <translation type="unfinished">‫تجاهل المحفظة المكررة %s.‬</translation>
- </message>
- <message>
- <source>Importing…</source>
- <translation type="unfinished">‫الاستيراد…‬</translation>
- </message>
- <message>
- <source>Incorrect or no genesis block found. Wrong datadir for network?</source>
- <translation type="unfinished">‫لم يتم العثور على طابق الأساس أو المعلومات غير صحيحة. مجلد بيانات خاطئ للشبكة؟‬</translation>
- </message>
- <message>
- <source>Initialization sanity check failed. %s is shutting down.</source>
- <translation type="unfinished">‫فشل التحقق من اختبار التعقل. تم إيقاف %s.</translation>
- </message>
- <message>
- <source>Input not found or already spent</source>
- <translation type="unfinished">‫المدخلات غير موجودة أو تم صرفها‬</translation>
- </message>
- <message>
- <source>Insufficient funds</source>
- <translation type="unfinished">الرصيد غير كافي</translation>
- </message>
- <message>
- <source>Invalid -onion address or hostname: '%s'</source>
- <translation type="unfinished">عنوان اونيون غير صحيح : '%s'</translation>
- </message>
- <message>
- <source>Invalid P2P permission: '%s'</source>
- <translation type="unfinished">‫إذن القرين للقرين غير صالح: ‘%s’‬</translation>
- </message>
- <message>
- <source>Invalid amount for -%s=&lt;amount&gt;: '%s'</source>
- <translation type="unfinished">‫قيمة غير صحيحة‬ ل - %s=&lt;amount&gt;:"%s"</translation>
- </message>
- <message>
- <source>Loading P2P addresses…</source>
- <translation type="unfinished">تحميل عناوين P2P....</translation>
- </message>
- <message>
- <source>Loading banlist…</source>
- <translation type="unfinished">تحميل قائمة الحظر</translation>
- </message>
- <message>
- <source>Loading block index…</source>
- <translation type="unfinished">‫تحميل فهرس الطابق…‬</translation>
- </message>
- <message>
- <source>Loading wallet…</source>
- <translation type="unfinished">‫تحميل المحفظة…‬</translation>
- </message>
- <message>
- <source>Missing amount</source>
- <translation type="unfinished">‫يفتقد القيمة‬</translation>
- </message>
- <message>
- <source>Not enough file descriptors available.</source>
- <translation type="unfinished">لا تتوفر واصفات ملفات كافية.</translation>
- </message>
- <message>
- <source>Prune cannot be configured with a negative value.</source>
- <translation type="unfinished">‫لا يمكن ضبط الاختصار بقيمة سالبة.‬</translation>
- </message>
- <message>
- <source>Prune mode is incompatible with -txindex.</source>
- <translation type="unfinished">‫وضع الاختصار غير متوافق مع -txindex.‬</translation>
- </message>
- <message>
- <source>Replaying blocks…</source>
- <translation type="unfinished">‫إستعادة الطوابق…‬</translation>
- </message>
- <message>
- <source>Rescanning…</source>
- <translation type="unfinished">‫إعادة التفحص والتدقيق…‬</translation>
- </message>
- <message>
- <source>SQLiteDatabase: Failed to execute statement to verify database: %s</source>
- <translation type="unfinished">‫‫SQLiteDatabase: فشل في تنفيذ الامر لتوثيق قاعدة البيانات: %s</translation>
- </message>
- <message>
- <source>Section [%s] is not recognized.</source>
- <translation type="unfinished">لم يتم التعرف على القسم [%s]</translation>
- </message>
- <message>
- <source>Signing transaction failed</source>
- <translation type="unfinished">فشل توقيع المعاملة</translation>
- </message>
- <message>
- <source>Specified -walletdir "%s" does not exist</source>
- <translation type="unfinished">‫مجلد المحفظة المحددة "%s" غير موجود</translation>
- </message>
- <message>
- <source>Specified -walletdir "%s" is a relative path</source>
- <translation type="unfinished">‫مسار مجلد المحفظة المحدد "%s" مختصر ومتغير‬</translation>
- </message>
- <message>
- <source>The source code is available from %s.</source>
- <translation type="unfinished">شفرة المصدر متاحة من %s.</translation>
- </message>
- <message>
- <source>The transaction amount is too small to pay the fee</source>
- <translation type="unfinished">‫قيمة المعاملة صغيرة جدا ولا تكفي لدفع الرسوم‬</translation>
- </message>
- <message>
- <source>The wallet will avoid paying less than the minimum relay fee.</source>
- <translation type="unfinished">‫سوف تتجنب المحفظة دفع رسوم أقل من الحد الأدنى للتوصيل.‬</translation>
- </message>
- <message>
- <source>This is experimental software.</source>
- <translation type="unfinished">هذا برنامج تجريبي.</translation>
- </message>
- <message>
- <source>This is the minimum transaction fee you pay on every transaction.</source>
- <translation type="unfinished">هذه هي اقل قيمة من العمولة التي تدفعها عند كل عملية تحويل للأموال.</translation>
- </message>
- <message>
- <source>This is the transaction fee you will pay if you send a transaction.</source>
- <translation type="unfinished">‫هذه هي رسوم ارسال العملية التي ستدفعها إذا قمت بارسال العمليات.‬</translation>
- </message>
- <message>
- <source>Transaction amount too small</source>
- <translation type="unfinished">قيمة العملية صغيره جدا</translation>
- </message>
- <message>
- <source>Transaction amounts must not be negative</source>
- <translation type="unfinished">‫يجب ألا تكون قيمة العملية بالسالب‬</translation>
- </message>
- <message>
- <source>Transaction must have at least one recipient</source>
- <translation type="unfinished">يجب أن تحتوي المعاملة على مستلم واحد على الأقل</translation>
- </message>
- <message>
- <source>Transaction needs a change address, but we can't generate it.</source>
- <translation type="unfinished">‫العملية تتطلب عنوان فكة ولكن لم نتمكن من توليد العنوان.‬</translation>
- </message>
- <message>
- <source>Transaction too large</source>
- <translation type="unfinished">المعاملة كبيرة جدا</translation>
- </message>
- <message>
- <source>Unable to bind to %s on this computer (bind returned error %s)</source>
- <translation type="unfinished">يتعذر الربط مع %s على هذا الكمبيوتر (الربط انتج خطأ %s)</translation>
- </message>
- <message>
- <source>Unable to bind to %s on this computer. %s is probably already running.</source>
- <translation type="unfinished">تعذر الربط مع %s على هذا الكمبيوتر. %s على الأغلب يعمل مسبقا.</translation>
- </message>
- <message>
- <source>Unable to generate initial keys</source>
- <translation type="unfinished">غير قادر على توليد مفاتيح أولية</translation>
- </message>
- <message>
- <source>Unable to generate keys</source>
- <translation type="unfinished"> غير قادر على توليد مفاتيح</translation>
- </message>
- <message>
- <source>Unable to open %s for writing</source>
- <translation type="unfinished">غير قادر على فتح %s للكتابة </translation>
- </message>
- <message>
- <source>Unable to start HTTP server. See debug log for details.</source>
- <translation type="unfinished">غير قادر على بدء خادم ال HTTP. راجع سجل تصحيح الأخطاء للحصول على التفاصيل.</translation>
- </message>
- <message>
- <source>Unknown -blockfilterindex value %s.</source>
- <translation type="unfinished">‫قيمة -blockfilterindex  مجهولة %s.‬</translation>
- </message>
- <message>
- <source>Unknown address type '%s'</source>
- <translation type="unfinished">عنوان غير صحيح : '%s'</translation>
- </message>
- <message>
- <source>Unknown network specified in -onlynet: '%s'</source>
- <translation type="unfinished">شبكة مجهولة عرفت حددت في -onlynet: '%s'</translation>
- </message>
- <message>
- <source>Verifying blocks…</source>
- <translation type="unfinished">جار التحقق من الطوابق...</translation>
- </message>
- <message>
- <source>Verifying wallet(s)…</source>
- <translation type="unfinished"> التحقق من المحافظ ....</translation>
- </message>
- <message>
- <source>Wallet needed to be rewritten: restart %s to complete</source>
- <translation type="unfinished">يجب إعادة كتابة المحفظة: يلزم إعادة تشغيل %s لإكمال العملية</translation>
- </message>
- <message>
- <source>Settings file could not be read</source>
- <translation type="unfinished">‫ملف الاعدادات لا يمكن قراءته‬</translation>
- </message>
- <message>
- <source>Settings file could not be written</source>
- <translation type="unfinished">‫لم نتمكن من كتابة ملف الاعدادات‬</translation>
- </message>
-</context>
-</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_az.ts b/src/qt/locale/bitcoin_az.ts
index a2aca2d413..36fd19df49 100644
--- a/src/qt/locale/bitcoin_az.ts
+++ b/src/qt/locale/bitcoin_az.ts
@@ -3,11 +3,11 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">Ünvana və ya etiketə düzəliş etmək üçün sağ klikləyin</translation>
+ <translation type="unfinished">Ünvana və ya etiketə düzəliş etmək üçün sağ düyməni klikləyin</translation>
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">Yeni bir ünvan yaradın</translation>
+ <translation type="unfinished">Yeni ünvan yaradın</translation>
</message>
<message>
<source>&amp;New</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">Seç</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Göndərilən ünvanlar</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Alınan ünvanlar</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Bunlar ödənişləri göndərmək üçün Bitcoin ünvanlarınızdır. pul göndərməzdən əvvəl həmişə miqdarı və göndəriləcək ünvanı yoxlayın.</translation>
</message>
@@ -283,6 +275,10 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">%1 hələ də təhlükəsiz bağlanmayıb...</translation>
</message>
<message>
+ <source>unknown</source>
+ <translation type="unfinished">naməlum</translation>
+ </message>
+ <message>
<source>Amount</source>
<translation type="unfinished">Məbləğ</translation>
</message>
@@ -820,10 +816,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Komissiya:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Toz:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Komissiydan sonra:</translation>
</message>
@@ -912,10 +904,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Baytları koyalayın</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Tozu kopyalayın</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Dəyişikliyi kopyalayın</translation>
</message>
@@ -924,18 +912,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">(%1 kilidləndi)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">bəli</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">xeyr</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Əgər alıcı məbləği cari toz həddindən az alarsa bu etiket qırmızı olur.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Hər daxilolmada +/- %1 satoşi dəyişə bilər.</translation>
</message>
@@ -1109,14 +1085,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Boş pulqabı yaradın</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Publik açar skripti (scriptPubKey) idarəetməsi üçün deskreptorlardan itifadə edin</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptor pulqabı</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Aparat cüzdanı kimi xarici imzalama cihazından istifadə edin. Əvvəlcə cüzdan seçimlərində xarici imzalayan skriptini konfiqurasiya edin.</translation>
</message>
@@ -1459,10 +1427,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Gizlə</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Toz:</translation>
- </message>
- <message>
<source>Copy quantity</source>
<translation type="unfinished">Miqdarı kopyalayın</translation>
</message>
@@ -1483,10 +1447,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Baytları koyalayın</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Tozu kopyalayın</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Dəyişikliyi kopyalayın</translation>
</message>
@@ -1516,6 +1476,10 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<source>Date</source>
<translation type="unfinished">Tarix</translation>
</message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">naməlum</translation>
+ </message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
diff --git a/src/qt/locale/bitcoin_az@latin.ts b/src/qt/locale/bitcoin_az@latin.ts
index 269acea5a5..bb808eaddb 100644
--- a/src/qt/locale/bitcoin_az@latin.ts
+++ b/src/qt/locale/bitcoin_az@latin.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Seç</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Göndərilən ünvanlar</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Alınan ünvanlar</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Bunlar ödənişləri göndərmək üçün Bitcoin ünvanlarınızdır. pul göndərməzdən əvvəl həmişə miqdarı və göndəriləcək ünvanı yoxlayın.</translation>
</message>
@@ -283,6 +275,10 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">%1 hələ də təhlükəsiz bağlanmayıb...</translation>
</message>
<message>
+ <source>unknown</source>
+ <translation type="unfinished">naməlum</translation>
+ </message>
+ <message>
<source>Amount</source>
<translation type="unfinished">Məbləğ</translation>
</message>
@@ -820,10 +816,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Komissiya:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Toz:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Komissiydan sonra:</translation>
</message>
@@ -912,10 +904,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Baytları koyalayın</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Tozu kopyalayın</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Dəyişikliyi kopyalayın</translation>
</message>
@@ -924,18 +912,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">(%1 kilidləndi)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">bəli</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">xeyr</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Əgər alıcı məbləği cari toz həddindən az alarsa bu etiket qırmızı olur.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Hər daxilolmada +/- %1 satoşi dəyişə bilər.</translation>
</message>
@@ -1109,14 +1085,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Boş pulqabı yaradın</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Publik açar skripti (scriptPubKey) idarəetməsi üçün deskreptorlardan itifadə edin</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptor pulqabı</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Aparat cüzdanı kimi xarici imzalama cihazından istifadə edin. Əvvəlcə cüzdan seçimlərində xarici imzalayan skriptini konfiqurasiya edin.</translation>
</message>
@@ -1459,10 +1427,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Gizlə</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Toz:</translation>
- </message>
- <message>
<source>Copy quantity</source>
<translation type="unfinished">Miqdarı kopyalayın</translation>
</message>
@@ -1483,10 +1447,6 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<translation type="unfinished">Baytları koyalayın</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Tozu kopyalayın</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Dəyişikliyi kopyalayın</translation>
</message>
@@ -1516,6 +1476,10 @@ Daxil olma, yalnız 'qanuni' tipli ünvanlar ilə mümkündür.</translation>
<source>Date</source>
<translation type="unfinished">Tarix</translation>
</message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">naməlum</translation>
+ </message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
diff --git a/src/qt/locale/bitcoin_be.ts b/src/qt/locale/bitcoin_be.ts
index 4e944ac0e3..f53ba3f5b2 100644
--- a/src/qt/locale/bitcoin_be.ts
+++ b/src/qt/locale/bitcoin_be.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Выбраць</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">адрасы Адпраўкі</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">адрасы Прымання</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Тут знаходзяцца Біткойн-адрасы для высылання плацяжоў. Заўсёды спраўджвайце колькасць і адрас прызначэння перад здзяйсненнем транзакцыі.</translation>
</message>
@@ -465,10 +457,6 @@
<translation type="unfinished">Камісія:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Пыл:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Пасля камісіі:</translation>
</message>
@@ -529,18 +517,6 @@
<translation type="unfinished">Капіяваць байты</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Капіяваць пыл</translation>
- </message>
- <message>
- <source>yes</source>
- <translation type="unfinished">так</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">не</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">непазначаны</translation>
</message>
@@ -798,10 +774,6 @@
<translation type="unfinished">Даслаць адразу некалькім атрымальнікам</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Пыл:</translation>
- </message>
- <message>
<source>Balance:</source>
<translation type="unfinished">Баланс:</translation>
</message>
@@ -830,10 +802,6 @@
<translation type="unfinished">Капіяваць байты</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Капіяваць пыл</translation>
- </message>
- <message>
<source>Confirm send coins</source>
<translation type="unfinished">Пацвердзіць дасыланне манет</translation>
</message>
@@ -975,10 +943,6 @@
<translation type="unfinished">Даслана да</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Плацёж самому сабе</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Здабыта</translation>
</message>
@@ -1038,10 +1002,6 @@
<translation type="unfinished">Даслана да</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Да сябе</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Здабыта</translation>
</message>
diff --git a/src/qt/locale/bitcoin_bg.ts b/src/qt/locale/bitcoin_bg.ts
index f9429daa6f..be3c7a884f 100644
--- a/src/qt/locale/bitcoin_bg.ts
+++ b/src/qt/locale/bitcoin_bg.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Избери</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Адреси за изпращане</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Адреси за получаване</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Тези са вашите Биткойн адреси за изпращане на плащания. Винаги проверявайте количеството и получаващите адреси преди изпращане на монети. </translation>
</message>
@@ -897,10 +889,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Такса:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">прах:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">След такса:</translation>
</message>
@@ -989,10 +977,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Копиране на байтовете</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копирай прахта:</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Промяна на копирането</translation>
</message>
@@ -1001,18 +985,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 заключен)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">да</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">не</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Този етикет става червен ако някой получател получи количество, по-малко от текущия праг на прах</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Може да варира с +/- %1 байт(а).</translation>
</message>
@@ -1190,14 +1162,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Създайте празен портфейл</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Използвайте декодери за управление на scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Декодер за портфейл</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Използвайте външно устройство за подписване, като хардуерен портфейл. Конфигурирайте първо външния скрипт на подписа в предпочитания портфейл.</translation>
</message>
@@ -1210,10 +1174,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Създай</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Компилиран без поддръжка на sqlite (изисква се за декодер на портфейли)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Компилиран без поддръжка на външни подписи (изисква се за външно подписване)</translation>
@@ -1852,6 +1812,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Затвори</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">собствен адрес</translation>
+ </message>
+ <message>
<source>Total Amount</source>
<translation type="unfinished">Тотално количество</translation>
</message>
@@ -2342,10 +2306,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Изчисти всички полета от формуляра.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">прах:</translation>
- </message>
- <message>
<source>Clear &amp;All</source>
<translation type="unfinished">&amp;Изчисти</translation>
</message>
@@ -2382,10 +2342,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Копиране на байтовете</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копирай прахта:</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Промяна на копирането</translation>
</message>
@@ -2761,10 +2717,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Изпратени на</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Плащане към себе си</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Емитирани</translation>
</message>
@@ -2828,10 +2780,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Изпратени на</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Собствени</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Емитирани</translation>
</message>
diff --git a/src/qt/locale/bitcoin_bn.ts b/src/qt/locale/bitcoin_bn.ts
index 8255fb1eb4..e8e98a510f 100644
--- a/src/qt/locale/bitcoin_bn.ts
+++ b/src/qt/locale/bitcoin_bn.ts
@@ -50,14 +50,6 @@
<translation type="unfinished">কয়েন গ্রহণ করার ঠিকানা বাছাই করুন।</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">ঠিকানাগুলো পাঠানো হচ্ছে।</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">ঠিকানাগুলো গ্রহণ করা হচ্ছে।</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">পেমেন্ট পাওয়ার জন্য এটি আপনার বিটকয়েন ঠিকানা। নতুন ঠিকানা তৈরী করতে "নতুন গ্রহণের ঠিকানা তৈরী করুন" বোতাম ব্যবহার করুন। সাইন ইন করা শুধুমাত্র "উত্তরাধিকার" ঠিকানার মাধ্যমেই সম্ভব।</translation>
@@ -80,6 +72,21 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>AskPassphraseDialog</name>
+ <message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">ওয়ালেট ডিক্রিপশনের জন্য প্রবেশ করা পাসফ্রেজটি ভুল। এটিতে একটি শূন্য অক্ষর রয়েছে (যেমন - একটি শূন্য বাইট)। যদি পাসফ্রেজটি 25.0 এর আগে এই সফ্টওয়্যারটির একটি সংস্করণের সাথে সেট করা থাকে, অনুগ্রহ করে শুধুমাত্র প্রথম শূন্য অক্ষর পর্যন্ত — কিন্তু অন্তর্ভুক্ত নয় — পর্যন্ত অক্ষর দিয়ে আবার চেষ্টা করুন। এটি সফল হলে, ভবিষ্যতে এই সমস্যাটি এড়াতে অনুগ্রহ করে একটি নতুন পাসফ্রেজ সেট করুন৷</translation>
+ </message>
+ <message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">পাসফ্রেজ পরিবর্তন ব্যর্থ হয়েছে৷</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">ওয়ালেট ডিক্রিপশনের জন্য পুরানো পাসফ্রেজটি ভুল। এটিতে একটি শূন্য অক্ষর রয়েছে (যেমন - একটি শূন্য বাইট)। যদি পাসফ্রেজটি 25.0 এর আগে এই সফ্টওয়্যারটির একটি সংস্করণের সাথে সেট করা থাকে, অনুগ্রহ করে শুধুমাত্র প্রথম শূন্য অক্ষর পর্যন্ত — কিন্তু অন্তর্ভুক্ত নয় — পর্যন্ত অক্ষর দিয়ে আবার চেষ্টা করুন।</translation>
+ </message>
+ </context>
+<context>
<name>BitcoinApplication</name>
<message>
<source>Settings file %1 might be corrupt or invalid.</source>
@@ -190,6 +197,30 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">&amp;ওয়ালেট এনক্রিপ্ট করুন...</translation>
</message>
<message>
+ <source>&amp;Backup Wallet…</source>
+ <translation type="unfinished">ব্যাকআপ ওয়ালেট…</translation>
+ </message>
+ <message>
+ <source>&amp;Change Passphrase…</source>
+ <translation type="unfinished">&amp;পাসফ্রেজ পরিবর্তন করুন...</translation>
+ </message>
+ <message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">সাইন এবং বার্তা...</translation>
+ </message>
+ <message>
+ <source>&amp;Verify message…</source>
+ <translation type="unfinished">বার্তা যাচাই করুন...</translation>
+ </message>
+ <message>
+ <source>&amp;Load PSBT from file…</source>
+ <translation type="unfinished">ফাইল থেকে PSBT লোড করুন...</translation>
+ </message>
+ <message>
+ <source>Open &amp;URI…</source>
+ <translation type="unfinished">URI খুলুন...</translation>
+ </message>
+ <message>
<source>Close Wallet…</source>
<translation type="unfinished">ওয়ালেট বন্ধ করুন...</translation>
</message>
@@ -229,6 +260,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</translation>
</message>
<message>
+ <source>Catching up…</source>
+ <translation type="unfinished">ধরা…</translation>
+ </message>
+ <message>
<source>Load Partially Signed Bitcoin Transaction</source>
<translation type="unfinished">আংশিক স্বাক্ষরিত বিটকয়েন লেনদেন লোড করুন</translation>
</message>
@@ -359,19 +394,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Advanced Options</source>
<translation type="unfinished">উন্নত বিকল্প </translation>
</message>
- <message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">ScriptPub-এর জন্য বর্ণনাকারীর ব্যবস্থা করুন
- </translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">বর্ণনাকারী ওয়ালেট </translation>
- </message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">sqlite সমর্থন ছাড়াই সংকলিত (বরণাকারী ওয়ালেটের জন্য প্রয়োজনীয়)</translation>
- </message>
</context>
<context>
<name>Intro</name>
diff --git a/src/qt/locale/bitcoin_bs.ts b/src/qt/locale/bitcoin_bs.ts
index 537a88eb86..a00c5c567b 100644
--- a/src/qt/locale/bitcoin_bs.ts
+++ b/src/qt/locale/bitcoin_bs.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Izaberite</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adrese pošiljalaca</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adrese primalaca</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ovo su vaše Bitcoin adrese za slanje novca. Uvijek provjerite iznos i adresu primaoca prije slanja novca.</translation>
</message>
@@ -752,10 +744,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Naknada:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prašina:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Poslije Naknade:</translation>
</message>
@@ -820,10 +808,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopiraj bajte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiraj prašinu</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiraj promjenu</translation>
</message>
@@ -832,18 +816,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 zaključano)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">da</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ne</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ova naljepnica postaje crvena ako bilo koji primatelj primi količinu manju od trenutnog praga prašine.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Može varirati +/- %1 satoshi (a) po upisu vrijednosti.</translation>
</message>
@@ -942,21 +914,9 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Napravi Prazan Novčanik</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Koristite deskriptore za upravljanje scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptor Novčanik</translation>
- </message>
- <message>
<source>Create</source>
<translation type="unfinished">Napravi</translation>
</message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Sastavljeno bez podrške za sqlite (potrebno za deskriptorske novčanike)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1421,10 +1381,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Sakrij</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prašina:</translation>
- </message>
- <message>
<source>Copy quantity</source>
<translation type="unfinished">Kopiraj količinu</translation>
</message>
@@ -1445,10 +1401,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopiraj bajte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiraj prašinu</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiraj promjenu</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ca.ts b/src/qt/locale/bitcoin_ca.ts
index 1a03c7c2c6..4526bd5a3b 100644
--- a/src/qt/locale/bitcoin_ca.ts
+++ b/src/qt/locale/bitcoin_ca.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Tria</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adreces d'enviament</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adreces de recepció</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Aquestes són les vostres adreces de Bitcoin per a enviar els pagaments. Sempre reviseu l'import i l'adreça del destinatari abans de transferir monedes.</translation>
</message>
@@ -228,6 +220,10 @@ Només és possible firmar amb adreces del tipus "legacy".</translation>
<translation type="unfinished">La contrasenya del moneder ha estat canviada correctament.</translation>
</message>
<message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Ha fallat el canvi de frase de pas</translation>
+ </message>
+ <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">Avís: Les lletres majúscules estan activades!</translation>
</message>
@@ -703,6 +699,10 @@ Només és possible firmar amb adreces del tipus "legacy".</translation>
<source>&amp;Hide</source>
<translation type="unfinished">&amp;Amaga</translation>
</message>
+ <message>
+ <source>S&amp;how</source>
+ <translation type="unfinished">&amp;Mostra</translation>
+ </message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
@@ -834,10 +834,6 @@ Només és possible firmar amb adreces del tipus "legacy".</translation>
<translation type="unfinished">Tarifa:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polsim:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Tarifa posterior:</translation>
</message>
@@ -922,10 +918,6 @@ Només és possible firmar amb adreces del tipus "legacy".</translation>
<translation type="unfinished">Copia els bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copia el polsim</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copia el canvi</translation>
</message>
@@ -934,14 +926,6 @@ Només és possible firmar amb adreces del tipus "legacy".</translation>
<translation type="unfinished">(%1 bloquejada)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">sí</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Aquesta etiqueta es torna vermella si cap recipient rep un import inferior al llindar de polsim actual.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Pot variar en +/- %1 satoshi(s) per entrada.</translation>
</message>
@@ -1075,14 +1059,6 @@ Això és ideal per a carteres de mode només lectura.</translation>
<translation type="unfinished">Fes cartera en blanc</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Utilitzeu descriptors per a la gestió de scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Cartera del descriptor</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Utilitzeu un dispositiu de signatura extern, com ara una cartera de maquinari. Configureu primer l’escriptura de signatura externa a les preferències de cartera.</translation>
</message>
@@ -1095,10 +1071,6 @@ Això és ideal per a carteres de mode només lectura.</translation>
<translation type="unfinished">Crear</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilat sense el suport sqlite (requerit per a carteres descriptor)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilat sense suport de signatura externa (necessari per a la signatura externa)</translation>
@@ -1206,6 +1178,10 @@ Això és ideal per a carteres de mode només lectura.</translation>
</translation>
</message>
<message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">Trieu un directori de dades</translation>
+ </message>
+ <message>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">Almenys %1 GB de dades s'emmagatzemaran en aquest directori, i creixerà amb el temps.</translation>
</message>
@@ -1779,6 +1755,10 @@ Això és ideal per a carteres de mode només lectura.</translation>
<translation type="unfinished">*Envia %1 a %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">adreça pròpia</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Incapaç de calcular la tarifa de transacció o la quantitat total de la transacció</translation>
</message>
@@ -2046,6 +2026,10 @@ Si rebeu aquest error, haureu de sol·licitar al comerciant que proporcioni un U
<translation type="unfinished">Blocs sincronitzats</translation>
</message>
<message>
+ <source>Last Transaction</source>
+ <translation type="unfinished">Darrera transacció</translation>
+ </message>
+ <message>
<source>The mapped Autonomous System used for diversifying peer selection.</source>
<translation type="unfinished">El sistema autònom de mapat utilitzat per a diversificar la selecció entre iguals.</translation>
</message>
@@ -2589,10 +2573,6 @@ No utilitzeu aquesta consola sense entendre completament les ramificacions d'una
<translation type="unfinished">Entrades...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polsim:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Tria...</translation>
</message>
@@ -2668,10 +2648,6 @@ Nota: atès que la tarifa es calcula per byte, una tarifa de "100 satoshis per k
<translation type="unfinished">Copia els bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copia el polsim</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copia el canvi</translation>
</message>
@@ -2780,6 +2756,12 @@ Nota: atès que la tarifa es calcula per byte, una tarifa de "100 satoshis per k
<translation type="unfinished">Import total</translation>
</message>
<message>
+ <source>Unsigned Transaction</source>
+ <comment>PSBT copied</comment>
+ <extracomment>Caption of "PSBT has been copied" messagebox</extracomment>
+ <translation type="unfinished">Transacció no signada</translation>
+ </message>
+ <message>
<source>Confirm send coins</source>
<translation type="unfinished">Confirma l'enviament de monedes</translation>
</message>
@@ -3295,10 +3277,6 @@ Nota: atès que la tarifa es calcula per byte, una tarifa de "100 satoshis per k
<translation type="unfinished">Enviada a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pagament a un mateix</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minada</translation>
</message>
@@ -3370,10 +3348,6 @@ Nota: atès que la tarifa es calcula per byte, una tarifa de "100 satoshis per k
<translation type="unfinished">Enviada a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A un mateix</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minada</translation>
</message>
@@ -3574,6 +3548,11 @@ Ves a Arxiu &gt; Obrir Cartera per a carregar cartera.
<translation type="unfinished">PSBT copiada</translation>
</message>
<message>
+ <source>Copied to clipboard</source>
+ <comment>Fee-bump PSBT saved</comment>
+ <translation type="unfinished">Copiat al portaretalls</translation>
+ </message>
+ <message>
<source>Can't sign transaction.</source>
<translation type="unfinished">No es pot signar la transacció.</translation>
</message>
@@ -3657,10 +3636,6 @@ Ves a Arxiu &gt; Obrir Cartera per a carregar cartera.
<translation type="unfinished">Distribuït sota la llicència del programari MIT, consulteu el fitxer d'acompanyament %s o %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">S'ha produït un error en llegir %s. Totes les claus es llegeixen correctament, però les dades de la transacció o les entrades de la llibreta d'adreces podrien faltar o ser incorrectes.</translation>
- </message>
- <message>
<source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
<translation type="unfinished">Error: el registre del format del fitxer de bolcat és incorrecte. S'ha obtingut «%s», s'esperava «format».</translation>
</message>
@@ -3869,6 +3844,10 @@ Ves a Arxiu &gt; Obrir Cartera per a carregar cartera.
<translation type="unfinished">Error en obrir la base de dades de blocs</translation>
</message>
<message>
+ <source>Error reading configuration file: %s</source>
+ <translation type="unfinished">S'ha produït un error en llegir el fitxer de configuració: %s</translation>
+ </message>
+ <message>
<source>Error reading from database, shutting down.</source>
<translation type="unfinished">Error en llegir la base de dades, tancant.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_cmn.ts b/src/qt/locale/bitcoin_cmn.ts
index 9ee3a7d418..af5cc7059c 100644
--- a/src/qt/locale/bitcoin_cmn.ts
+++ b/src/qt/locale/bitcoin_cmn.ts
@@ -54,14 +54,6 @@
<translation type="unfinished">选择(&amp;H)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">发送地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">收款地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">这些是你的比特币支付地址。在发送之前,一定要核对金额和接收地址。</translation>
</message>
@@ -97,6 +89,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">儲存地址列表到 %1 時發生錯誤。請再試一次。</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">导出失败</translation>
</message>
@@ -665,8 +665,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">关闭所有钱包</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">迁移一个钱包</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
+ <translation type="unfinished">显示 %1 帮助信息,获取可用命令行选项列表</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -760,6 +768,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">預先同步標頭(%1%)</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">创建钱包时出错</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">无法创建新钱包,软件编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">錯誤: %1</translation>
</message>
@@ -830,10 +846,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">手动选币</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">計費後金額:</translation>
</message>
@@ -894,10 +906,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -906,14 +914,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1已锁定)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">當任何一個收款金額小於目前的灰塵金額上限時,文字會變紅色。</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">每个输入可能有 +/- %1 聪 (satoshi) 的误差。</translation>
</message>
@@ -956,6 +956,57 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要迁移钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">迁移钱包将会把这个钱包转换成一个或多个输出描述符钱包。将会需要创建一个新的钱包备份。
+如果这个钱包包含仅观察脚本,将会创建包含那些仅观察脚本的新钱包。
+如果这个钱包包含可解但又未被监视的脚本,将会创建一个不同的钱包以包含那些脚本。
+
+迁移过程开始前将会创建一个钱包备份。备份文件将会被命名为 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然后被保存在该钱包所在目录下。如果迁移过程出错,可以使用“恢复钱包”功能恢复备份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">迁移钱包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功迁移钱包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">仅观察脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 可解但又未被监视的脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">迁移失败</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">迁移成功</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -966,9 +1017,13 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">打開錢包警告</translation>
</message>
<message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+ <message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">開啟錢包</translation>
+ <translation type="unfinished">打开钱包</translation>
</message>
</context>
<context>
@@ -1009,6 +1064,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
<translation type="unfinished">启用修剪时,如果一个钱包被卸载太久,就必须重新同步整条区块链才能再次加载它。</translation>
</message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">关闭所有钱包</translation>
+ </message>
</context>
<context>
<name>CreateWalletDialog</name>
@@ -1017,8 +1076,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">新增錢包</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距离创建您的新钱包只有一步之遥了!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">请指定一个名字,如果需要的话还可以启用高级选项</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">錢包名稱</translation>
+ <translation type="unfinished">钱包名称</translation>
</message>
<message>
<source>Wallet</source>
@@ -1048,14 +1115,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Make Blank Wallet</source>
<translation type="unfinished">製作空白錢包</translation>
</message>
- <message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">使用输出描述符进行scriptPubKey管理</translation>
- </message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1143,10 +1202,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">此目录中至少会保存 %1 GB 的数据,并且大小还会随着时间增长。</translation>
</message>
- <message>
- <source>Approximately %1 GB of data will be stored in this directory.</source>
- <translation type="unfinished">会在此目录中存储约 %1 GB 的数据。</translation>
- </message>
<message numerus="yes">
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
@@ -1175,10 +1230,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">欢迎</translation>
</message>
<message>
- <source>Welcome to %1.</source>
- <translation type="unfinished">欢迎使用 %1</translation>
- </message>
- <message>
<source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
<translation type="unfinished">由于这是第一次启动此程序,您可以选择%1存储数据的位置</translation>
</message>
@@ -1202,10 +1253,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>HelpMessageDialog</name>
<message>
- <source>version</source>
- <translation type="unfinished">版本</translation>
- </message>
- <message>
<source>About %1</source>
<translation type="unfinished">关于 %1</translation>
</message>
@@ -1220,11 +1267,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%1 is shutting down…</source>
<translation type="unfinished">%1正在关闭...</translation>
</message>
- <message>
- <source>Do not shut down the computer until this window disappears.</source>
- <translation type="unfinished">在此窗口消失前不要关闭计算机。</translation>
- </message>
-</context>
+ </context>
<context>
<name>ModalOverlay</name>
<message>
@@ -1232,18 +1275,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">窗体</translation>
</message>
<message>
- <source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
- <translation type="unfinished">近期交易可能尚未显示,因此当前余额可能不准确。以上信息将在与比特币网络完全同步后更正。详情如下</translation>
- </message>
- <message>
- <source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
- <translation type="unfinished">尝试使用受未可见交易影响的余额将不被网络接受。</translation>
- </message>
- <message>
- <source>Number of blocks left</source>
- <translation type="unfinished">剩余区块数量</translation>
- </message>
- <message>
<source>Unknown…</source>
<translation type="unfinished">未知...</translation>
</message>
@@ -1252,10 +1283,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">计算中...</translation>
</message>
<message>
- <source>Last block time</source>
- <translation type="unfinished">上一区块时间</translation>
- </message>
- <message>
<source>Progress</source>
<translation type="unfinished">进度</translation>
</message>
@@ -1264,10 +1291,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">每小时进度增加</translation>
</message>
<message>
- <source>Estimated time left until synced</source>
- <translation type="unfinished">预计剩余同步时间</translation>
- </message>
- <message>
<source>Hide</source>
<translation type="unfinished">隐藏</translation>
</message>
@@ -1848,6 +1871,22 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">选择节点查看详细信息。</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">传输层版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">传输</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">十六进制格式的BIP324会话ID,如果有的话。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">会话ID</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">是否要将交易转发给这个节点。</translation>
</message>
@@ -2023,6 +2062,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">出站触须: 短暂,用于测试地址</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">检测中: 节点可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文传输协议</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密传输协议</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">我们选择了用于高带宽转发的节点</translation>
</message>
@@ -2307,10 +2361,6 @@ For more information on using this console, type %6.
<translation type="unfinished">增加收款人(&amp;R)</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">选择...</translation>
</message>
@@ -2351,10 +2401,6 @@ For more information on using this console, type %6.
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -2752,10 +2798,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">付給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -2811,10 +2853,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -2976,12 +3014,16 @@ Go to File &gt; Open Wallet to load a wallet.
<source>Could not commit transaction</source>
<translation type="unfinished">沒辦法提交交易</translation>
</message>
- </context>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+</context>
<context>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">&amp;匯出</translation>
+ <translation type="unfinished">导出(E)</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
@@ -3024,6 +3066,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s 開發人員</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
</message>
@@ -3060,6 +3106,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误: 转储文件版本不被支持。这个版本的 bitcoin-wallet 只支持版本为 1 的转储文件。得到的转储文件版本却是%s</translation>
</message>
<message>
+ <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
+ <translation type="unfinished">错误: 旧式钱包只支持 "legacy", "p2sh-segwit", 和 "bech32" 这三种地址类型</translation>
+ </message>
+ <message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
<translation type="unfinished">错误: 无法为该旧式钱包生成描述符。如果钱包已被加密,请确保提供的钱包加密密码正确。</translation>
</message>
@@ -3084,6 +3134,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">修剪:上次同步钱包的位置已经超出(落后于)现有修剪后数据的范围。你需要进行-reindex(对于已经启用修剪节点,就需要重新下载整个区块链)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失败。您需要手动移走或删除无效的快照目录 %s来解决这个问题,不然的话您就会在下一次启动时遇到相同的错误。</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: SQLite钱包schema版本%d未知。只支持%d版本</translation>
</message>
@@ -3092,10 +3146,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">區塊資料庫中有來自未來的區塊。可能是你電腦的日期時間不對。如果確定電腦日期時間沒錯的話,就重建區塊資料庫看看。</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">扣除手續費後的交易金額太少而不能傳送</translation>
</message>
@@ -3128,6 +3178,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">提供了未知的钱包格式 "%s" 。请使用 "bdb" 或 "sqlite" 中的一种。</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支持的类别限定日志等级 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的类别: %3$s 。有效的日志等级: %4$s 。</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">找到了不受支持的 chainstate 数据库格式。请使用 -reindex-chainstate 参数重启。这将会重建 chainstate 数据库。</translation>
</message>
@@ -3136,6 +3190,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">钱包加载成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。可以使用 migratewallet 命令将旧式钱包迁移至输出描述符钱包。</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">警告: 转储文件的钱包格式 "%s" 与命令行指定的格式 "%s" 不符。</translation>
</message>
@@ -3176,30 +3234,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">不能写入到数据目录'%s';请检查文件权限。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上以供诊断问题的原因。</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">在使用地址管理器(addrman)寻找出站连接时,无法同时提供特定的连接。</translation>
</message>
@@ -3208,6 +3246,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">读取 %s 时出错! 所有密钥都被正确读取,但交易数据或地址元数据可能缺失或有误。</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
</message>
@@ -3220,6 +3262,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">计算追加手续费失败,因为未确认UTXO依赖了大量未确认交易的簇集。</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
</message>
@@ -3294,10 +3340,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -3426,6 +3468,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误: 无法写入记录到新钱包</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">无法启动索引,关闭中...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">校验数据库失败</translation>
</message>
@@ -3662,8 +3708,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">在 -onlynet 指定了不明的網路別: '%s'</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上acceptstalefeeestimates 不受支持。</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_cs.ts b/src/qt/locale/bitcoin_cs.ts
index f6a97528bc..dcebd69839 100644
--- a/src/qt/locale/bitcoin_cs.ts
+++ b/src/qt/locale/bitcoin_cs.ts
@@ -54,14 +54,6 @@
<translation type="unfinished">&amp;Zvol</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Odesílací adresy</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Přijímací adresy</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Tohle jsou tvé bitcoinové adresy pro posílání plateb. Před odesláním mincí si vždy zkontroluj částku a cílovou adresu.</translation>
</message>
@@ -902,10 +894,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Poplatek:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prach:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Čistá částka:</translation>
</message>
@@ -994,10 +982,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopíruj bajty</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopíruj prach</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopíruj drobné</translation>
</message>
@@ -1006,18 +990,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 zamčeno)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ano</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ne</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Popisek zčervená, pokud má některý příjemce obdržet částku menší, než je aktuální práh pro prach.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Může se lišit o +/– %1 satoshi na každý vstup.</translation>
</message>
@@ -1195,14 +1167,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Vytvořit prázdnou peněženku</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Použít popisovače pro správu scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Popisovačová peněženka</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Použijte externí podepisovací zařízení, například hardwarovou peněženku. V nastavení peněženky nejprve nakonfigurujte skript externího podepisovacího zařízení.</translation>
</message>
@@ -1215,10 +1179,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Vytvořit</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Zkompilováno bez podpory sqlite (vyžadováno pro popisovačové peněženky)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Zkompilováno bez externí podpory podepisování (nutné pro externí podepisování)</translation>
@@ -2031,6 +1991,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished"> * Odešle %1 na %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">vlastní adresa</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Nelze vypočítat transakční poplatek nebo celkovou výši transakce.</translation>
</message>
@@ -2928,10 +2892,6 @@ Pokud vidíte tuto chybu, měli byste požádat, aby obchodník poskytl adresu k
<translation type="unfinished">Vstupy...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prach:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Zvol...</translation>
</message>
@@ -3008,10 +2968,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Kopíruj bajty</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopíruj prach</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopíruj drobné</translation>
</message>
@@ -3659,10 +3615,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Posláno na</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Platba sama sobě</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Vytěženo</translation>
</message>
@@ -3734,10 +3686,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Posláno na</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Sám sobě</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Vytěženo</translation>
</message>
@@ -4043,10 +3991,6 @@ Přejděte do Soubor &gt; Otevřít peněženku pro načtení peněženky.
<translation type="unfinished">Chyba při načítání peněženky. Peněženka vyžaduje stažení bloků a software v současné době nepodporuje načítání peněženek, zatímco bloky jsou stahovány mimo pořadí při použití snímků assumeutxo. Peněženka by měla být schopná se úspěšně načíst poté, co synchronizace uzlů dosáhne výšky %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Nastala chyba při čtení souboru %s! Všechny klíče se přečetly správně, ale data o transakcích nebo záznamy v adresáři mohou chybět či být nesprávné.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Chyba při čtení %s! Data o transakci mohou chybět a nebo být chybná.
Ověřuji peněženku.</translation>
@@ -4124,10 +4068,6 @@ Ověřuji peněženku.</translation>
<translation type="unfinished">Databáze bloků obsahuje blok, který vypadá jako z budoucnosti, což může být kvůli špatně nastavenému datu a času na tvém počítači. Nech databázi bloků přestavět pouze v případě, že si jsi jistý, že máš na počítači správný datum a čas</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Databáze indexu bloků obsahuje starší 'txindex'. Pro vyčištění obsazeného místa na disku, spusťte úplný -reindex, v opačném případě tuto chybu ignorujte. Tato chybová zpráva nebude znovu zobrazena.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Částka v transakci po odečtení poplatku je příliš malá na odeslání</translation>
</message>
@@ -4220,30 +4160,10 @@ Ověřuji peněženku.</translation>
<translation type="unfinished">Není možné zapisovat do adresáře ' %s'; zkontrolujte oprávnění.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Aktualizaci -txindex zahájenou předchozí verzí není možné dokončit. Restartujte s předchozí verzí a nebo spusťte úplný -reindex.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%sse nepodařilo ověřit -assumeutxo stav snímku. Tohle značí hardwarový problém, chybu v softwaru nebo špatnou úpravu softwaru, která dovolila nahrání neplatného snímku. Výsledkem je vypnutí uzlu a přestaňte používat jakékoliv verze, které byli postaveny na tomto snímku, resetování délky řetězce od %d do %d. Při příštím restartu bude uzel pokračovat v synchronizování od %d bez jakýkoliv dat snímku. Prosím, nahlašte tento incident %s, včetně toho, jak jste získali tento snímek. Neplatný snímek stavu řetězce byl ponechán na disku v případě, že by to bylo nápomocné při odhalení potíže, která způsobila tuto chybu. </translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s je nastaveno příliš vysoko! Poplatek takhle vysoký může pokrýt celou transakci.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Parametr -reindex-chainstate není kompatibilní s parametrem -blockfilterindex. Při použití -reindex-chainstate dočasně zakažte parametr -blockfilterindex nebo nahraďte parametr -reindex-chainstate parametrem -reindex pro úplné opětovné sestavení všech indexů.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Parametr -reindex-chainstate není kompatibilní s parametrem -coinstatsindex. Při použití -reindex-chainstate dočasně zakažte parametr -coinstatsindex nebo nahraďte parametr -reindex-chainstate parametrem -reindex pro úplné opětovné sestavení všech indexů.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Parametr -reindex-chainstate není kompatibilní s parametrem -txindex. Při použití -reindex-chainstate dočasně zakažte parametr -txindex nebo nahraďte parametr -reindex-chainstate parametrem -reindex pro úplné opětovné sestavení všech indexů.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Nelze poskytovat konkrétní spojení a zároveň mít vyhledávání addrman odchozích spojení ve stejný čas.</translation>
</message>
@@ -4338,10 +4258,6 @@ Zkuste prosím spustit nejnovější verzi softwaru.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Nepodporovaná úroveň pro logování úrovně -loglevel=%s. Očekávaný parametr -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Platné kategorie: %s. Platné úrovně logování: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4850,10 +4766,6 @@ Nelze obnovit zálohu peněženky.</translation>
<translation type="unfinished">Neznámá nová pravidla aktivována (verzový bit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Nepodporovaný globální logovací úroveň -loglevel=%s. Možné hodnoty: %s.</translation>
- </message>
- <message>
<source>Unsupported logging category %s=%s.</source>
<translation type="unfinished">Nepodporovaná logovací kategorie %s=%s.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_cy.ts b/src/qt/locale/bitcoin_cy.ts
index ccff0580fd..273e36eb03 100644
--- a/src/qt/locale/bitcoin_cy.ts
+++ b/src/qt/locale/bitcoin_cy.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">D&amp;ewis</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Anfon cyfeiriadau</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Derbyn cyfeiriadau</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Rhain ydi eich cyfeiriadau Bitcoin ar gyfer gyrru taliadau. Gwnewch yn sicr o'r swm a'r cyfeiriad derbyn cyn gyrru arian.</translation>
</message>
@@ -549,10 +541,6 @@
<translation type="unfinished">Ffî:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Llwch</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Ar Ôl Ffî</translation>
</message>
@@ -867,10 +855,6 @@
<translation type="unfinished">Anfon at pobl lluosog ar yr un pryd</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Llwch</translation>
- </message>
- <message>
<source>Balance:</source>
<translation type="unfinished">Gweddill:</translation>
</message>
diff --git a/src/qt/locale/bitcoin_da.ts b/src/qt/locale/bitcoin_da.ts
index 651ac0e2ae..ff71527841 100644
--- a/src/qt/locale/bitcoin_da.ts
+++ b/src/qt/locale/bitcoin_da.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Vælg</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Afsendelsesadresser</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Modtagelsesadresser</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Disse er dine Bitcoin-adresser til afsendelse af betalinger. Tjek altid beløb og modtagelsesadresse, inden du sender bitcoins.</translation>
</message>
@@ -854,10 +846,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Gebyr:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Støv:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Efter gebyr:</translation>
</message>
@@ -946,10 +934,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopiér byte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiér støv</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiér byttepenge</translation>
</message>
@@ -958,18 +942,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 fastlåst)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ja</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nej</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Denne mærkat bliver rød, hvis en eller flere modtagere modtager et beløb, der er mindre end den aktuelle støvgrænse.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Kan variere med ±%1 satoshi per input.</translation>
</message>
@@ -1115,14 +1087,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Lav flad tegnebog</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Brug beskrivere til håndtering af scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Beskriver-Pung</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Brug en ekstern signeringsenhed som en hardwaretegnebog. Konfigurer den eksterne underskriver skript i tegnebogspræferencerne først.</translation>
</message>
@@ -1135,10 +1099,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Opret</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Kompileret uden sqlite-understøttelse (krævet til beskriver-punge)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Kompileret uden ekstern underskriver understøttelse (nødvendig for ekstern underskriver)</translation>
@@ -1895,6 +1855,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">* Sender %1 til %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">egen adresse</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Kunne ikke beregne transaktionsgebyr eller totalt transaktionsbeløb.</translation>
</message>
@@ -2744,10 +2708,6 @@ For mere information om brug af denne konsol, skriv %6.
<translation type="unfinished">Inputs...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Støv:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Vælg...</translation>
</message>
@@ -2824,10 +2784,6 @@ Bemærk: Da gebyret beregnes på per-byte-basis, ville en gebyrsats på "100 sat
<translation type="unfinished">Kopiér byte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiér støv</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiér byttepenge</translation>
</message>
@@ -3445,10 +3401,6 @@ Bemærk: Da gebyret beregnes på per-byte-basis, ville en gebyrsats på "100 sat
<translation type="unfinished">Sendt til</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Betaling til dig selv</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minet</translation>
</message>
@@ -3520,10 +3472,6 @@ Bemærk: Da gebyret beregnes på per-byte-basis, ville en gebyrsats på "100 sat
<translation type="unfinished">Sendt til</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Til dig selv</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minet</translation>
</message>
@@ -3812,10 +3760,6 @@ Gå til Fil &gt; Åbn Pung for, at indlæse en pung.
<translation type="unfinished">Distribueret under MIT-softwarelicensen; se den vedlagte fil %s eller %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Fejl under læsning af %s! Alle nøgler blev læst korrekt, men transaktionsdata eller indgange i adressebogen kan mangle eller være ukorrekte.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Fejl ved læsning %s! Transaktionsdata kan mangle eller være forkerte. Genscanner tegnebogen.</translation>
</message>
@@ -3884,10 +3828,6 @@ Gå til Fil &gt; Åbn Pung for, at indlæse en pung.
<translation type="unfinished">Blokdatabasen indeholder en blok, som ser ud til at være fra fremtiden. Dette kan skyldes, at din computers dato og tid ikke er sat korrekt. Genopbyg kun blokdatabasen, hvis du er sikker på, at din computers dato og tid er korrekt</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Blokindekset db indeholder et ældre 'txindex'. For at rydde den optagede diskplads skal du køre en fuld -reindex, ellers ignorere denne fejl. Denne fejlmeddelelse vil ikke blive vist igen.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Transaktionsbeløbet er for lille til at sende, når gebyret er trukket fra</translation>
</message>
@@ -3972,10 +3912,6 @@ Gå til Fil &gt; Åbn Pung for, at indlæse en pung.
<translation type="unfinished">Kan ikke skrive til datamappe '%s'; tjek tilladelser.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Opgraderingen af -txindex som er startet af en tidligere version kan ikke fuldføres. Genstart med den tidligere version eller kør en fuld -reindex.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Kan ikke levere specifikke forbindelser og få adrman til at finde udgående forbindelser på samme tid.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_de.ts b/src/qt/locale/bitcoin_de.ts
index 25560ecdf3..c231200bb0 100644
--- a/src/qt/locale/bitcoin_de.ts
+++ b/src/qt/locale/bitcoin_de.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Auswählen</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Sendeadressen</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Empfangsadressen</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Dies sind Ihre Bitcoin-Adressen zum Tätigen von Überweisungen. Bitte prüfen Sie den Betrag und die Adresse des Empfängers, bevor Sie Bitcoins überweisen.</translation>
</message>
@@ -102,6 +94,14 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Beim Speichern der Adressliste nach %1 ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Sendeadressen - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Empfangsadressen - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Exportieren fehlgeschlagen</translation>
</message>
@@ -290,117 +290,4660 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
<translation type="unfinished">Ein schwerwiegender Fehler ist aufgetreten. Überprüfen Sie, ob die Einstellungsdatei beschreibbar ist, oder versuchen Sie, mit -nosettings zu starten.</translation>
</message>
+ <message>
+ <source>%1 didn't yet exit safely…</source>
+ <translation type="unfinished">%1 noch nicht sicher beendet…</translation>
+ </message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">unbekannt</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Betrag</translation>
+ </message>
+ <message>
+ <source>Enter a Bitcoin address (e.g. %1)</source>
+ <translation type="unfinished">Bitcoin-Adresse eingeben (z.B. %1)</translation>
+ </message>
+ <message>
+ <source>Ctrl+W</source>
+ <translation type="unfinished">Strg+W</translation>
+ </message>
+ <message>
+ <source>Unroutable</source>
+ <translation type="unfinished">Nicht weiterleitbar</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</extracomment>
+ <translation type="unfinished">Eingehend</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An outbound connection to a peer. An outbound connection is a connection initiated by us.</extracomment>
+ <translation type="unfinished">Ausgehend</translation>
+ </message>
+ <message>
+ <source>Full Relay</source>
+ <extracomment>Peer connection type that relays all network information.</extracomment>
+ <translation type="unfinished">Volles Relais</translation>
+ </message>
+ <message>
+ <source>Block Relay</source>
+ <extracomment>Peer connection type that relays network information about blocks and not transactions or addresses.</extracomment>
+ <translation type="unfinished">Blockrelais</translation>
+ </message>
+ <message>
+ <source>Manual</source>
+ <extracomment>Peer connection type established manually through one of several methods.</extracomment>
+ <translation type="unfinished">Manuell</translation>
+ </message>
+ <message>
+ <source>Feeler</source>
+ <extracomment>Short-lived peer connection type that tests the aliveness of known addresses.</extracomment>
+ <translation type="unfinished">Fühler</translation>
+ </message>
+ <message>
+ <source>Address Fetch</source>
+ <extracomment>Short-lived peer connection type that solicits known addresses from a peer.</extracomment>
+ <translation type="unfinished">Adress Abholung</translation>
+ </message>
+ <message>
+ <source>%1 d</source>
+ <translation type="unfinished">%1 T</translation>
+ </message>
+ <message>
+ <source>%1 h</source>
+ <translation type="unfinished">%1 S</translation>
+ </message>
+ <message>
+ <source>%1 m</source>
+ <translation type="unfinished">%1 min</translation>
+ </message>
+ <message>
+ <source>None</source>
+ <translation type="unfinished">Keine</translation>
+ </message>
+ <message>
+ <source>N/A</source>
+ <translation type="unfinished">k.A.</translation>
+ </message>
<message numerus="yes">
<source>%n second(s)</source>
<translation type="unfinished">
- <numerusform>%n second(s)</numerusform>
- <numerusform>%n second(s)</numerusform>
+ <numerusform>%n Sekunde</numerusform>
+ <numerusform>%n Sekunden</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n minute(s)</source>
<translation type="unfinished">
- <numerusform>%n minute(s)</numerusform>
- <numerusform>%n minute(s)</numerusform>
+ <numerusform>%n Minute</numerusform>
+ <numerusform>%n Minuten</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n hour(s)</source>
<translation type="unfinished">
- <numerusform>%n hour(s)</numerusform>
- <numerusform>%n hour(s)</numerusform>
+ <numerusform>%n Stunde</numerusform>
+ <numerusform>%n Stunden</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n day(s)</source>
<translation type="unfinished">
- <numerusform>%n day(s)</numerusform>
- <numerusform>%n day(s)</numerusform>
+ <numerusform>%nTag</numerusform>
+ <numerusform>%n Tage</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n week(s)</source>
<translation type="unfinished">
- <numerusform>%n week(s)</numerusform>
- <numerusform>%n week(s)</numerusform>
+ <numerusform>%n Woche</numerusform>
+ <numerusform>%n Wochen</numerusform>
</translation>
</message>
+ <message>
+ <source>%1 and %2</source>
+ <translation type="unfinished">%1 und %2</translation>
+ </message>
<message numerus="yes">
<source>%n year(s)</source>
<translation type="unfinished">
- <numerusform>%n year(s)</numerusform>
- <numerusform>%n year(s)</numerusform>
+ <numerusform>%nJahr</numerusform>
+ <numerusform>%n Jahre</numerusform>
</translation>
</message>
</context>
<context>
<name>BitcoinGUI</name>
+ <message>
+ <source>&amp;Overview</source>
+ <translation type="unfinished">&amp;Übersicht</translation>
+ </message>
+ <message>
+ <source>Show general overview of wallet</source>
+ <translation type="unfinished">Allgemeine Übersicht des Wallets anzeigen.</translation>
+ </message>
+ <message>
+ <source>&amp;Transactions</source>
+ <translation type="unfinished">&amp;Transaktionen</translation>
+ </message>
+ <message>
+ <source>Browse transaction history</source>
+ <translation type="unfinished">Transaktionsverlauf anschauen</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation type="unfinished">&amp;Beenden</translation>
+ </message>
+ <message>
+ <source>Quit application</source>
+ <translation type="unfinished">Anwendung beenden</translation>
+ </message>
+ <message>
+ <source>&amp;About %1</source>
+ <translation type="unfinished">&amp;Über %1</translation>
+ </message>
+ <message>
+ <source>Show information about %1</source>
+ <translation type="unfinished">Informationen anzeigen über %1</translation>
+ </message>
+ <message>
+ <source>About &amp;Qt</source>
+ <translation type="unfinished">Über &amp;Qt</translation>
+ </message>
+ <message>
+ <source>Show information about Qt</source>
+ <translation type="unfinished">Informationen anzeigen über Qt</translation>
+ </message>
+ <message>
+ <source>Modify configuration options for %1</source>
+ <translation type="unfinished">Konfiguration von %1 bearbeiten</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Neues Wallet erstellen</translation>
+ </message>
+ <message>
+ <source>&amp;Minimize</source>
+ <translation type="unfinished">&amp;Minimieren</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Wallet: </translation>
+ </message>
+ <message>
+ <source>Network activity disabled.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">Netzwerkaktivität deaktiviert.</translation>
+ </message>
+ <message>
+ <source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
+ <translation type="unfinished">Proxy ist &lt;b&gt;aktiviert&lt;/b&gt;: %1</translation>
+ </message>
+ <message>
+ <source>Send coins to a Bitcoin address</source>
+ <translation type="unfinished">Bitcoins an eine Bitcoin-Adresse überweisen</translation>
+ </message>
+ <message>
+ <source>Backup wallet to another location</source>
+ <translation type="unfinished">Eine Wallet-Sicherungskopie erstellen und abspeichern</translation>
+ </message>
+ <message>
+ <source>Change the passphrase used for wallet encryption</source>
+ <translation type="unfinished">Die Passphrase ändern, die für die Wallet-Verschlüsselung benutzt wird</translation>
+ </message>
+ <message>
+ <source>&amp;Send</source>
+ <translation type="unfinished">&amp;Überweisen</translation>
+ </message>
+ <message>
+ <source>&amp;Receive</source>
+ <translation type="unfinished">&amp;Empfangen</translation>
+ </message>
+ <message>
+ <source>&amp;Options…</source>
+ <translation type="unfinished">&amp;Optionen…</translation>
+ </message>
+ <message>
+ <source>&amp;Encrypt Wallet…</source>
+ <translation type="unfinished">Wallet &amp;verschlüsseln…</translation>
+ </message>
+ <message>
+ <source>Encrypt the private keys that belong to your wallet</source>
+ <translation type="unfinished">Die zu Ihrer Wallet gehörenden privaten Schlüssel verschlüsseln</translation>
+ </message>
+ <message>
+ <source>&amp;Backup Wallet…</source>
+ <translation type="unfinished">Wallet &amp;sichern…</translation>
+ </message>
+ <message>
+ <source>&amp;Change Passphrase…</source>
+ <translation type="unfinished">Passphrase &amp;ändern…</translation>
+ </message>
+ <message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">&amp;Nachricht signieren</translation>
+ </message>
+ <message>
+ <source>Sign messages with your Bitcoin addresses to prove you own them</source>
+ <translation type="unfinished">Nachrichten signieren, um den Besitz Ihrer Bitcoin-Adressen zu beweisen</translation>
+ </message>
+ <message>
+ <source>&amp;Verify message…</source>
+ <translation type="unfinished">Nachricht &amp;verifizieren…</translation>
+ </message>
+ <message>
+ <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
+ <translation type="unfinished">Nachrichten verifizieren, um sicherzustellen, dass diese mit den angegebenen Bitcoin-Adressen signiert wurden</translation>
+ </message>
+ <message>
+ <source>&amp;Load PSBT from file…</source>
+ <translation type="unfinished">&amp;Lade PSBT aus Datei…</translation>
+ </message>
+ <message>
+ <source>Open &amp;URI…</source>
+ <translation type="unfinished">Öffne &amp;URI…</translation>
+ </message>
+ <message>
+ <source>Close Wallet…</source>
+ <translation type="unfinished">Wallet schließen</translation>
+ </message>
+ <message>
+ <source>Create Wallet…</source>
+ <translation type="unfinished">Wallet erstellen…</translation>
+ </message>
+ <message>
+ <source>Close All Wallets…</source>
+ <translation type="unfinished">Schließe alle Wallets…</translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Datei</translation>
+ </message>
+ <message>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Einstellungen</translation>
+ </message>
+ <message>
+ <source>&amp;Help</source>
+ <translation type="unfinished">&amp;Hilfe</translation>
+ </message>
+ <message>
+ <source>Tabs toolbar</source>
+ <translation type="unfinished">Registerkartenleiste</translation>
+ </message>
+ <message>
+ <source>Syncing Headers (%1%)…</source>
+ <translation type="unfinished">Synchronisiere Header (%1%)…</translation>
+ </message>
+ <message>
+ <source>Synchronizing with network…</source>
+ <translation type="unfinished">Synchronisiere mit Netzwerk...</translation>
+ </message>
+ <message>
+ <source>Indexing blocks on disk…</source>
+ <translation type="unfinished">Indiziere Blöcke auf Datenträger...</translation>
+ </message>
+ <message>
+ <source>Processing blocks on disk…</source>
+ <translation type="unfinished">Verarbeite Blöcke auf Datenträger...</translation>
+ </message>
+ <message>
+ <source>Connecting to peers…</source>
+ <translation type="unfinished">Verbinde mit Gegenstellen...</translation>
+ </message>
+ <message>
+ <source>Request payments (generates QR codes and bitcoin: URIs)</source>
+ <translation type="unfinished">Zahlungen anfordern (erzeugt QR-Codes und bitcoin: URIs)</translation>
+ </message>
+ <message>
+ <source>Show the list of used sending addresses and labels</source>
+ <translation type="unfinished">Liste verwendeter Zahlungsadressen und Bezeichnungen anzeigen</translation>
+ </message>
+ <message>
+ <source>Show the list of used receiving addresses and labels</source>
+ <translation type="unfinished">Liste verwendeter Empfangsadressen und Bezeichnungen anzeigen</translation>
+ </message>
+ <message>
+ <source>&amp;Command-line options</source>
+ <translation type="unfinished">&amp;Kommandozeilenoptionen</translation>
+ </message>
<message numerus="yes">
<source>Processed %n block(s) of transaction history.</source>
<translation type="unfinished">
- <numerusform>Processed %n block(s) of transaction history.</numerusform>
- <numerusform>Processed %n block(s) of transaction history.</numerusform>
+ <numerusform> %n Block der Transaktionshistorie verarbeitet.</numerusform>
+ <numerusform> %n Blöcke der Transaktionshistorie verarbeitet.</numerusform>
</translation>
</message>
+ <message>
+ <source>%1 behind</source>
+ <translation type="unfinished">%1 im Rückstand</translation>
+ </message>
+ <message>
+ <source>Catching up…</source>
+ <translation type="unfinished">Hole auf…</translation>
+ </message>
+ <message>
+ <source>Last received block was generated %1 ago.</source>
+ <translation type="unfinished">Zuletzt empfangener Block wurde generiert vor %1 .</translation>
+ </message>
+ <message>
+ <source>Transactions after this will not yet be visible.</source>
+ <translation type="unfinished">Transaktionen hiernach werden noch nicht angezeigt.</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Fehler</translation>
+ </message>
+ <message>
+ <source>Warning</source>
+ <translation type="unfinished">Warnung</translation>
+ </message>
+ <message>
+ <source>Information</source>
+ <translation type="unfinished">Informationen</translation>
+ </message>
+ <message>
+ <source>Up to date</source>
+ <translation type="unfinished">Auf aktuellem Stand</translation>
+ </message>
+ <message>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">STRG+B</translation>
+ </message>
+ <message>
+ <source>Load Partially Signed Bitcoin Transaction</source>
+ <translation type="unfinished">Lade teilsignierte Bitcoin-Transaktion</translation>
+ </message>
+ <message>
+ <source>Load PSBT from &amp;clipboard…</source>
+ <translation type="unfinished">Lade PSBT aus Zwischenablage…</translation>
+ </message>
+ <message>
+ <source>Load Partially Signed Bitcoin Transaction from clipboard</source>
+ <translation type="unfinished">Lade teilsignierte Bitcoin-Transaktion aus Zwischenablage</translation>
+ </message>
+ <message>
+ <source>Node window</source>
+ <translation type="unfinished">Node-Fenster</translation>
+ </message>
+ <message>
+ <source>Open node debugging and diagnostic console</source>
+ <translation type="unfinished">Öffne Node-Konsole für Fehlersuche und Diagnose</translation>
+ </message>
+ <message>
+ <source>&amp;Sending addresses</source>
+ <translation type="unfinished">&amp;Versandadressen</translation>
+ </message>
+ <message>
+ <source>&amp;Receiving addresses</source>
+ <translation type="unfinished">&amp;Empfangsadressen</translation>
+ </message>
+ <message>
+ <source>Open a bitcoin: URI</source>
+ <translation type="unfinished">Öffne bitcoin: URI</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <translation type="unfinished">Wallet öffnen</translation>
+ </message>
+ <message>
+ <source>Open a wallet</source>
+ <translation type="unfinished">Eine Wallet öffnen</translation>
+ </message>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Wallet schließen</translation>
+ </message>
+ <message>
+ <source>Restore Wallet…</source>
+ <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
+ <translation type="unfinished">Wallet wiederherstellen...</translation>
+ </message>
+ <message>
+ <source>Restore a wallet from a backup file</source>
+ <extracomment>Status tip for Restore Wallet menu item</extracomment>
+ <translation type="unfinished">Wiederherstellen einer Wallet aus einer Sicherungsdatei</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Schließe alle Wallets</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Eine Wallet Migrieren</translation>
+ </message>
+ <message>
+ <source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
+ <translation type="unfinished">Zeige den "%1"-Hilfetext, um eine Liste mit möglichen Kommandozeilenoptionen zu erhalten</translation>
+ </message>
+ <message>
+ <source>&amp;Mask values</source>
+ <translation type="unfinished">&amp;Blende Werte aus</translation>
+ </message>
+ <message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Blende die Werte im Übersichtsreiter aus</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">Standard-Wallet</translation>
+ </message>
+ <message>
+ <source>No wallets available</source>
+ <translation type="unfinished">Keine Wallets verfügbar</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Wallet-Daten</translation>
+ </message>
+ <message>
+ <source>Load Wallet Backup</source>
+ <extracomment>The title for Restore Wallet File Windows</extracomment>
+ <translation type="unfinished">Wallet-Backup laden</translation>
+ </message>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">Wallet wiederherstellen...</translation>
+ </message>
+ <message>
+ <source>Wallet Name</source>
+ <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
+ <translation type="unfinished">Wallet-Name</translation>
+ </message>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;Programmfenster</translation>
+ </message>
+ <message>
+ <source>Ctrl+M</source>
+ <translation type="unfinished">STRG+M</translation>
+ </message>
+ <message>
+ <source>Zoom</source>
+ <translation type="unfinished">Vergrößern</translation>
+ </message>
+ <message>
+ <source>Main Window</source>
+ <translation type="unfinished">Hauptfenster</translation>
+ </message>
+ <message>
+ <source>%1 client</source>
+ <translation type="unfinished">%1 Client</translation>
+ </message>
+ <message>
+ <source>&amp;Hide</source>
+ <translation type="unfinished">&amp;Ausblenden</translation>
+ </message>
+ <message>
+ <source>S&amp;how</source>
+ <translation type="unfinished">&amp;Anzeigen</translation>
+ </message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
<numerusform>%n active connection(s) to Bitcoin network.</numerusform>
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ <numerusform>%n aktive Verbindung(en) zum Bitcoin-Netzwerk</numerusform>
</translation>
</message>
- </context>
+ <message>
+ <source>Click for more actions.</source>
+ <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
+ <translation type="unfinished">Klicken für sonstige Aktionen.</translation>
+ </message>
+ <message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">Gegenstellen Reiter anzeigen</translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">Netzwerk Aktivität ausschalten</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">Netzwerk Aktivität einschalten</translation>
+ </message>
+ <message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">Synchronisiere Header vorab (%1%)…</translation>
+ </message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Fehler beim Erstellen des Wallets</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Es kann keine neue Wallet erstellt werden, die Software wurde ohne SQLite-Unterstützung kompiliert (erforderlich für Deskriptor-Wallets)</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Fehler: %1</translation>
+ </message>
+ <message>
+ <source>Warning: %1</source>
+ <translation type="unfinished">Warnung: %1</translation>
+ </message>
+ <message>
+ <source>Date: %1
+</source>
+ <translation type="unfinished">Datum: %1
+</translation>
+ </message>
+ <message>
+ <source>Amount: %1
+</source>
+ <translation type="unfinished">Betrag: %1
+</translation>
+ </message>
+ <message>
+ <source>Type: %1
+</source>
+ <translation type="unfinished">Typ: %1
+</translation>
+ </message>
+ <message>
+ <source>Label: %1
+</source>
+ <translation type="unfinished">Bezeichnung: %1
+</translation>
+ </message>
+ <message>
+ <source>Address: %1
+</source>
+ <translation type="unfinished">Adresse: %1
+</translation>
+ </message>
+ <message>
+ <source>Sent transaction</source>
+ <translation type="unfinished">Gesendete Transaktion</translation>
+ </message>
+ <message>
+ <source>Incoming transaction</source>
+ <translation type="unfinished">Eingehende Transaktion</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
+ <translation type="unfinished">HD Schlüssel Generierung ist &lt;b&gt;aktiviert&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">HD Schlüssel Generierung ist &lt;b&gt;deaktiviert&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">Privater Schlüssel &lt;b&gt;deaktiviert&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
+ <translation type="unfinished">Wallet ist &lt;b&gt;verschlüsselt&lt;/b&gt; und aktuell &lt;b&gt;entsperrt&lt;/b&gt;.</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;locked&lt;/b&gt;</source>
+ <translation type="unfinished">Wallet ist &lt;b&gt;verschlüsselt&lt;/b&gt; und aktuell &lt;b&gt;gesperrt&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Original message:</source>
+ <translation type="unfinished">Original-Nachricht:</translation>
+ </message>
+</context>
+<context>
+ <name>UnitDisplayStatusBarControl</name>
+ <message>
+ <source>Unit to show amounts in. Click to select another unit.</source>
+ <translation type="unfinished">Die Einheit in der Beträge angezeigt werden. Klicken, um eine andere Einheit auszuwählen.</translation>
+ </message>
+</context>
+<context>
+ <name>CoinControlDialog</name>
+ <message>
+ <source>Coin Selection</source>
+ <translation type="unfinished">Münzauswahl ("Coin Control")</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Anzahl:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Betrag:</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">Gebühr:</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">Abzüglich Gebühr:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">Wechselgeld:</translation>
+ </message>
+ <message>
+ <source>(un)select all</source>
+ <translation type="unfinished">Alles (de)selektieren</translation>
+ </message>
+ <message>
+ <source>Tree mode</source>
+ <translation type="unfinished">Baumansicht</translation>
+ </message>
+ <message>
+ <source>List mode</source>
+ <translation type="unfinished">Listenansicht</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Betrag</translation>
+ </message>
+ <message>
+ <source>Received with label</source>
+ <translation type="unfinished">Empfangen mit Bezeichnung</translation>
+ </message>
+ <message>
+ <source>Received with address</source>
+ <translation type="unfinished">Empfangen mit Adresse</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Datum</translation>
+ </message>
+ <message>
+ <source>Confirmations</source>
+ <translation type="unfinished">Bestätigungen</translation>
+ </message>
+ <message>
+ <source>Confirmed</source>
+ <translation type="unfinished">Bestätigt</translation>
+ </message>
+ <message>
+ <source>Copy amount</source>
+ <translation type="unfinished">Betrag kopieren</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Adresse kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">&amp;Bezeichnung kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">&amp;Betrag kopieren</translation>
+ </message>
+ <message>
+ <source>Copy transaction &amp;ID and output index</source>
+ <translation type="unfinished">Transaktion &amp;ID und Ausgabeindex kopieren</translation>
+ </message>
+ <message>
+ <source>L&amp;ock unspent</source>
+ <translation type="unfinished">Nicht ausgegebenen Betrag &amp;sperren</translation>
+ </message>
+ <message>
+ <source>&amp;Unlock unspent</source>
+ <translation type="unfinished">Nicht ausgegebenen Betrag &amp;entsperren</translation>
+ </message>
+ <message>
+ <source>Copy quantity</source>
+ <translation type="unfinished">Anzahl kopieren</translation>
+ </message>
+ <message>
+ <source>Copy fee</source>
+ <translation type="unfinished">Gebühr kopieren</translation>
+ </message>
+ <message>
+ <source>Copy after fee</source>
+ <translation type="unfinished">Abzüglich Gebühr kopieren</translation>
+ </message>
+ <message>
+ <source>Copy bytes</source>
+ <translation type="unfinished">Bytes kopieren</translation>
+ </message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">Wechselgeld kopieren</translation>
+ </message>
+ <message>
+ <source>(%1 locked)</source>
+ <translation type="unfinished">(%1 gesperrt)</translation>
+ </message>
+ <message>
+ <source>Can vary +/- %1 satoshi(s) per input.</source>
+ <translation type="unfinished">Kann pro Eingabe um +/- %1 Satoshi(s) abweichen.</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(keine Bezeichnung)</translation>
+ </message>
+ <message>
+ <source>change from %1 (%2)</source>
+ <translation type="unfinished">Wechselgeld von %1 (%2)</translation>
+ </message>
+ <message>
+ <source>(change)</source>
+ <translation type="unfinished">(Wechselgeld)</translation>
+ </message>
+</context>
+<context>
+ <name>CreateWalletActivity</name>
+ <message>
+ <source>Create Wallet</source>
+ <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
+ <translation type="unfinished">Wallet erstellen</translation>
+ </message>
+ <message>
+ <source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the create wallet progress window which indicates to the user which wallet is currently being created.</extracomment>
+ <translation type="unfinished">Erstelle Wallet &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>Create wallet failed</source>
+ <translation type="unfinished">Fehler beim Wallet erstellen aufgetreten</translation>
+ </message>
+ <message>
+ <source>Create wallet warning</source>
+ <translation type="unfinished">Warnung beim Wallet erstellen aufgetreten</translation>
+ </message>
+ <message>
+ <source>Can't list signers</source>
+ <translation type="unfinished">Unterzeichner können nicht aufgelistet werden</translation>
+ </message>
+ <message>
+ <source>Too many external signers found</source>
+ <translation type="unfinished">Zu viele externe Unterzeichner erkannt.</translation>
+ </message>
+</context>
+<context>
+ <name>LoadWalletsActivity</name>
+ <message>
+ <source>Load Wallets</source>
+ <extracomment>Title of progress window which is displayed when wallets are being loaded.</extracomment>
+ <translation type="unfinished">Lade Wallets</translation>
+ </message>
+ <message>
+ <source>Loading wallets…</source>
+ <extracomment>Descriptive text of the load wallets progress window which indicates to the user that wallets are currently being loaded.</extracomment>
+ <translation type="unfinished">Lade Wallets...</translation>
+ </message>
+</context>
+<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Sicher, dass die Wallet migriert werden soll? &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">Durch die Migration der Wallet wird diese Wallet in eine oder mehrere Deskriptor-Wallets umgewandelt. Es muss ein neues Wallet-Backup erstellt werden.
+Wenn diese Wallet Watchonly-Skripte enthält, wird eine neue Wallet erstellt, die diese Watchonly-Skripte enthält.
+Wenn diese Wallet lösbare, aber nicht beobachtete Skripte enthält, wird eine andere und neue Wallet erstellt, die diese Skripte enthält.
+
+Während des Migrationsprozesses wird vor der Migration ein Backup der Wallet erstellt. Diese Backup-Datei heißt &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak und befindet sich im Verzeichnis für diese Wallet. Im Falle einer fehlerhaften Migration kann das Backup mit der Funktion "Wallet wiederherstellen" wiederhergestellt werden.</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Wallet migrieren &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Die Wallet '%1' wurde erfolgreich migriert.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Watchonly-Skripte wurden in eine neue Wallet mit dem Namen '%1' migriert.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Lösbare, aber nicht beobachtete Skripte wurden in eine neue Wallet mit dem Namen '%1' migriert.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migration fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migration erfolgreich</translation>
+ </message>
+</context>
+<context>
+ <name>OpenWalletActivity</name>
+ <message>
+ <source>Open wallet failed</source>
+ <translation type="unfinished">Wallet öffnen fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Open wallet warning</source>
+ <translation type="unfinished">Wallet öffnen Warnung</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">Standard-Wallet</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
+ <translation type="unfinished">Wallet öffnen</translation>
+ </message>
+ <message>
+ <source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
+ <translation type="unfinished">Öffne Wallet &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+</context>
+<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">Wallet wiederherstellen...</translation>
+ </message>
+ <message>
+ <source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
+ <translation type="unfinished">Wiederherstellen der Wallet &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>Restore wallet failed</source>
+ <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
+ <translation type="unfinished">Wallet Wiederherstellung fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">Wallet Wiederherstellungs Warnung</translation>
+ </message>
+ <message>
+ <source>Restore wallet message</source>
+ <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
+ <translation type="unfinished">Wallet Wiederherstellungs Nachricht</translation>
+ </message>
+</context>
+<context>
+ <name>WalletController</name>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Wallet schließen</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Sind Sie sich sicher, dass Sie die Wallet &lt;i&gt;%1&lt;/i&gt; schließen möchten?</translation>
+ </message>
+ <message>
+ <source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
+ <translation type="unfinished">Wenn Sie die Wallet zu lange schließen, kann es dazu kommen, dass Sie die gesamte Chain neu synchronisieren müssen, wenn Pruning aktiviert ist.</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Schließe alle Wallets</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to close all wallets?</source>
+ <translation type="unfinished">Sicher, dass Sie alle Wallets schließen möchten?</translation>
+ </message>
+</context>
+<context>
+ <name>CreateWalletDialog</name>
+ <message>
+ <source>Create Wallet</source>
+ <translation type="unfinished">Wallet erstellen</translation>
+ </message>
+ <message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Nur noch einen Schritt entfernt, das neue Wallet zu erstellen!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Bitte einen Namen angeben und, falls gewünscht, alle erweiterten Optionen aktivieren</translation>
+ </message>
+ <message>
+ <source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
+ <translation type="unfinished">Wallet verschlüsseln. Das Wallet wird mit einer Passphrase deiner Wahl verschlüsselt.</translation>
+ </message>
+ <message>
+ <source>Encrypt Wallet</source>
+ <translation type="unfinished">Wallet verschlüsseln</translation>
+ </message>
+ <message>
+ <source>Advanced Options</source>
+ <translation type="unfinished">Erweiterte Optionen</translation>
+ </message>
+ <message>
+ <source>Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets.</source>
+ <translation type="unfinished">Deaktiviert private Schlüssel für dieses Wallet. Wallets mit deaktivierten privaten Schlüsseln werden keine privaten Schlüssel haben und können keinen HD Seed oder private Schlüssel importieren. Das ist ideal für Wallets, die nur beobachten.</translation>
+ </message>
+ <message>
+ <source>Disable Private Keys</source>
+ <translation type="unfinished">Private Keys deaktivieren</translation>
+ </message>
+ <message>
+ <source>Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time.</source>
+ <translation type="unfinished">Erzeugt ein leeres Wallet. Leere Wallets haben zu Anfang keine privaten Schlüssel oder Scripte. Private Schlüssel oder Adressen können importiert werden, ebenso können jetzt oder später HD-Seeds gesetzt werden.</translation>
+ </message>
+ <message>
+ <source>Make Blank Wallet</source>
+ <translation type="unfinished">Eine leere Wallet erstellen</translation>
+ </message>
+ <message>
+ <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
+ <translation type="unfinished">Verwenden Sie ein externes Signiergerät, z. B. eine Hardware-Wallet. Konfigurieren Sie zunächst das Skript für den externen Signierer in den Wallet-Einstellungen.</translation>
+ </message>
+ <message>
+ <source>External signer</source>
+ <translation type="unfinished">Externer Unterzeichner</translation>
+ </message>
+ <message>
+ <source>Create</source>
+ <translation type="unfinished">Erstellen</translation>
+ </message>
+ <message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Ohne Unterstützung für die Signierung durch externe Geräte Dritter kompiliert (notwendig für Signierung durch externe Geräte Dritter)</translation>
+ </message>
+</context>
+<context>
+ <name>EditAddressDialog</name>
+ <message>
+ <source>Edit Address</source>
+ <translation type="unfinished">Adresse bearbeiten</translation>
+ </message>
+ <message>
+ <source>&amp;Label</source>
+ <translation type="unfinished">&amp;Bezeichnung</translation>
+ </message>
+ <message>
+ <source>The label associated with this address list entry</source>
+ <translation type="unfinished">Bezeichnung, die dem Adresslisteneintrag zugeordnet ist.</translation>
+ </message>
+ <message>
+ <source>The address associated with this address list entry. This can only be modified for sending addresses.</source>
+ <translation type="unfinished">Adresse, die dem Adresslisteneintrag zugeordnet ist. Diese kann nur bei Zahlungsadressen verändert werden.</translation>
+ </message>
+ <message>
+ <source>&amp;Address</source>
+ <translation type="unfinished">&amp;Adresse</translation>
+ </message>
+ <message>
+ <source>New sending address</source>
+ <translation type="unfinished">Neue Zahlungsadresse</translation>
+ </message>
+ <message>
+ <source>Edit receiving address</source>
+ <translation type="unfinished">Empfangsadresse bearbeiten</translation>
+ </message>
+ <message>
+ <source>Edit sending address</source>
+ <translation type="unfinished">Zahlungsadresse bearbeiten</translation>
+ </message>
+ <message>
+ <source>The entered address "%1" is not a valid Bitcoin address.</source>
+ <translation type="unfinished">Die eingegebene Adresse "%1" ist keine gültige Bitcoin-Adresse.</translation>
+ </message>
+ <message>
+ <source>Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address.</source>
+ <translation type="unfinished">Die Adresse "%1" existiert bereits als Empfangsadresse mit dem Label "%2" und kann daher nicht als Sendeadresse hinzugefügt werden.</translation>
+ </message>
+ <message>
+ <source>The entered address "%1" is already in the address book with label "%2".</source>
+ <translation type="unfinished">Die eingegebene Adresse "%1" befindet sich bereits im Adressbuch mit der Bezeichnung "%2".</translation>
+ </message>
+ <message>
+ <source>Could not unlock wallet.</source>
+ <translation type="unfinished">Wallet konnte nicht entsperrt werden.</translation>
+ </message>
+ <message>
+ <source>New key generation failed.</source>
+ <translation type="unfinished">Erzeugung eines neuen Schlüssels fehlgeschlagen.</translation>
+ </message>
+</context>
+<context>
+ <name>FreespaceChecker</name>
+ <message>
+ <source>A new data directory will be created.</source>
+ <translation type="unfinished">Es wird ein neues Datenverzeichnis angelegt.</translation>
+ </message>
+ <message>
+ <source>name</source>
+ <translation type="unfinished">Name</translation>
+ </message>
+ <message>
+ <source>Directory already exists. Add %1 if you intend to create a new directory here.</source>
+ <translation type="unfinished">Verzeichnis existiert bereits. Fügen Sie %1 an, wenn Sie beabsichtigen hier ein neues Verzeichnis anzulegen.</translation>
+ </message>
+ <message>
+ <source>Path already exists, and is not a directory.</source>
+ <translation type="unfinished">Pfad existiert bereits und ist kein Verzeichnis.</translation>
+ </message>
+ <message>
+ <source>Cannot create data directory here.</source>
+ <translation type="unfinished">Datenverzeichnis kann hier nicht angelegt werden.</translation>
+ </message>
+</context>
<context>
<name>Intro</name>
<message numerus="yes">
<source>%n GB of space available</source>
<translation type="unfinished">
- <numerusform>%n GB of space available</numerusform>
- <numerusform>%n GB of space available</numerusform>
+ <numerusform>%n GB Speicherplatz verfügbar</numerusform>
+ <numerusform>%n GB Speicherplatz verfügbar</numerusform>
</translation>
</message>
<message numerus="yes">
<source>(of %n GB needed)</source>
<translation type="unfinished">
- <numerusform>(of %n GB needed)</numerusform>
- <numerusform>(of %n GB needed)</numerusform>
+ <numerusform>(von %n GB benötigt)</numerusform>
+ <numerusform>(von %n GB benötigt)</numerusform>
</translation>
</message>
<message numerus="yes">
<source>(%n GB needed for full chain)</source>
<translation type="unfinished">
- <numerusform>(%n GB needed for full chain)</numerusform>
- <numerusform>(%n GB needed for full chain)</numerusform>
+ <numerusform>(%n GB benötigt für komplette Blockchain)</numerusform>
+ <numerusform>(%n GB benötigt für komplette Blockchain)</numerusform>
</translation>
</message>
+ <message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">Datenverzeichnis auswählen</translation>
+ </message>
+ <message>
+ <source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
+ <translation type="unfinished">Mindestens %1 GB Daten werden in diesem Verzeichnis gespeichert, und sie werden mit der Zeit zunehmen.</translation>
+ </message>
+ <message>
+ <source>Approximately %1 GB of data will be stored in this directory.</source>
+ <translation type="unfinished">Etwa %1 GB Daten werden in diesem Verzeichnis gespeichert.</translation>
+ </message>
<message numerus="yes">
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
<translation type="unfinished">
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
+ <numerusform>(für Wiederherstellung ausreichende Sicherung %n Tag alt)</numerusform>
+ <numerusform>(für Wiederherstellung ausreichende Sicherung %n Tage alt)</numerusform>
</translation>
</message>
- </context>
+ <message>
+ <source>%1 will download and store a copy of the Bitcoin block chain.</source>
+ <translation type="unfinished">%1 wird eine Kopie der Bitcoin-Blockchain herunterladen und speichern.</translation>
+ </message>
+ <message>
+ <source>The wallet will also be stored in this directory.</source>
+ <translation type="unfinished">Die Wallet wird ebenfalls in diesem Verzeichnis gespeichert.</translation>
+ </message>
+ <message>
+ <source>Error: Specified data directory "%1" cannot be created.</source>
+ <translation type="unfinished">Fehler: Angegebenes Datenverzeichnis "%1" kann nicht angelegt werden.</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Fehler</translation>
+ </message>
+ <message>
+ <source>Welcome</source>
+ <translation type="unfinished">Willkommen</translation>
+ </message>
+ <message>
+ <source>Welcome to %1.</source>
+ <translation type="unfinished">Willkommen bei %1.</translation>
+ </message>
+ <message>
+ <source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
+ <translation type="unfinished">Da Sie das Programm gerade zum ersten Mal starten, können Sie nun auswählen wo %1 seine Daten ablegen wird.</translation>
+ </message>
+ <message>
+ <source>Limit block chain storage to</source>
+ <translation type="unfinished">Blockchain-Speicher beschränken auf</translation>
+ </message>
+ <message>
+ <source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
+ <translation type="unfinished">Um diese Einstellung wiederherzustellen, muss die gesamte Blockchain neu heruntergeladen werden. Es ist schneller, die gesamte Chain zuerst herunterzuladen und später zu stutzen. Deaktiviert einige erweiterte Funktionen.</translation>
+ </message>
+ <message>
+ <source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
+ <translation type="unfinished">Diese initiale Synchronisation führt zu hoher Last und kann Hardwareprobleme, die bisher nicht aufgetreten sind, bei ihrem Computer verursachen. Jedes Mal, wenn Sie %1 ausführen, wird der Download zum letzten Synchronisationspunkt fortgesetzt.</translation>
+ </message>
+ <message>
+ <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
+ <translation type="unfinished">Wenn Sie auf OK klicken, beginnt %1 mit dem Herunterladen und Verarbeiten der gesamten %4-Blockchain (%2GB), beginnend mit den frühesten Transaktionen in %3 beim ersten Start von %4.</translation>
+ </message>
+ <message>
+ <source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
+ <translation type="unfinished">Wenn Sie bewusst den Blockchain-Speicher begrenzen (pruning), müssen die historischen Daten dennoch heruntergeladen und verarbeitet werden. Diese Daten werden aber zu einem späteren Zeitpunkt gelöscht, um die Festplattennutzung niedrig zu halten.</translation>
+ </message>
+ <message>
+ <source>Use the default data directory</source>
+ <translation type="unfinished">Standard-Datenverzeichnis verwenden</translation>
+ </message>
+ <message>
+ <source>Use a custom data directory:</source>
+ <translation type="unfinished">Ein benutzerdefiniertes Datenverzeichnis verwenden:</translation>
+ </message>
+</context>
+<context>
+ <name>HelpMessageDialog</name>
+ <message>
+ <source>version</source>
+ <translation type="unfinished">Version</translation>
+ </message>
+ <message>
+ <source>About %1</source>
+ <translation type="unfinished">Über %1</translation>
+ </message>
+ <message>
+ <source>Command-line options</source>
+ <translation type="unfinished">Kommandozeilenoptionen</translation>
+ </message>
+</context>
+<context>
+ <name>ShutdownWindow</name>
+ <message>
+ <source>%1 is shutting down…</source>
+ <translation type="unfinished">%1 wird beendet...</translation>
+ </message>
+ <message>
+ <source>Do not shut down the computer until this window disappears.</source>
+ <translation type="unfinished">Fahren Sie den Computer nicht herunter, bevor dieses Fenster verschwindet.</translation>
+ </message>
+</context>
+<context>
+ <name>ModalOverlay</name>
+ <message>
+ <source>Form</source>
+ <translation type="unfinished">Formular</translation>
+ </message>
+ <message>
+ <source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
+ <translation type="unfinished">Neueste Transaktionen werden eventuell noch nicht angezeigt, daher könnte Ihr Kontostand veraltet sein. Er wird korrigiert, sobald Ihr Wallet die Synchronisation mit dem Bitcoin-Netzwerk erfolgreich abgeschlossen hat. Details dazu finden sich weiter unten.</translation>
+ </message>
+ <message>
+ <source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
+ <translation type="unfinished">Versuche, Bitcoins aus noch nicht angezeigten Transaktionen auszugeben, werden vom Netzwerk nicht akzeptiert.</translation>
+ </message>
+ <message>
+ <source>Number of blocks left</source>
+ <translation type="unfinished">Anzahl verbleibender Blöcke</translation>
+ </message>
+ <message>
+ <source>Unknown…</source>
+ <translation type="unfinished">Unbekannt...</translation>
+ </message>
+ <message>
+ <source>calculating…</source>
+ <translation type="unfinished">berechne...</translation>
+ </message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">Letzte Blockzeit</translation>
+ </message>
+ <message>
+ <source>Progress</source>
+ <translation type="unfinished">Fortschritt</translation>
+ </message>
+ <message>
+ <source>Progress increase per hour</source>
+ <translation type="unfinished">Fortschritt pro Stunde</translation>
+ </message>
+ <message>
+ <source>Estimated time left until synced</source>
+ <translation type="unfinished">Geschätzt verbleibende Zeit bis synchronisiert</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">Ausblenden</translation>
+ </message>
+ <message>
+ <source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
+ <translation type="unfinished">%1 synchronisiert gerade. Es lädt Header und Blöcke von Gegenstellen und validiert sie bis zum Erreichen der Spitze der Blockchain.</translation>
+ </message>
+ <message>
+ <source>Unknown. Syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">Unbekannt. Synchronisiere Header (%1, %2%)...</translation>
+ </message>
+ <message>
+ <source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">Unbekannt. vorsynchronisiere Header (%1, %2%)...</translation>
+ </message>
+</context>
+<context>
+ <name>OpenURIDialog</name>
+ <message>
+ <source>Open bitcoin URI</source>
+ <translation type="unfinished">Öffne bitcoin URI</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <extracomment>Tooltip text for button that allows you to paste an address that is in your clipboard.</extracomment>
+ <translation type="unfinished">Adresse aus der Zwischenablage einfügen</translation>
+ </message>
+</context>
+<context>
+ <name>OptionsDialog</name>
+ <message>
+ <source>Options</source>
+ <translation type="unfinished">Konfiguration</translation>
+ </message>
+ <message>
+ <source>&amp;Main</source>
+ <translation type="unfinished">&amp;Allgemein</translation>
+ </message>
+ <message>
+ <source>Automatically start %1 after logging in to the system.</source>
+ <translation type="unfinished">%1 nach der Anmeldung im System automatisch ausführen.</translation>
+ </message>
+ <message>
+ <source>&amp;Start %1 on system login</source>
+ <translation type="unfinished">&amp;Starte %1 nach Systemanmeldung</translation>
+ </message>
+ <message>
+ <source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
+ <translation type="unfinished">Durch das Aktivieren von Pruning wird der zum Speichern von Transaktionen benötigte Speicherplatz erheblich reduziert. Alle Blöcke werden weiterhin vollständig validiert. Um diese Einstellung rückgängig zu machen, muss die gesamte Blockchain erneut heruntergeladen werden.</translation>
+ </message>
+ <message>
+ <source>Size of &amp;database cache</source>
+ <translation type="unfinished">Größe des &amp;Datenbankpufferspeichers</translation>
+ </message>
+ <message>
+ <source>Number of script &amp;verification threads</source>
+ <translation type="unfinished">Anzahl an Skript-&amp;Verifizierungs-Threads</translation>
+ </message>
+ <message>
+ <source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
+ <translation type="unfinished">Vollständiger Pfad zu %1 einem Bitcoin Core kompatibelen Script (z.B.: C:\Downloads\hwi.exe oder /Users/you/Downloads/hwi.py). Achtung: Malware kann Bitcoins stehlen!</translation>
+ </message>
+ <message>
+ <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
+ <translation type="unfinished">IP-Adresse des Proxies (z.B. IPv4: 127.0.0.1 / IPv6: ::1)</translation>
+ </message>
+ <message>
+ <source>Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source>
+ <translation type="unfinished">Zeigt an, ob der gelieferte Standard SOCKS5 Proxy verwendet wurde, um die Peers mit diesem Netzwerktyp zu erreichen.</translation>
+ </message>
+ <message>
+ <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source>
+ <translation type="unfinished">Minimiert die Anwendung anstatt sie zu beenden wenn das Fenster geschlossen wird. Wenn dies aktiviert ist, müssen Sie die Anwendung über "Beenden" im Menü schließen.</translation>
+ </message>
+ <message>
+ <source>Options set in this dialog are overridden by the command line:</source>
+ <translation type="unfinished">Einstellungen in diesem Dialog werden von der Kommandozeile überschrieben:</translation>
+ </message>
+ <message>
+ <source>Open the %1 configuration file from the working directory.</source>
+ <translation type="unfinished">Öffnen Sie die %1 Konfigurationsdatei aus dem Arbeitsverzeichnis.</translation>
+ </message>
+ <message>
+ <source>Open Configuration File</source>
+ <translation type="unfinished">Konfigurationsdatei öffnen</translation>
+ </message>
+ <message>
+ <source>Reset all client options to default.</source>
+ <translation type="unfinished">Setzt die Clientkonfiguration auf Standardwerte zurück.</translation>
+ </message>
+ <message>
+ <source>&amp;Reset Options</source>
+ <translation type="unfinished">Konfiguration &amp;zurücksetzen</translation>
+ </message>
+ <message>
+ <source>&amp;Network</source>
+ <translation type="unfinished">&amp;Netzwerk</translation>
+ </message>
+ <message>
+ <source>Prune &amp;block storage to</source>
+ <translation type="unfinished">&amp;Blockspeicher kürzen auf</translation>
+ </message>
+ <message>
+ <source>Reverting this setting requires re-downloading the entire blockchain.</source>
+ <translation type="unfinished">Wenn diese Einstellung rückgängig gemacht wird, muss die komplette Blockchain erneut heruntergeladen werden.</translation>
+ </message>
+ <message>
+ <source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
+ <extracomment>Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</extracomment>
+ <translation type="unfinished">Maximale Größe des Datenbank-Caches. Ein größerer Cache kann zu einer schnelleren Synchronisierung beitragen, danach ist der Vorteil für die meisten Anwendungsfälle weniger ausgeprägt. Eine Verringerung der Cache-Größe reduziert den Speicherverbrauch. Ungenutzter Mempool-Speicher wird für diesen Cache gemeinsam genutzt.</translation>
+ </message>
+ <message>
+ <source>Set the number of script verification threads. Negative values correspond to the number of cores you want to leave free to the system.</source>
+ <extracomment>Tooltip text for Options window setting that sets the number of script verification threads. Explains that negative values mean to leave these many cores free to the system.</extracomment>
+ <translation type="unfinished">Legen Sie die Anzahl der Skriptüberprüfungs-Threads fest. Negative Werte entsprechen der Anzahl der Kerne, die Sie für das System frei lassen möchten.</translation>
+ </message>
+ <message>
+ <source>(0 = auto, &lt;0 = leave that many cores free)</source>
+ <translation type="unfinished">(0 = automatisch, &lt;0 = so viele Kerne frei lassen)</translation>
+ </message>
+ <message>
+ <source>This allows you or a third party tool to communicate with the node through command-line and JSON-RPC commands.</source>
+ <extracomment>Tooltip text for Options window setting that enables the RPC server.</extracomment>
+ <translation type="unfinished">Dies ermöglicht Ihnen oder einem Drittanbieter-Tool die Kommunikation mit dem Knoten über Befehlszeilen- und JSON-RPC-Befehle.</translation>
+ </message>
+ <message>
+ <source>Enable R&amp;PC server</source>
+ <extracomment>An Options window setting to enable the RPC server.</extracomment>
+ <translation type="unfinished">R&amp;PC-Server aktivieren</translation>
+ </message>
+ <message>
+ <source>W&amp;allet</source>
+ <translation type="unfinished">B&amp;rieftasche</translation>
+ </message>
+ <message>
+ <source>Whether to set subtract fee from amount as default or not.</source>
+ <extracomment>Tooltip text for Options window setting that sets subtracting the fee from a sending amount as default.</extracomment>
+ <translation type="unfinished">Wählen Sie, ob die Gebühr standardmäßig vom Betrag abgezogen werden soll oder nicht.</translation>
+ </message>
+ <message>
+ <source>Subtract &amp;fee from amount by default</source>
+ <extracomment>An Options window setting to set subtracting the fee from a sending amount as default.</extracomment>
+ <translation type="unfinished">Standardmäßig die Gebühr vom Betrag abziehen</translation>
+ </message>
+ <message>
+ <source>Expert</source>
+ <translation type="unfinished">Experten-Optionen</translation>
+ </message>
+ <message>
+ <source>Enable coin &amp;control features</source>
+ <translation type="unfinished">"&amp;Coin Control"-Funktionen aktivieren</translation>
+ </message>
+ <message>
+ <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
+ <translation type="unfinished">Wenn Sie das Ausgeben von unbestätigtem Wechselgeld deaktivieren, kann das Wechselgeld einer Transaktion nicht verwendet werden, bis es mindestens eine Bestätigung erhalten hat. Dies wirkt sich auf die Berechnung des Kontostands aus.</translation>
+ </message>
+ <message>
+ <source>&amp;Spend unconfirmed change</source>
+ <translation type="unfinished">&amp;Unbestätigtes Wechselgeld darf ausgegeben werden</translation>
+ </message>
+ <message>
+ <source>Enable &amp;PSBT controls</source>
+ <extracomment>An options window setting to enable PSBT controls.</extracomment>
+ <translation type="unfinished">&amp;PBST-Kontrollen aktivieren</translation>
+ </message>
+ <message>
+ <source>Whether to show PSBT controls.</source>
+ <extracomment>Tooltip text for options window setting that enables PSBT controls.</extracomment>
+ <translation type="unfinished">Ob PSBT-Kontrollen angezeigt werden sollen. </translation>
+ </message>
+ <message>
+ <source>External Signer (e.g. hardware wallet)</source>
+ <translation type="unfinished">Gerät für externe Signierung (z. B.: Hardware wallet)</translation>
+ </message>
+ <message>
+ <source>&amp;External signer script path</source>
+ <translation type="unfinished">&amp;Pfad zum Script des externen Gerätes zur Signierung</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
+ <translation type="unfinished">Automatisch den Bitcoin-Clientport auf dem Router öffnen. Dies funktioniert nur, wenn Ihr Router UPnP unterstützt und dies aktiviert ist.</translation>
+ </message>
+ <message>
+ <source>Map port using &amp;UPnP</source>
+ <translation type="unfinished">Portweiterleitung via &amp;UPnP</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
+ <translation type="unfinished">Öffnet automatisch den Bitcoin-Client-Port auf dem Router. Dies funktioniert nur, wenn Ihr Router NAT-PMP unterstützt und es aktiviert ist. Der externe Port kann zufällig sein.</translation>
+ </message>
+ <message>
+ <source>Map port using NA&amp;T-PMP</source>
+ <translation type="unfinished">Map-Port mit NA&amp;T-PMP</translation>
+ </message>
+ <message>
+ <source>Accept connections from outside.</source>
+ <translation type="unfinished">Akzeptiere Verbindungen von außerhalb.</translation>
+ </message>
+ <message>
+ <source>Allow incomin&amp;g connections</source>
+ <translation type="unfinished">Erlaube &amp;eingehende Verbindungen</translation>
+ </message>
+ <message>
+ <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source>
+ <translation type="unfinished">Über einen SOCKS5-Proxy mit dem Bitcoin-Netzwerk verbinden.</translation>
+ </message>
+ <message>
+ <source>&amp;Connect through SOCKS5 proxy (default proxy):</source>
+ <translation type="unfinished">Über einen SOCKS5-Proxy &amp;verbinden (Standardproxy):</translation>
+ </message>
+ <message>
+ <source>Proxy &amp;IP:</source>
+ <translation type="unfinished">Proxy-&amp;IP:</translation>
+ </message>
+ <message>
+ <source>Port of the proxy (e.g. 9050)</source>
+ <translation type="unfinished">Port des Proxies (z.B. 9050)</translation>
+ </message>
+ <message>
+ <source>Used for reaching peers via:</source>
+ <translation type="unfinished">Benutzt um Gegenstellen zu erreichen über:</translation>
+ </message>
+ <message>
+ <source>Show the icon in the system tray.</source>
+ <translation type="unfinished">Zeigt das Symbol in der Leiste an.</translation>
+ </message>
+ <message>
+ <source>&amp;Show tray icon</source>
+ <translation type="unfinished">&amp;Zeige Statusleistensymbol</translation>
+ </message>
+ <message>
+ <source>Show only a tray icon after minimizing the window.</source>
+ <translation type="unfinished">Nur ein Symbol im Infobereich anzeigen, nachdem das Programmfenster minimiert wurde.</translation>
+ </message>
+ <message>
+ <source>&amp;Minimize to the tray instead of the taskbar</source>
+ <translation type="unfinished">In den Infobereich anstatt in die Taskleiste &amp;minimieren</translation>
+ </message>
+ <message>
+ <source>M&amp;inimize on close</source>
+ <translation type="unfinished">Beim Schließen m&amp;inimieren</translation>
+ </message>
+ <message>
+ <source>&amp;Display</source>
+ <translation type="unfinished">&amp;Anzeige</translation>
+ </message>
+ <message>
+ <source>User Interface &amp;language:</source>
+ <translation type="unfinished">&amp;Sprache der Benutzeroberfläche:</translation>
+ </message>
+ <message>
+ <source>The user interface language can be set here. This setting will take effect after restarting %1.</source>
+ <translation type="unfinished">Die Sprache der Benutzeroberflächen kann hier festgelegt werden. Diese Einstellung wird nach einem Neustart von %1 wirksam werden.</translation>
+ </message>
+ <message>
+ <source>&amp;Unit to show amounts in:</source>
+ <translation type="unfinished">&amp;Einheit der Beträge:</translation>
+ </message>
+ <message>
+ <source>Choose the default subdivision unit to show in the interface and when sending coins.</source>
+ <translation type="unfinished">Wählen Sie die standardmäßige Untereinheit, die in der Benutzeroberfläche und beim Überweisen von Bitcoins angezeigt werden soll.</translation>
+ </message>
+ <message>
+ <source>Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
+ <translation type="unfinished">URLs von Drittanbietern (z. B. eines Block-Explorers), erscheinen als Kontextmenüpunkte auf der Registerkarte. %s in der URL wird durch den Transaktionshash ersetzt. Mehrere URLs werden durch senkrechte Striche | getrennt.</translation>
+ </message>
+ <message>
+ <source>&amp;Third-party transaction URLs</source>
+ <translation type="unfinished">&amp;Transaktions-URLs von Drittparteien</translation>
+ </message>
+ <message>
+ <source>Whether to show coin control features or not.</source>
+ <translation type="unfinished">Legt fest, ob die "Coin Control"-Funktionen angezeigt werden.</translation>
+ </message>
+ <message>
+ <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services.</source>
+ <translation type="unfinished">Verbinde mit dem Bitcoin-Netzwerk über einen separaten SOCKS5-Proxy für Tor-Onion-Dienste.</translation>
+ </message>
+ <message>
+ <source>Use separate SOCKS&amp;5 proxy to reach peers via Tor onion services:</source>
+ <translation type="unfinished">Nutze separaten SOCKS&amp;5-Proxy um Gegenstellen über Tor-Onion-Dienste zu erreichen:</translation>
+ </message>
+ <message>
+ <source>Monospaced font in the Overview tab:</source>
+ <translation type="unfinished">Monospace Font im Übersichtsreiter:</translation>
+ </message>
+ <message>
+ <source>embedded "%1"</source>
+ <translation type="unfinished">eingebettet "%1"</translation>
+ </message>
+ <message>
+ <source>closest matching "%1"</source>
+ <translation type="unfinished">nächstliegende Übereinstimmung "%1"</translation>
+ </message>
+ <message>
+ <source>&amp;Cancel</source>
+ <translation type="unfinished">&amp;Abbrechen</translation>
+ </message>
+ <message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Ohne Unterstützung für die Signierung durch externe Geräte Dritter kompiliert (notwendig für Signierung durch externe Geräte Dritter)</translation>
+ </message>
+ <message>
+ <source>default</source>
+ <translation type="unfinished">Standard</translation>
+ </message>
+ <message>
+ <source>none</source>
+ <translation type="unfinished">keine</translation>
+ </message>
+ <message>
+ <source>Confirm options reset</source>
+ <extracomment>Window title text of pop-up window shown when the user has chosen to reset options.</extracomment>
+ <translation type="unfinished">Zurücksetzen der Konfiguration bestätigen</translation>
+ </message>
+ <message>
+ <source>Client restart required to activate changes.</source>
+ <extracomment>Text explaining that the settings changed will not come into effect until the client is restarted.</extracomment>
+ <translation type="unfinished">Client-Neustart erforderlich, um Änderungen zu aktivieren.</translation>
+ </message>
+ <message>
+ <source>Current settings will be backed up at "%1".</source>
+ <extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
+ <translation type="unfinished">Aktuelle Einstellungen werden in "%1" gespeichert.</translation>
+ </message>
+ <message>
+ <source>Client will be shut down. Do you want to proceed?</source>
+ <extracomment>Text asking the user to confirm if they would like to proceed with a client shutdown.</extracomment>
+ <translation type="unfinished">Client wird beendet. Möchten Sie den Vorgang fortsetzen?</translation>
+ </message>
+ <message>
+ <source>Configuration options</source>
+ <extracomment>Window title text of pop-up box that allows opening up of configuration file.</extracomment>
+ <translation type="unfinished">Konfigurationsoptionen</translation>
+ </message>
+ <message>
+ <source>The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file.</source>
+ <extracomment>Explanatory text about the priority order of instructions considered by client. The order from high to low being: command-line, configuration file, GUI settings.</extracomment>
+ <translation type="unfinished">Die Konfigurationsdatei wird verwendet, um erweiterte Benutzeroptionen festzulegen, die die GUI-Einstellungen überschreiben. Darüber hinaus werden alle Befehlszeilenoptionen diese Konfigurationsdatei überschreiben.</translation>
+ </message>
+ <message>
+ <source>Continue</source>
+ <translation type="unfinished">Weiter</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">Abbrechen</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Fehler</translation>
+ </message>
+ <message>
+ <source>The configuration file could not be opened.</source>
+ <translation type="unfinished">Die Konfigurationsdatei konnte nicht geöffnet werden.</translation>
+ </message>
+ <message>
+ <source>This change would require a client restart.</source>
+ <translation type="unfinished">Diese Änderung würde einen Client-Neustart erfordern.</translation>
+ </message>
+ <message>
+ <source>The supplied proxy address is invalid.</source>
+ <translation type="unfinished">Die eingegebene Proxy-Adresse ist ungültig.</translation>
+ </message>
+</context>
+<context>
+ <name>OptionsModel</name>
+ <message>
+ <source>Could not read setting "%1", %2.</source>
+ <translation type="unfinished">Die folgende Einstellung konnte nicht gelesen werden "%1", %2.</translation>
+ </message>
+</context>
+<context>
+ <name>OverviewPage</name>
+ <message>
+ <source>Form</source>
+ <translation type="unfinished">Formular</translation>
+ </message>
+ <message>
+ <source>The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet.</source>
+ <translation type="unfinished">Die angezeigten Informationen sind möglicherweise nicht mehr aktuell. Ihre Wallet wird automatisch synchronisiert, nachdem eine Verbindung zum Bitcoin-Netzwerk hergestellt wurde. Dieser Prozess ist jedoch derzeit noch nicht abgeschlossen.</translation>
+ </message>
+ <message>
+ <source>Watch-only:</source>
+ <translation type="unfinished">Beobachtet:</translation>
+ </message>
+ <message>
+ <source>Available:</source>
+ <translation type="unfinished">Verfügbar:</translation>
+ </message>
+ <message>
+ <source>Your current spendable balance</source>
+ <translation type="unfinished">Ihr aktuell verfügbarer Kontostand</translation>
+ </message>
+ <message>
+ <source>Pending:</source>
+ <translation type="unfinished">Ausstehend:</translation>
+ </message>
+ <message>
+ <source>Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source>
+ <translation type="unfinished">Gesamtbetrag aus unbestätigten Transaktionen, der noch nicht im aktuell verfügbaren Kontostand enthalten ist</translation>
+ </message>
+ <message>
+ <source>Immature:</source>
+ <translation type="unfinished">Unreif:</translation>
+ </message>
+ <message>
+ <source>Mined balance that has not yet matured</source>
+ <translation type="unfinished">Erarbeiteter Betrag der noch nicht gereift ist</translation>
+ </message>
+ <message>
+ <source>Balances</source>
+ <translation type="unfinished">Kontostände</translation>
+ </message>
+ <message>
+ <source>Total:</source>
+ <translation type="unfinished">Gesamtbetrag:</translation>
+ </message>
+ <message>
+ <source>Your current total balance</source>
+ <translation type="unfinished">Ihr aktueller Gesamtbetrag</translation>
+ </message>
+ <message>
+ <source>Your current balance in watch-only addresses</source>
+ <translation type="unfinished">Ihr aktueller Kontostand in nur-beobachteten Adressen</translation>
+ </message>
+ <message>
+ <source>Spendable:</source>
+ <translation type="unfinished">Verfügbar:</translation>
+ </message>
+ <message>
+ <source>Recent transactions</source>
+ <translation type="unfinished">Letzte Transaktionen</translation>
+ </message>
+ <message>
+ <source>Unconfirmed transactions to watch-only addresses</source>
+ <translation type="unfinished">Unbestätigte Transaktionen an nur-beobachtete Adressen</translation>
+ </message>
+ <message>
+ <source>Mined balance in watch-only addresses that has not yet matured</source>
+ <translation type="unfinished">Erarbeiteter Betrag in nur-beobachteten Adressen der noch nicht gereift ist</translation>
+ </message>
+ <message>
+ <source>Current total balance in watch-only addresses</source>
+ <translation type="unfinished">Aktueller Gesamtbetrag in nur-beobachteten Adressen</translation>
+ </message>
+ <message>
+ <source>Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings-&gt;Mask values.</source>
+ <translation type="unfinished">Datenschutz-Modus aktiviert für den Übersichtsreiter. Um die Werte einzublenden, deaktiviere Einstellungen-&gt;Werte ausblenden.</translation>
+ </message>
+</context>
+<context>
+ <name>PSBTOperationsDialog</name>
+ <message>
+ <source>PSBT Operations</source>
+ <translation type="unfinished">PSBT-Operationen</translation>
+ </message>
+ <message>
+ <source>Sign Tx</source>
+ <translation type="unfinished">Signiere Tx</translation>
+ </message>
+ <message>
+ <source>Broadcast Tx</source>
+ <translation type="unfinished">Rundsende Tx</translation>
+ </message>
+ <message>
+ <source>Copy to Clipboard</source>
+ <translation type="unfinished">Kopiere in Zwischenablage</translation>
+ </message>
+ <message>
+ <source>Save…</source>
+ <translation type="unfinished">Speichern...</translation>
+ </message>
+ <message>
+ <source>Close</source>
+ <translation type="unfinished">Schließen</translation>
+ </message>
+ <message>
+ <source>Failed to load transaction: %1</source>
+ <translation type="unfinished">Laden der Transaktion fehlgeschlagen: %1</translation>
+ </message>
+ <message>
+ <source>Failed to sign transaction: %1</source>
+ <translation type="unfinished">Signieren der Transaktion fehlgeschlagen: %1</translation>
+ </message>
+ <message>
+ <source>Cannot sign inputs while wallet is locked.</source>
+ <translation type="unfinished">Eingaben können nicht unterzeichnet werden, wenn die Wallet gesperrt ist.</translation>
+ </message>
+ <message>
+ <source>Could not sign any more inputs.</source>
+ <translation type="unfinished">Konnte keinerlei weitere Eingaben signieren.</translation>
+ </message>
+ <message>
+ <source>Signed %1 inputs, but more signatures are still required.</source>
+ <translation type="unfinished">%1 Eingaben signiert, doch noch sind weitere Signaturen erforderlich.</translation>
+ </message>
+ <message>
+ <source>Signed transaction successfully. Transaction is ready to broadcast.</source>
+ <translation type="unfinished">Transaktion erfolgreich signiert. Transaktion ist bereit für Rundsendung.</translation>
+ </message>
+ <message>
+ <source>Unknown error processing transaction.</source>
+ <translation type="unfinished">Unbekannter Fehler bei der Transaktionsverarbeitung</translation>
+ </message>
+ <message>
+ <source>Transaction broadcast successfully! Transaction ID: %1</source>
+ <translation type="unfinished">Transaktion erfolgreich rundgesendet! Transaktions-ID: %1</translation>
+ </message>
+ <message>
+ <source>Transaction broadcast failed: %1</source>
+ <translation type="unfinished">Rundsenden der Transaktion fehlgeschlagen: %1</translation>
+ </message>
+ <message>
+ <source>PSBT copied to clipboard.</source>
+ <translation type="unfinished">PSBT in Zwischenablage kopiert.</translation>
+ </message>
+ <message>
+ <source>Save Transaction Data</source>
+ <translation type="unfinished">Speichere Transaktionsdaten</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (Binary)</source>
+ <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
+ <translation type="unfinished">Teilweise signierte Transaktion (binär)</translation>
+ </message>
+ <message>
+ <source>PSBT saved to disk.</source>
+ <translation type="unfinished">PSBT auf Platte gespeichert.</translation>
+ </message>
+ <message>
+ <source> * Sends %1 to %2</source>
+ <translation type="unfinished">* Sende %1 an %2</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">eigene Adresse</translation>
+ </message>
+ <message>
+ <source>Unable to calculate transaction fee or total transaction amount.</source>
+ <translation type="unfinished">Kann die Gebühr oder den Gesamtbetrag der Transaktion nicht berechnen.</translation>
+ </message>
+ <message>
+ <source>Pays transaction fee: </source>
+ <translation type="unfinished">Zahlt Transaktionsgebühr:</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">Gesamtbetrag</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">oder</translation>
+ </message>
+ <message>
+ <source>Transaction has %1 unsigned inputs.</source>
+ <translation type="unfinished">Transaktion hat %1 unsignierte Eingaben.</translation>
+ </message>
+ <message>
+ <source>Transaction is missing some information about inputs.</source>
+ <translation type="unfinished">Der Transaktion fehlen einige Informationen über Eingaben.</translation>
+ </message>
+ <message>
+ <source>Transaction still needs signature(s).</source>
+ <translation type="unfinished">Transaktion erfordert weiterhin Signatur(en).</translation>
+ </message>
+ <message>
+ <source>(But no wallet is loaded.)</source>
+ <translation type="unfinished">(Aber kein Wallet ist geladen.)</translation>
+ </message>
+ <message>
+ <source>(But this wallet cannot sign transactions.)</source>
+ <translation type="unfinished">(doch diese Wallet kann Transaktionen nicht signieren)</translation>
+ </message>
+ <message>
+ <source>(But this wallet does not have the right keys.)</source>
+ <translation type="unfinished">(doch diese Wallet hat nicht die richtigen Schlüssel)</translation>
+ </message>
+ <message>
+ <source>Transaction is fully signed and ready for broadcast.</source>
+ <translation type="unfinished">Transaktion ist vollständig signiert und zur Rundsendung bereit.</translation>
+ </message>
+ <message>
+ <source>Transaction status is unknown.</source>
+ <translation type="unfinished">Transaktionsstatus ist unbekannt.</translation>
+ </message>
+</context>
+<context>
+ <name>PaymentServer</name>
+ <message>
+ <source>Payment request error</source>
+ <translation type="unfinished">Fehler bei der Zahlungsanforderung</translation>
+ </message>
+ <message>
+ <source>Cannot start bitcoin: click-to-pay handler</source>
+ <translation type="unfinished">Kann Bitcoin nicht starten: Klicken-zum-Bezahlen-Verarbeiter</translation>
+ </message>
+ <message>
+ <source>URI handling</source>
+ <translation type="unfinished">URI-Verarbeitung</translation>
+ </message>
+ <message>
+ <source>'bitcoin://' is not a valid URI. Use 'bitcoin:' instead.</source>
+ <translation type="unfinished">'bitcoin://' ist kein gültiger URL. Bitte 'bitcoin:' nutzen.</translation>
+ </message>
+ <message>
+ <source>Cannot process payment request because BIP70 is not supported.
+Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
+If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
+ <translation type="unfinished">Zahlungsanforderung kann nicht verarbeitet werden, da BIP70 nicht unterstützt wird.
+Aufgrund der weit verbreiteten Sicherheitslücken in BIP70 wird dringend empfohlen, die Anweisungen des Händlers zum Wechsel des Wallets zu ignorieren.
+Wenn Sie diese Fehlermeldung erhalten, sollten Sie den Händler bitten, einen BIP21-kompatiblen URI bereitzustellen.</translation>
+ </message>
+ <message>
+ <source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source>
+ <translation type="unfinished">URI kann nicht analysiert werden! Dies kann durch eine ungültige Bitcoin-Adresse oder fehlerhafte URI-Parameter verursacht werden.</translation>
+ </message>
+ <message>
+ <source>Payment request file handling</source>
+ <translation type="unfinished">Zahlungsanforderungsdatei-Verarbeitung</translation>
+ </message>
+</context>
+<context>
+ <name>PeerTableModel</name>
+ <message>
+ <source>User Agent</source>
+ <extracomment>Title of Peers Table column which contains the peer's User Agent string.</extracomment>
+ <translation type="unfinished">User-Agent</translation>
+ </message>
+ <message>
+ <source>Peer</source>
+ <extracomment>Title of Peers Table column which contains a unique number used to identify a connection.</extracomment>
+ <translation type="unfinished">Gegenstelle</translation>
+ </message>
+ <message>
+ <source>Age</source>
+ <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
+ <translation type="unfinished">Alter</translation>
+ </message>
+ <message>
+ <source>Direction</source>
+ <extracomment>Title of Peers Table column which indicates the direction the peer connection was initiated from.</extracomment>
+ <translation type="unfinished">Richtung</translation>
+ </message>
+ <message>
+ <source>Sent</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have sent to the peer.</extracomment>
+ <translation type="unfinished">Übertragen</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have received from the peer.</extracomment>
+ <translation type="unfinished">Empfangen</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">Adresse</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
+ <translation type="unfinished">Typ</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <extracomment>Title of Peers Table column which states the network the peer connected through.</extracomment>
+ <translation type="unfinished">Netzwerk</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An Inbound Connection from a Peer.</extracomment>
+ <translation type="unfinished">Eingehend</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An Outbound Connection to a Peer.</extracomment>
+ <translation type="unfinished">Ausgehend</translation>
+ </message>
+</context>
+<context>
+ <name>QRImageWidget</name>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">&amp;Bild speichern...</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Image</source>
+ <translation type="unfinished">Grafik &amp;kopieren</translation>
+ </message>
+ <message>
+ <source>Resulting URI too long, try to reduce the text for label / message.</source>
+ <translation type="unfinished">Resultierende URI ist zu lang, bitte den Text für Bezeichnung/Nachricht kürzen.</translation>
+ </message>
+ <message>
+ <source>Error encoding URI into QR Code.</source>
+ <translation type="unfinished">Beim Kodieren der URI in den QR-Code ist ein Fehler aufgetreten.</translation>
+ </message>
+ <message>
+ <source>QR code support not available.</source>
+ <translation type="unfinished">QR Code Funktionalität nicht vorhanden</translation>
+ </message>
+ <message>
+ <source>Save QR Code</source>
+ <translation type="unfinished">QR-Code speichern</translation>
+ </message>
+ <message>
+ <source>PNG Image</source>
+ <extracomment>Expanded name of the PNG file format. See: https://en.wikipedia.org/wiki/Portable_Network_Graphics.</extracomment>
+ <translation type="unfinished">PNG-Bild</translation>
+ </message>
+</context>
+<context>
+ <name>RPCConsole</name>
+ <message>
+ <source>N/A</source>
+ <translation type="unfinished">k.A.</translation>
+ </message>
+ <message>
+ <source>Client version</source>
+ <translation type="unfinished">Client-Version</translation>
+ </message>
+ <message>
+ <source>&amp;Information</source>
+ <translation type="unfinished">&amp;Informationen</translation>
+ </message>
+ <message>
+ <source>General</source>
+ <translation type="unfinished">Allgemein</translation>
+ </message>
+ <message>
+ <source>Datadir</source>
+ <translation type="unfinished">Datenverzeichnis</translation>
+ </message>
+ <message>
+ <source>To specify a non-default location of the data directory use the '%1' option.</source>
+ <translation type="unfinished">Verwenden Sie die Option '%1' um einen anderen, nicht standardmäßigen Speicherort für das Datenverzeichnis festzulegen.</translation>
+ </message>
+ <message>
+ <source>Blocksdir</source>
+ <translation type="unfinished">Blockverzeichnis</translation>
+ </message>
+ <message>
+ <source>To specify a non-default location of the blocks directory use the '%1' option.</source>
+ <translation type="unfinished">Verwenden Sie die Option '%1' um einen anderen, nicht standardmäßigen Speicherort für das Blöckeverzeichnis festzulegen.</translation>
+ </message>
+ <message>
+ <source>Startup time</source>
+ <translation type="unfinished">Startzeit</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <translation type="unfinished">Netzwerk</translation>
+ </message>
+ <message>
+ <source>Number of connections</source>
+ <translation type="unfinished">Anzahl der Verbindungen</translation>
+ </message>
+ <message>
+ <source>Block chain</source>
+ <translation type="unfinished">Blockchain</translation>
+ </message>
+ <message>
+ <source>Memory Pool</source>
+ <translation type="unfinished">Speicher-Pool</translation>
+ </message>
+ <message>
+ <source>Current number of transactions</source>
+ <translation type="unfinished">Aktuelle Anzahl der Transaktionen</translation>
+ </message>
+ <message>
+ <source>Memory usage</source>
+ <translation type="unfinished">Speichernutzung</translation>
+ </message>
+ <message>
+ <source>(none)</source>
+ <translation type="unfinished">(keine)</translation>
+ </message>
+ <message>
+ <source>&amp;Reset</source>
+ <translation type="unfinished">&amp;Zurücksetzen</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <translation type="unfinished">Empfangen</translation>
+ </message>
+ <message>
+ <source>Sent</source>
+ <translation type="unfinished">Übertragen</translation>
+ </message>
+ <message>
+ <source>&amp;Peers</source>
+ <translation type="unfinished">&amp;Gegenstellen</translation>
+ </message>
+ <message>
+ <source>Banned peers</source>
+ <translation type="unfinished">Gesperrte Gegenstellen</translation>
+ </message>
+ <message>
+ <source>Select a peer to view detailed information.</source>
+ <translation type="unfinished">Gegenstelle auswählen, um detaillierte Informationen zu erhalten.</translation>
+ </message>
+ <message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Die Transportschicht-Version: %1</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Die BIP324-Sitzungs-ID-Zeichenfolge in hexadezimaler Form, falls vorhanden.</translation>
+ </message>
+ <message>
+ <source>Whether we relay transactions to this peer.</source>
+ <translation type="unfinished">Ob wir Adressen an diese Gegenstelle weiterleiten.</translation>
+ </message>
+ <message>
+ <source>Transaction Relay</source>
+ <translation type="unfinished">Transaktions-Relay</translation>
+ </message>
+ <message>
+ <source>Starting Block</source>
+ <translation type="unfinished">Start Block</translation>
+ </message>
+ <message>
+ <source>Synced Headers</source>
+ <translation type="unfinished">Synchronisierte Header</translation>
+ </message>
+ <message>
+ <source>Synced Blocks</source>
+ <translation type="unfinished">Synchronisierte Blöcke</translation>
+ </message>
+ <message>
+ <source>Last Transaction</source>
+ <translation type="unfinished">Letzte Transaktion</translation>
+ </message>
+ <message>
+ <source>The mapped Autonomous System used for diversifying peer selection.</source>
+ <translation type="unfinished">Das zugeordnete autonome System zur Diversifizierung der Gegenstellen-Auswahl.</translation>
+ </message>
+ <message>
+ <source>Mapped AS</source>
+ <translation type="unfinished">Zugeordnetes AS</translation>
+ </message>
+ <message>
+ <source>Whether we relay addresses to this peer.</source>
+ <extracomment>Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
+ <translation type="unfinished">Ob wir Adressen an diese Gegenstelle weiterleiten.</translation>
+ </message>
+ <message>
+ <source>Address Relay</source>
+ <extracomment>Text title for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
+ <translation type="unfinished">Adress-Relay</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
+ <extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Die Gesamtzahl der von dieser Gegenstelle empfangenen Adressen, die aufgrund von Ratenbegrenzung verworfen (nicht verarbeitet) wurden.</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
+ <extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
+ <translation type="unfinished">Die Gesamtzahl der von dieser Gegenstelle empfangenen Adressen, die aufgrund von Ratenbegrenzung verworfen (nicht verarbeitet) wurden.</translation>
+ </message>
+ <message>
+ <source>Addresses Processed</source>
+ <extracomment>Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Verarbeitete Adressen</translation>
+ </message>
+ <message>
+ <source>Addresses Rate-Limited</source>
+ <extracomment>Text title for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
+ <translation type="unfinished">Ratenbeschränkte Adressen</translation>
+ </message>
+ <message>
+ <source>User Agent</source>
+ <translation type="unfinished">User-Agent</translation>
+ </message>
+ <message>
+ <source>Node window</source>
+ <translation type="unfinished">Node-Fenster</translation>
+ </message>
+ <message>
+ <source>Current block height</source>
+ <translation type="unfinished">Aktuelle Blockhöhe</translation>
+ </message>
+ <message>
+ <source>Open the %1 debug log file from the current data directory. This can take a few seconds for large log files.</source>
+ <translation type="unfinished">Öffnet die %1-Debug-Protokolldatei aus dem aktuellen Datenverzeichnis. Dies kann bei großen Protokolldateien einige Sekunden dauern.</translation>
+ </message>
+ <message>
+ <source>Decrease font size</source>
+ <translation type="unfinished">Schrift verkleinern</translation>
+ </message>
+ <message>
+ <source>Increase font size</source>
+ <translation type="unfinished">Schrift vergrößern</translation>
+ </message>
+ <message>
+ <source>Permissions</source>
+ <translation type="unfinished">Berechtigungen</translation>
+ </message>
+ <message>
+ <source>The direction and type of peer connection: %1</source>
+ <translation type="unfinished">Die Richtung und der Typ der Gegenstellen-Verbindung: %1</translation>
+ </message>
+ <message>
+ <source>Direction/Type</source>
+ <translation type="unfinished">Richtung/Typ</translation>
+ </message>
+ <message>
+ <source>The network protocol this peer is connected through: IPv4, IPv6, Onion, I2P, or CJDNS.</source>
+ <translation type="unfinished">Das Netzwerkprotokoll, über das diese Gegenstelle verbunden ist, ist: IPv4, IPv6, Onion, I2P oder CJDNS.</translation>
+ </message>
+ <message>
+ <source>Services</source>
+ <translation type="unfinished">Dienste</translation>
+ </message>
+ <message>
+ <source>High bandwidth BIP152 compact block relay: %1</source>
+ <translation type="unfinished">Kompakte BIP152 Blockweiterleitung mit hoher Bandbreite: %1</translation>
+ </message>
+ <message>
+ <source>High Bandwidth</source>
+ <translation type="unfinished">Hohe Bandbreite</translation>
+ </message>
+ <message>
+ <source>Connection Time</source>
+ <translation type="unfinished">Verbindungsdauer</translation>
+ </message>
+ <message>
+ <source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
+ <translation type="unfinished">Abgelaufene Zeit seitdem ein neuer Block mit erfolgreichen initialen Gültigkeitsprüfungen von dieser Gegenstelle empfangen wurde.</translation>
+ </message>
+ <message>
+ <source>Last Block</source>
+ <translation type="unfinished">Letzter Block</translation>
+ </message>
+ <message>
+ <source>Elapsed time since a novel transaction accepted into our mempool was received from this peer.</source>
+ <extracomment>Tooltip text for the Last Transaction field in the peer details area.</extracomment>
+ <translation type="unfinished">Abgelaufene Zeit seit eine neue Transaktion, die in unseren Speicherpool hineingelassen wurde, von dieser Gegenstelle empfangen wurde.</translation>
+ </message>
+ <message>
+ <source>Last Send</source>
+ <translation type="unfinished">Letzte Übertragung</translation>
+ </message>
+ <message>
+ <source>Last Receive</source>
+ <translation type="unfinished">Letzter Empfang</translation>
+ </message>
+ <message>
+ <source>Ping Time</source>
+ <translation type="unfinished">Ping-Zeit</translation>
+ </message>
+ <message>
+ <source>The duration of a currently outstanding ping.</source>
+ <translation type="unfinished">Die Laufzeit eines aktuell ausstehenden Ping.</translation>
+ </message>
+ <message>
+ <source>Ping Wait</source>
+ <translation type="unfinished">Ping-Wartezeit</translation>
+ </message>
+ <message>
+ <source>Min Ping</source>
+ <translation type="unfinished">Minimaler Ping</translation>
+ </message>
+ <message>
+ <source>Time Offset</source>
+ <translation type="unfinished">Zeitversatz</translation>
+ </message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">Letzte Blockzeit</translation>
+ </message>
+ <message>
+ <source>&amp;Open</source>
+ <translation type="unfinished">&amp;Öffnen</translation>
+ </message>
+ <message>
+ <source>&amp;Console</source>
+ <translation type="unfinished">&amp;Konsole</translation>
+ </message>
+ <message>
+ <source>&amp;Network Traffic</source>
+ <translation type="unfinished">&amp;Netzwerkauslastung</translation>
+ </message>
+ <message>
+ <source>Totals</source>
+ <translation type="unfinished">Gesamtbetrag:</translation>
+ </message>
+ <message>
+ <source>Debug log file</source>
+ <translation type="unfinished">Debug-Protokolldatei</translation>
+ </message>
+ <message>
+ <source>Clear console</source>
+ <translation type="unfinished">Konsole zurücksetzen</translation>
+ </message>
+ <message>
+ <source>In:</source>
+ <translation type="unfinished">Ein:</translation>
+ </message>
+ <message>
+ <source>Out:</source>
+ <translation type="unfinished">Aus:</translation>
+ </message>
+ <message>
+ <source>Inbound: initiated by peer</source>
+ <extracomment>Explanatory text for an inbound peer connection.</extracomment>
+ <translation type="unfinished">Eingehend: wurde von Gegenstelle initiiert</translation>
+ </message>
+ <message>
+ <source>Outbound Full Relay: default</source>
+ <extracomment>Explanatory text for an outbound peer connection that relays all network information. This is the default behavior for outbound connections.</extracomment>
+ <translation type="unfinished">Ausgehende vollständige Weiterleitung: Standard</translation>
+ </message>
+ <message>
+ <source>Outbound Block Relay: does not relay transactions or addresses</source>
+ <extracomment>Explanatory text for an outbound peer connection that relays network information about blocks and not transactions or addresses.</extracomment>
+ <translation type="unfinished">Ausgehende Blockweiterleitung: leitet Transaktionen und Adressen nicht weiter</translation>
+ </message>
+ <message>
+ <source>Outbound Manual: added using RPC %1 or %2/%3 configuration options</source>
+ <extracomment>Explanatory text for an outbound peer connection that was established manually through one of several methods. The numbered arguments are stand-ins for the methods available to establish manual connections.</extracomment>
+ <translation type="unfinished">Ausgehend Manuell: durch die RPC %1 oder %2/%3 Konfigurationsoptionen hinzugefügt</translation>
+ </message>
+ <message>
+ <source>Outbound Feeler: short-lived, for testing addresses</source>
+ <extracomment>Explanatory text for a short-lived outbound peer connection that is used to test the aliveness of known addresses.</extracomment>
+ <translation type="unfinished">Ausgehender Fühler: kurzlebig, zum Testen von Adressen</translation>
+ </message>
+ <message>
+ <source>Outbound Address Fetch: short-lived, for soliciting addresses</source>
+ <extracomment>Explanatory text for a short-lived outbound peer connection that is used to request addresses from a peer.</extracomment>
+ <translation type="unfinished">Ausgehende Adressensammlung: kurzlebig, zum Anfragen von Adressen</translation>
+ </message>
+ <message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Erkennen: Peer könnte v1 oder v2 sein</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">V1: Unverschlüsseltes Klartext-Transportprotokoll</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324 verschlüsseltes Transportprotokoll</translation>
+ </message>
+ <message>
+ <source>we selected the peer for high bandwidth relay</source>
+ <translation type="unfinished">Wir haben die Gegenstelle zum Weiterleiten mit hoher Bandbreite ausgewählt</translation>
+ </message>
+ <message>
+ <source>the peer selected us for high bandwidth relay</source>
+ <translation type="unfinished">Die Gegenstelle hat uns zum Weiterleiten mit hoher Bandbreite ausgewählt</translation>
+ </message>
+ <message>
+ <source>no high bandwidth relay selected</source>
+ <translation type="unfinished">Keine Weiterleitung mit hoher Bandbreite ausgewählt</translation>
+ </message>
+ <message>
+ <source>Ctrl++</source>
+ <extracomment>Main shortcut to increase the RPC console font size.</extracomment>
+ <translation type="unfinished">Strg++</translation>
+ </message>
+ <message>
+ <source>Ctrl+=</source>
+ <extracomment>Secondary shortcut to increase the RPC console font size.</extracomment>
+ <translation type="unfinished">Strg+=</translation>
+ </message>
+ <message>
+ <source>Ctrl+-</source>
+ <extracomment>Main shortcut to decrease the RPC console font size.</extracomment>
+ <translation type="unfinished">Strg+-</translation>
+ </message>
+ <message>
+ <source>Ctrl+_</source>
+ <extracomment>Secondary shortcut to decrease the RPC console font size.</extracomment>
+ <translation type="unfinished">Strg+_</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <extracomment>Context menu action to copy the address of a peer.</extracomment>
+ <translation type="unfinished">&amp;Adresse kopieren</translation>
+ </message>
+ <message>
+ <source>&amp;Disconnect</source>
+ <translation type="unfinished">&amp;Trennen</translation>
+ </message>
+ <message>
+ <source>1 &amp;hour</source>
+ <translation type="unfinished">1 &amp;Stunde</translation>
+ </message>
+ <message>
+ <source>1 d&amp;ay</source>
+ <translation type="unfinished">1 T&amp;ag</translation>
+ </message>
+ <message>
+ <source>1 &amp;week</source>
+ <translation type="unfinished">1 &amp;Woche</translation>
+ </message>
+ <message>
+ <source>1 &amp;year</source>
+ <translation type="unfinished">1 &amp;Jahr</translation>
+ </message>
+ <message>
+ <source>&amp;Copy IP/Netmask</source>
+ <extracomment>Context menu action to copy the IP/Netmask of a banned peer. IP/Netmask is the combination of a peer's IP address and its Netmask. For IP address, see: https://en.wikipedia.org/wiki/IP_address.</extracomment>
+ <translation type="unfinished">&amp;Kopiere IP/Netzmaske</translation>
+ </message>
+ <message>
+ <source>&amp;Unban</source>
+ <translation type="unfinished">&amp;Entsperren</translation>
+ </message>
+ <message>
+ <source>Network activity disabled</source>
+ <translation type="unfinished">Netzwerkaktivität deaktiviert</translation>
+ </message>
+ <message>
+ <source>Executing command without any wallet</source>
+ <translation type="unfinished">Befehl wird ohne spezifizierte Wallet ausgeführt</translation>
+ </message>
+ <message>
+ <source>Ctrl+I</source>
+ <translation type="unfinished">Strg+I</translation>
+ </message>
+ <message>
+ <source>Ctrl+T</source>
+ <translation type="unfinished">Strg+T</translation>
+ </message>
+ <message>
+ <source>Ctrl+N</source>
+ <translation type="unfinished">Strg+N</translation>
+ </message>
+ <message>
+ <source>Ctrl+P</source>
+ <translation type="unfinished">Strg+P</translation>
+ </message>
+ <message>
+ <source>Executing command using "%1" wallet</source>
+ <translation type="unfinished">Befehl wird mit Wallet "%1" ausgeführt</translation>
+ </message>
+ <message>
+ <source>Welcome to the %1 RPC console.
+Use up and down arrows to navigate history, and %2 to clear screen.
+Use %3 and %4 to increase or decrease the font size.
+Type %5 for an overview of available commands.
+For more information on using this console, type %6.
+
+%7WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command.%8</source>
+ <extracomment>RPC console welcome message. Placeholders %7 and %8 are style tags for the warning content, and they are not space separated from the rest of the text intentionally.</extracomment>
+ <translation type="unfinished">Willkommen bei der %1 RPC Konsole.
+Benutze die Auf/Ab Pfeiltasten, um durch die Historie zu navigieren, und %2, um den Bildschirm zu löschen.
+Benutze %3 und %4, um die Fontgröße zu vergrößern bzw. verkleinern.
+Tippe %5 für einen Überblick über verfügbare Befehle.
+Für weitere Informationen über diese Konsole, tippe %6.
+
+%7 ACHTUNG: Es sind Betrüger zu Gange, die Benutzer anweisen, hier Kommandos einzugeben, wodurch sie den Inhalt der Wallet stehlen können. Benutze diese Konsole nicht, ohne die Implikationen eines Kommandos vollständig zu verstehen.%8</translation>
+ </message>
+ <message>
+ <source>Executing…</source>
+ <extracomment>A console message indicating an entered command is currently being executed.</extracomment>
+ <translation type="unfinished">Ausführen…</translation>
+ </message>
+ <message>
+ <source>(peer: %1)</source>
+ <translation type="unfinished">(Gegenstelle: %1)</translation>
+ </message>
+ <message>
+ <source>via %1</source>
+ <translation type="unfinished">über %1</translation>
+ </message>
+ <message>
+ <source>Yes</source>
+ <translation type="unfinished">Ja</translation>
+ </message>
+ <message>
+ <source>No</source>
+ <translation type="unfinished">Nein</translation>
+ </message>
+ <message>
+ <source>To</source>
+ <translation type="unfinished">An</translation>
+ </message>
+ <message>
+ <source>From</source>
+ <translation type="unfinished">Von</translation>
+ </message>
+ <message>
+ <source>Ban for</source>
+ <translation type="unfinished">Sperren für</translation>
+ </message>
+ <message>
+ <source>Never</source>
+ <translation type="unfinished">Nie</translation>
+ </message>
+ <message>
+ <source>Unknown</source>
+ <translation type="unfinished">Unbekannt</translation>
+ </message>
+</context>
+<context>
+ <name>ReceiveCoinsDialog</name>
+ <message>
+ <source>&amp;Amount:</source>
+ <translation type="unfinished">&amp;Betrag:</translation>
+ </message>
+ <message>
+ <source>&amp;Label:</source>
+ <translation type="unfinished">&amp;Bezeichnung:</translation>
+ </message>
+ <message>
+ <source>&amp;Message:</source>
+ <translation type="unfinished">&amp;Nachricht:</translation>
+ </message>
+ <message>
+ <source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source>
+ <translation type="unfinished">Eine optionale Nachricht, die an die Zahlungsanforderung angehängt wird. Sie wird angezeigt, wenn die Anforderung geöffnet wird. Hinweis: Diese Nachricht wird nicht mit der Zahlung über das Bitcoin-Netzwerk gesendet.</translation>
+ </message>
+ <message>
+ <source>An optional label to associate with the new receiving address.</source>
+ <translation type="unfinished">Eine optionale Bezeichnung, die der neuen Empfangsadresse zugeordnet wird.</translation>
+ </message>
+ <message>
+ <source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
+ <translation type="unfinished">Verwenden Sie dieses Formular, um Zahlungen anzufordern. Alle Felder sind &lt;b&gt;optional&lt;/b&gt;.</translation>
+ </message>
+ <message>
+ <source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
+ <translation type="unfinished">Ein optional angeforderter Betrag. Lassen Sie dieses Feld leer oder setzen Sie es auf 0, um keinen spezifischen Betrag anzufordern.</translation>
+ </message>
+ <message>
+ <source>An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request.</source>
+ <translation type="unfinished">Ein optionales Etikett zu einer neuen Empfängeradresse (für dich zum Identifizieren einer Rechnung). Es wird auch der Zahlungsanforderung beigefügt.</translation>
+ </message>
+ <message>
+ <source>An optional message that is attached to the payment request and may be displayed to the sender.</source>
+ <translation type="unfinished">Eine optionale Nachricht, die der Zahlungsanforderung beigefügt wird und dem Absender angezeigt werden kann.</translation>
+ </message>
+ <message>
+ <source>&amp;Create new receiving address</source>
+ <translation type="unfinished">&amp;Neue Empfangsadresse erstellen</translation>
+ </message>
+ <message>
+ <source>Clear all fields of the form.</source>
+ <translation type="unfinished">Alle Formularfelder zurücksetzen.</translation>
+ </message>
+ <message>
+ <source>Clear</source>
+ <translation type="unfinished">Zurücksetzen</translation>
+ </message>
+ <message>
+ <source>Requested payments history</source>
+ <translation type="unfinished">Verlauf der angeforderten Zahlungen</translation>
+ </message>
+ <message>
+ <source>Show the selected request (does the same as double clicking an entry)</source>
+ <translation type="unfinished">Ausgewählte Zahlungsanforderungen anzeigen (entspricht einem Doppelklick auf einen Eintrag)</translation>
+ </message>
+ <message>
+ <source>Show</source>
+ <translation type="unfinished">Anzeigen</translation>
+ </message>
+ <message>
+ <source>Remove the selected entries from the list</source>
+ <translation type="unfinished">Ausgewählte Einträge aus der Liste entfernen</translation>
+ </message>
+ <message>
+ <source>Remove</source>
+ <translation type="unfinished">Entfernen</translation>
+ </message>
+ <message>
+ <source>Copy &amp;URI</source>
+ <translation type="unfinished">&amp;URI kopieren</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Adresse kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">&amp;Bezeichnung kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;message</source>
+ <translation type="unfinished">&amp;Nachricht kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">&amp;Betrag kopieren</translation>
+ </message>
+ <message>
+ <source>Not recommended due to higher fees and less protection against typos.</source>
+ <translation type="unfinished">Nicht zu empfehlen aufgrund höherer Gebühren und geringerem Schutz vor Tippfehlern.</translation>
+ </message>
+ <message>
+ <source>Generates an address compatible with older wallets.</source>
+ <translation type="unfinished">Generiert eine Adresse, die mit älteren Wallets kompatibel ist.</translation>
+ </message>
+ <message>
+ <source>Generates a native segwit address (BIP-173). Some old wallets don't support it.</source>
+ <translation type="unfinished">Generiert eine native Segwit-Adresse (BIP-173). Einige alte Wallets unterstützen es nicht.</translation>
+ </message>
+ <message>
+ <source>Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
+ <translation type="unfinished">Bech32m (BIP-350) ist ein Upgrade auf Bech32, Wallet-Unterstützung ist immer noch eingeschränkt.</translation>
+ </message>
+ <message>
+ <source>Could not unlock wallet.</source>
+ <translation type="unfinished">Wallet konnte nicht entsperrt werden.</translation>
+ </message>
+ <message>
+ <source>Could not generate new %1 address</source>
+ <translation type="unfinished">Konnte neue %1 Adresse nicht erzeugen.</translation>
+ </message>
+</context>
+<context>
+ <name>ReceiveRequestDialog</name>
+ <message>
+ <source>Request payment to …</source>
+ <translation type="unfinished">Zahlung anfordern an ...</translation>
+ </message>
+ <message>
+ <source>Address:</source>
+ <translation type="unfinished">Adresse:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Betrag:</translation>
+ </message>
+ <message>
+ <source>Label:</source>
+ <translation type="unfinished">Bezeichnung:</translation>
+ </message>
+ <message>
+ <source>Message:</source>
+ <translation type="unfinished">Nachricht:</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Wallet: </translation>
+ </message>
+ <message>
+ <source>Copy &amp;URI</source>
+ <translation type="unfinished">&amp;URI kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Address</source>
+ <translation type="unfinished">&amp;Adresse kopieren</translation>
+ </message>
+ <message>
+ <source>&amp;Verify</source>
+ <translation type="unfinished">&amp;Überprüfen</translation>
+ </message>
+ <message>
+ <source>Verify this address on e.g. a hardware wallet screen</source>
+ <translation type="unfinished">Verifizieren Sie diese Adresse z.B. auf dem Display Ihres Hardware-Wallets</translation>
+ </message>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">&amp;Bild speichern...</translation>
+ </message>
+ <message>
+ <source>Payment information</source>
+ <translation type="unfinished">Zahlungsinformationen</translation>
+ </message>
+ <message>
+ <source>Request payment to %1</source>
+ <translation type="unfinished">Zahlung anfordern an %1</translation>
+ </message>
+</context>
+<context>
+ <name>RecentRequestsTableModel</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Datum</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Bezeichnung</translation>
+ </message>
+ <message>
+ <source>Message</source>
+ <translation type="unfinished">Nachricht</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(keine Bezeichnung)</translation>
+ </message>
+ <message>
+ <source>(no message)</source>
+ <translation type="unfinished">(keine Nachricht)</translation>
+ </message>
+ <message>
+ <source>(no amount requested)</source>
+ <translation type="unfinished">(kein Betrag angefordert)</translation>
+ </message>
+ <message>
+ <source>Requested</source>
+ <translation type="unfinished">Angefordert</translation>
+ </message>
+</context>
<context>
<name>SendCoinsDialog</name>
+ <message>
+ <source>Send Coins</source>
+ <translation type="unfinished">Bitcoins überweisen</translation>
+ </message>
+ <message>
+ <source>Coin Control Features</source>
+ <translation type="unfinished">"Coin Control"-Funktionen</translation>
+ </message>
+ <message>
+ <source>automatically selected</source>
+ <translation type="unfinished">automatisch ausgewählt</translation>
+ </message>
+ <message>
+ <source>Insufficient funds!</source>
+ <translation type="unfinished">Unzureichender Kontostand!</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Anzahl:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Betrag:</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">Gebühr:</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">Abzüglich Gebühr:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">Wechselgeld:</translation>
+ </message>
+ <message>
+ <source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source>
+ <translation type="unfinished">Wenn dies aktiviert ist, aber die Wechselgeld-Adresse leer oder ungültig ist, wird das Wechselgeld an eine neu generierte Adresse gesendet.</translation>
+ </message>
+ <message>
+ <source>Custom change address</source>
+ <translation type="unfinished">Benutzerdefinierte Wechselgeld-Adresse</translation>
+ </message>
+ <message>
+ <source>Transaction Fee:</source>
+ <translation type="unfinished">Transaktionsgebühr:</translation>
+ </message>
+ <message>
+ <source>Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain.</source>
+ <translation type="unfinished">Die Verwendung der "fallbackfee" kann dazu führen, dass eine gesendete Transaktion erst nach mehreren Stunden oder Tagen (oder nie) bestätigt wird. Erwägen Sie, Ihre Gebühr manuell auszuwählen oder warten Sie, bis Sie die gesamte Chain validiert haben.</translation>
+ </message>
+ <message>
+ <source>Warning: Fee estimation is currently not possible.</source>
+ <translation type="unfinished">Achtung: Berechnung der Gebühr ist momentan nicht möglich.</translation>
+ </message>
+ <message>
+ <source>per kilobyte</source>
+ <translation type="unfinished">pro Kilobyte</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">Ausblenden</translation>
+ </message>
+ <message>
+ <source>Recommended:</source>
+ <translation type="unfinished">Empfehlungen:</translation>
+ </message>
+ <message>
+ <source>Custom:</source>
+ <translation type="unfinished">Benutzerdefiniert:</translation>
+ </message>
+ <message>
+ <source>Send to multiple recipients at once</source>
+ <translation type="unfinished">An mehrere Empfänger auf einmal überweisen</translation>
+ </message>
+ <message>
+ <source>Add &amp;Recipient</source>
+ <translation type="unfinished">Empfänger &amp;hinzufügen</translation>
+ </message>
+ <message>
+ <source>Clear all fields of the form.</source>
+ <translation type="unfinished">Alle Formularfelder zurücksetzen.</translation>
+ </message>
+ <message>
+ <source>Inputs…</source>
+ <translation type="unfinished">Eingaben...</translation>
+ </message>
+ <message>
+ <source>Choose…</source>
+ <translation type="unfinished">Auswählen...</translation>
+ </message>
+ <message>
+ <source>Hide transaction fee settings</source>
+ <translation type="unfinished">Einstellungen für Transaktionsgebühr nicht anzeigen</translation>
+ </message>
+ <message>
+ <source>Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size.
+
+Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satoshis per kvB" for a transaction size of 500 virtual bytes (half of 1 kvB) would ultimately yield a fee of only 50 satoshis.</source>
+ <translation type="unfinished">Gib manuell eine Gebühr pro kB (1.000 Bytes) der virtuellen Transaktionsgröße an.
+
+Hinweis: Da die Gebühr auf Basis der Bytes berechnet wird, führt eine Gebührenrate von "100 Satoshis per kvB" für eine Transaktion von 500 virtuellen Bytes (die Hälfte von 1 kvB) letztlich zu einer Gebühr von nur 50 Satoshis.</translation>
+ </message>
+ <message>
+ <source>When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
+ <translation type="unfinished">Nur die minimale Gebühr zu bezahlen ist so lange in Ordnung, wie weniger Transaktionsvolumen als Platz in den Blöcken vorhanden ist. Aber Vorsicht, diese Option kann dazu führen, dass Transaktionen nicht bestätigt werden, wenn mehr Bedarf an Bitcoin-Transaktionen besteht als das Netzwerk verarbeiten kann.</translation>
+ </message>
+ <message>
+ <source>A too low fee might result in a never confirming transaction (read the tooltip)</source>
+ <translation type="unfinished">Eine niedrige Gebühr kann dazu führen das eine Transaktion niemals bestätigt wird (Lesen sie die Anmerkung).</translation>
+ </message>
+ <message>
+ <source>(Smart fee not initialized yet. This usually takes a few blocks…)</source>
+ <translation type="unfinished">(Intelligente Gebühr noch nicht initialisiert. Das dauert normalerweise ein paar Blocks…)</translation>
+ </message>
+ <message>
+ <source>Confirmation time target:</source>
+ <translation type="unfinished">Bestätigungsziel:</translation>
+ </message>
+ <message>
+ <source>Enable Replace-By-Fee</source>
+ <translation type="unfinished">Aktiviere Replace-By-Fee</translation>
+ </message>
+ <message>
+ <source>With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk.</source>
+ <translation type="unfinished">Mit Replace-By-Fee (BIP-125) kann die Transaktionsgebühr nach dem Senden erhöht werden. Ohne dies wird eine höhere Gebühr empfohlen, um das Risiko einer hohen Transaktionszeit zu reduzieren.</translation>
+ </message>
+ <message>
+ <source>Clear &amp;All</source>
+ <translation type="unfinished">&amp;Zurücksetzen</translation>
+ </message>
+ <message>
+ <source>Balance:</source>
+ <translation type="unfinished">Kontostand:</translation>
+ </message>
+ <message>
+ <source>Confirm the send action</source>
+ <translation type="unfinished">Überweisung bestätigen</translation>
+ </message>
+ <message>
+ <source>S&amp;end</source>
+ <translation type="unfinished">&amp;Überweisen</translation>
+ </message>
+ <message>
+ <source>Copy quantity</source>
+ <translation type="unfinished">Anzahl kopieren</translation>
+ </message>
+ <message>
+ <source>Copy amount</source>
+ <translation type="unfinished">Betrag kopieren</translation>
+ </message>
+ <message>
+ <source>Copy fee</source>
+ <translation type="unfinished">Gebühr kopieren</translation>
+ </message>
+ <message>
+ <source>Copy after fee</source>
+ <translation type="unfinished">Abzüglich Gebühr kopieren</translation>
+ </message>
+ <message>
+ <source>Copy bytes</source>
+ <translation type="unfinished">Bytes kopieren</translation>
+ </message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">Wechselgeld kopieren</translation>
+ </message>
+ <message>
+ <source>%1 (%2 blocks)</source>
+ <translation type="unfinished">%1 (%2 Blöcke)</translation>
+ </message>
+ <message>
+ <source>Sign on device</source>
+ <extracomment>"device" usually means a hardware wallet.</extracomment>
+ <translation type="unfinished">Gerät anmelden</translation>
+ </message>
+ <message>
+ <source>Connect your hardware wallet first.</source>
+ <translation type="unfinished">Verbinden Sie zunächst Ihre Hardware-Wallet</translation>
+ </message>
+ <message>
+ <source>Set external signer script path in Options -&gt; Wallet</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Pfad für externes Signierskript in Optionen festlegen -&gt; Wallet</translation>
+ </message>
+ <message>
+ <source>Cr&amp;eate Unsigned</source>
+ <translation type="unfinished">Unsigniert &amp;erzeugen</translation>
+ </message>
+ <message>
+ <source>Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
+ <translation type="unfinished">Erzeugt eine teilsignierte Bitcoin Transaktion (PSBT) zur Benutzung mit z.B. einem Offline %1 Wallet, oder einem kompatiblen Hardware Wallet.</translation>
+ </message>
+ <message>
+ <source> from wallet '%1'</source>
+ <translation type="unfinished">von der Wallet '%1'</translation>
+ </message>
+ <message>
+ <source>%1 to '%2'</source>
+ <translation type="unfinished">%1 an '%2'</translation>
+ </message>
+ <message>
+ <source>%1 to %2</source>
+ <translation type="unfinished">%1 an %2</translation>
+ </message>
+ <message>
+ <source>To review recipient list click "Show Details…"</source>
+ <translation type="unfinished">Um die Empfängerliste zu sehen, klicke auf "Zeige Details…"</translation>
+ </message>
+ <message>
+ <source>Sign failed</source>
+ <translation type="unfinished">Signierung der Nachricht fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>External signer not found</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Es konnte kein externes Gerät zum signieren gefunden werden</translation>
+ </message>
+ <message>
+ <source>External signer failure</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Signierung durch externes Gerät fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Save Transaction Data</source>
+ <translation type="unfinished">Speichere Transaktionsdaten</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (Binary)</source>
+ <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
+ <translation type="unfinished">Teilweise signierte Transaktion (binär)</translation>
+ </message>
+ <message>
+ <source>PSBT saved</source>
+ <extracomment>Popup message when a PSBT has been saved to a file</extracomment>
+ <translation type="unfinished">PSBT gespeichert</translation>
+ </message>
+ <message>
+ <source>External balance:</source>
+ <translation type="unfinished">Externe Bilanz:</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">oder</translation>
+ </message>
+ <message>
+ <source>You can increase the fee later (signals Replace-By-Fee, BIP-125).</source>
+ <translation type="unfinished">Sie können die Gebühr später erhöhen (signalisiert Replace-By-Fee, BIP-125).</translation>
+ </message>
+ <message>
+ <source>Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
+ <extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can only create a PSBT. This string is displayed when private keys are disabled and an external signer is not available.</extracomment>
+ <translation type="unfinished">Überprüfen Sie bitte Ihr Transaktionsvorhaben. Dadurch wird eine Partiell Signierte Bitcoin-Transaktion (PSBT) erstellt, die Sie speichern oder kopieren und dann z. B. mit einer Offline-Wallet %1 oder einer PSBT-kompatible Hardware-Wallet nutzen können.</translation>
+ </message>
+ <message>
+ <source>Do you want to create this transaction?</source>
+ <extracomment>Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</extracomment>
+ <translation type="unfinished">Möchtest du diese Transaktion erstellen?</translation>
+ </message>
+ <message>
+ <source>Please, review your transaction. You can create and send this transaction or create a Partially Signed Bitcoin Transaction (PSBT), which you can save or copy and then sign with, e.g., an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
+ <extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can send their transaction or create a PSBT. This string is displayed when both private keys and PSBT controls are enabled.</extracomment>
+ <translation type="unfinished">Bitte überprüfen Sie Ihre Transaktion. Sie können diese Transaktion erstellen und versenden oder eine Partiell Signierte Bitcoin Transaction (PSBT) erstellen, die Sie speichern oder kopieren und dann z.B. mit einer offline %1 Wallet oder einer PSBT-kompatiblen Hardware-Wallet signieren können.</translation>
+ </message>
+ <message>
+ <source>Please, review your transaction.</source>
+ <extracomment>Text to prompt a user to review the details of the transaction they are attempting to send.</extracomment>
+ <translation type="unfinished">Bitte überprüfen sie ihre Transaktion.</translation>
+ </message>
+ <message>
+ <source>Transaction fee</source>
+ <translation type="unfinished">Transaktionsgebühr</translation>
+ </message>
+ <message>
+ <source>Not signalling Replace-By-Fee, BIP-125.</source>
+ <translation type="unfinished">Replace-By-Fee, BIP-125 wird nicht angezeigt.</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">Gesamtbetrag</translation>
+ </message>
+ <message>
+ <source>Unsigned Transaction</source>
+ <comment>PSBT copied</comment>
+ <extracomment>Caption of "PSBT has been copied" messagebox</extracomment>
+ <translation type="unfinished">Unsignierte Transaktion</translation>
+ </message>
+ <message>
+ <source>The PSBT has been copied to the clipboard. You can also save it.</source>
+ <translation type="unfinished">Die PSBT wurde in die Zwischenablage kopiert. Kann auch abgespeichert werden.</translation>
+ </message>
+ <message>
+ <source>PSBT saved to disk</source>
+ <translation type="unfinished">PSBT auf Festplatte gespeichert</translation>
+ </message>
+ <message>
+ <source>Confirm send coins</source>
+ <translation type="unfinished">Überweisung bestätigen</translation>
+ </message>
+ <message>
+ <source>Watch-only balance:</source>
+ <translation type="unfinished">Nur-Anzeige Saldo:</translation>
+ </message>
+ <message>
+ <source>The recipient address is not valid. Please recheck.</source>
+ <translation type="unfinished">Die Zahlungsadresse ist ungültig, bitte nochmals überprüfen.</translation>
+ </message>
+ <message>
+ <source>The amount to pay must be larger than 0.</source>
+ <translation type="unfinished">Der zu zahlende Betrag muss größer als 0 sein.</translation>
+ </message>
+ <message>
+ <source>The amount exceeds your balance.</source>
+ <translation type="unfinished">Der angegebene Betrag übersteigt Ihren Kontostand.</translation>
+ </message>
+ <message>
+ <source>The total exceeds your balance when the %1 transaction fee is included.</source>
+ <translation type="unfinished">Der angegebene Betrag übersteigt aufgrund der Transaktionsgebühr in Höhe von %1 Ihren Kontostand.</translation>
+ </message>
+ <message>
+ <source>Duplicate address found: addresses should only be used once each.</source>
+ <translation type="unfinished">Doppelte Adresse entdeckt: Adressen sollten jeweils nur einmal benutzt werden.</translation>
+ </message>
+ <message>
+ <source>Transaction creation failed!</source>
+ <translation type="unfinished">Transaktionserstellung fehlgeschlagen!</translation>
+ </message>
+ <message>
+ <source>A fee higher than %1 is considered an absurdly high fee.</source>
+ <translation type="unfinished">Eine höhere Gebühr als %1 wird als unsinnig hohe Gebühr angesehen.</translation>
+ </message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
- <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
- <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
+ <numerusform>Voraussichtlicher Beginn der Bestätigung innerhalb von %n Block</numerusform>
+ <numerusform>Voraussichtlicher Beginn der Bestätigung innerhalb von %n Blöcken</numerusform>
</translation>
</message>
- </context>
+ <message>
+ <source>Warning: Invalid Bitcoin address</source>
+ <translation type="unfinished">Warnung: Ungültige Bitcoin-Adresse</translation>
+ </message>
+ <message>
+ <source>Warning: Unknown change address</source>
+ <translation type="unfinished">Warnung: Unbekannte Wechselgeld-Adresse</translation>
+ </message>
+ <message>
+ <source>Confirm custom change address</source>
+ <translation type="unfinished">Bestätige benutzerdefinierte Wechselgeld-Adresse</translation>
+ </message>
+ <message>
+ <source>The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure?</source>
+ <translation type="unfinished">Die ausgewählte Wechselgeld-Adresse ist nicht Bestandteil dieses Wallets. Einige oder alle Mittel aus Ihrem Wallet könnten an diese Adresse gesendet werden. Wollen Sie das wirklich?</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(keine Bezeichnung)</translation>
+ </message>
+</context>
+<context>
+ <name>SendCoinsEntry</name>
+ <message>
+ <source>A&amp;mount:</source>
+ <translation type="unfinished">Betra&amp;g:</translation>
+ </message>
+ <message>
+ <source>Pay &amp;To:</source>
+ <translation type="unfinished">E&amp;mpfänger:</translation>
+ </message>
+ <message>
+ <source>&amp;Label:</source>
+ <translation type="unfinished">&amp;Bezeichnung:</translation>
+ </message>
+ <message>
+ <source>Choose previously used address</source>
+ <translation type="unfinished">Bereits verwendete Adresse auswählen</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address to send the payment to</source>
+ <translation type="unfinished">Die Zahlungsadresse der Überweisung</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <translation type="unfinished">Adresse aus der Zwischenablage einfügen</translation>
+ </message>
+ <message>
+ <source>Remove this entry</source>
+ <translation type="unfinished">Diesen Eintrag entfernen</translation>
+ </message>
+ <message>
+ <source>The amount to send in the selected unit</source>
+ <translation type="unfinished">Zu sendender Betrag in der ausgewählten Einheit</translation>
+ </message>
+ <message>
+ <source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source>
+ <translation type="unfinished">Die Gebühr wird vom zu überweisenden Betrag abgezogen. Der Empfänger wird also weniger Bitcoins erhalten, als Sie im Betrags-Feld eingegeben haben. Falls mehrere Empfänger ausgewählt wurden, wird die Gebühr gleichmäßig verteilt.</translation>
+ </message>
+ <message>
+ <source>S&amp;ubtract fee from amount</source>
+ <translation type="unfinished">Gebühr vom Betrag ab&amp;ziehen</translation>
+ </message>
+ <message>
+ <source>Use available balance</source>
+ <translation type="unfinished">Benutze verfügbaren Kontostand</translation>
+ </message>
+ <message>
+ <source>Message:</source>
+ <translation type="unfinished">Nachricht:</translation>
+ </message>
+ <message>
+ <source>Enter a label for this address to add it to the list of used addresses</source>
+ <translation type="unfinished">Bezeichnung für diese Adresse eingeben, um sie zur Liste bereits verwendeter Adressen hinzuzufügen.</translation>
+ </message>
+ <message>
+ <source>A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network.</source>
+ <translation type="unfinished">Eine an die "bitcoin:"-URI angefügte Nachricht, die zusammen mit der Transaktion gespeichert wird. Hinweis: Diese Nachricht wird nicht über das Bitcoin-Netzwerk gesendet.</translation>
+ </message>
+</context>
+<context>
+ <name>SendConfirmationDialog</name>
+ <message>
+ <source>Send</source>
+ <translation type="unfinished">Senden</translation>
+ </message>
+ <message>
+ <source>Create Unsigned</source>
+ <translation type="unfinished">Unsigniert erstellen</translation>
+ </message>
+</context>
+<context>
+ <name>SignVerifyMessageDialog</name>
+ <message>
+ <source>Signatures - Sign / Verify a Message</source>
+ <translation type="unfinished">Signaturen - eine Nachricht signieren / verifizieren</translation>
+ </message>
+ <message>
+ <source>&amp;Sign Message</source>
+ <translation type="unfinished">Nachricht &amp;signieren</translation>
+ </message>
+ <message>
+ <source>You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source>
+ <translation type="unfinished">Sie können Nachrichten/Vereinbarungen mit Hilfe Ihrer Adressen signieren, um zu beweisen, dass Sie Bitcoins empfangen können, die an diese Adressen überwiesen werden. Seien Sie vorsichtig und signieren Sie nichts Vages oder Willkürliches, um Ihre Indentität vor Phishingangriffen zu schützen. Signieren Sie nur vollständig-detaillierte Aussagen, mit denen Sie auch einverstanden sind.</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address to sign the message with</source>
+ <translation type="unfinished">Die Bitcoin-Adresse, mit der die Nachricht signiert wird</translation>
+ </message>
+ <message>
+ <source>Choose previously used address</source>
+ <translation type="unfinished">Bereits verwendete Adresse auswählen</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <translation type="unfinished">Adresse aus der Zwischenablage einfügen</translation>
+ </message>
+ <message>
+ <source>Enter the message you want to sign here</source>
+ <translation type="unfinished">Zu signierende Nachricht hier eingeben</translation>
+ </message>
+ <message>
+ <source>Signature</source>
+ <translation type="unfinished">Signatur</translation>
+ </message>
+ <message>
+ <source>Copy the current signature to the system clipboard</source>
+ <translation type="unfinished">Aktuelle Signatur in die Zwischenablage kopieren</translation>
+ </message>
+ <message>
+ <source>Sign the message to prove you own this Bitcoin address</source>
+ <translation type="unfinished">Die Nachricht signieren, um den Besitz dieser Bitcoin-Adresse zu beweisen</translation>
+ </message>
+ <message>
+ <source>Sign &amp;Message</source>
+ <translation type="unfinished">&amp;Nachricht signieren</translation>
+ </message>
+ <message>
+ <source>Reset all sign message fields</source>
+ <translation type="unfinished">Alle "Nachricht signieren"-Felder zurücksetzen</translation>
+ </message>
+ <message>
+ <source>Clear &amp;All</source>
+ <translation type="unfinished">&amp;Zurücksetzen</translation>
+ </message>
+ <message>
+ <source>&amp;Verify Message</source>
+ <translation type="unfinished">Nachricht &amp;verifizieren</translation>
+ </message>
+ <message>
+ <source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source>
+ <translation type="unfinished">Geben Sie die Zahlungsadresse des Empfängers, Nachricht (achten Sie darauf Zeilenumbrüche, Leerzeichen, Tabulatoren usw. exakt zu kopieren) und Signatur unten ein, um die Nachricht zu verifizieren. Vorsicht, interpretieren Sie nicht mehr in die Signatur hinein, als in der signierten Nachricht selber enthalten ist, um nicht von einem Man-in-the-middle-Angriff hinters Licht geführt zu werden. Beachten Sie, dass dies nur beweist, dass die signierende Partei über diese Adresse Überweisungen empfangen kann.</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address the message was signed with</source>
+ <translation type="unfinished">Die Bitcoin-Adresse, mit der die Nachricht signiert wurde</translation>
+ </message>
+ <message>
+ <source>The signed message to verify</source>
+ <translation type="unfinished">Die zu überprüfende signierte Nachricht</translation>
+ </message>
+ <message>
+ <source>The signature given when the message was signed</source>
+ <translation type="unfinished">Die beim Signieren der Nachricht geleistete Signatur</translation>
+ </message>
+ <message>
+ <source>Verify the message to ensure it was signed with the specified Bitcoin address</source>
+ <translation type="unfinished">Die Nachricht verifizieren, um sicherzustellen, dass diese mit der angegebenen Bitcoin-Adresse signiert wurde</translation>
+ </message>
+ <message>
+ <source>Verify &amp;Message</source>
+ <translation type="unfinished">&amp;Nachricht verifizieren</translation>
+ </message>
+ <message>
+ <source>Reset all verify message fields</source>
+ <translation type="unfinished">Alle "Nachricht verifizieren"-Felder zurücksetzen</translation>
+ </message>
+ <message>
+ <source>Click "Sign Message" to generate signature</source>
+ <translation type="unfinished">Auf "Nachricht signieren" klicken, um die Signatur zu erzeugen</translation>
+ </message>
+ <message>
+ <source>The entered address is invalid.</source>
+ <translation type="unfinished">Die eingegebene Adresse ist ungültig.</translation>
+ </message>
+ <message>
+ <source>Please check the address and try again.</source>
+ <translation type="unfinished">Bitte überprüfen Sie die Adresse und versuchen Sie es erneut.</translation>
+ </message>
+ <message>
+ <source>The entered address does not refer to a key.</source>
+ <translation type="unfinished">Die eingegebene Adresse verweist nicht auf einen Schlüssel.</translation>
+ </message>
+ <message>
+ <source>Wallet unlock was cancelled.</source>
+ <translation type="unfinished">Wallet-Entsperrung wurde abgebrochen.</translation>
+ </message>
+ <message>
+ <source>No error</source>
+ <translation type="unfinished">Kein Fehler</translation>
+ </message>
+ <message>
+ <source>Private key for the entered address is not available.</source>
+ <translation type="unfinished">Privater Schlüssel zur eingegebenen Adresse ist nicht verfügbar.</translation>
+ </message>
+ <message>
+ <source>Message signing failed.</source>
+ <translation type="unfinished">Signierung der Nachricht fehlgeschlagen.</translation>
+ </message>
+ <message>
+ <source>Message signed.</source>
+ <translation type="unfinished">Nachricht signiert.</translation>
+ </message>
+ <message>
+ <source>The signature could not be decoded.</source>
+ <translation type="unfinished">Die Signatur konnte nicht dekodiert werden.</translation>
+ </message>
+ <message>
+ <source>Please check the signature and try again.</source>
+ <translation type="unfinished">Bitte überprüfen Sie die Signatur und versuchen Sie es erneut.</translation>
+ </message>
+ <message>
+ <source>The signature did not match the message digest.</source>
+ <translation type="unfinished">Die Signatur entspricht nicht dem "Message Digest".</translation>
+ </message>
+ <message>
+ <source>Message verification failed.</source>
+ <translation type="unfinished">Verifizierung der Nachricht fehlgeschlagen.</translation>
+ </message>
+ <message>
+ <source>Message verified.</source>
+ <translation type="unfinished">Nachricht verifiziert.</translation>
+ </message>
+</context>
+<context>
+ <name>SplashScreen</name>
+ <message>
+ <source>(press q to shutdown and continue later)</source>
+ <translation type="unfinished">(drücke q, um herunterzufahren und später fortzuführen)</translation>
+ </message>
+ <message>
+ <source>press q to shutdown</source>
+ <translation type="unfinished">q zum Herunterfahren drücken</translation>
+ </message>
+</context>
<context>
<name>TransactionDesc</name>
+ <message>
+ <source>conflicted with a transaction with %1 confirmations</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that conflicts with a confirmed transaction.</extracomment>
+ <translation type="unfinished">steht im Konflikt mit einer Transaktion mit %1 Bestätigungen</translation>
+ </message>
+ <message>
+ <source>0/unconfirmed, in memory pool</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
+ <translation type="unfinished">0/unbestätigt, im Speicherpool</translation>
+ </message>
+ <message>
+ <source>0/unconfirmed, not in memory pool</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
+ <translation type="unfinished">0/unbestätigt, nicht im Speicherpool</translation>
+ </message>
+ <message>
+ <source>abandoned</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an abandoned transaction.</extracomment>
+ <translation type="unfinished">eingestellt</translation>
+ </message>
+ <message>
+ <source>%1/unconfirmed</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in at least one block, but less than 6 blocks.</extracomment>
+ <translation type="unfinished">%1/unbestätigt</translation>
+ </message>
+ <message>
+ <source>%1 confirmations</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in 6 or more blocks.</extracomment>
+ <translation type="unfinished">%1 Bestätigungen</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Datum</translation>
+ </message>
+ <message>
+ <source>Source</source>
+ <translation type="unfinished">Quelle</translation>
+ </message>
+ <message>
+ <source>Generated</source>
+ <translation type="unfinished">Erzeugt</translation>
+ </message>
+ <message>
+ <source>From</source>
+ <translation type="unfinished">Von</translation>
+ </message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">unbekannt</translation>
+ </message>
+ <message>
+ <source>To</source>
+ <translation type="unfinished">An</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">eigene Adresse</translation>
+ </message>
+ <message>
+ <source>watch-only</source>
+ <translation type="unfinished">beobachtet</translation>
+ </message>
+ <message>
+ <source>label</source>
+ <translation type="unfinished">Bezeichnung</translation>
+ </message>
+ <message>
+ <source>Credit</source>
+ <translation type="unfinished">Gutschrift</translation>
+ </message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
- <numerusform>matures in %n more block(s)</numerusform>
- <numerusform>matures in %n more block(s)</numerusform>
+ <numerusform>reift noch %n weiteren Block</numerusform>
+ <numerusform>reift noch %n weitere Blöcken</numerusform>
</translation>
</message>
- </context>
+ <message>
+ <source>not accepted</source>
+ <translation type="unfinished">nicht angenommen</translation>
+ </message>
+ <message>
+ <source>Debit</source>
+ <translation type="unfinished">Belastung</translation>
+ </message>
+ <message>
+ <source>Total debit</source>
+ <translation type="unfinished">Gesamtbelastung</translation>
+ </message>
+ <message>
+ <source>Total credit</source>
+ <translation type="unfinished">Gesamtgutschrift</translation>
+ </message>
+ <message>
+ <source>Transaction fee</source>
+ <translation type="unfinished">Transaktionsgebühr</translation>
+ </message>
+ <message>
+ <source>Net amount</source>
+ <translation type="unfinished">Nettobetrag</translation>
+ </message>
+ <message>
+ <source>Message</source>
+ <translation type="unfinished">Nachricht</translation>
+ </message>
+ <message>
+ <source>Comment</source>
+ <translation type="unfinished">Kommentar</translation>
+ </message>
+ <message>
+ <source>Transaction ID</source>
+ <translation type="unfinished">Transaktionskennung</translation>
+ </message>
+ <message>
+ <source>Transaction total size</source>
+ <translation type="unfinished">Gesamte Transaktionsgröße</translation>
+ </message>
+ <message>
+ <source>Transaction virtual size</source>
+ <translation type="unfinished">Virtuelle Größe der Transaktion</translation>
+ </message>
+ <message>
+ <source>Output index</source>
+ <translation type="unfinished">Ausgabeindex</translation>
+ </message>
+ <message>
+ <source> (Certificate was not verified)</source>
+ <translation type="unfinished">(Zertifikat wurde nicht verifiziert)</translation>
+ </message>
+ <message>
+ <source>Merchant</source>
+ <translation type="unfinished">Händler</translation>
+ </message>
+ <message>
+ <source>Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source>
+ <translation type="unfinished">Erzeugte Bitcoins müssen %1 Blöcke lang reifen, bevor sie ausgegeben werden können. Als Sie diesen Block erzeugten, wurde er an das Netzwerk übertragen, um ihn der Blockchain hinzuzufügen. Falls dies fehlschlägt wird der Status in "nicht angenommen" geändert und Sie werden keine Bitcoins gutgeschrieben bekommen. Das kann gelegentlich passieren, wenn ein anderer Knoten einen Block fast zeitgleich erzeugt.</translation>
+ </message>
+ <message>
+ <source>Debug information</source>
+ <translation type="unfinished">Debug-Informationen</translation>
+ </message>
+ <message>
+ <source>Transaction</source>
+ <translation type="unfinished">Transaktion</translation>
+ </message>
+ <message>
+ <source>Inputs</source>
+ <translation type="unfinished">Eingaben</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Betrag</translation>
+ </message>
+ <message>
+ <source>true</source>
+ <translation type="unfinished">wahr</translation>
+ </message>
+ <message>
+ <source>false</source>
+ <translation type="unfinished">falsch</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionDescDialog</name>
+ <message>
+ <source>This pane shows a detailed description of the transaction</source>
+ <translation type="unfinished">Dieser Bereich zeigt eine detaillierte Beschreibung der Transaktion an</translation>
+ </message>
+ <message>
+ <source>Details for %1</source>
+ <translation type="unfinished">Details für %1</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionTableModel</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Datum</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <translation type="unfinished">Typ</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Bezeichnung</translation>
+ </message>
+ <message>
+ <source>Unconfirmed</source>
+ <translation type="unfinished">Unbestätigt</translation>
+ </message>
+ <message>
+ <source>Abandoned</source>
+ <translation type="unfinished">Eingestellt</translation>
+ </message>
+ <message>
+ <source>Confirming (%1 of %2 recommended confirmations)</source>
+ <translation type="unfinished">Wird bestätigt (%1 von %2 empfohlenen Bestätigungen)</translation>
+ </message>
+ <message>
+ <source>Confirmed (%1 confirmations)</source>
+ <translation type="unfinished">Bestätigt (%1 Bestätigungen)</translation>
+ </message>
+ <message>
+ <source>Conflicted</source>
+ <translation type="unfinished">in Konflikt stehend</translation>
+ </message>
+ <message>
+ <source>Immature (%1 confirmations, will be available after %2)</source>
+ <translation type="unfinished">Unreif (%1 Bestätigungen, wird verfügbar sein nach %2)</translation>
+ </message>
+ <message>
+ <source>Generated but not accepted</source>
+ <translation type="unfinished">Generiert, aber nicht akzeptiert</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">Empfangen über</translation>
+ </message>
+ <message>
+ <source>Received from</source>
+ <translation type="unfinished">Empfangen von</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">Überwiesen an</translation>
+ </message>
+ <message>
+ <source>Mined</source>
+ <translation type="unfinished">Erarbeitet</translation>
+ </message>
+ <message>
+ <source>watch-only</source>
+ <translation type="unfinished">beobachtet</translation>
+ </message>
+ <message>
+ <source>(n/a)</source>
+ <translation type="unfinished">(k.A.)</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(keine Bezeichnung)</translation>
+ </message>
+ <message>
+ <source>Transaction status. Hover over this field to show number of confirmations.</source>
+ <translation type="unfinished">Transaktionsstatus. Fahren Sie mit der Maus über dieses Feld, um die Anzahl der Bestätigungen zu sehen.</translation>
+ </message>
+ <message>
+ <source>Date and time that the transaction was received.</source>
+ <translation type="unfinished">Datum und Zeit als die Transaktion empfangen wurde.</translation>
+ </message>
+ <message>
+ <source>Type of transaction.</source>
+ <translation type="unfinished">Art der Transaktion</translation>
+ </message>
+ <message>
+ <source>Whether or not a watch-only address is involved in this transaction.</source>
+ <translation type="unfinished">Zeigt an, ob eine beobachtete Adresse in diese Transaktion involviert ist.</translation>
+ </message>
+ <message>
+ <source>User-defined intent/purpose of the transaction.</source>
+ <translation type="unfinished">Benutzerdefinierter Verwendungszweck der Transaktion</translation>
+ </message>
+ <message>
+ <source>Amount removed from or added to balance.</source>
+ <translation type="unfinished">Der Betrag, der dem Kontostand abgezogen oder hinzugefügt wurde.</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionView</name>
+ <message>
+ <source>All</source>
+ <translation type="unfinished">Alle</translation>
+ </message>
+ <message>
+ <source>Today</source>
+ <translation type="unfinished">Heute</translation>
+ </message>
+ <message>
+ <source>This week</source>
+ <translation type="unfinished">Diese Woche</translation>
+ </message>
+ <message>
+ <source>This month</source>
+ <translation type="unfinished">Diesen Monat</translation>
+ </message>
+ <message>
+ <source>Last month</source>
+ <translation type="unfinished">Letzten Monat</translation>
+ </message>
+ <message>
+ <source>This year</source>
+ <translation type="unfinished">Dieses Jahr</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">Empfangen über</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">Überwiesen an</translation>
+ </message>
+ <message>
+ <source>Mined</source>
+ <translation type="unfinished">Erarbeitet</translation>
+ </message>
+ <message>
+ <source>Other</source>
+ <translation type="unfinished">Andere</translation>
+ </message>
+ <message>
+ <source>Enter address, transaction id, or label to search</source>
+ <translation type="unfinished">Zu suchende Adresse, Transaktion oder Bezeichnung eingeben</translation>
+ </message>
+ <message>
+ <source>Min amount</source>
+ <translation type="unfinished">Mindestbetrag</translation>
+ </message>
+ <message>
+ <source>Range…</source>
+ <translation type="unfinished">Bereich…</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Adresse kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">&amp;Bezeichnung kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">&amp;Betrag kopieren</translation>
+ </message>
+ <message>
+ <source>Copy transaction &amp;ID</source>
+ <translation type="unfinished">Transaktionskennung kopieren</translation>
+ </message>
+ <message>
+ <source>Copy &amp;raw transaction</source>
+ <translation type="unfinished">&amp;Rohdaten der Transaktion kopieren</translation>
+ </message>
+ <message>
+ <source>Copy full transaction &amp;details</source>
+ <translation type="unfinished">Vollständige Transaktions&amp;details kopieren</translation>
+ </message>
+ <message>
+ <source>&amp;Show transaction details</source>
+ <translation type="unfinished">Transaktionsdetails &amp;anzeigen</translation>
+ </message>
+ <message>
+ <source>Increase transaction &amp;fee</source>
+ <translation type="unfinished">Transaktions&amp;gebühr erhöhen</translation>
+ </message>
+ <message>
+ <source>A&amp;bandon transaction</source>
+ <translation type="unfinished">Transaktion a&amp;bbrechen</translation>
+ </message>
+ <message>
+ <source>&amp;Edit address label</source>
+ <translation type="unfinished">Adressbezeichnung &amp;bearbeiten</translation>
+ </message>
+ <message>
+ <source>Show in %1</source>
+ <extracomment>Transactions table context menu action to show the selected transaction in a third-party block explorer. %1 is a stand-in argument for the URL of the explorer.</extracomment>
+ <translation type="unfinished">Zeige in %1</translation>
+ </message>
+ <message>
+ <source>Export Transaction History</source>
+ <translation type="unfinished">Transaktionsverlauf exportieren</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Durch Komma getrennte Datei</translation>
+ </message>
+ <message>
+ <source>Confirmed</source>
+ <translation type="unfinished">Bestätigt</translation>
+ </message>
+ <message>
+ <source>Watch-only</source>
+ <translation type="unfinished">Nur beobachten</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Datum</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <translation type="unfinished">Typ</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Bezeichnung</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Adresse</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Exportieren fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the transaction history to %1.</source>
+ <translation type="unfinished">Beim Speichern des Transaktionsverlaufs nach %1 ist ein Fehler aufgetreten.</translation>
+ </message>
+ <message>
+ <source>Exporting Successful</source>
+ <translation type="unfinished">Exportieren erfolgreich</translation>
+ </message>
+ <message>
+ <source>The transaction history was successfully saved to %1.</source>
+ <translation type="unfinished">Speichern des Transaktionsverlaufs nach %1 war erfolgreich.</translation>
+ </message>
+ <message>
+ <source>Range:</source>
+ <translation type="unfinished">Zeitraum:</translation>
+ </message>
+ <message>
+ <source>to</source>
+ <translation type="unfinished">bis</translation>
+ </message>
+</context>
+<context>
+ <name>WalletFrame</name>
+ <message>
+ <source>No wallet has been loaded.
+Go to File &gt; Open Wallet to load a wallet.
+- OR -</source>
+ <translation type="unfinished">Es wurde keine Wallet geladen.
+Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
+- ODER-</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Neues Wallet erstellen</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Fehler</translation>
+ </message>
+ <message>
+ <source>Unable to decode PSBT from clipboard (invalid base64)</source>
+ <translation type="unfinished">Konnte PSBT aus Zwischenablage nicht entschlüsseln (ungültiges Base64)</translation>
+ </message>
+ <message>
+ <source>Load Transaction Data</source>
+ <translation type="unfinished">Lade Transaktionsdaten</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (*.psbt)</source>
+ <translation type="unfinished">Teilsignierte Transaktion (*.psbt)</translation>
+ </message>
+ <message>
+ <source>PSBT file must be smaller than 100 MiB</source>
+ <translation type="unfinished">PSBT-Datei muss kleiner als 100 MiB sein</translation>
+ </message>
+ <message>
+ <source>Unable to decode PSBT</source>
+ <translation type="unfinished">PSBT konnte nicht entschlüsselt werden</translation>
+ </message>
+</context>
+<context>
+ <name>WalletModel</name>
+ <message>
+ <source>Send Coins</source>
+ <translation type="unfinished">Bitcoins überweisen</translation>
+ </message>
+ <message>
+ <source>Fee bump error</source>
+ <translation type="unfinished">Gebührenerhöhungsfehler</translation>
+ </message>
+ <message>
+ <source>Increasing transaction fee failed</source>
+ <translation type="unfinished">Erhöhung der Transaktionsgebühr fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Do you want to increase the fee?</source>
+ <extracomment>Asks a user if they would like to manually increase the fee of a transaction that has already been created.</extracomment>
+ <translation type="unfinished">Möchten Sie die Gebühr erhöhen?</translation>
+ </message>
+ <message>
+ <source>Current fee:</source>
+ <translation type="unfinished">Aktuelle Gebühr:</translation>
+ </message>
+ <message>
+ <source>Increase:</source>
+ <translation type="unfinished">Erhöhung:</translation>
+ </message>
+ <message>
+ <source>New fee:</source>
+ <translation type="unfinished">Neue Gebühr:</translation>
+ </message>
+ <message>
+ <source>Warning: This may pay the additional fee by reducing change outputs or adding inputs, when necessary. It may add a new change output if one does not already exist. These changes may potentially leak privacy.</source>
+ <translation type="unfinished">Warnung: Hierdurch kann die zusätzliche Gebühr durch Verkleinerung von Wechselgeld Outputs oder nötigenfalls durch Hinzunahme weitere Inputs beglichen werden. Ein neuer Wechselgeld Output kann dabei entstehen, falls noch keiner existiert. Diese Änderungen können möglicherweise private Daten preisgeben.</translation>
+ </message>
+ <message>
+ <source>Confirm fee bump</source>
+ <translation type="unfinished">Gebührenerhöhung bestätigen</translation>
+ </message>
+ <message>
+ <source>Can't draft transaction.</source>
+ <translation type="unfinished">Kann Transaktion nicht entwerfen.</translation>
+ </message>
+ <message>
+ <source>PSBT copied</source>
+ <translation type="unfinished">PSBT kopiert</translation>
+ </message>
+ <message>
+ <source>Copied to clipboard</source>
+ <comment>Fee-bump PSBT saved</comment>
+ <translation type="unfinished">In die Zwischenablage kopiert </translation>
+ </message>
+ <message>
+ <source>Can't sign transaction.</source>
+ <translation type="unfinished">Signierung der Transaktion fehlgeschlagen.</translation>
+ </message>
+ <message>
+ <source>Could not commit transaction</source>
+ <translation type="unfinished">Konnte Transaktion nicht übergeben</translation>
+ </message>
+ <message>
+ <source>Can't display address</source>
+ <translation type="unfinished">Die Adresse kann nicht angezeigt werden</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">Standard-Wallet</translation>
+ </message>
+</context>
+<context>
+ <name>WalletView</name>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Exportieren</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Daten der aktuellen Ansicht in eine Datei exportieren</translation>
+ </message>
+ <message>
+ <source>Backup Wallet</source>
+ <translation type="unfinished">Wallet sichern</translation>
+ </message>
+ <message>
+ <source>Backup Failed</source>
+ <translation type="unfinished">Sicherung fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the wallet data to %1.</source>
+ <translation type="unfinished">Beim Speichern der Wallet-Daten nach %1 ist ein Fehler aufgetreten.</translation>
+ </message>
+ <message>
+ <source>Backup Successful</source>
+ <translation type="unfinished">Sicherung erfolgreich</translation>
+ </message>
+ <message>
+ <source>The wallet data was successfully saved to %1.</source>
+ <translation type="unfinished">Speichern der Wallet-Daten nach %1 war erfolgreich.</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">Abbrechen</translation>
+ </message>
+</context>
+<context>
+ <name>bitcoin-core</name>
+ <message>
+ <source>The %s developers</source>
+ <translation type="unfinished">Die %s-Entwickler</translation>
+ </message>
+ <message>
+ <source>%s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup.</source>
+ <translation type="unfinished">%s korrupt. Versuche mit dem Wallet-Werkzeug bitcoin-wallet zu retten, oder eine Sicherung wiederherzustellen.</translation>
+ </message>
+ <message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s konnte den -assumeutxo-Snapshot-Status nicht validieren. Dies deutet auf ein Hardwareproblem, einen Fehler in der Software oder eine fehlerhafte Softwareänderung hin, die das Laden eines ungültigen Schnappschusses ermöglichte. Infolgedessen wird der Knoten heruntergefahren und verwendet keinen Zustand mehr, der auf dem Snapshot aufgebaut wurde, wodurch die Chain Height von %d auf %d zurückgesetzt wird. Beim nächsten Neustart nimmt der Knoten die Synchronisierung ab %d ohne Verwendung von Snapshot-Daten wieder auf. Bitte melden Sie diesen Vorfall an %s und geben Sie an, wie Sie den Snapshot erhalten haben. Der ungültige Snapshot-Chainstatus wird auf der Festplatte belassen, falls er bei der Diagnose des Problems, das diesen Fehler verursacht hat, hilfreich ist.</translation>
+ </message>
+ <message>
+ <source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
+ <translation type="unfinished">%s Aufforderung, auf Port %u zu lauschen. Dieser Port wird als "schlecht" eingeschätzt und es ist daher unwahrscheinlich, dass sich Bitcoin Core Gegenstellen mit ihm verbinden. Siehe doc/p2p-bad-ports.md für Details und eine vollständige Liste.</translation>
+ </message>
+ <message>
+ <source>Cannot downgrade wallet from version %i to version %i. Wallet version unchanged.</source>
+ <translation type="unfinished">Kann Wallet Version nicht von Version %i auf Version %i abstufen. Wallet Version bleibt unverändert.</translation>
+ </message>
+ <message>
+ <source>Cannot obtain a lock on data directory %s. %s is probably already running.</source>
+ <translation type="unfinished">Datenverzeichnis %s kann nicht gesperrt werden. Evtl. wurde %s bereits gestartet.</translation>
+ </message>
+ <message>
+ <source>Cannot upgrade a non HD split wallet from version %i to version %i without upgrading to support pre-split keypool. Please use version %i or no version specified.</source>
+ <translation type="unfinished">Kann ein aufgespaltenes nicht-HD Wallet nicht von Version %i auf Version %i aktualisieren, ohne auf Unterstützung von Keypools vor der Aufspaltung zu aktualisieren. Bitte benutze Version%i oder keine bestimmte Version.</translation>
+ </message>
+ <message>
+ <source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
+ <translation type="unfinished">Der Speicherplatz für %s reicht möglicherweise nicht für die Block-Dateien aus. In diesem Verzeichnis werden ca. %u GB an Daten gespeichert.</translation>
+ </message>
+ <message>
+ <source>Distributed under the MIT software license, see the accompanying file %s or %s</source>
+ <translation type="unfinished">Veröffentlicht unter der MIT-Softwarelizenz, siehe beiliegende Datei %s oder %s.</translation>
+ </message>
+ <message>
+ <source>Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
+ <translation type="unfinished">Fehler beim Laden der Wallet. Wallet erfordert das Herunterladen von Blöcken, und die Software unterstützt derzeit nicht das Laden von Wallets, während Blöcke außer der Reihe heruntergeladen werden, wenn assumeutxo-Snapshots verwendet werden. Die Wallet sollte erfolgreich geladen werden können, nachdem die Node-Synchronisation die Höhe %s erreicht hat.</translation>
+ </message>
+ <message>
+ <source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
+ <translation type="unfinished">Fehler beim Lesen von %s! Transaktionsdaten fehlen oder sind nicht korrekt. Wallet wird erneut gescannt.</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
+ <translation type="unfinished">Fehler: Dumpdatei Format Eintrag ist Ungültig. Habe "%s" bekommen, aber "format" erwartet.</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile identifier record is incorrect. Got "%s", expected "%s".</source>
+ <translation type="unfinished">Fehler: Dumpdatei Identifikationseintrag ist ungültig. Habe "%s" bekommen, aber "%s" erwartet.</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
+ <translation type="unfinished">Fehler: Die Version der Speicherauszugsdatei ist %s und wird nicht unterstützt. Diese Version von bitcoin-wallet unterstützt nur Speicherauszugsdateien der Version 1.</translation>
+ </message>
+ <message>
+ <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
+ <translation type="unfinished">Fehler: Legacy Wallets unterstützen nur die Adresstypen "legacy", "p2sh-segwit" und "bech32".</translation>
+ </message>
+ <message>
+ <source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
+ <translation type="unfinished">Fehler: Es können keine Deskriptoren für diese Legacy-Wallet erstellt werden. Stellen Sie sicher, dass Sie die Passphrase der Wallet angeben, wenn diese verschlüsselt ist.</translation>
+ </message>
+ <message>
+ <source>File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
+ <translation type="unfinished">Datei %s existiert bereits. Wenn Sie das wirklich tun wollen, dann bewegen Sie zuvor die existierende Datei woanders hin.</translation>
+ </message>
+ <message>
+ <source>Invalid or corrupt peers.dat (%s). If you believe this is a bug, please report it to %s. As a workaround, you can move the file (%s) out of the way (rename, move, or delete) to have a new one created on the next start.</source>
+ <translation type="unfinished">Ungültige oder beschädigte peers.dat (%s). Wenn Sie glauben, dass dies ein Programmierfehler ist, melden Sie ihn bitte an %s. Zur Abhilfe können Sie die Datei (%s) aus dem Weg räumen (umbenennen, verschieben oder löschen), so dass beim nächsten Start eine neue Datei erstellt wird.</translation>
+ </message>
+ <message>
+ <source>More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
+ <translation type="unfinished">Mehr als eine Onion-Bindungsadresse angegeben. Verwende %s für den automatisch erstellten Tor-Onion-Dienst.</translation>
+ </message>
+ <message>
+ <source>No dump file provided. To use createfromdump, -dumpfile=&lt;filename&gt; must be provided.</source>
+ <translation type="unfinished">Keine Dumpdatei angegeben. Um createfromdump zu benutzen, muss -dumpfile=&lt;filename&gt; angegeben werden.</translation>
+ </message>
+ <message>
+ <source>No dump file provided. To use dump, -dumpfile=&lt;filename&gt; must be provided.</source>
+ <translation type="unfinished">Keine Dumpdatei angegeben. Um dump verwenden zu können, muss -dumpfile=&lt;filename&gt; angegeben werden.</translation>
+ </message>
+ <message>
+ <source>No wallet file format provided. To use createfromdump, -format=&lt;format&gt; must be provided.</source>
+ <translation type="unfinished">Kein Format der Wallet-Datei angegeben. Um createfromdump zu nutzen, muss -format=&lt;format&gt; angegeben werden.</translation>
+ </message>
+ <message>
+ <source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
+ <translation type="unfinished">Bitte korrigieren Sie die Datums- und Uhrzeiteinstellungen Ihres Computers, da %s ansonsten nicht ordnungsgemäß funktionieren wird.</translation>
+ </message>
+ <message>
+ <source>Please contribute if you find %s useful. Visit %s for further information about the software.</source>
+ <translation type="unfinished">Wenn sie %s nützlich finden, sind Helfer sehr gern gesehen. Besuchen Sie %s um mehr über das Softwareprojekt zu erfahren.</translation>
+ </message>
+ <message>
+ <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source>
+ <translation type="unfinished">Prune-Modus wurde kleiner als das Minimum in Höhe von %d MiB konfiguriert. Bitte verwenden Sie einen größeren Wert.</translation>
+ </message>
+ <message>
+ <source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
+ <translation type="unfinished">Der Prune-Modus ist mit -reindex-chainstate nicht kompatibel. Verwende stattdessen den vollen -reindex.</translation>
+ </message>
+ <message>
+ <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
+ <translation type="unfinished">Prune (Kürzung): Die letzte Synchronisation der Wallet liegt vor gekürzten (gelöschten) Blöcken. Es ist ein -reindex (erneuter Download der gesamten Blockchain im Fall eines gekürzten Nodes) notwendig.</translation>
+ </message>
+ <message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Umbenennung von '%s' -&gt; '%s' fehlgeschlagen. Sie sollten dieses Problem beheben, indem Sie das ungültige Snapshot-Verzeichnis %s manuell verschieben oder löschen, andernfalls wird der gleiche Fehler beim nächsten Start erneut auftreten.</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
+ <translation type="unfinished">SQLite-Datenbank: Unbekannte SQLite-Wallet-Schema-Version %d. Nur Version %d wird unterstützt.</translation>
+ </message>
+ <message>
+ <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
+ <translation type="unfinished">Die Block-Datenbank enthält einen Block, der scheinbar aus der Zukunft kommt. Dies kann daran liegen, dass die Systemzeit Ihres Computers falsch eingestellt ist. Stellen Sie die Block-Datenbank erst dann wieder her, wenn Sie sich sicher sind, dass Ihre Systemzeit korrekt eingestellt ist.</translation>
+ </message>
+ <message>
+ <source>The transaction amount is too small to send after the fee has been deducted</source>
+ <translation type="unfinished">Der Transaktionsbetrag ist zu klein, um ihn nach Abzug der Gebühr zu senden.</translation>
+ </message>
+ <message>
+ <source>This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet</source>
+ <translation type="unfinished">Dieser Fehler kann auftreten, wenn diese Wallet nicht ordnungsgemäß heruntergefahren und zuletzt mithilfe eines Builds mit einer neueren Version von Berkeley DB geladen wurde. Verwenden Sie in diesem Fall die Software, die diese Wallet zuletzt geladen hat</translation>
+ </message>
+ <message>
+ <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source>
+ <translation type="unfinished">Dies ist eine Vorab-Testversion - Verwendung auf eigene Gefahr - nicht für Mining- oder Handelsanwendungen nutzen!</translation>
+ </message>
+ <message>
+ <source>This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection.</source>
+ <translation type="unfinished">Dies ist die maximale Transaktionsgebühr, die Sie (zusätzlich zur normalen Gebühr) zahlen, um die Vermeidung von teilweisen Ausgaben gegenüber der regulären Münzauswahl zu priorisieren.</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you may discard if change is smaller than dust at this level</source>
+ <translation type="unfinished">Dies ist die Transaktionsgebühr, die ggf. abgeschrieben wird, wenn das Wechselgeld "Staub" ist in dieser Stufe.</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you may pay when fee estimates are not available.</source>
+ <translation type="unfinished">Das ist die Transaktionsgebühr, welche Sie zahlen müssten, wenn die Gebührenschätzungen nicht verfügbar sind.</translation>
+ </message>
+ <message>
+ <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source>
+ <translation type="unfinished">Gesamtlänge des Netzwerkversionstrings (%i) erreicht die maximale Länge (%i). Reduzieren Sie Anzahl oder Größe von uacomments.</translation>
+ </message>
+ <message>
+ <source>Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate.</source>
+ <translation type="unfinished">Fehler beim Verarbeiten von Blöcken. Sie müssen die Datenbank mit Hilfe des Arguments '-reindex-chainstate' neu aufbauen.</translation>
+ </message>
+ <message>
+ <source>Unknown wallet file format "%s" provided. Please provide one of "bdb" or "sqlite".</source>
+ <translation type="unfinished">Angegebenes Format "%s" der Wallet-Datei ist unbekannt.
+Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
+ </message>
+ <message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nicht unterstützte kategoriespezifische Protokollierungsebene %1$s=%2$s. Erwartet %1$s=&lt;category&gt;:&lt;loglevel&gt;. Gültige Kategorien: %3$s. Gültige Loglevels: %4$s.</translation>
+ </message>
+ <message>
+ <source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
+ <translation type="unfinished">Nicht unterstütztes Chainstate-Datenbankformat gefunden. Bitte starte mit -reindex-chainstate neu. Dadurch wird die Chainstate-Datenbank neu erstellt.</translation>
+ </message>
+ <message>
+ <source>Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
+ <translation type="unfinished">Wallet erfolgreich erstellt. Der Legacy-Wallet-Typ ist veraltet und die Unterstützung für das Erstellen und Öffnen von Legacy-Wallets wird in Zukunft entfernt.</translation>
+ </message>
+ <message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Wallet erfolgreich geladen. Der Legacy-Wallet-Typ ist veraltet und die Unterstützung für das Erstellen und Öffnen von Legacy-Wallets wird in Zukunft entfernt. Legacy-Wallets können mit migratewallet auf eine Deskriptor-Wallet migriert werden.</translation>
+ </message>
+ <message>
+ <source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
+ <translation type="unfinished">Warnung: Dumpdatei Wallet Format "%s" passt nicht zum auf der Kommandozeile angegebenen Format "%s".</translation>
+ </message>
+ <message>
+ <source>Warning: Private keys detected in wallet {%s} with disabled private keys</source>
+ <translation type="unfinished">Warnung: Es wurden private Schlüssel in der Wallet {%s} entdeckt, welche private Schlüssel jedoch deaktiviert hat.</translation>
+ </message>
+ <message>
+ <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source>
+ <translation type="unfinished">Warnung: Wir scheinen nicht vollständig mit unseren Gegenstellen übereinzustimmen! Sie oder die anderen Knoten müssen unter Umständen Ihre Client-Software aktualisieren.</translation>
+ </message>
+ <message>
+ <source>Witness data for blocks after height %d requires validation. Please restart with -reindex.</source>
+ <translation type="unfinished">Zeugnisdaten für Blöcke nach Höhe %d müssen validiert werden. Bitte mit -reindex neu starten.</translation>
+ </message>
+ <message>
+ <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source>
+ <translation type="unfinished">Sie müssen die Datenbank mit Hilfe von -reindex neu aufbauen, um zum ungekürzten Modus zurückzukehren. Dies erfordert, dass die gesamte Blockchain erneut heruntergeladen wird.</translation>
+ </message>
+ <message>
+ <source>-maxmempool must be at least %d MB</source>
+ <translation type="unfinished">-maxmempool muss mindestens %d MB betragen</translation>
+ </message>
+ <message>
+ <source>A fatal internal error occurred, see debug.log for details</source>
+ <translation type="unfinished">Ein fataler interner Fehler ist aufgetreten, siehe debug.log für Details</translation>
+ </message>
+ <message>
+ <source>Cannot resolve -%s address: '%s'</source>
+ <translation type="unfinished">Kann Adresse in -%s nicht auflösen: '%s'</translation>
+ </message>
+ <message>
+ <source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
+ <translation type="unfinished">Kann -forcednsseed nicht auf true setzen, wenn -dnsseed auf false gesetzt ist.</translation>
+ </message>
+ <message>
+ <source>Cannot set -peerblockfilters without -blockfilterindex.</source>
+ <translation type="unfinished">Kann -peerblockfilters nicht ohne -blockfilterindex setzen.</translation>
+ </message>
+ <message>
+ <source>Cannot write to data directory '%s'; check permissions.</source>
+ <translation type="unfinished">Es konnte nicht in das Datenverzeichnis '%s' geschrieben werden; Überprüfen Sie die Berechtigungen.</translation>
+ </message>
+ <message>
+ <source>%s is set very high! Fees this large could be paid on a single transaction.</source>
+ <translation type="unfinished">%s ist sehr hoch gesetzt! Gebühren dieser Höhe könnten für eine einzelne Transaktion gezahlt werden.</translation>
+ </message>
+ <message>
+ <source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
+ <translation type="unfinished">Es ist nicht möglich, bestimmte Verbindungen anzubieten und gleichzeitig addrman ausgehende Verbindungen finden zu lassen.</translation>
+ </message>
+ <message>
+ <source>Error loading %s: External signer wallet being loaded without external signer support compiled</source>
+ <translation type="unfinished">Fehler beim Laden von %s: Externe Unterzeichner-Brieftasche wird geladen, ohne dass die Unterstützung für externe Unterzeichner kompiliert wurde</translation>
+ </message>
+ <message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Fehler beim Lesen von %s! Alle Schlüssel wurden korrekt gelesen, aber Transaktionsdaten oder Adressmetadaten fehlen oder sind falsch.</translation>
+ </message>
+ <message>
+ <source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
+ <translation type="unfinished">Fehler: Adressbuchdaten im Wallet können nicht als zum migrierten Wallet gehörend identifiziert werden</translation>
+ </message>
+ <message>
+ <source>Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
+ <translation type="unfinished">Fehler: Doppelte Deskriptoren, die während der Migration erstellt wurden. Diese Wallet ist möglicherweise beschädigt.</translation>
+ </message>
+ <message>
+ <source>Error: Transaction %s in wallet cannot be identified to belong to migrated wallets</source>
+ <translation type="unfinished">Fehler: Transaktion in Wallet %s kann nicht als zu migrierten Wallet gehörend identifiziert werden</translation>
+ </message>
+ <message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Es war nicht möglich, die Bump-Gebühren zu berechnen, da unbestätigte UTXOs von einem enormen Cluster unbestätigter Transaktionen abhängen.</translation>
+ </message>
+ <message>
+ <source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
+ <translation type="unfinished">Kann ungültige Datei peers.dat nicht umbenennen. Bitte Verschieben oder Löschen und noch einmal versuchen.</translation>
+ </message>
+ <message>
+ <source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
+ <translation type="unfinished">Gebührenschätzung fehlgeschlagen. Fallbackgebühr ist deaktiviert. Warten Sie ein paar Blöcke oder aktivieren Sie %s.</translation>
+ </message>
+ <message>
+ <source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
+ <translation type="unfinished">Inkompatible Optionen: -dnsseed=1 wurde explizit angegeben, aber -onlynet verbietet Verbindungen zu IPv4/IPv6</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
+ <translation type="unfinished">Ungültiger Betrag für %s=&lt;amount&gt;: '%s' (muss mindestens die MinRelay-Gebühr von %s betragen, um festhängende Transaktionen zu verhindern)</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
+ <translation type="unfinished">Ausgehende Verbindungen sind auf CJDNS beschränkt (-onlynet=cjdns), aber -cjdnsreachable ist nicht angegeben</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is explicitly forbidden: -onion=0</source>
+ <translation type="unfinished">Ausgehende Verbindungen sind eingeschränkt auf Tor (-onlynet=onion), aber der Proxy, um das Tor-Netzwerk zu erreichen ist nicht vorhanden (no -proxy= and no -onion= given) oder ausdrücklich verboten (-onion=0)</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is not provided: none of -proxy, -onion or -listenonion is given</source>
+ <translation type="unfinished">Ausgehende Verbindungen sind eingeschränkt auf Tor (-onlynet=onion), aber der Proxy, um das Tor-Netzwerk zu erreichen ist nicht vorhanden. Weder -proxy noch -onion noch -listenonion ist angegeben.</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to i2p (-onlynet=i2p) but -i2psam is not provided</source>
+ <translation type="unfinished">Ausgehende Verbindungen sind auf i2p (-onlynet=i2p) beschränkt, aber -i2psam ist nicht angegeben</translation>
+ </message>
+ <message>
+ <source>The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet's UTXOs</source>
+ <translation type="unfinished">Die Größe der Inputs übersteigt das maximale Gewicht. Bitte versuchen Sie, einen kleineren Betrag zu senden oder die UTXOs Ihrer Wallet manuell zu konsolidieren.</translation>
+ </message>
+ <message>
+ <source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
+ <translation type="unfinished">Die vorgewählte Gesamtsumme der Coins deckt das Transaktionsziel nicht ab. Bitte erlauben Sie, dass andere Eingaben automatisch ausgewählt werden, oder fügen Sie manuell mehr Coins hinzu</translation>
+ </message>
+ <message>
+ <source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
+ <translation type="unfinished">Die Transaktion erfordert ein Ziel mit einem Wert ungleich nicht-0, eine Gebühr ungleich nicht-0 oder eine vorausgewählte Eingabe</translation>
+ </message>
+ <message>
+ <source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
+ <translation type="unfinished">UTXO-Snapshot konnte nicht validiert werden. Starten Sie neu, um den normalen anfänglichen Block-Download fortzusetzen, oder versuchen Sie, einen anderen Snapshot zu laden.</translation>
+ </message>
+ <message>
+ <source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
+ <translation type="unfinished">Unbestätigte UTXOs sind verfügbar, aber deren Ausgabe erzeugt eine Kette von Transaktionen, die vom Mempool abgelehnt werden</translation>
+ </message>
+ <message>
+ <source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
+
+The wallet might have been tampered with or created with malicious intent.
+</source>
+ <translation type="unfinished">Unerwarteter Legacy-Eintrag in Deskriptor-Wallet gefunden. Lade Wallet %s
+
+Die Wallet könnte manipuliert oder in böser Absicht erstellt worden sein.
+</translation>
+ </message>
+ <message>
+ <source>Unrecognized descriptor found. Loading wallet %s
+
+The wallet might had been created on a newer version.
+Please try running the latest software version.
+</source>
+ <translation type="unfinished">Nicht erkannter Deskriptor gefunden. Beim Laden vom Wallet %s
+
+Die Wallet wurde möglicherweise in einer neueren Version erstellt.
+Bitte mit der neuesten Softwareversion versuchen.
+</translation>
+ </message>
+ <message>
+ <source>
+Unable to cleanup failed migration</source>
+ <translation type="unfinished">
+Fehlgeschlagene Migration kann nicht bereinigt werden</translation>
+ </message>
+ <message>
+ <source>
+Unable to restore backup of wallet.</source>
+ <translation type="unfinished">
+Die Sicherung der Wallet kann nicht wiederhergestellt werden.</translation>
+ </message>
+ <message>
+ <source>Block verification was interrupted</source>
+ <translation type="unfinished">Blocküberprüfung wurde unterbrochen</translation>
+ </message>
+ <message>
+ <source>Config setting for %s only applied on %s network when in [%s] section.</source>
+ <translation type="unfinished">Konfigurationseinstellungen für %s sind nur auf %s network gültig, wenn in Sektion [%s]</translation>
+ </message>
+ <message>
+ <source>Corrupted block database detected</source>
+ <translation type="unfinished">Beschädigte Blockdatenbank erkannt</translation>
+ </message>
+ <message>
+ <source>Could not find asmap file %s</source>
+ <translation type="unfinished">Konnte die asmap Datei %s nicht finden</translation>
+ </message>
+ <message>
+ <source>Could not parse asmap file %s</source>
+ <translation type="unfinished">Konnte die asmap Datei %s nicht analysieren</translation>
+ </message>
+ <message>
+ <source>Disk space is too low!</source>
+ <translation type="unfinished">Freier Plattenspeicher zu gering!</translation>
+ </message>
+ <message>
+ <source>Do you want to rebuild the block database now?</source>
+ <translation type="unfinished">Möchten Sie die Blockdatenbank jetzt neu aufbauen?</translation>
+ </message>
+ <message>
+ <source>Done loading</source>
+ <translation type="unfinished">Laden abgeschlossen</translation>
+ </message>
+ <message>
+ <source>Dump file %s does not exist.</source>
+ <translation type="unfinished">Speicherauszugsdatei %sexistiert nicht.</translation>
+ </message>
+ <message>
+ <source>Error creating %s</source>
+ <translation type="unfinished">Error beim Erstellen von %s</translation>
+ </message>
+ <message>
+ <source>Error initializing block database</source>
+ <translation type="unfinished">Fehler beim Initialisieren der Blockdatenbank</translation>
+ </message>
+ <message>
+ <source>Error initializing wallet database environment %s!</source>
+ <translation type="unfinished">Fehler beim Initialisieren der Wallet-Datenbankumgebung %s!</translation>
+ </message>
+ <message>
+ <source>Error loading %s</source>
+ <translation type="unfinished">Fehler beim Laden von %s</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Private keys can only be disabled during creation</source>
+ <translation type="unfinished">Fehler beim Laden von %s: Private Schlüssel können nur bei der Erstellung deaktiviert werden</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Wallet corrupted</source>
+ <translation type="unfinished">Fehler beim Laden von %s: Das Wallet ist beschädigt</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Wallet requires newer version of %s</source>
+ <translation type="unfinished">Fehler beim Laden von %s: Das Wallet benötigt eine neuere Version von %s</translation>
+ </message>
+ <message>
+ <source>Error loading block database</source>
+ <translation type="unfinished">Fehler beim Laden der Blockdatenbank</translation>
+ </message>
+ <message>
+ <source>Error opening block database</source>
+ <translation type="unfinished">Fehler beim Öffnen der Blockdatenbank</translation>
+ </message>
+ <message>
+ <source>Error reading configuration file: %s</source>
+ <translation type="unfinished">Fehler beim Lesen der Konfigurationsdatei: %s</translation>
+ </message>
+ <message>
+ <source>Error reading from database, shutting down.</source>
+ <translation type="unfinished">Fehler beim Lesen der Datenbank, Ausführung wird beendet.</translation>
+ </message>
+ <message>
+ <source>Error reading next record from wallet database</source>
+ <translation type="unfinished">Fehler beim Lesen des nächsten Eintrags aus der Wallet Datenbank</translation>
+ </message>
+ <message>
+ <source>Error: Cannot extract destination from the generated scriptpubkey</source>
+ <translation type="unfinished">Fehler: Das Ziel kann nicht aus dem generierten scriptpubkey extrahiert werden</translation>
+ </message>
+ <message>
+ <source>Error: Could not add watchonly tx to watchonly wallet</source>
+ <translation type="unfinished">Fehler: watchonly tx konnte nicht zu watchonly Wallet hinzugefügt werden</translation>
+ </message>
+ <message>
+ <source>Error: Could not delete watchonly transactions</source>
+ <translation type="unfinished">Fehler: Watchonly-Transaktionen konnten nicht gelöscht werden</translation>
+ </message>
+ <message>
+ <source>Error: Couldn't create cursor into database</source>
+ <translation type="unfinished">Fehler: Konnte den Cursor in der Datenbank nicht erzeugen</translation>
+ </message>
+ <message>
+ <source>Error: Disk space is low for %s</source>
+ <translation type="unfinished">Fehler: Zu wenig Speicherplatz auf der Festplatte %s</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile checksum does not match. Computed %s, expected %s</source>
+ <translation type="unfinished">Fehler: Prüfsumme der Speicherauszugsdatei stimmt nicht überein.
+Berechnet: %s, erwartet: %s</translation>
+ </message>
+ <message>
+ <source>Error: Failed to create new watchonly wallet</source>
+ <translation type="unfinished">Fehler: Fehler beim Erstellen einer neuen nur-beobachten Wallet</translation>
+ </message>
+ <message>
+ <source>Error: Got key that was not hex: %s</source>
+ <translation type="unfinished">Fehler: Schlüssel ist kein Hex: %s</translation>
+ </message>
+ <message>
+ <source>Error: Got value that was not hex: %s</source>
+ <translation type="unfinished">Fehler: Wert ist kein Hex: %s</translation>
+ </message>
+ <message>
+ <source>Error: Keypool ran out, please call keypoolrefill first</source>
+ <translation type="unfinished">Fehler: Schlüsselspeicher ausgeschöpft, bitte zunächst keypoolrefill ausführen</translation>
+ </message>
+ <message>
+ <source>Error: Missing checksum</source>
+ <translation type="unfinished">Fehler: Fehlende Prüfsumme</translation>
+ </message>
+ <message>
+ <source>Error: No %s addresses available.</source>
+ <translation type="unfinished">Fehler: Keine %s Adressen verfügbar.</translation>
+ </message>
+ <message>
+ <source>Error: Not all watchonly txs could be deleted</source>
+ <translation type="unfinished">Fehler: Nicht alle nur-beobachten txs konnten gelöscht werden</translation>
+ </message>
+ <message>
+ <source>Error: This wallet already uses SQLite</source>
+ <translation type="unfinished">Fehler: Diese Wallet verwendet bereits SQLite</translation>
+ </message>
+ <message>
+ <source>Error: This wallet is already a descriptor wallet</source>
+ <translation type="unfinished">Fehler: Diese Wallet ist bereits eine Deskriptor-Brieftasche</translation>
+ </message>
+ <message>
+ <source>Error: Unable to begin reading all records in the database</source>
+ <translation type="unfinished">Fehler: Konnte nicht anfangen, alle Datensätze in der Datenbank zu lesen.</translation>
+ </message>
+ <message>
+ <source>Error: Unable to make a backup of your wallet</source>
+ <translation type="unfinished">Fehler: Es kann keine Sicherungskopie Ihrer Wallet erstellt werden</translation>
+ </message>
+ <message>
+ <source>Error: Unable to parse version %u as a uint32_t</source>
+ <translation type="unfinished">Fehler: Kann Version %u nicht als uint32_t lesen.</translation>
+ </message>
+ <message>
+ <source>Error: Unable to read all records in the database</source>
+ <translation type="unfinished">Fehler: Nicht alle Datensätze in der Datenbank können gelesen werden</translation>
+ </message>
+ <message>
+ <source>Error: Unable to remove watchonly address book data</source>
+ <translation type="unfinished">Fehler: Watchonly-Adressbuchdaten können nicht entfernt werden</translation>
+ </message>
+ <message>
+ <source>Error: Unable to write record to new wallet</source>
+ <translation type="unfinished">Fehler: Kann neuen Eintrag nicht in Wallet schreiben</translation>
+ </message>
+ <message>
+ <source>Failed to listen on any port. Use -listen=0 if you want this.</source>
+ <translation type="unfinished">Fehler: Konnte auf keinem Port hören. Wenn dies so gewünscht wird -listen=0 verwenden.</translation>
+ </message>
+ <message>
+ <source>Failed to rescan the wallet during initialization</source>
+ <translation type="unfinished">Fehler: Wallet konnte während der Initialisierung nicht erneut gescannt werden.</translation>
+ </message>
+ <message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Start der Indizes fehlgeschlagen, wird beendet..</translation>
+ </message>
+ <message>
+ <source>Failed to verify database</source>
+ <translation type="unfinished">Verifizierung der Datenbank fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
+ <translation type="unfinished">Der Gebührensatz (%s) ist niedriger als die Mindestgebührensatz (%s) Einstellung.</translation>
+ </message>
+ <message>
+ <source>Ignoring duplicate -wallet %s.</source>
+ <translation type="unfinished">Ignoriere doppeltes -wallet %s.</translation>
+ </message>
+ <message>
+ <source>Importing…</source>
+ <translation type="unfinished">Importiere...</translation>
+ </message>
+ <message>
+ <source>Incorrect or no genesis block found. Wrong datadir for network?</source>
+ <translation type="unfinished">Fehlerhafter oder kein Genesis-Block gefunden. Falsches Datenverzeichnis für das Netzwerk?</translation>
+ </message>
+ <message>
+ <source>Initialization sanity check failed. %s is shutting down.</source>
+ <translation type="unfinished">Initialisierungsplausibilitätsprüfung fehlgeschlagen. %s wird beendet.</translation>
+ </message>
+ <message>
+ <source>Input not found or already spent</source>
+ <translation type="unfinished">Eingabe nicht gefunden oder bereits ausgegeben</translation>
+ </message>
+ <message>
+ <source>Insufficient dbcache for block verification</source>
+ <translation type="unfinished">Unzureichender dbcache für die Blocküberprüfung</translation>
+ </message>
+ <message>
+ <source>Insufficient funds</source>
+ <translation type="unfinished">Unzureichender Kontostand</translation>
+ </message>
+ <message>
+ <source>Invalid -i2psam address or hostname: '%s'</source>
+ <translation type="unfinished">Ungültige -i2psam Adresse oder Hostname: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid -onion address or hostname: '%s'</source>
+ <translation type="unfinished">Ungültige Onion-Adresse oder ungültiger Hostname: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid -proxy address or hostname: '%s'</source>
+ <translation type="unfinished">Ungültige Proxy-Adresse oder ungültiger Hostname: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid P2P permission: '%s'</source>
+ <translation type="unfinished">Ungültige P2P Genehmigung: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least %s)</source>
+ <translation type="unfinished">Ungültiger Betrag für %s=&lt;amount&gt;: '%s' (muss mindestens %ssein)</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">Ungültiger Betrag für %s=&lt;amount&gt;: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid amount for -%s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">Ungültiger Betrag für -%s=&lt;amount&gt;: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid netmask specified in -whitelist: '%s'</source>
+ <translation type="unfinished">Ungültige Netzmaske angegeben in -whitelist: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid port specified in %s: '%s'</source>
+ <translation type="unfinished">Ungültiger Port angegeben in %s: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid pre-selected input %s</source>
+ <translation type="unfinished">Ungültige vorausgewählte Eingabe %s</translation>
+ </message>
+ <message>
+ <source>Listening for incoming connections failed (listen returned error %s)</source>
+ <translation type="unfinished">Das Hören auf eingehende Verbindungen ist fehlgeschlagen (Das Hören hat Fehler %s zurückgegeben)</translation>
+ </message>
+ <message>
+ <source>Loading P2P addresses…</source>
+ <translation type="unfinished">Lade P2P-Adressen...</translation>
+ </message>
+ <message>
+ <source>Loading banlist…</source>
+ <translation type="unfinished">Lade Bannliste…</translation>
+ </message>
+ <message>
+ <source>Loading block index…</source>
+ <translation type="unfinished">Lade Block-Index...</translation>
+ </message>
+ <message>
+ <source>Loading wallet…</source>
+ <translation type="unfinished">Lade Wallet...</translation>
+ </message>
+ <message>
+ <source>Missing amount</source>
+ <translation type="unfinished">Fehlender Betrag</translation>
+ </message>
+ <message>
+ <source>Missing solving data for estimating transaction size</source>
+ <translation type="unfinished">Fehlende Auflösungsdaten zur Schätzung der Transaktionsgröße</translation>
+ </message>
+ <message>
+ <source>Need to specify a port with -whitebind: '%s'</source>
+ <translation type="unfinished">Angabe eines Ports benötigt für -whitebind: '%s'</translation>
+ </message>
+ <message>
+ <source>No addresses available</source>
+ <translation type="unfinished">Keine Adressen verfügbar</translation>
+ </message>
+ <message>
+ <source>Not enough file descriptors available.</source>
+ <translation type="unfinished">Nicht genügend Datei-Deskriptoren verfügbar.</translation>
+ </message>
+ <message>
+ <source>Not found pre-selected input %s</source>
+ <translation type="unfinished">Nicht gefundener vorausgewählter Input %s</translation>
+ </message>
+ <message>
+ <source>Not solvable pre-selected input %s</source>
+ <translation type="unfinished">Nicht auflösbare vorausgewählter Input %s</translation>
+ </message>
+ <message>
+ <source>Prune cannot be configured with a negative value.</source>
+ <translation type="unfinished">Kürzungsmodus kann nicht mit einem negativen Wert konfiguriert werden.</translation>
+ </message>
+ <message>
+ <source>Prune mode is incompatible with -txindex.</source>
+ <translation type="unfinished">Kürzungsmodus ist nicht mit -txindex kompatibel.</translation>
+ </message>
+ <message>
+ <source>Pruning blockstore…</source>
+ <translation type="unfinished">Kürze den Blockspeicher…</translation>
+ </message>
+ <message>
+ <source>Reducing -maxconnections from %d to %d, because of system limitations.</source>
+ <translation type="unfinished">Reduziere -maxconnections von %d zu %d, aufgrund von Systemlimitierungen.</translation>
+ </message>
+ <message>
+ <source>Replaying blocks…</source>
+ <translation type="unfinished">Spiele alle Blocks erneut ein…</translation>
+ </message>
+ <message>
+ <source>Rescanning…</source>
+ <translation type="unfinished">Wiederhole Scan...</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to execute statement to verify database: %s</source>
+ <translation type="unfinished">SQLite-Datenbank: Anweisung, die Datenbank zu verifizieren fehlgeschlagen: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to prepare statement to verify database: %s</source>
+ <translation type="unfinished">SQLite-Datenbank: Anfertigung der Anweisung zum Verifizieren der Datenbank fehlgeschlagen: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to read database verification error: %s</source>
+ <translation type="unfinished">Datenbank konnte nicht gelesen werden
+Verifikations-Error: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Unexpected application id. Expected %u, got %u</source>
+ <translation type="unfinished">SQLiteDatabase: Unerwartete Anwendungs-ID. %u statt %u erhalten.</translation>
+ </message>
+ <message>
+ <source>Section [%s] is not recognized.</source>
+ <translation type="unfinished">Sektion [%s] ist nicht delegiert.</translation>
+ </message>
+ <message>
+ <source>Signing transaction failed</source>
+ <translation type="unfinished">Signierung der Transaktion fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" does not exist</source>
+ <translation type="unfinished">Angegebenes Verzeichnis "%s" existiert nicht</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" is a relative path</source>
+ <translation type="unfinished">Angegebenes -walletdir "%s" ist ein relativer Pfad</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" is not a directory</source>
+ <translation type="unfinished">Angegebenes Verzeichnis "%s" ist kein Verzeichnis</translation>
+ </message>
+ <message>
+ <source>Specified blocks directory "%s" does not exist.</source>
+ <translation type="unfinished">Angegebener Blöcke-Ordner "%s" existiert nicht.</translation>
+ </message>
+ <message>
+ <source>Specified data directory "%s" does not exist.</source>
+ <translation type="unfinished">Das angegebene Datenverzeichnis "%s" existiert nicht.</translation>
+ </message>
+ <message>
+ <source>Starting network threads…</source>
+ <translation type="unfinished">Starte Netzwerk-Threads...</translation>
+ </message>
+ <message>
+ <source>The source code is available from %s.</source>
+ <translation type="unfinished">Der Quellcode ist auf %s verfügbar.</translation>
+ </message>
+ <message>
+ <source>The specified config file %s does not exist</source>
+ <translation type="unfinished">Die angegebene Konfigurationsdatei %sexistiert nicht</translation>
+ </message>
+ <message>
+ <source>The transaction amount is too small to pay the fee</source>
+ <translation type="unfinished">Der Transaktionsbetrag ist zu niedrig, um die Gebühr zu bezahlen.</translation>
+ </message>
+ <message>
+ <source>The wallet will avoid paying less than the minimum relay fee.</source>
+ <translation type="unfinished">Das Wallet verhindert Zahlungen, die die Mindesttransaktionsgebühr nicht berücksichtigen.</translation>
+ </message>
+ <message>
+ <source>This is experimental software.</source>
+ <translation type="unfinished">Dies ist experimentelle Software.</translation>
+ </message>
+ <message>
+ <source>This is the minimum transaction fee you pay on every transaction.</source>
+ <translation type="unfinished">Dies ist die kleinstmögliche Gebühr, die beim Senden einer Transaktion fällig wird.</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you will pay if you send a transaction.</source>
+ <translation type="unfinished">Dies ist die Gebühr, die beim Senden einer Transaktion fällig wird.</translation>
+ </message>
+ <message>
+ <source>Transaction amount too small</source>
+ <translation type="unfinished">Transaktionsbetrag zu niedrig</translation>
+ </message>
+ <message>
+ <source>Transaction amounts must not be negative</source>
+ <translation type="unfinished">Transaktionsbeträge dürfen nicht negativ sein.</translation>
+ </message>
+ <message>
+ <source>Transaction change output index out of range</source>
+ <translation type="unfinished">Ausgangsindex des Wechselgelds außerhalb des Bereichs</translation>
+ </message>
+ <message>
+ <source>Transaction has too long of a mempool chain</source>
+ <translation type="unfinished">Die Speicherpoolkette der Transaktion ist zu lang.</translation>
+ </message>
+ <message>
+ <source>Transaction must have at least one recipient</source>
+ <translation type="unfinished">Die Transaktion muss mindestens einen Empfänger enthalten.</translation>
+ </message>
+ <message>
+ <source>Transaction needs a change address, but we can't generate it.</source>
+ <translation type="unfinished">Transaktion erfordert eine Wechselgeldadresse, die jedoch nicht erzeugt werden kann.</translation>
+ </message>
+ <message>
+ <source>Transaction too large</source>
+ <translation type="unfinished">Transaktion zu groß</translation>
+ </message>
+ <message>
+ <source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
+ <translation type="unfinished">Speicher kann für -maxsigcachesize: '%s' MiB nicht zugewiesen werden:</translation>
+ </message>
+ <message>
+ <source>Unable to bind to %s on this computer (bind returned error %s)</source>
+ <translation type="unfinished">Kann auf diesem Computer nicht an %s binden (bind meldete Fehler %s)</translation>
+ </message>
+ <message>
+ <source>Unable to bind to %s on this computer. %s is probably already running.</source>
+ <translation type="unfinished">Kann auf diesem Computer nicht an %s binden. Evtl. wurde %s bereits gestartet.</translation>
+ </message>
+ <message>
+ <source>Unable to create the PID file '%s': %s</source>
+ <translation type="unfinished">Erstellung der PID-Datei '%s': %s ist nicht möglich</translation>
+ </message>
+ <message>
+ <source>Unable to find UTXO for external input</source>
+ <translation type="unfinished">UTXO für externen Input konnte nicht gefunden werden</translation>
+ </message>
+ <message>
+ <source>Unable to generate initial keys</source>
+ <translation type="unfinished">Initialschlüssel können nicht generiert werden</translation>
+ </message>
+ <message>
+ <source>Unable to generate keys</source>
+ <translation type="unfinished">Schlüssel können nicht generiert werden</translation>
+ </message>
+ <message>
+ <source>Unable to open %s for writing</source>
+ <translation type="unfinished">Konnte %s nicht zum Schreiben zu öffnen</translation>
+ </message>
+ <message>
+ <source>Unable to parse -maxuploadtarget: '%s'</source>
+ <translation type="unfinished">Kann -maxuploadtarget: '%s' nicht parsen</translation>
+ </message>
+ <message>
+ <source>Unable to start HTTP server. See debug log for details.</source>
+ <translation type="unfinished">Kann HTTP-Server nicht starten. Siehe Debug-Log für Details.</translation>
+ </message>
+ <message>
+ <source>Unable to unload the wallet before migrating</source>
+ <translation type="unfinished">Die Wallet kann vor der Migration nicht entladen werden</translation>
+ </message>
+ <message>
+ <source>Unknown -blockfilterindex value %s.</source>
+ <translation type="unfinished">Unbekannter -blockfilterindex Wert %s.</translation>
+ </message>
+ <message>
+ <source>Unknown address type '%s'</source>
+ <translation type="unfinished">Unbekannter Adresstyp '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown change type '%s'</source>
+ <translation type="unfinished">Unbekannter Wechselgeld-Typ '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown network specified in -onlynet: '%s'</source>
+ <translation type="unfinished">Unbekannter Netztyp in -onlynet angegeben: '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown new rules activated (versionbit %i)</source>
+ <translation type="unfinished">Unbekannte neue Regeln aktiviert (Versionsbit %i)</translation>
+ </message>
+ <message>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nicht unterstützte globale Protokollierungsebene %s=%s. Gültige Werte: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates wird auf der %s Chain nicht unterstützt.</translation>
+ </message>
+ <message>
+ <source>Unsupported logging category %s=%s.</source>
+ <translation type="unfinished">Nicht unterstützte Protokollkategorie %s=%s.</translation>
+ </message>
+ <message>
+ <source>User Agent comment (%s) contains unsafe characters.</source>
+ <translation type="unfinished">Der User Agent Kommentar (%s) enthält unsichere Zeichen.</translation>
+ </message>
+ <message>
+ <source>Verifying blocks…</source>
+ <translation type="unfinished">Überprüfe Blöcke...</translation>
+ </message>
+ <message>
+ <source>Verifying wallet(s)…</source>
+ <translation type="unfinished">Überprüfe Wallet(s)...</translation>
+ </message>
+ <message>
+ <source>Wallet needed to be rewritten: restart %s to complete</source>
+ <translation type="unfinished">Wallet musste neu geschrieben werden: starten Sie %s zur Fertigstellung neu</translation>
+ </message>
+ <message>
+ <source>Settings file could not be read</source>
+ <translation type="unfinished">Einstellungsdatei konnte nicht gelesen werden</translation>
+ </message>
+ <message>
+ <source>Settings file could not be written</source>
+ <translation type="unfinished">Einstellungsdatei kann nicht geschrieben werden</translation>
+ </message>
+</context>
</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_de_AT.ts b/src/qt/locale/bitcoin_de_AT.ts
index 217bb92f60..8da452d128 100644
--- a/src/qt/locale/bitcoin_de_AT.ts
+++ b/src/qt/locale/bitcoin_de_AT.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Auswählen</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Sendeadressen</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Empfangsadressen</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Dies sind Ihre Bitcoin-Adressen zum Tätigen von Überweisungen. Bitte prüfen Sie den Betrag und die Adresse des Empfängers, bevor Sie Bitcoins überweisen.</translation>
</message>
@@ -102,6 +94,14 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Beim Speichern der Adressliste nach %1 ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Sendeadressen - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Empfangsadressen - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Exportieren fehlgeschlagen</translation>
</message>
@@ -524,6 +524,14 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Schließe alle Wallets</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Eine Wallet Migrieren</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Zeige den "%1"-Hilfetext, um eine Liste mit möglichen Kommandozeilenoptionen zu erhalten</translation>
</message>
@@ -620,8 +628,12 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Netzwerk Aktivität einschalten</translation>
</message>
<message>
- <source>Pre-syncing Headers (%1%)…</source>
- <translation type="unfinished">Synchronisiere Header (%1%)…</translation>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Fehler beim Erstellen der Wallet</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Es kann keine neue Wallet erstellt werden, die Software wurde ohne SQLite-Unterstützung kompiliert (erforderlich für Deskriptor-Wallets)</translation>
</message>
<message>
<source>Error: %1</source>
@@ -720,10 +732,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Gebühr:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">"Staub":</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Abzüglich Gebühr:</translation>
</message>
@@ -812,10 +820,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Bytes kopieren</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">"Staub" kopieren</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Wechselgeld kopieren</translation>
</message>
@@ -824,18 +828,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">(%1 gesperrt)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ja</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nein</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Diese Bezeichnung wird rot, wenn irgendein Empfänger einen Betrag kleiner als die derzeitige "Staubgrenze" erhält.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Kann pro Eingabe um +/- %1 Satoshi(s) abweichen.</translation>
</message>
@@ -895,6 +887,57 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Sicher, dass die Wallet migriert werden soll? &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">Durch die Migration der Wallet wird diese Wallet in eine oder mehrere Deskriptor-Wallets umgewandelt. Es muss ein neues Wallet-Backup erstellt werden.
+Wenn diese Wallet Watchonly-Skripte enthält, wird eine neue Wallet erstellt, die diese Watchonly-Skripte enthält.
+Wenn diese Wallet lösbare, aber nicht beobachtete Skripte enthält, wird eine andere und neue Wallet erstellt, die diese Skripte enthält.
+
+Während des Migrationsprozesses wird vor der Migration ein Backup der Wallet erstellt. Diese Backup-Datei heißt &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak und befindet sich im Verzeichnis für diese Wallet. Im Falle einer fehlerhaften Migration kann das Backup mit der Funktion "Wallet wiederherstellen" wiederhergestellt werden.</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Wallet migrieren &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Die Wallet '%1' wurde erfolgreich migriert.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Watchonly-Skripte wurden in eine neue Wallet mit dem Namen '%1' migriert.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Lösbare, aber nicht beobachtete Skripte wurden in eine neue Wallet mit dem Namen '%1' migriert.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migration fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migration erfolgreich</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -909,11 +952,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Standard-Wallet</translation>
</message>
<message>
- <source>Open Wallet</source>
- <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Wallet öffnen</translation>
- </message>
- <message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
<translation type="unfinished">Öffne Wallet &lt;b&gt;%1&lt;/b&gt;…</translation>
@@ -950,10 +988,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<context>
<name>WalletController</name>
<message>
- <source>Close wallet</source>
- <translation type="unfinished">Wallet schließen</translation>
- </message>
- <message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
<translation type="unfinished">Sind Sie sich sicher, dass Sie die Wallet &lt;i&gt;%1&lt;/i&gt; schließen möchten?</translation>
</message>
@@ -977,6 +1011,14 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Wallet erstellen</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Nur noch einen Schritt entfernt, das neue Wallet zu erstellen!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Bitte einen Namen angeben und, falls gewünscht, alle erweiterten Optionen aktivieren</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Wallet-Name</translation>
</message>
@@ -1013,14 +1055,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Eine leere Wallet erstellen</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Deskriptoren für scriptPubKey Verwaltung nutzen</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptor-Brieftasche</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Verwenden Sie ein externes Signiergerät, z. B. eine Hardware-Wallet. Konfigurieren Sie zunächst das Skript für den externen Signierer in den Wallet-Einstellungen.</translation>
</message>
@@ -1033,10 +1067,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Erstellen</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Ohne SQLite-Unterstützung (erforderlich für Deskriptor-Brieftaschen) kompiliert</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Ohne Unterstützung für die Signierung durch externe Geräte Dritter kompiliert (notwendig für Signierung durch externe Geräte Dritter)</translation>
@@ -1829,6 +1859,10 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">* Sende %1 an %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">eigene Adresse</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Kann die Gebühr oder den Gesamtbetrag der Transaktion nicht berechnen.</translation>
</message>
@@ -2093,6 +2127,14 @@ Wenn Sie diese Fehlermeldung erhalten, sollten Sie den Händler bitten, einen BI
<translation type="unfinished">Gegenstelle auswählen, um detaillierte Informationen zu erhalten.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Die Transportschicht-Version: %1</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Die BIP324-Sitzungs-ID-Zeichenfolge in hexadezimaler Form, falls vorhanden.</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Ob wir Adressen an diese Gegenstelle weiterleiten.</translation>
</message>
@@ -2314,6 +2356,21 @@ Wenn Sie diese Fehlermeldung erhalten, sollten Sie den Händler bitten, einen BI
<translation type="unfinished">Ausgehende Adressensammlung: kurzlebig, zum Anfragen von Adressen</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Erkennen: Peer könnte v1 oder v2 sein</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">V1: Unverschlüsseltes Klartext-Transportprotokoll</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324 verschlüsseltes Transportprotokoll</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">Wir haben die Gegenstelle zum Weiterleiten mit hoher Bandbreite ausgewählt</translation>
</message>
@@ -2754,10 +2811,6 @@ Für weitere Informationen über diese Konsole, tippe %6.
<translation type="unfinished">Eingaben...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">"Staub":</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Auswählen...</translation>
</message>
@@ -2834,10 +2887,6 @@ Hinweis: Da die Gebühr auf Basis der Bytes berechnet wird, führt eine Gebühre
<translation type="unfinished">Bytes kopieren</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">"Staub" kopieren</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Wechselgeld kopieren</translation>
</message>
@@ -3487,10 +3536,6 @@ Hinweis: Da die Gebühr auf Basis der Bytes berechnet wird, führt eine Gebühre
<translation type="unfinished">Überwiesen an</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Eigenüberweisung</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Erarbeitet</translation>
</message>
@@ -3566,10 +3611,6 @@ Hinweis: Da die Gebühr auf Basis der Bytes berechnet wird, führt eine Gebühre
<translation type="unfinished">Überwiesen an</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Eigenüberweisung</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Erarbeitet</translation>
</message>
@@ -3704,7 +3745,7 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
</message>
<message>
<source>Create a new wallet</source>
- <translation type="unfinished">Neue Wallet erstellen</translation>
+ <translation type="unfinished">Neues Wallet erstellen</translation>
</message>
<message>
<source>Error</source>
@@ -3851,6 +3892,10 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
<translation type="unfinished">%s korrupt. Versuche mit dem Wallet-Werkzeug bitcoin-wallet zu retten, oder eine Sicherung wiederherzustellen.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s konnte den -assumeutxo-Snapshot-Status nicht validieren. Dies deutet auf ein Hardwareproblem, einen Fehler in der Software oder eine fehlerhafte Softwareänderung hin, die das Laden eines ungültigen Schnappschusses ermöglichte. Infolgedessen wird der Knoten heruntergefahren und verwendet keinen Zustand mehr, der auf dem Snapshot aufgebaut wurde, wodurch die Chain Height von %d auf %d zurückgesetzt wird. Beim nächsten Neustart nimmt der Knoten die Synchronisierung ab %d ohne Verwendung von Snapshot-Daten wieder auf. Bitte melden Sie diesen Vorfall an %s und geben Sie an, wie Sie den Snapshot erhalten haben. Der ungültige Snapshot-Chainstatus wird auf der Festplatte belassen, falls er bei der Diagnose des Problems, das diesen Fehler verursacht hat, hilfreich ist.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s Aufforderung, auf Port %u zu lauschen. Dieser Port wird als "schlecht" eingeschätzt und es ist daher unwahrscheinlich, dass sich Bitcoin Core Gegenstellen mit ihm verbinden. Siehe doc/p2p-bad-ports.md für Details und eine vollständige Liste.</translation>
</message>
@@ -3879,10 +3924,6 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
<translation type="unfinished">Fehler beim Laden der Wallet. Wallet erfordert das Herunterladen von Blöcken, und die Software unterstützt derzeit nicht das Laden von Wallets, während Blöcke außer der Reihe heruntergeladen werden, wenn assumeutxo-Snapshots verwendet werden. Die Wallet sollte erfolgreich geladen werden können, nachdem die Node-Synchronisation die Höhe %s erreicht hat.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Lesen von %s fehlgeschlagen! Alle Schlüssel wurden korrekt gelesen, Transaktionsdaten bzw. Adressbucheinträge fehlen aber möglicherweise oder sind inkorrekt.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Fehler beim Lesen von %s! Transaktionsdaten fehlen oder sind nicht korrekt. Wallet wird erneut gescannt.</translation>
</message>
@@ -3951,6 +3992,10 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
<translation type="unfinished">Prune (Kürzung): Die letzte Synchronisation der Wallet liegt vor gekürzten (gelöschten) Blöcken. Es ist ein -reindex (erneuter Download der gesamten Blockchain im Fall eines gekürzten Nodes) notwendig.</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Umbenennung von '%s' -&gt; '%s' fehlgeschlagen. Sie sollten dieses Problem beheben, indem Sie das ungültige Snapshot-Verzeichnis %s manuell verschieben oder löschen, andernfalls wird der gleiche Fehler beim nächsten Start erneut auftreten.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLite-Datenbank: Unbekannte SQLite-Wallet-Schema-Version %d. Nur Version %d wird unterstützt.</translation>
</message>
@@ -3959,10 +4004,6 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
<translation type="unfinished">Die Block-Datenbank enthält einen Block, der scheinbar aus der Zukunft kommt. Dies kann daran liegen, dass die Systemzeit Ihres Computers falsch eingestellt ist. Stellen Sie die Block-Datenbank erst dann wieder her, wenn Sie sich sicher sind, dass Ihre Systemzeit korrekt eingestellt ist.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Die Blockindexdatenbank enthält einen veralteten 'txindex'. Um den belegten Speicherplatz frei zu geben, führen Sie ein vollständiges -reindex aus, ansonsten ignorieren Sie diesen Fehler. Diese Fehlermeldung wird nicht noch einmal angezeigt.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Der Transaktionsbetrag ist zu klein, um ihn nach Abzug der Gebühr zu senden.</translation>
</message>
@@ -4000,6 +4041,10 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nicht unterstützte kategoriespezifische Protokollierungsebene %1$s=%2$s. Erwartet %1$s=&lt;category&gt;:&lt;loglevel&gt;. Gültige Kategorien: %3$s. Gültige Loglevels: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Nicht unterstütztes Chainstate-Datenbankformat gefunden. Bitte starte mit -reindex-chainstate neu. Dadurch wird die Chainstate-Datenbank neu erstellt.</translation>
</message>
@@ -4008,6 +4053,10 @@ Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
<translation type="unfinished">Wallet erfolgreich erstellt. Der Legacy-Wallet-Typ ist veraltet und die Unterstützung für das Erstellen und Öffnen von Legacy-Wallets wird in Zukunft entfernt.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Wallet erfolgreich geladen. Der Legacy-Wallet-Typ ist veraltet und die Unterstützung für das Erstellen und Öffnen von Legacy-Wallets wird in Zukunft entfernt. Legacy-Wallets können mit migratewallet auf eine Deskriptor-Wallet migriert werden.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Warnung: Dumpdatei Wallet Format "%s" passt nicht zum auf der Kommandozeile angegebenen Format "%s".</translation>
</message>
@@ -4052,30 +4101,10 @@ Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
<translation type="unfinished">Es konnte nicht in das Datenverzeichnis '%s' geschrieben werden; Überprüfen Sie die Berechtigungen.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Das von einer früheren Version gestartete -txindex-Upgrade kann nicht abgeschlossen werden. Starten Sie mit der vorherigen Version neu oder führen Sie ein vollständiges -reindex aus.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s konnte den Snapshot-Status -assumeutxo nicht validieren. Dies weist auf ein Hardwareproblem, einen Fehler in der Software oder eine fehlerhafte Softwaremodifikation hin, die das Laden eines ungültigen Snapshots ermöglicht hat. Infolgedessen wird der Knoten heruntergefahren und verwendet keinen Status mehr, der auf dem Snapshot erstellt wurde, wodurch die Kettenhöhe von %d auf %d zurückgesetzt wird. Beim nächsten Neustart setzt der Knoten die Synchronisierung ab %d fort, ohne Snapshot-Daten zu verwenden. Bitte melden Sie diesen Vorfall an %s und geben Sie an, wie Sie den Snapshot erhalten haben. Der ungültige Snapshot-Kettenstatus wurde auf der Festplatte belassen, falls dies bei der Diagnose des Problems hilfreich ist, das diesen Fehler verursacht hat.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s ist sehr hoch gesetzt! Gebühren dieser Höhe könnten für eine einzelne Transaktion gezahlt werden.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Die Option -reindex-chainstate ist nicht mit -coinstatsindex kompatibel. Bitte deaktiviere coinstatsindex vorübergehend, während du -reindex-chainstate verwendest oder ersetze -reindex-chainstate durch -reindex, um alle Indexe vollständig neu zu erstellen.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Die Option -reindex-chainstate ist nicht mit -txindex kompatibel. Bitte deaktiviere txindex vorübergehend, während du -reindex-chainstate verwendest oder ersetze -reindex-chainstate durch -reindex, um alle Indexe vollständig neu zu erstellen.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Die Option -reindex-chainstate ist nicht mit -txindex kompatibel. Bitte deaktiviere txindex vorübergehend, während du -reindex-chainstate verwendest oder ersetze -reindex-chainstate durch -reindex, um alle Indexe vollständig neu zu erstellen.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Es ist nicht möglich, bestimmte Verbindungen anzubieten und gleichzeitig addrman ausgehende Verbindungen finden zu lassen.</translation>
</message>
@@ -4084,6 +4113,10 @@ Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
<translation type="unfinished">Fehler beim Laden von %s: Externe Unterzeichner-Brieftasche wird geladen, ohne dass die Unterstützung für externe Unterzeichner kompiliert wurde</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Fehler beim Lesen von %s! Alle Schlüssel wurden korrekt gelesen, aber Transaktionsdaten oder Adressmetadaten fehlen oder sind falsch.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Fehler: Adressbuchdaten im Wallet können nicht als zum migrierten Wallet gehörend identifiziert werden</translation>
</message>
@@ -4096,6 +4129,10 @@ Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
<translation type="unfinished">Fehler: Transaktion in\m Wallet %s kann nicht als zu migrierten Wallet gehörend identifiziert werden</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Es war nicht möglich, die Bump-Gebühren zu berechnen, da unbestätigte UTXOs von einem enormen Cluster unbestätigter Transaktionen abhängen.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Kann ungültige Datei peers.dat nicht umbenennen. Bitte Verschieben oder Löschen und noch einmal versuchen.</translation>
</message>
@@ -4170,10 +4207,6 @@ Bitte mit der neuesten Softwareversion versuchen.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Nicht unterstützter kategoriespezifischer logging level -loglevel=%s. Erwarteter -loglevel=&lt;category&gt; :&lt;loglevel&gt;. Gültige Kategorien:%s. Gültige Log-Ebenen:%s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4363,6 +4396,10 @@ Berechnet: %s, erwartet: %s</translation>
<translation type="unfinished">Fehler: Wallet konnte während der Initialisierung nicht erneut gescannt werden.</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Start der Indizes fehlgeschlagen, wird beendet..</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Verifizierung der Datenbank fehlgeschlagen</translation>
</message>
@@ -4680,8 +4717,12 @@ Verifikations-Error: %s</translation>
<translation type="unfinished">Unbekannte neue Regeln aktiviert (Versionsbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Nicht unterstützter globaler Protokolliergrad -loglevel=%s. Gültige Werte:%s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nicht unterstützte globale Protokollierungsebene %s=%s. Gültige Werte: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates wird auf der %s Chain nicht unterstützt.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_de_CH.ts b/src/qt/locale/bitcoin_de_CH.ts
index bf3bd6786d..de133888c5 100644
--- a/src/qt/locale/bitcoin_de_CH.ts
+++ b/src/qt/locale/bitcoin_de_CH.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Auswählen</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Sendeadressen</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Empfangsadressen</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Dies sind Ihre Bitcoin-Adressen zum Tätigen von Überweisungen. Bitte prüfen Sie den Betrag und die Adresse des Empfängers, bevor Sie Bitcoins überweisen.</translation>
</message>
@@ -102,6 +94,14 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Beim Speichern der Adressliste nach %1 ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Sendeadressen - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Empfangsadressen - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Exportieren fehlgeschlagen</translation>
</message>
@@ -524,6 +524,14 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Schließe alle Wallets</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Eine Wallet Migrieren</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Zeige den "%1"-Hilfetext, um eine Liste mit möglichen Kommandozeilenoptionen zu erhalten</translation>
</message>
@@ -620,8 +628,12 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Netzwerk Aktivität einschalten</translation>
</message>
<message>
- <source>Pre-syncing Headers (%1%)…</source>
- <translation type="unfinished">Synchronisiere Header (%1%)…</translation>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Fehler beim Erstellen der Wallet</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Es kann keine neue Wallet erstellt werden, die Software wurde ohne SQLite-Unterstützung kompiliert (erforderlich für Deskriptor-Wallets)</translation>
</message>
<message>
<source>Error: %1</source>
@@ -720,10 +732,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Gebühr:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">"Staub":</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Abzüglich Gebühr:</translation>
</message>
@@ -812,10 +820,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Bytes kopieren</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">"Staub" kopieren</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Wechselgeld kopieren</translation>
</message>
@@ -824,18 +828,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">(%1 gesperrt)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ja</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nein</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Diese Bezeichnung wird rot, wenn irgendein Empfänger einen Betrag kleiner als die derzeitige "Staubgrenze" erhält.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Kann pro Eingabe um +/- %1 Satoshi(s) abweichen.</translation>
</message>
@@ -895,6 +887,57 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Sicher, dass die Wallet migriert werden soll? &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">Durch die Migration der Wallet wird diese Wallet in eine oder mehrere Deskriptor-Wallets umgewandelt. Es muss ein neues Wallet-Backup erstellt werden.
+Wenn diese Wallet Watchonly-Skripte enthält, wird eine neue Wallet erstellt, die diese Watchonly-Skripte enthält.
+Wenn diese Wallet lösbare, aber nicht beobachtete Skripte enthält, wird eine andere und neue Wallet erstellt, die diese Skripte enthält.
+
+Während des Migrationsprozesses wird vor der Migration ein Backup der Wallet erstellt. Diese Backup-Datei heißt &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak und befindet sich im Verzeichnis für diese Wallet. Im Falle einer fehlerhaften Migration kann das Backup mit der Funktion "Wallet wiederherstellen" wiederhergestellt werden.</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Wallet migrieren</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Wallet migrieren &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Die Wallet '%1' wurde erfolgreich migriert.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Watchonly-Skripte wurden in eine neue Wallet mit dem Namen '%1' migriert.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Lösbare, aber nicht beobachtete Skripte wurden in eine neue Wallet mit dem Namen '%1' migriert.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migration fehlgeschlagen</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migration erfolgreich</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -909,11 +952,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Standard-Wallet</translation>
</message>
<message>
- <source>Open Wallet</source>
- <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Wallet öffnen</translation>
- </message>
- <message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
<translation type="unfinished">Öffne Wallet &lt;b&gt;%1&lt;/b&gt;…</translation>
@@ -950,10 +988,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<context>
<name>WalletController</name>
<message>
- <source>Close wallet</source>
- <translation type="unfinished">Wallet schließen</translation>
- </message>
- <message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
<translation type="unfinished">Sind Sie sich sicher, dass Sie die Wallet &lt;i&gt;%1&lt;/i&gt; schließen möchten?</translation>
</message>
@@ -977,6 +1011,14 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Wallet erstellen</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Nur noch einen Schritt entfernt, das neue Wallet zu erstellen!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Bitte einen Namen angeben und, falls gewünscht, alle erweiterten Optionen aktivieren</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Wallet-Name</translation>
</message>
@@ -1013,14 +1055,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Eine leere Wallet erstellen</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Deskriptoren für scriptPubKey Verwaltung nutzen</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptor-Brieftasche</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Verwenden Sie ein externes Signiergerät, z. B. eine Hardware-Wallet. Konfigurieren Sie zunächst das Skript für den externen Signierer in den Wallet-Einstellungen.</translation>
</message>
@@ -1033,10 +1067,6 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">Erstellen</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Ohne SQLite-Unterstützung (erforderlich für Deskriptor-Brieftaschen) kompiliert</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Ohne Unterstützung für die Signierung durch externe Geräte Dritter kompiliert (notwendig für Signierung durch externe Geräte Dritter)</translation>
@@ -1829,6 +1859,10 @@ Das Signieren ist nur mit Adressen vom Typ 'Legacy' möglich.</translation>
<translation type="unfinished">* Sende %1 an %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">eigene Adresse</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Kann die Gebühr oder den Gesamtbetrag der Transaktion nicht berechnen.</translation>
</message>
@@ -2093,6 +2127,14 @@ Wenn Sie diese Fehlermeldung erhalten, sollten Sie den Händler bitten, einen BI
<translation type="unfinished">Gegenstelle auswählen, um detaillierte Informationen zu erhalten.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Die Transportschicht-Version: %1</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Die BIP324-Sitzungs-ID-Zeichenfolge in hexadezimaler Form, falls vorhanden.</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Ob wir Adressen an diese Gegenstelle weiterleiten.</translation>
</message>
@@ -2314,6 +2356,21 @@ Wenn Sie diese Fehlermeldung erhalten, sollten Sie den Händler bitten, einen BI
<translation type="unfinished">Ausgehende Adressensammlung: kurzlebig, zum Anfragen von Adressen</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Erkennen: Peer könnte v1 oder v2 sein</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">V1: Unverschlüsseltes Klartext-Transportprotokoll</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324 verschlüsseltes Transportprotokoll</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">Wir haben die Gegenstelle zum Weiterleiten mit hoher Bandbreite ausgewählt</translation>
</message>
@@ -2754,10 +2811,6 @@ Für weitere Informationen über diese Konsole, tippe %6.
<translation type="unfinished">Eingaben...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">"Staub":</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Auswählen...</translation>
</message>
@@ -2834,10 +2887,6 @@ Hinweis: Da die Gebühr auf Basis der Bytes berechnet wird, führt eine Gebühre
<translation type="unfinished">Bytes kopieren</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">"Staub" kopieren</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Wechselgeld kopieren</translation>
</message>
@@ -3487,10 +3536,6 @@ Hinweis: Da die Gebühr auf Basis der Bytes berechnet wird, führt eine Gebühre
<translation type="unfinished">Überwiesen an</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Eigenüberweisung</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Erarbeitet</translation>
</message>
@@ -3566,10 +3611,6 @@ Hinweis: Da die Gebühr auf Basis der Bytes berechnet wird, führt eine Gebühre
<translation type="unfinished">Überwiesen an</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Eigenüberweisung</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Erarbeitet</translation>
</message>
@@ -3704,7 +3745,7 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
</message>
<message>
<source>Create a new wallet</source>
- <translation type="unfinished">Neue Wallet erstellen</translation>
+ <translation type="unfinished">Neues Wallet erstellen</translation>
</message>
<message>
<source>Error</source>
@@ -3851,6 +3892,10 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
<translation type="unfinished">%s korrupt. Versuche mit dem Wallet-Werkzeug bitcoin-wallet zu retten, oder eine Sicherung wiederherzustellen.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s konnte den -assumeutxo-Snapshot-Status nicht validieren. Dies deutet auf ein Hardwareproblem, einen Fehler in der Software oder eine fehlerhafte Softwareänderung hin, die das Laden eines ungültigen Schnappschusses ermöglichte. Infolgedessen wird der Knoten heruntergefahren und verwendet keinen Zustand mehr, der auf dem Snapshot aufgebaut wurde, wodurch die Chain Height von %d auf %d zurückgesetzt wird. Beim nächsten Neustart nimmt der Knoten die Synchronisierung ab %d ohne Verwendung von Snapshot-Daten wieder auf. Bitte melden Sie diesen Vorfall an %s und geben Sie an, wie Sie den Snapshot erhalten haben. Der ungültige Snapshot-Chainstatus wird auf der Festplatte belassen, falls er bei der Diagnose des Problems, das diesen Fehler verursacht hat, hilfreich ist.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s Aufforderung, auf Port %u zu lauschen. Dieser Port wird als "schlecht" eingeschätzt und es ist daher unwahrscheinlich, dass sich Bitcoin Core Gegenstellen mit ihm verbinden. Siehe doc/p2p-bad-ports.md für Details und eine vollständige Liste.</translation>
</message>
@@ -3879,10 +3924,6 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
<translation type="unfinished">Fehler beim Laden der Wallet. Wallet erfordert das Herunterladen von Blöcken, und die Software unterstützt derzeit nicht das Laden von Wallets, während Blöcke außer der Reihe heruntergeladen werden, wenn assumeutxo-Snapshots verwendet werden. Die Wallet sollte erfolgreich geladen werden können, nachdem die Node-Synchronisation die Höhe %s erreicht hat.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Lesen von %s fehlgeschlagen! Alle Schlüssel wurden korrekt gelesen, Transaktionsdaten bzw. Adressbucheinträge fehlen aber möglicherweise oder sind inkorrekt.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Fehler beim Lesen von %s! Transaktionsdaten fehlen oder sind nicht korrekt. Wallet wird erneut gescannt.</translation>
</message>
@@ -3951,6 +3992,10 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
<translation type="unfinished">Prune (Kürzung): Die letzte Synchronisation der Wallet liegt vor gekürzten (gelöschten) Blöcken. Es ist ein -reindex (erneuter Download der gesamten Blockchain im Fall eines gekürzten Nodes) notwendig.</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Umbenennung von '%s' -&gt; '%s' fehlgeschlagen. Sie sollten dieses Problem beheben, indem Sie das ungültige Snapshot-Verzeichnis %s manuell verschieben oder löschen, andernfalls wird der gleiche Fehler beim nächsten Start erneut auftreten.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLite-Datenbank: Unbekannte SQLite-Wallet-Schema-Version %d. Nur Version %d wird unterstützt.</translation>
</message>
@@ -3959,10 +4004,6 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
<translation type="unfinished">Die Block-Datenbank enthält einen Block, der scheinbar aus der Zukunft kommt. Dies kann daran liegen, dass die Systemzeit Ihres Computers falsch eingestellt ist. Stellen Sie die Block-Datenbank erst dann wieder her, wenn Sie sich sicher sind, dass Ihre Systemzeit korrekt eingestellt ist.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Die Blockindexdatenbank enthält einen veralteten 'txindex'. Um den belegten Speicherplatz frei zu geben, führen Sie ein vollständiges -reindex aus, ansonsten ignorieren Sie diesen Fehler. Diese Fehlermeldung wird nicht noch einmal angezeigt.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Der Transaktionsbetrag ist zu klein, um ihn nach Abzug der Gebühr zu senden.</translation>
</message>
@@ -4000,6 +4041,10 @@ Gehen Sie zu Datei &gt; Wallet Öffnen, um eine Wallet zu laden.
Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nicht unterstützte kategoriespezifische Protokollierungsebene %1$s=%2$s. Erwartet %1$s=&lt;category&gt;:&lt;loglevel&gt;. Gültige Kategorien: %3$s. Gültige Loglevels: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Nicht unterstütztes Chainstate-Datenbankformat gefunden. Bitte starte mit -reindex-chainstate neu. Dadurch wird die Chainstate-Datenbank neu erstellt.</translation>
</message>
@@ -4008,6 +4053,10 @@ Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
<translation type="unfinished">Wallet erfolgreich erstellt. Der Legacy-Wallet-Typ ist veraltet und die Unterstützung für das Erstellen und Öffnen von Legacy-Wallets wird in Zukunft entfernt.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Wallet erfolgreich geladen. Der Legacy-Wallet-Typ ist veraltet und die Unterstützung für das Erstellen und Öffnen von Legacy-Wallets wird in Zukunft entfernt. Legacy-Wallets können mit migratewallet auf eine Deskriptor-Wallet migriert werden.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Warnung: Dumpdatei Wallet Format "%s" passt nicht zum auf der Kommandozeile angegebenen Format "%s".</translation>
</message>
@@ -4056,30 +4105,10 @@ Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
<translation type="unfinished">Es konnte nicht in das Datenverzeichnis '%s' geschrieben werden; Überprüfen Sie die Berechtigungen.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Das von einer früheren Version gestartete -txindex-Upgrade kann nicht abgeschlossen werden. Starten Sie mit der vorherigen Version neu oder führen Sie ein vollständiges -reindex aus.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s konnte den Snapshot-Status -assumeutxo nicht validieren. Dies weist auf ein Hardwareproblem, einen Fehler in der Software oder eine fehlerhafte Softwaremodifikation hin, die das Laden eines ungültigen Snapshots ermöglicht hat. Infolgedessen wird der Knoten heruntergefahren und verwendet keinen Status mehr, der auf dem Snapshot erstellt wurde, wodurch die Kettenhöhe von %d auf %d zurückgesetzt wird. Beim nächsten Neustart setzt der Knoten die Synchronisierung ab %d fort, ohne Snapshot-Daten zu verwenden. Bitte melden Sie diesen Vorfall an %s und geben Sie an, wie Sie den Snapshot erhalten haben. Der ungültige Snapshot-Kettenstatus wurde auf der Festplatte belassen, falls dies bei der Diagnose des Problems hilfreich ist, das diesen Fehler verursacht hat.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s ist sehr hoch gesetzt! Gebühren dieser Höhe könnten für eine einzelne Transaktion gezahlt werden.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Die Option -reindex-chainstate ist nicht mit -coinstatsindex kompatibel. Bitte deaktiviere coinstatsindex vorübergehend, während du -reindex-chainstate verwendest oder ersetze -reindex-chainstate durch -reindex, um alle Indizes vollständig neu zu erstellen.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Die Option -reindex-chainstate ist nicht mit -txindex kompatibel. Bitte deaktiviere txindex vorübergehend, während du -reindex-chainstate verwendest oder ersetze -reindex-chainstate durch -reindex, um alle Indizes vollständig neu zu erstellen.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Die Option -reindex-chainstate ist nicht mit -txindex kompatibel. Bitte deaktiviere txindex vorübergehend, während du -reindex-chainstate verwendest oder ersetze -reindex-chainstate durch -reindex, um alle Indizes vollständig neu zu erstellen.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Es ist nicht möglich, bestimmte Verbindungen anzubieten und gleichzeitig addrman ausgehende Verbindungen finden zu lassen.</translation>
</message>
@@ -4088,6 +4117,10 @@ Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
<translation type="unfinished">Fehler beim Laden von %s: Externe Unterzeichner-Wallet wird geladen, ohne dass die Unterstützung für externe Unterzeichner kompiliert wurde</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Fehler beim Lesen von %s! Alle Schlüssel wurden korrekt gelesen, aber Transaktionsdaten oder Adressmetadaten fehlen oder sind falsch.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Fehler: Adressbuchdaten im Wallet können nicht als zum migrierten Wallet gehörend identifiziert werden</translation>
</message>
@@ -4100,6 +4133,10 @@ Bitte nutzen Sie entweder "bdb" oder "sqlite".</translation>
<translation type="unfinished">Fehler: Transaktion in Wallet %s kann nicht als zu migrierten Wallet gehörend identifiziert werden</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Es war nicht möglich, die Bump-Gebühren zu berechnen, da unbestätigte UTXOs von einem enormen Cluster unbestätigter Transaktionen abhängen.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Kann ungültige Datei peers.dat nicht umbenennen. Bitte Verschieben oder Löschen und noch einmal versuchen.</translation>
</message>
@@ -4173,10 +4210,6 @@ Die Wallet wurde möglicherweise in einer neueren Version erstellt.
Bitte mit der neuesten Softwareversion versuchen.</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Nicht unterstützter kategoriespezifischer logging level -loglevel=%s. Erwarteter -loglevel=&lt;category&gt; :&lt;loglevel&gt;. Gültige Kategorien:%s. Gültige Log-Ebenen:%s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4366,6 +4399,10 @@ Berechnet: %s, erwartet: %s</translation>
<translation type="unfinished">Fehler: Wallet konnte während der Initialisierung nicht erneut gescannt werden.</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Start der Indizes fehlgeschlagen, wird beendet..</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Verifizierung der Datenbank fehlgeschlagen</translation>
</message>
@@ -4683,8 +4720,12 @@ Verifikations-Error: %s</translation>
<translation type="unfinished">Unbekannte neue Regeln aktiviert (Versionsbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Nicht unterstützter globaler Protokolliergrad -loglevel=%s. Gültige Werte:%s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nicht unterstützte globale Protokollierungsebene %s=%s. Gültige Werte: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates wird auf der %s Chain nicht unterstützt.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_el.ts b/src/qt/locale/bitcoin_el.ts
index 037bb81e3e..6f07f01f71 100644
--- a/src/qt/locale/bitcoin_el.ts
+++ b/src/qt/locale/bitcoin_el.ts
@@ -2,14 +2,6 @@
<context>
<name>AddressBookPage</name>
<message>
- <source>Right-click to edit address or label</source>
- <translation type="unfinished">Δεξί-κλικ για επεξεργασία της διεύθυνσης ή της ετικέτας</translation>
- </message>
- <message>
- <source>Create a new address</source>
- <translation type="unfinished">Δημιουργία νέας διεύθυνσης</translation>
- </message>
- <message>
<source>&amp;New</source>
<translation type="unfinished">&amp;Νέo</translation>
</message>
@@ -58,14 +50,6 @@
<translation type="unfinished">Ε&amp;πιλογή</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Διευθύνσεις αποστολής</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Διευθύνσεις λήψης</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Αυτές είναι οι Bitcoin διευθύνσεις σας για να στέλνετε πληρωμές. Να ελέγχετε πάντα το ποσό, καθώς και τη διεύθυνση παραλήπτη πριν στείλετε νομίσματα.</translation>
</message>
@@ -224,6 +208,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Η φράση πρόσβασης που καταχωρήθηκε για την αποκρυπτογράφηση του πορτοφολιού δεν ήταν σωστή.</translation>
</message>
<message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">Η φράση πρόσβασης που εισήχθη για την αποκρυπτογράφηση του πορτοφολιού είναι εσφαλμένη. Περιέχει έναν μηδενικό χαρακτήρα (δηλαδή - ένα byte μηδέν). Εάν η φράση πρόσβασης ορίστηκε με μια έκδοση αυτού του λογισμικού πριν από την 25.0, δοκιμάστε ξανά μόνο με τους χαρακτήρες έως — αλλά χωρίς να συμπεριλαμβάνεται — ο πρώτος μηδενικός χαρακτήρας. Εάν αυτό είναι επιτυχές, ορίστε μια νέα φράση πρόσβασης για να αποφύγετε αυτό το ζήτημα στο μέλλον.</translation>
+ </message>
+ <message>
<source>Wallet passphrase was successfully changed.</source>
<translation type="unfinished">Η φράση πρόσβασης άλλαξε επιτυχώς.</translation>
</message>
@@ -232,6 +220,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Η αλλαγή της φράσης πρόσβασης απέτυχε</translation>
</message>
<message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">Ο παλιός κωδικός που εισήχθη για την αποκρυπτογράφηση του πορτοφολιού είναι εσφαλμένος. Περιέχει έναν χαρακτήρα null (δηλαδή, ένα μηδενικό byte). Εάν ο κωδικός ορίστηκε πριν από την έκδοση 25.0 του λογισμικού, δοκιμάστε πάλι μόνο με τους χαρακτήρες έως τον πρώτο χαρακτήρα null — αλλά χωρίς αυτόν.</translation>
+ </message>
+ <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">Προσοχη: το πλήκτρο Caps Lock είναι ενεργο.</translation>
</message>
@@ -743,8 +735,8 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ <numerusform>1%n ενεργές συνδέσεις στο δίκτυο Bitcoin.</numerusform>
+ <numerusform>%n ενεργές συνδέσεις στο δίκτυο Bitcoin.</numerusform>
</translation>
</message>
<message>
@@ -870,10 +862,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Ταρίφα:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Σκόνη:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Ταρίφα αλλαγής:</translation>
</message>
@@ -962,10 +950,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Αντιγραφή των bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Αντιγραφή σκόνης</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Αντιγραφή αλλαγής</translation>
</message>
@@ -974,18 +958,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 κλειδωμένο)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ναι</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">όχι</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Αυτή η ετικέτα γίνεται κόκκινη εάν οποιοσδήποτε παραλήπτης λάβει ένα ποσό μικρότερο από το τρέχον όριο σκόνης.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Μπορεί να ποικίλει +/-%1 satoshi(s) ανά είσοδο.</translation>
</message>
@@ -1159,14 +1131,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Δημιουργία Άδειου Πορτοφολιού</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">χρήση περιγραφέων για την διαχείριση του scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Πορτοφόλι Περιγραφέα </translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Χρησιμοποιήστε μια εξωτερική συσκευή υπογραφής, όπως ένα πορτοφόλι υλικού. Ρυθμίστε πρώτα στις προτιμήσεις του πορτοφολιού το εξωτερικό script υπογραφής.</translation>
</message>
@@ -1179,10 +1143,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Δημιουργία</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Μεταγλωτίστηκε χωρίς την υποστήριξη sqlite (απαραίτητη για περιγραφικά πορτοφόλια )</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Συντάχθηκε χωρίς την υποστήριξη εξωτερικής υπογραφής (απαιτείται για εξωτερική υπογραφή)</translation>
@@ -1305,8 +1265,8 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>(επαρκεί για την επαναφορά αντιγράφων ασφαλείας %n ημερών)</numerusform>
+ <numerusform>(επαρκεί για την επαναφορά αντιγράφων ασφαλείας %n ημερών)</numerusform>
</translation>
</message>
<message>
@@ -1346,6 +1306,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Αυτός ο αρχικός συγχρονισμός είναι πολύ απαιτητικός και μπορεί να εκθέσει προβλήματα υλικού με τον υπολογιστή σας, τα οποία προηγουμένως είχαν περάσει απαρατήρητα. Κάθε φορά που θα εκτελέσετε το %1, θα συνεχίσει να κατεβαίνει εκεί όπου έχει σταματήσει.</translation>
</message>
<message>
+ <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
+ <translation type="unfinished">Αφού πατήσετε OK, το %1 θα ξεκινήσει τη λήψη και την επεξεργασία της πλήρους αλυσίδας μπλοκ %4 (%2GB) ξεκινώντας με τις πρώτες συναλλαγές στο %3 όταν πρωτο-ξεκίνησε το %4.</translation>
+ </message>
+ <message>
<source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
<translation type="unfinished">Αν έχετε επιλέξει να περιορίσετε την αποθήκευση της αλυσίδας μπλοκ (κλάδεμα), τα ιστορικά δεδομένα θα πρέπει ακόμα να κατεβάσετε και να επεξεργαστείτε, αλλά θα διαγραφούν αργότερα για να διατηρήσετε τη χρήση του δίσκου σας χαμηλή.</translation>
</message>
@@ -1442,7 +1406,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Unknown. Syncing Headers (%1, %2%)…</source>
<translation type="unfinished">Άγνωστο. Συγχρονισμός επικεφαλίδων (%1, %2%)...</translation>
</message>
- </context>
+ <message>
+ <source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">Άγνωστο. Συγχρονισμός επικεφαλίδων (%1, %2%)...</translation>
+ </message>
+</context>
<context>
<name>OpenURIDialog</name>
<message>
@@ -1486,6 +1454,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Αριθμός script και γραμμές επαλήθευσης</translation>
</message>
<message>
+ <source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
+ <translation type="unfinished">Πλήρης διαδρομή ενός script συμβατού με το %1 (π.χ.: C:\Downloads\hwi.exe ή /Users/you/Downloads/hwi.py). Προσοχή: ένα κακόβουλο λογισμικό μπορεί να κλέψει τα νομίσματά σας!</translation>
+ </message>
+ <message>
<source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
<translation type="unfinished">Διεύθυνση IP του διαμεσολαβητή (π.χ. IPv4: 127.0.0.1 / IPv6: ::1)</translation>
</message>
@@ -1927,6 +1899,10 @@ ID Συναλλαγής: %1</translation>
<translation type="unfinished">* Στέλνει %1 προς %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">δική σας διεύθυνση</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Δεν είναι δυνατός ο υπολογισμός των κρατήσεων ή του συνολικού ποσού συναλλαγής.</translation>
</message>
@@ -2701,10 +2677,6 @@ ID Συναλλαγής: %1</translation>
<translation type="unfinished">Προσθήκες...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Σκόνη:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Επιλογή...</translation>
</message>
@@ -2781,10 +2753,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Αντιγραφή των bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Αντιγραφή σκόνης</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Αντιγραφή αλλαγής</translation>
</message>
@@ -3392,10 +3360,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Αποστέλλονται προς</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Πληρωμή στον εαυτό σας</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Εξόρυξη</translation>
</message>
@@ -3471,10 +3435,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Αποστέλλονται προς</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Στον εαυτό σου</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Εξόρυξη</translation>
</message>
@@ -3758,10 +3718,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Διανέμεται υπό την άδεια χρήσης του λογισμικού MIT, δείτε το συνοδευτικό αρχείο %s ή %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Σφάλμα κατά την ανάγνωση %s! Όλα τα κλειδιά διαβάζονται σωστά, αλλά τα δεδομένα των συναλλαγών ή οι καταχωρίσεις του βιβλίου διευθύνσεων ενδέχεται να λείπουν ή να είναι εσφαλμένα.</translation>
- </message>
- <message>
<source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
<translation type="unfinished">Σφάλμα: Η καταγραφή του φορμά του αρχείου dump είναι εσφαλμένη. Ελήφθη: «%s», αναμενόταν: «φορμά».</translation>
</message>
diff --git a/src/qt/locale/bitcoin_en.ts b/src/qt/locale/bitcoin_en.ts
index fcba44f809..01b428d46e 100644
--- a/src/qt/locale/bitcoin_en.ts
+++ b/src/qt/locale/bitcoin_en.ts
@@ -427,7 +427,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+412"/>
+ <location line="+417"/>
<source>Network activity disabled.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished"></translation>
@@ -438,7 +438,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-1194"/>
+ <location line="-1199"/>
<source>Send coins to a Bitcoin address</source>
<translation>Send coins to a Bitcoin address</translation>
</message>
@@ -553,7 +553,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation>Tabs toolbar</translation>
</message>
<message>
- <location line="+476"/>
+ <location line="+481"/>
<source>Syncing Headers (%1%)…</source>
<translation type="unfinished"></translation>
</message>
@@ -578,7 +578,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-852"/>
+ <location line="-857"/>
<source>Request payments (generates QR codes and bitcoin: URIs)</source>
<translation type="unfinished"></translation>
</message>
@@ -598,7 +598,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation type="unfinished"></translation>
</message>
<message numerus="yes">
- <location line="+764"/>
+ <location line="+769"/>
<source>Processed %n block(s) of transaction history.</source>
<translation>
<numerusform>Processed %n block of transaction history.</numerusform>
@@ -646,7 +646,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation>Up to date</translation>
</message>
<message>
- <location line="-837"/>
+ <location line="-842"/>
<source>Ctrl+Q</source>
<translation type="unfinished"></translation>
</message>
@@ -802,7 +802,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+274"/>
+ <location line="+279"/>
<source>%1 client</source>
<translation type="unfinished"></translation>
</message>
@@ -1099,7 +1099,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+153"/>
+ <location line="+165"/>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished"></translation>
</message>
@@ -1416,7 +1416,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<translation type="unfinished">Bitcoin</translation>
</message>
<message numerus="yes">
- <location line="+162"/>
+ <location line="+164"/>
<source>%n GB of space available</source>
<translation type="unfinished">
<numerusform>%n GB of space available</numerusform>
@@ -1537,12 +1537,12 @@ The migration process will create a backup of the wallet before migrating. This
</message>
<message>
<location line="+2"/>
- <source> Watchonly scripts have been migrated to a new wallet named &apos;%1&apos;.</source>
+ <source>Watchonly scripts have been migrated to a new wallet named &apos;%1&apos;.</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+3"/>
- <source> Solvable but not watched scripts have been migrated to a new wallet named &apos;%1&apos;.</source>
+ <source>Solvable but not watched scripts have been migrated to a new wallet named &apos;%1&apos;.</source>
<translation type="unfinished"></translation>
</message>
<message>
@@ -1747,7 +1747,12 @@ The migration process will create a backup of the wallet before migrating. This
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+227"/>
+ <location line="+107"/>
+ <source>Font in the Overview tab: </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+45"/>
<source>Options set in this dialog are overridden by the command line:</source>
<translation type="unfinished"></translation>
</message>
@@ -1772,7 +1777,7 @@ The migration process will create a backup of the wallet before migrating. This
<translation>&amp;Reset Options</translation>
</message>
<message>
- <location line="-645"/>
+ <location line="-570"/>
<source>&amp;Network</source>
<translation>&amp;Network</translation>
</message>
@@ -2044,22 +2049,7 @@ The migration process will create a backup of the wallet before migrating. This
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+236"/>
- <source>Monospaced font in the Overview tab:</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location line="+8"/>
- <source>embedded &quot;%1&quot;</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location line="+49"/>
- <source>closest matching &quot;%1&quot;</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location line="+206"/>
+ <location line="+424"/>
<source>&amp;OK</source>
<translation>&amp;OK</translation>
</message>
@@ -2069,7 +2059,7 @@ The migration process will create a backup of the wallet before migrating. This
<translation>&amp;Cancel</translation>
</message>
<message>
- <location filename="../optionsdialog.cpp" line="+96"/>
+ <location filename="../optionsdialog.cpp" line="+152"/>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>&quot;External signing&quot; means using devices such as hardware wallets.</extracomment>
<translation type="unfinished"></translation>
@@ -2080,25 +2070,25 @@ The migration process will create a backup of the wallet before migrating. This
<translation>default</translation>
</message>
<message>
- <location line="+86"/>
+ <location line="+74"/>
<source>none</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+107"/>
+ <location line="+109"/>
<source>Confirm options reset</source>
<extracomment>Window title text of pop-up window shown when the user has chosen to reset options.</extracomment>
<translation>Confirm options reset</translation>
</message>
<message>
<location line="-9"/>
- <location line="+79"/>
+ <location line="+81"/>
<source>Client restart required to activate changes.</source>
<extracomment>Text explaining that the settings changed will not come into effect until the client is restarted.</extracomment>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-75"/>
+ <location line="-77"/>
<source>Current settings will be backed up at &quot;%1&quot;.</source>
<extracomment>Text explaining to the user that the client&apos;s current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location&apos;s path.</extracomment>
<translation type="unfinished"></translation>
@@ -2142,7 +2132,7 @@ The migration process will create a backup of the wallet before migrating. This
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+40"/>
+ <location line="+42"/>
<source>This change would require a client restart.</source>
<translation type="unfinished"></translation>
</message>
@@ -2155,7 +2145,7 @@ The migration process will create a backup of the wallet before migrating. This
<context>
<name>OptionsModel</name>
<message>
- <location filename="../optionsmodel.cpp" line="+198"/>
+ <location filename="../optionsmodel.cpp" line="+230"/>
<source>Could not read setting &quot;%1&quot;, %2.</source>
<translation type="unfinished"></translation>
</message>
@@ -2358,8 +2348,8 @@ The migration process will create a backup of the wallet before migrating. This
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+16"/>
- <source> * Sends %1 to %2</source>
+ <location line="+17"/>
+ <source>Sends %1 to %2</source>
<translation type="unfinished"></translation>
</message>
<message>
@@ -2647,7 +2637,7 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+13"/>
+ <location line="+12"/>
<location line="+12"/>
<source>%1 d</source>
<translation type="unfinished"></translation>
@@ -2747,7 +2737,7 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<location line="+2"/>
- <location filename="../rpcconsole.cpp" line="+1004"/>
+ <location filename="../rpcconsole.cpp" line="+1006"/>
<source>%1 kB</source>
<translation type="unfinished"></translation>
</message>
@@ -2775,12 +2765,12 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+395"/>
+ <location line="+423"/>
<source>Error: %1</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+70"/>
+ <location line="+73"/>
<source>%1 didn&apos;t yet exit safely…</source>
<translation type="unfinished"></translation>
</message>
@@ -2789,6 +2779,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<source>unknown</source>
<translation type="unfinished"></translation>
</message>
+ <message>
+ <location filename="../optionsdialog.cpp" line="-389"/>
+ <source>Embedded &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Default system font &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Custom…</source>
+ <translation type="unfinished"></translation>
+ </message>
</context>
<context>
<name>QRImageWidget</name>
@@ -3293,7 +3298,7 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished"></translation>
</message>
<message>
- <location filename="../rpcconsole.cpp" line="-473"/>
+ <location filename="../rpcconsole.cpp" line="-475"/>
<source>Inbound: initiated by peer</source>
<extracomment>Explanatory text for an inbound peer connection.</extracomment>
<translation type="unfinished"></translation>
@@ -3386,7 +3391,7 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+151"/>
+ <location line="+153"/>
<source>&amp;Copy address</source>
<extracomment>Context menu action to copy the address of a peer.</extracomment>
<translation type="unfinished"></translation>
@@ -3458,7 +3463,12 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-330"/>
+ <location line="+18"/>
+ <source>Node window - [%1]</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="-348"/>
<source>Executing command using &quot;%1&quot; wallet</source>
<translation type="unfinished"></translation>
</message>
@@ -4047,12 +4057,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+92"/>
- <source> from wallet &apos;%1&apos;</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location line="+11"/>
+ <location line="+103"/>
<source>%1 to &apos;%2&apos;</source>
<translation type="unfinished"></translation>
</message>
@@ -4122,7 +4127,12 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-6"/>
+ <location line="-30"/>
+ <source>%1 from wallet &apos;%2&apos;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+24"/>
<source>Do you want to create this transaction?</source>
<extracomment>Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</extracomment>
<translation type="unfinished"></translation>
@@ -4363,7 +4373,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
<context>
<name>ShutdownWindow</name>
<message>
- <location filename="../utilitydialog.cpp" line="+85"/>
+ <location filename="../utilitydialog.cpp" line="+86"/>
<source>%1 is shutting down…</source>
<translation type="unfinished"></translation>
</message>
@@ -4771,7 +4781,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</message>
<message>
<location line="+16"/>
- <source> (Certificate was not verified)</source>
+ <source>%1 (Certificate was not verified)</source>
<translation type="unfinished"></translation>
</message>
<message>
@@ -4800,7 +4810,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+21"/>
+ <location line="+19"/>
<source>Amount</source>
<translation type="unfinished">Amount</translation>
</message>
@@ -5139,7 +5149,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+170"/>
+ <location line="+173"/>
<source>Range:</source>
<translation type="unfinished"></translation>
</message>
@@ -5235,13 +5245,13 @@ Go to File &gt; Open Wallet to load a wallet.
<context>
<name>WalletModel</name>
<message>
- <location filename="../walletmodel.cpp" line="+228"/>
+ <location filename="../walletmodel.cpp" line="+227"/>
<location line="+13"/>
<source>Send Coins</source>
<translation type="unfinished">Send Coins</translation>
</message>
<message>
- <location line="+247"/>
+ <location line="+254"/>
<location line="+55"/>
<location line="+15"/>
<location line="+5"/>
@@ -5833,6 +5843,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<location line="+1"/>
+ <source>Error committing db txn for wallet transactions removal</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
<source>Error creating %s</source>
<translation type="unfinished"></translation>
</message>
@@ -5893,21 +5908,16 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<location line="+1"/>
- <source>Error: Cannot extract destination from the generated scriptpubkey</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location line="+1"/>
- <source>Error: Could not add watchonly tx to watchonly wallet</source>
+ <source>Error starting db txn for wallet transactions removal</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+1"/>
- <source>Error: Could not delete watchonly transactions</source>
+ <source>Error: Cannot extract destination from the generated scriptpubkey</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+3"/>
<source>Error: Couldn&apos;t create cursor into database</source>
<translation type="unfinished"></translation>
</message>
@@ -5953,11 +5963,6 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<location line="+1"/>
- <source>Error: Not all watchonly txs could be deleted</source>
- <translation type="unfinished"></translation>
- </message>
- <message>
- <location line="+1"/>
<source>Error: This wallet already uses SQLite</source>
<translation type="unfinished"></translation>
</message>
@@ -5988,6 +5993,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<location line="+1"/>
+ <source>Error: Unable to read wallet&apos;s best block locator record</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
<source>Error: Unable to remove watchonly address book data</source>
<translation type="unfinished"></translation>
</message>
@@ -5998,6 +6008,26 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<location line="+1"/>
+ <source>Error: Unable to write solvable wallet best block locator record</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Error: Unable to write watchonly wallet best block locator record</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Error: address book copy failed for wallet %s</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
+ <source>Error: database transaction cannot be executed for wallet %s</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
<source>Failed to listen on any port. Use -listen=0 if you want this.</source>
<translation type="unfinished"></translation>
</message>
@@ -6018,6 +6048,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<location line="+1"/>
+ <source>Failure removing transaction: %s</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+1"/>
<source>Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
<translation type="unfinished"></translation>
</message>
@@ -6293,22 +6328,22 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<location line="+1"/>
- <source>Transaction amount too small</source>
+ <source>Transaction %s does not belong to this wallet</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+1"/>
- <source>Transaction amounts must not be negative</source>
+ <source>Transaction amount too small</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+1"/>
- <source>Transaction change output index out of range</source>
+ <source>Transaction amounts must not be negative</source>
<translation type="unfinished"></translation>
</message>
<message>
<location line="+1"/>
- <source>Transaction has too long of a mempool chain</source>
+ <source>Transaction change output index out of range</source>
<translation type="unfinished"></translation>
</message>
<message>
@@ -6412,17 +6447,32 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+6"/>
+ <location line="+5"/>
+ <source>Wallet file creation failed: %s</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+2"/>
<source>acceptstalefeeestimates is not supported on %s chain.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-5"/>
+ <location line="-6"/>
<source>Unsupported logging category %s=%s.</source>
<translation type="unfinished"></translation>
</message>
<message>
+ <location line="-110"/>
+ <source>Error: Could not add watchonly tx %s to watchonly wallet</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
<location line="+1"/>
+ <source>Error: Could not delete watchonly transactions. </source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <location line="+110"/>
<source>User Agent comment (%s) contains unsafe characters.</source>
<translation type="unfinished"></translation>
</message>
@@ -6437,12 +6487,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="+1"/>
+ <location line="+2"/>
<source>Wallet needed to be rewritten: restart %s to complete</source>
<translation type="unfinished"></translation>
</message>
<message>
- <location line="-44"/>
+ <location line="-45"/>
<source>Settings file could not be read</source>
<translation type="unfinished"></translation>
</message>
diff --git a/src/qt/locale/bitcoin_en.xlf b/src/qt/locale/bitcoin_en.xlf
index b1a01cb4a1..2bab80e3dd 100644
--- a/src/qt/locale/bitcoin_en.xlf
+++ b/src/qt/locale/bitcoin_en.xlf
@@ -313,11 +313,11 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
</trans-unit>
<trans-unit id="_msg68">
<source xml:space="preserve">Error: %1</source>
- <context-group purpose="location"><context context-type="linenumber">598</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">626</context></context-group>
</trans-unit>
<trans-unit id="_msg69">
<source xml:space="preserve">%1 didn&apos;t yet exit safely…</source>
- <context-group purpose="location"><context context-type="linenumber">668</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">699</context></context-group>
</trans-unit>
</group>
</body></file>
@@ -381,12 +381,12 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
</trans-unit>
<trans-unit id="_msg84">
<source xml:space="preserve">Network activity disabled.</source>
- <context-group purpose="location"><context context-type="linenumber">1001</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1006</context></context-group>
<note annotates="source" from="developer">A substring of the tooltip.</note>
</trans-unit>
<trans-unit id="_msg85">
<source xml:space="preserve">Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
- <context-group purpose="location"><context context-type="linenumber">1452</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1457</context></context-group>
</trans-unit>
<trans-unit id="_msg86">
<source xml:space="preserve">Send coins to a Bitcoin address</source>
@@ -482,23 +482,23 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
</trans-unit>
<trans-unit id="_msg109">
<source xml:space="preserve">Syncing Headers (%1%)…</source>
- <context-group purpose="location"><context context-type="linenumber">1045</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1050</context></context-group>
</trans-unit>
<trans-unit id="_msg110">
<source xml:space="preserve">Synchronizing with network…</source>
- <context-group purpose="location"><context context-type="linenumber">1103</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1108</context></context-group>
</trans-unit>
<trans-unit id="_msg111">
<source xml:space="preserve">Indexing blocks on disk…</source>
- <context-group purpose="location"><context context-type="linenumber">1108</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1113</context></context-group>
</trans-unit>
<trans-unit id="_msg112">
<source xml:space="preserve">Processing blocks on disk…</source>
- <context-group purpose="location"><context context-type="linenumber">1110</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1115</context></context-group>
</trans-unit>
<trans-unit id="_msg113">
<source xml:space="preserve">Connecting to peers…</source>
- <context-group purpose="location"><context context-type="linenumber">1117</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1122</context></context-group>
</trans-unit>
<trans-unit id="_msg114">
<source xml:space="preserve">Request payments (generates QR codes and bitcoin: URIs)</source>
@@ -517,7 +517,7 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
<context-group purpose="location"><context context-type="linenumber">362</context></context-group>
</trans-unit>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">1126</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1131</context></context-group>
<trans-unit id="_msg118[0]">
<source xml:space="preserve">Processed %n block(s) of transaction history.</source>
</trans-unit>
@@ -527,35 +527,35 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
</group>
<trans-unit id="_msg119">
<source xml:space="preserve">%1 behind</source>
- <context-group purpose="location"><context context-type="linenumber">1149</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1154</context></context-group>
</trans-unit>
<trans-unit id="_msg120">
<source xml:space="preserve">Catching up…</source>
- <context-group purpose="location"><context context-type="linenumber">1154</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1159</context></context-group>
</trans-unit>
<trans-unit id="_msg121">
<source xml:space="preserve">Last received block was generated %1 ago.</source>
- <context-group purpose="location"><context context-type="linenumber">1173</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1178</context></context-group>
</trans-unit>
<trans-unit id="_msg122">
<source xml:space="preserve">Transactions after this will not yet be visible.</source>
- <context-group purpose="location"><context context-type="linenumber">1175</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1180</context></context-group>
</trans-unit>
<trans-unit id="_msg123">
<source xml:space="preserve">Error</source>
- <context-group purpose="location"><context context-type="linenumber">1215</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1220</context></context-group>
</trans-unit>
<trans-unit id="_msg124">
<source xml:space="preserve">Warning</source>
- <context-group purpose="location"><context context-type="linenumber">1219</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1224</context></context-group>
</trans-unit>
<trans-unit id="_msg125">
<source xml:space="preserve">Information</source>
- <context-group purpose="location"><context context-type="linenumber">1223</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1228</context></context-group>
</trans-unit>
<trans-unit id="_msg126">
<source xml:space="preserve">Up to date</source>
- <context-group purpose="location"><context context-type="linenumber">1130</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1135</context></context-group>
</trans-unit>
<trans-unit id="_msg127">
<source xml:space="preserve">Ctrl+Q</source>
@@ -685,18 +685,18 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
</trans-unit>
<trans-unit id="_msg157">
<source xml:space="preserve">%1 client</source>
- <context-group purpose="location"><context context-type="linenumber">812</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">817</context></context-group>
</trans-unit>
<trans-unit id="_msg158">
<source xml:space="preserve">&amp;Hide</source>
- <context-group purpose="location"><context context-type="linenumber">880</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">885</context></context-group>
</trans-unit>
<trans-unit id="_msg159">
<source xml:space="preserve">S&amp;how</source>
- <context-group purpose="location"><context context-type="linenumber">881</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">886</context></context-group>
</trans-unit>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">998</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1003</context></context-group>
<note annotates="source" from="developer">A substring of the tooltip.</note>
<trans-unit id="_msg160[0]">
<source xml:space="preserve">%n active connection(s) to Bitcoin network.</source>
@@ -707,111 +707,111 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
</group>
<trans-unit id="_msg161">
<source xml:space="preserve">Click for more actions.</source>
- <context-group purpose="location"><context context-type="linenumber">1008</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1013</context></context-group>
<note annotates="source" from="developer">A substring of the tooltip. &quot;More actions&quot; are available via the context menu.</note>
</trans-unit>
<trans-unit id="_msg162">
<source xml:space="preserve">Show Peers tab</source>
- <context-group purpose="location"><context context-type="linenumber">1025</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1030</context></context-group>
<note annotates="source" from="developer">A context menu item. The &quot;Peers tab&quot; is an element of the &quot;Node window&quot;.</note>
</trans-unit>
<trans-unit id="_msg163">
<source xml:space="preserve">Disable network activity</source>
- <context-group purpose="location"><context context-type="linenumber">1033</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1038</context></context-group>
<note annotates="source" from="developer">A context menu item.</note>
</trans-unit>
<trans-unit id="_msg164">
<source xml:space="preserve">Enable network activity</source>
- <context-group purpose="location"><context context-type="linenumber">1035</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1040</context></context-group>
<note annotates="source" from="developer">A context menu item. The network activity was disabled previously.</note>
</trans-unit>
<trans-unit id="_msg165">
<source xml:space="preserve">Pre-syncing Headers (%1%)…</source>
- <context-group purpose="location"><context context-type="linenumber">1052</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1057</context></context-group>
</trans-unit>
<trans-unit id="_msg166">
<source xml:space="preserve">Error creating wallet</source>
- <context-group purpose="location"><context context-type="linenumber">1191</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1196</context></context-group>
</trans-unit>
<trans-unit id="_msg167">
<source xml:space="preserve">Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
- <context-group purpose="location"><context context-type="linenumber">1191</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1196</context></context-group>
</trans-unit>
<trans-unit id="_msg168">
<source xml:space="preserve">Error: %1</source>
- <context-group purpose="location"><context context-type="linenumber">1216</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1221</context></context-group>
</trans-unit>
<trans-unit id="_msg169">
<source xml:space="preserve">Warning: %1</source>
- <context-group purpose="location"><context context-type="linenumber">1220</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1225</context></context-group>
</trans-unit>
<trans-unit id="_msg170">
<source xml:space="preserve">Date: %1
</source>
- <context-group purpose="location"><context context-type="linenumber">1328</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1333</context></context-group>
</trans-unit>
<trans-unit id="_msg171">
<source xml:space="preserve">Amount: %1
</source>
- <context-group purpose="location"><context context-type="linenumber">1329</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1334</context></context-group>
</trans-unit>
<trans-unit id="_msg172">
<source xml:space="preserve">Wallet: %1
</source>
- <context-group purpose="location"><context context-type="linenumber">1331</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1336</context></context-group>
</trans-unit>
<trans-unit id="_msg173">
<source xml:space="preserve">Type: %1
</source>
- <context-group purpose="location"><context context-type="linenumber">1333</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1338</context></context-group>
</trans-unit>
<trans-unit id="_msg174">
<source xml:space="preserve">Label: %1
</source>
- <context-group purpose="location"><context context-type="linenumber">1335</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1340</context></context-group>
</trans-unit>
<trans-unit id="_msg175">
<source xml:space="preserve">Address: %1
</source>
- <context-group purpose="location"><context context-type="linenumber">1337</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1342</context></context-group>
</trans-unit>
<trans-unit id="_msg176">
<source xml:space="preserve">Sent transaction</source>
- <context-group purpose="location"><context context-type="linenumber">1338</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1343</context></context-group>
</trans-unit>
<trans-unit id="_msg177">
<source xml:space="preserve">Incoming transaction</source>
- <context-group purpose="location"><context context-type="linenumber">1338</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1343</context></context-group>
</trans-unit>
<trans-unit id="_msg178">
<source xml:space="preserve">HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
- <context-group purpose="location"><context context-type="linenumber">1390</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1395</context></context-group>
</trans-unit>
<trans-unit id="_msg179">
<source xml:space="preserve">HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
- <context-group purpose="location"><context context-type="linenumber">1390</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1395</context></context-group>
</trans-unit>
<trans-unit id="_msg180">
<source xml:space="preserve">Private key &lt;b&gt;disabled&lt;/b&gt;</source>
- <context-group purpose="location"><context context-type="linenumber">1390</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1395</context></context-group>
</trans-unit>
<trans-unit id="_msg181">
<source xml:space="preserve">Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
- <context-group purpose="location"><context context-type="linenumber">1413</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1418</context></context-group>
</trans-unit>
<trans-unit id="_msg182">
<source xml:space="preserve">Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;locked&lt;/b&gt;</source>
- <context-group purpose="location"><context context-type="linenumber">1421</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1426</context></context-group>
</trans-unit>
<trans-unit id="_msg183">
<source xml:space="preserve">Original message:</source>
- <context-group purpose="location"><context context-type="linenumber">1540</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1545</context></context-group>
</trans-unit>
</group>
<group restype="x-trolltech-linguist-context" resname="UnitDisplayStatusBarControl">
<trans-unit id="_msg184">
<source xml:space="preserve">Unit to show amounts in. Click to select another unit.</source>
- <context-group purpose="location"><context context-type="linenumber">1579</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1584</context></context-group>
</trans-unit>
</group>
</body></file>
@@ -939,20 +939,20 @@ Signing is only possible with addresses of the type &apos;legacy&apos;.</source>
</trans-unit>
<trans-unit id="_msg214">
<source xml:space="preserve">Can vary +/- %1 satoshi(s) per input.</source>
- <context-group purpose="location"><context context-type="linenumber">524</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">536</context></context-group>
</trans-unit>
<trans-unit id="_msg215">
<source xml:space="preserve">(no label)</source>
- <context-group purpose="location"><context context-type="linenumber">569</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">623</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">581</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">635</context></context-group>
</trans-unit>
<trans-unit id="_msg216">
<source xml:space="preserve">change from %1 (%2)</source>
- <context-group purpose="location"><context context-type="linenumber">616</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">628</context></context-group>
</trans-unit>
<trans-unit id="_msg217">
<source xml:space="preserve">(change)</source>
- <context-group purpose="location"><context context-type="linenumber">617</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">629</context></context-group>
</trans-unit>
</group>
</body></file>
@@ -1027,11 +1027,11 @@ The migration process will create a backup of the wallet before migrating. This
<context-group purpose="location"><context context-type="linenumber">473</context></context-group>
</trans-unit>
<trans-unit id="_msg232">
- <source xml:space="preserve"> Watchonly scripts have been migrated to a new wallet named &apos;%1&apos;.</source>
+ <source xml:space="preserve">Watchonly scripts have been migrated to a new wallet named &apos;%1&apos;.</source>
<context-group purpose="location"><context context-type="linenumber">475</context></context-group>
</trans-unit>
<trans-unit id="_msg233">
- <source xml:space="preserve"> Solvable but not watched scripts have been migrated to a new wallet named &apos;%1&apos;.</source>
+ <source xml:space="preserve">Solvable but not watched scripts have been migrated to a new wallet named &apos;%1&apos;.</source>
<context-group purpose="location"><context context-type="linenumber">478</context></context-group>
</trans-unit>
<trans-unit id="_msg234">
@@ -1279,7 +1279,7 @@ The migration process will create a backup of the wallet before migrating. This
<context-group purpose="location"><context context-type="linenumber">139</context></context-group>
</trans-unit>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">301</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">303</context></context-group>
<trans-unit id="_msg286[0]">
<source xml:space="preserve">%n GB of space available</source>
</trans-unit>
@@ -1288,7 +1288,7 @@ The migration process will create a backup of the wallet before migrating. This
</trans-unit>
</group>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">303</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">305</context></context-group>
<trans-unit id="_msg287[0]">
<source xml:space="preserve">(of %n GB needed)</source>
</trans-unit>
@@ -1297,7 +1297,7 @@ The migration process will create a backup of the wallet before migrating. This
</trans-unit>
</group>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">306</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">308</context></context-group>
<trans-unit id="_msg288[0]">
<source xml:space="preserve">(%n GB needed for full chain)</source>
</trans-unit>
@@ -1307,18 +1307,18 @@ The migration process will create a backup of the wallet before migrating. This
</group>
<trans-unit id="_msg289">
<source xml:space="preserve">Choose data directory</source>
- <context-group purpose="location"><context context-type="linenumber">323</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">325</context></context-group>
</trans-unit>
<trans-unit id="_msg290">
<source xml:space="preserve">At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
- <context-group purpose="location"><context context-type="linenumber">378</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">380</context></context-group>
</trans-unit>
<trans-unit id="_msg291">
<source xml:space="preserve">Approximately %1 GB of data will be stored in this directory.</source>
- <context-group purpose="location"><context context-type="linenumber">381</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">383</context></context-group>
</trans-unit>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">390</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">392</context></context-group>
<note annotates="source" from="developer">Explanatory text on the capability of the current prune target.</note>
<trans-unit id="_msg292[0]">
<source xml:space="preserve">(sufficient to restore backups %n day(s) old)</source>
@@ -1329,19 +1329,19 @@ The migration process will create a backup of the wallet before migrating. This
</group>
<trans-unit id="_msg293">
<source xml:space="preserve">%1 will download and store a copy of the Bitcoin block chain.</source>
- <context-group purpose="location"><context context-type="linenumber">392</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">394</context></context-group>
</trans-unit>
<trans-unit id="_msg294">
<source xml:space="preserve">The wallet will also be stored in this directory.</source>
- <context-group purpose="location"><context context-type="linenumber">394</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">396</context></context-group>
</trans-unit>
<trans-unit id="_msg295">
<source xml:space="preserve">Error: Specified data directory &quot;%1&quot; cannot be created.</source>
- <context-group purpose="location"><context context-type="linenumber">250</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">252</context></context-group>
</trans-unit>
<trans-unit id="_msg296">
<source xml:space="preserve">Error</source>
- <context-group purpose="location"><context context-type="linenumber">280</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">282</context></context-group>
</trans-unit>
</group>
</body></file>
@@ -1363,11 +1363,11 @@ The migration process will create a backup of the wallet before migrating. This
<group restype="x-trolltech-linguist-context" resname="ShutdownWindow">
<trans-unit id="_msg300">
<source xml:space="preserve">%1 is shutting down…</source>
- <context-group purpose="location"><context context-type="linenumber">145</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">146</context></context-group>
</trans-unit>
<trans-unit id="_msg301">
<source xml:space="preserve">Do not shut down the computer until this window disappears.</source>
- <context-group purpose="location"><context context-type="linenumber">146</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">147</context></context-group>
</trans-unit>
</group>
</body></file>
@@ -1563,419 +1563,425 @@ The migration process will create a backup of the wallet before migrating. This
<context-group purpose="location"><context context-type="linenumber">672</context></context-group>
</trans-unit>
<trans-unit id="_msg343">
- <source xml:space="preserve">Options set in this dialog are overridden by the command line:</source>
- <context-group purpose="location"><context context-type="linenumber">899</context></context-group>
+ <source xml:space="preserve">Font in the Overview tab: </source>
+ <context-group purpose="location"><context context-type="linenumber">779</context></context-group>
</trans-unit>
<trans-unit id="_msg344">
- <source xml:space="preserve">Open the %1 configuration file from the working directory.</source>
- <context-group purpose="location"><context context-type="linenumber">944</context></context-group>
+ <source xml:space="preserve">Options set in this dialog are overridden by the command line:</source>
+ <context-group purpose="location"><context context-type="linenumber">824</context></context-group>
</trans-unit>
<trans-unit id="_msg345">
- <source xml:space="preserve">Open Configuration File</source>
- <context-group purpose="location"><context context-type="linenumber">947</context></context-group>
+ <source xml:space="preserve">Open the %1 configuration file from the working directory.</source>
+ <context-group purpose="location"><context context-type="linenumber">869</context></context-group>
</trans-unit>
<trans-unit id="_msg346">
- <source xml:space="preserve">Reset all client options to default.</source>
- <context-group purpose="location"><context context-type="linenumber">957</context></context-group>
+ <source xml:space="preserve">Open Configuration File</source>
+ <context-group purpose="location"><context context-type="linenumber">872</context></context-group>
</trans-unit>
<trans-unit id="_msg347">
- <source xml:space="preserve">&amp;Reset Options</source>
- <context-group purpose="location"><context context-type="linenumber">960</context></context-group>
+ <source xml:space="preserve">Reset all client options to default.</source>
+ <context-group purpose="location"><context context-type="linenumber">882</context></context-group>
</trans-unit>
<trans-unit id="_msg348">
+ <source xml:space="preserve">&amp;Reset Options</source>
+ <context-group purpose="location"><context context-type="linenumber">885</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg349">
<source xml:space="preserve">&amp;Network</source>
<context-group purpose="location"><context context-type="linenumber">315</context></context-group>
</trans-unit>
- <trans-unit id="_msg349">
+ <trans-unit id="_msg350">
<source xml:space="preserve">Prune &amp;block storage to</source>
<context-group purpose="location"><context context-type="linenumber">61</context></context-group>
</trans-unit>
- <trans-unit id="_msg350">
+ <trans-unit id="_msg351">
<source xml:space="preserve">GB</source>
<context-group purpose="location"><context context-type="linenumber">71</context></context-group>
</trans-unit>
- <trans-unit id="_msg351">
+ <trans-unit id="_msg352">
<source xml:space="preserve">Reverting this setting requires re-downloading the entire blockchain.</source>
<context-group purpose="location"><context context-type="linenumber">96</context></context-group>
</trans-unit>
- <trans-unit id="_msg352">
+ <trans-unit id="_msg353">
<source xml:space="preserve">Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
<context-group purpose="location"><context context-type="linenumber">108</context></context-group>
<note annotates="source" from="developer">Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</note>
</trans-unit>
- <trans-unit id="_msg353">
+ <trans-unit id="_msg354">
<source xml:space="preserve">MiB</source>
<context-group purpose="location"><context context-type="linenumber">127</context></context-group>
</trans-unit>
- <trans-unit id="_msg354">
+ <trans-unit id="_msg355">
<source xml:space="preserve">Set the number of script verification threads. Negative values correspond to the number of cores you want to leave free to the system.</source>
<context-group purpose="location"><context context-type="linenumber">154</context></context-group>
<note annotates="source" from="developer">Tooltip text for Options window setting that sets the number of script verification threads. Explains that negative values mean to leave these many cores free to the system.</note>
</trans-unit>
- <trans-unit id="_msg355">
+ <trans-unit id="_msg356">
<source xml:space="preserve">(0 = auto, &lt;0 = leave that many cores free)</source>
<context-group purpose="location"><context context-type="linenumber">170</context></context-group>
</trans-unit>
- <trans-unit id="_msg356">
+ <trans-unit id="_msg357">
<source xml:space="preserve">This allows you or a third party tool to communicate with the node through command-line and JSON-RPC commands.</source>
<context-group purpose="location"><context context-type="linenumber">192</context></context-group>
<note annotates="source" from="developer">Tooltip text for Options window setting that enables the RPC server.</note>
</trans-unit>
- <trans-unit id="_msg357">
+ <trans-unit id="_msg358">
<source xml:space="preserve">Enable R&amp;PC server</source>
<context-group purpose="location"><context context-type="linenumber">195</context></context-group>
<note annotates="source" from="developer">An Options window setting to enable the RPC server.</note>
</trans-unit>
- <trans-unit id="_msg358">
+ <trans-unit id="_msg359">
<source xml:space="preserve">W&amp;allet</source>
<context-group purpose="location"><context context-type="linenumber">216</context></context-group>
</trans-unit>
- <trans-unit id="_msg359">
+ <trans-unit id="_msg360">
<source xml:space="preserve">Whether to set subtract fee from amount as default or not.</source>
<context-group purpose="location"><context context-type="linenumber">222</context></context-group>
<note annotates="source" from="developer">Tooltip text for Options window setting that sets subtracting the fee from a sending amount as default.</note>
</trans-unit>
- <trans-unit id="_msg360">
+ <trans-unit id="_msg361">
<source xml:space="preserve">Subtract &amp;fee from amount by default</source>
<context-group purpose="location"><context context-type="linenumber">225</context></context-group>
<note annotates="source" from="developer">An Options window setting to set subtracting the fee from a sending amount as default.</note>
</trans-unit>
- <trans-unit id="_msg361">
+ <trans-unit id="_msg362">
<source xml:space="preserve">Expert</source>
<context-group purpose="location"><context context-type="linenumber">232</context></context-group>
</trans-unit>
- <trans-unit id="_msg362">
+ <trans-unit id="_msg363">
<source xml:space="preserve">Enable coin &amp;control features</source>
<context-group purpose="location"><context context-type="linenumber">241</context></context-group>
</trans-unit>
- <trans-unit id="_msg363">
+ <trans-unit id="_msg364">
<source xml:space="preserve">If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
<context-group purpose="location"><context context-type="linenumber">248</context></context-group>
</trans-unit>
- <trans-unit id="_msg364">
+ <trans-unit id="_msg365">
<source xml:space="preserve">&amp;Spend unconfirmed change</source>
<context-group purpose="location"><context context-type="linenumber">251</context></context-group>
</trans-unit>
- <trans-unit id="_msg365">
+ <trans-unit id="_msg366">
<source xml:space="preserve">Enable &amp;PSBT controls</source>
<context-group purpose="location"><context context-type="linenumber">258</context></context-group>
<note annotates="source" from="developer">An options window setting to enable PSBT controls.</note>
</trans-unit>
- <trans-unit id="_msg366">
+ <trans-unit id="_msg367">
<source xml:space="preserve">Whether to show PSBT controls.</source>
<context-group purpose="location"><context context-type="linenumber">261</context></context-group>
<note annotates="source" from="developer">Tooltip text for options window setting that enables PSBT controls.</note>
</trans-unit>
- <trans-unit id="_msg367">
+ <trans-unit id="_msg368">
<source xml:space="preserve">External Signer (e.g. hardware wallet)</source>
<context-group purpose="location"><context context-type="linenumber">271</context></context-group>
</trans-unit>
- <trans-unit id="_msg368">
+ <trans-unit id="_msg369">
<source xml:space="preserve">&amp;External signer script path</source>
<context-group purpose="location"><context context-type="linenumber">279</context></context-group>
</trans-unit>
- <trans-unit id="_msg369">
+ <trans-unit id="_msg370">
<source xml:space="preserve">Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
<context-group purpose="location"><context context-type="linenumber">321</context></context-group>
</trans-unit>
- <trans-unit id="_msg370">
+ <trans-unit id="_msg371">
<source xml:space="preserve">Map port using &amp;UPnP</source>
<context-group purpose="location"><context context-type="linenumber">324</context></context-group>
</trans-unit>
- <trans-unit id="_msg371">
+ <trans-unit id="_msg372">
<source xml:space="preserve">Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
<context-group purpose="location"><context context-type="linenumber">331</context></context-group>
</trans-unit>
- <trans-unit id="_msg372">
+ <trans-unit id="_msg373">
<source xml:space="preserve">Map port using NA&amp;T-PMP</source>
<context-group purpose="location"><context context-type="linenumber">334</context></context-group>
</trans-unit>
- <trans-unit id="_msg373">
+ <trans-unit id="_msg374">
<source xml:space="preserve">Accept connections from outside.</source>
<context-group purpose="location"><context context-type="linenumber">341</context></context-group>
</trans-unit>
- <trans-unit id="_msg374">
+ <trans-unit id="_msg375">
<source xml:space="preserve">Allow incomin&amp;g connections</source>
<context-group purpose="location"><context context-type="linenumber">344</context></context-group>
</trans-unit>
- <trans-unit id="_msg375">
+ <trans-unit id="_msg376">
<source xml:space="preserve">Connect to the Bitcoin network through a SOCKS5 proxy.</source>
<context-group purpose="location"><context context-type="linenumber">351</context></context-group>
</trans-unit>
- <trans-unit id="_msg376">
+ <trans-unit id="_msg377">
<source xml:space="preserve">&amp;Connect through SOCKS5 proxy (default proxy):</source>
<context-group purpose="location"><context context-type="linenumber">354</context></context-group>
</trans-unit>
- <trans-unit id="_msg377">
+ <trans-unit id="_msg378">
<source xml:space="preserve">Proxy &amp;IP:</source>
<context-group purpose="location"><context context-type="linenumber">363</context></context-group>
<context-group purpose="location"><context context-type="linenumber">550</context></context-group>
</trans-unit>
- <trans-unit id="_msg378">
+ <trans-unit id="_msg379">
<source xml:space="preserve">&amp;Port:</source>
<context-group purpose="location"><context context-type="linenumber">395</context></context-group>
<context-group purpose="location"><context context-type="linenumber">582</context></context-group>
</trans-unit>
- <trans-unit id="_msg379">
+ <trans-unit id="_msg380">
<source xml:space="preserve">Port of the proxy (e.g. 9050)</source>
<context-group purpose="location"><context context-type="linenumber">420</context></context-group>
<context-group purpose="location"><context context-type="linenumber">607</context></context-group>
</trans-unit>
- <trans-unit id="_msg380">
+ <trans-unit id="_msg381">
<source xml:space="preserve">Used for reaching peers via:</source>
<context-group purpose="location"><context context-type="linenumber">444</context></context-group>
</trans-unit>
- <trans-unit id="_msg381">
+ <trans-unit id="_msg382">
<source xml:space="preserve">IPv4</source>
<context-group purpose="location"><context context-type="linenumber">467</context></context-group>
</trans-unit>
- <trans-unit id="_msg382">
+ <trans-unit id="_msg383">
<source xml:space="preserve">IPv6</source>
<context-group purpose="location"><context context-type="linenumber">490</context></context-group>
</trans-unit>
- <trans-unit id="_msg383">
+ <trans-unit id="_msg384">
<source xml:space="preserve">Tor</source>
<context-group purpose="location"><context context-type="linenumber">513</context></context-group>
</trans-unit>
- <trans-unit id="_msg384">
+ <trans-unit id="_msg385">
<source xml:space="preserve">&amp;Window</source>
<context-group purpose="location"><context context-type="linenumber">643</context></context-group>
</trans-unit>
- <trans-unit id="_msg385">
+ <trans-unit id="_msg386">
<source xml:space="preserve">Show the icon in the system tray.</source>
<context-group purpose="location"><context context-type="linenumber">649</context></context-group>
</trans-unit>
- <trans-unit id="_msg386">
+ <trans-unit id="_msg387">
<source xml:space="preserve">&amp;Show tray icon</source>
<context-group purpose="location"><context context-type="linenumber">652</context></context-group>
</trans-unit>
- <trans-unit id="_msg387">
+ <trans-unit id="_msg388">
<source xml:space="preserve">Show only a tray icon after minimizing the window.</source>
<context-group purpose="location"><context context-type="linenumber">662</context></context-group>
</trans-unit>
- <trans-unit id="_msg388">
+ <trans-unit id="_msg389">
<source xml:space="preserve">&amp;Minimize to the tray instead of the taskbar</source>
<context-group purpose="location"><context context-type="linenumber">665</context></context-group>
</trans-unit>
- <trans-unit id="_msg389">
+ <trans-unit id="_msg390">
<source xml:space="preserve">M&amp;inimize on close</source>
<context-group purpose="location"><context context-type="linenumber">675</context></context-group>
</trans-unit>
- <trans-unit id="_msg390">
+ <trans-unit id="_msg391">
<source xml:space="preserve">&amp;Display</source>
<context-group purpose="location"><context context-type="linenumber">696</context></context-group>
</trans-unit>
- <trans-unit id="_msg391">
+ <trans-unit id="_msg392">
<source xml:space="preserve">User Interface &amp;language:</source>
<context-group purpose="location"><context context-type="linenumber">704</context></context-group>
</trans-unit>
- <trans-unit id="_msg392">
+ <trans-unit id="_msg393">
<source xml:space="preserve">The user interface language can be set here. This setting will take effect after restarting %1.</source>
<context-group purpose="location"><context context-type="linenumber">717</context></context-group>
</trans-unit>
- <trans-unit id="_msg393">
+ <trans-unit id="_msg394">
<source xml:space="preserve">&amp;Unit to show amounts in:</source>
<context-group purpose="location"><context context-type="linenumber">728</context></context-group>
</trans-unit>
- <trans-unit id="_msg394">
+ <trans-unit id="_msg395">
<source xml:space="preserve">Choose the default subdivision unit to show in the interface and when sending coins.</source>
<context-group purpose="location"><context context-type="linenumber">741</context></context-group>
</trans-unit>
- <trans-unit id="_msg395">
+ <trans-unit id="_msg396">
<source xml:space="preserve">Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
<context-group purpose="location"><context context-type="linenumber">752</context></context-group>
<context-group purpose="location"><context context-type="linenumber">765</context></context-group>
</trans-unit>
- <trans-unit id="_msg396">
+ <trans-unit id="_msg397">
<source xml:space="preserve">&amp;Third-party transaction URLs</source>
<context-group purpose="location"><context context-type="linenumber">755</context></context-group>
</trans-unit>
- <trans-unit id="_msg397">
+ <trans-unit id="_msg398">
<source xml:space="preserve">Whether to show coin control features or not.</source>
<context-group purpose="location"><context context-type="linenumber">238</context></context-group>
</trans-unit>
- <trans-unit id="_msg398">
+ <trans-unit id="_msg399">
<source xml:space="preserve">Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services.</source>
<context-group purpose="location"><context context-type="linenumber">538</context></context-group>
</trans-unit>
- <trans-unit id="_msg399">
+ <trans-unit id="_msg400">
<source xml:space="preserve">Use separate SOCKS&amp;5 proxy to reach peers via Tor onion services:</source>
<context-group purpose="location"><context context-type="linenumber">541</context></context-group>
</trans-unit>
- <trans-unit id="_msg400">
- <source xml:space="preserve">Monospaced font in the Overview tab:</source>
- <context-group purpose="location"><context context-type="linenumber">777</context></context-group>
- </trans-unit>
<trans-unit id="_msg401">
- <source xml:space="preserve">embedded &quot;%1&quot;</source>
- <context-group purpose="location"><context context-type="linenumber">785</context></context-group>
- </trans-unit>
- <trans-unit id="_msg402">
- <source xml:space="preserve">closest matching &quot;%1&quot;</source>
- <context-group purpose="location"><context context-type="linenumber">834</context></context-group>
- </trans-unit>
- <trans-unit id="_msg403">
<source xml:space="preserve">&amp;OK</source>
- <context-group purpose="location"><context context-type="linenumber">1040</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">965</context></context-group>
</trans-unit>
- <trans-unit id="_msg404">
+ <trans-unit id="_msg402">
<source xml:space="preserve">&amp;Cancel</source>
- <context-group purpose="location"><context context-type="linenumber">1053</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">978</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../optionsdialog.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="OptionsDialog">
- <trans-unit id="_msg405">
+ <trans-unit id="_msg403">
<source xml:space="preserve">Compiled without external signing support (required for external signing)</source>
- <context-group purpose="location"><context context-type="linenumber">96</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">152</context></context-group>
<note annotates="source" from="developer">&quot;External signing&quot; means using devices such as hardware wallets.</note>
</trans-unit>
- <trans-unit id="_msg406">
+ <trans-unit id="_msg404">
<source xml:space="preserve">default</source>
- <context-group purpose="location"><context context-type="linenumber">108</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">164</context></context-group>
</trans-unit>
- <trans-unit id="_msg407">
+ <trans-unit id="_msg405">
<source xml:space="preserve">none</source>
- <context-group purpose="location"><context context-type="linenumber">194</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">238</context></context-group>
</trans-unit>
- <trans-unit id="_msg408">
+ <trans-unit id="_msg406">
<source xml:space="preserve">Confirm options reset</source>
- <context-group purpose="location"><context context-type="linenumber">301</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">347</context></context-group>
<note annotates="source" from="developer">Window title text of pop-up window shown when the user has chosen to reset options.</note>
</trans-unit>
- <trans-unit id="_msg409">
+ <trans-unit id="_msg407">
<source xml:space="preserve">Client restart required to activate changes.</source>
- <context-group purpose="location"><context context-type="linenumber">292</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">371</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">338</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">419</context></context-group>
<note annotates="source" from="developer">Text explaining that the settings changed will not come into effect until the client is restarted.</note>
</trans-unit>
- <trans-unit id="_msg410">
+ <trans-unit id="_msg408">
<source xml:space="preserve">Current settings will be backed up at &quot;%1&quot;.</source>
- <context-group purpose="location"><context context-type="linenumber">296</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">342</context></context-group>
<note annotates="source" from="developer">Text explaining to the user that the client&apos;s current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location&apos;s path.</note>
</trans-unit>
- <trans-unit id="_msg411">
+ <trans-unit id="_msg409">
<source xml:space="preserve">Client will be shut down. Do you want to proceed?</source>
- <context-group purpose="location"><context context-type="linenumber">299</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">345</context></context-group>
<note annotates="source" from="developer">Text asking the user to confirm if they would like to proceed with a client shutdown.</note>
</trans-unit>
- <trans-unit id="_msg412">
+ <trans-unit id="_msg410">
<source xml:space="preserve">Configuration options</source>
- <context-group purpose="location"><context context-type="linenumber">319</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">365</context></context-group>
<note annotates="source" from="developer">Window title text of pop-up box that allows opening up of configuration file.</note>
</trans-unit>
- <trans-unit id="_msg413">
+ <trans-unit id="_msg411">
<source xml:space="preserve">The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file.</source>
- <context-group purpose="location"><context context-type="linenumber">322</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">368</context></context-group>
<note annotates="source" from="developer">Explanatory text about the priority order of instructions considered by client. The order from high to low being: command-line, configuration file, GUI settings.</note>
</trans-unit>
- <trans-unit id="_msg414">
+ <trans-unit id="_msg412">
<source xml:space="preserve">Continue</source>
- <context-group purpose="location"><context context-type="linenumber">325</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">371</context></context-group>
</trans-unit>
- <trans-unit id="_msg415">
+ <trans-unit id="_msg413">
<source xml:space="preserve">Cancel</source>
- <context-group purpose="location"><context context-type="linenumber">326</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">372</context></context-group>
</trans-unit>
- <trans-unit id="_msg416">
+ <trans-unit id="_msg414">
<source xml:space="preserve">Error</source>
- <context-group purpose="location"><context context-type="linenumber">335</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">381</context></context-group>
</trans-unit>
- <trans-unit id="_msg417">
+ <trans-unit id="_msg415">
<source xml:space="preserve">The configuration file could not be opened.</source>
- <context-group purpose="location"><context context-type="linenumber">335</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">381</context></context-group>
</trans-unit>
- <trans-unit id="_msg418">
+ <trans-unit id="_msg416">
<source xml:space="preserve">This change would require a client restart.</source>
- <context-group purpose="location"><context context-type="linenumber">375</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">423</context></context-group>
</trans-unit>
- <trans-unit id="_msg419">
+ <trans-unit id="_msg417">
<source xml:space="preserve">The supplied proxy address is invalid.</source>
- <context-group purpose="location"><context context-type="linenumber">403</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">451</context></context-group>
+ </trans-unit>
+ </group>
+ <group restype="x-trolltech-linguist-context" resname="QObject">
+ <trans-unit id="_msg418">
+ <source xml:space="preserve">Embedded &quot;%1&quot;</source>
+ <context-group purpose="location"><context context-type="linenumber">62</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg419">
+ <source xml:space="preserve">Default system font &quot;%1&quot;</source>
+ <context-group purpose="location"><context context-type="linenumber">63</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg420">
+ <source xml:space="preserve">Custom…</source>
+ <context-group purpose="location"><context context-type="linenumber">64</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../optionsmodel.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="OptionsModel">
- <trans-unit id="_msg420">
+ <trans-unit id="_msg421">
<source xml:space="preserve">Could not read setting &quot;%1&quot;, %2.</source>
- <context-group purpose="location"><context context-type="linenumber">198</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">230</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../forms/overviewpage.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="OverviewPage">
- <trans-unit id="_msg421">
+ <trans-unit id="_msg422">
<source xml:space="preserve">Form</source>
<context-group purpose="location"><context context-type="linenumber">14</context></context-group>
</trans-unit>
- <trans-unit id="_msg422">
+ <trans-unit id="_msg423">
<source xml:space="preserve">The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet.</source>
<context-group purpose="location"><context context-type="linenumber">76</context></context-group>
<context-group purpose="location"><context context-type="linenumber">411</context></context-group>
</trans-unit>
- <trans-unit id="_msg423">
+ <trans-unit id="_msg424">
<source xml:space="preserve">Watch-only:</source>
<context-group purpose="location"><context context-type="linenumber">284</context></context-group>
</trans-unit>
- <trans-unit id="_msg424">
+ <trans-unit id="_msg425">
<source xml:space="preserve">Available:</source>
<context-group purpose="location"><context context-type="linenumber">294</context></context-group>
</trans-unit>
- <trans-unit id="_msg425">
+ <trans-unit id="_msg426">
<source xml:space="preserve">Your current spendable balance</source>
<context-group purpose="location"><context context-type="linenumber">304</context></context-group>
</trans-unit>
- <trans-unit id="_msg426">
+ <trans-unit id="_msg427">
<source xml:space="preserve">Pending:</source>
<context-group purpose="location"><context context-type="linenumber">339</context></context-group>
</trans-unit>
- <trans-unit id="_msg427">
+ <trans-unit id="_msg428">
<source xml:space="preserve">Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source>
<context-group purpose="location"><context context-type="linenumber">139</context></context-group>
</trans-unit>
- <trans-unit id="_msg428">
+ <trans-unit id="_msg429">
<source xml:space="preserve">Immature:</source>
<context-group purpose="location"><context context-type="linenumber">239</context></context-group>
</trans-unit>
- <trans-unit id="_msg429">
+ <trans-unit id="_msg430">
<source xml:space="preserve">Mined balance that has not yet matured</source>
<context-group purpose="location"><context context-type="linenumber">210</context></context-group>
</trans-unit>
- <trans-unit id="_msg430">
+ <trans-unit id="_msg431">
<source xml:space="preserve">Balances</source>
<context-group purpose="location"><context context-type="linenumber">60</context></context-group>
</trans-unit>
- <trans-unit id="_msg431">
+ <trans-unit id="_msg432">
<source xml:space="preserve">Total:</source>
<context-group purpose="location"><context context-type="linenumber">200</context></context-group>
</trans-unit>
- <trans-unit id="_msg432">
+ <trans-unit id="_msg433">
<source xml:space="preserve">Your current total balance</source>
<context-group purpose="location"><context context-type="linenumber">249</context></context-group>
</trans-unit>
- <trans-unit id="_msg433">
+ <trans-unit id="_msg434">
<source xml:space="preserve">Your current balance in watch-only addresses</source>
<context-group purpose="location"><context context-type="linenumber">323</context></context-group>
</trans-unit>
- <trans-unit id="_msg434">
+ <trans-unit id="_msg435">
<source xml:space="preserve">Spendable:</source>
<context-group purpose="location"><context context-type="linenumber">346</context></context-group>
</trans-unit>
- <trans-unit id="_msg435">
+ <trans-unit id="_msg436">
<source xml:space="preserve">Recent transactions</source>
<context-group purpose="location"><context context-type="linenumber">395</context></context-group>
</trans-unit>
- <trans-unit id="_msg436">
+ <trans-unit id="_msg437">
<source xml:space="preserve">Unconfirmed transactions to watch-only addresses</source>
<context-group purpose="location"><context context-type="linenumber">120</context></context-group>
</trans-unit>
- <trans-unit id="_msg437">
+ <trans-unit id="_msg438">
<source xml:space="preserve">Mined balance in watch-only addresses that has not yet matured</source>
<context-group purpose="location"><context context-type="linenumber">158</context></context-group>
</trans-unit>
- <trans-unit id="_msg438">
+ <trans-unit id="_msg439">
<source xml:space="preserve">Current total balance in watch-only addresses</source>
<context-group purpose="location"><context context-type="linenumber">268</context></context-group>
</trans-unit>
@@ -1983,7 +1989,7 @@ The migration process will create a backup of the wallet before migrating. This
</body></file>
<file original="../overviewpage.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="OverviewPage">
- <trans-unit id="_msg439">
+ <trans-unit id="_msg440">
<source xml:space="preserve">Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings-&gt;Mask values.</source>
<context-group purpose="location"><context context-type="linenumber">184</context></context-group>
</trans-unit>
@@ -1991,27 +1997,27 @@ The migration process will create a backup of the wallet before migrating. This
</body></file>
<file original="../forms/psbtoperationsdialog.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="PSBTOperationsDialog">
- <trans-unit id="_msg440">
+ <trans-unit id="_msg441">
<source xml:space="preserve">PSBT Operations</source>
<context-group purpose="location"><context context-type="linenumber">14</context></context-group>
</trans-unit>
- <trans-unit id="_msg441">
+ <trans-unit id="_msg442">
<source xml:space="preserve">Sign Tx</source>
<context-group purpose="location"><context context-type="linenumber">86</context></context-group>
</trans-unit>
- <trans-unit id="_msg442">
+ <trans-unit id="_msg443">
<source xml:space="preserve">Broadcast Tx</source>
<context-group purpose="location"><context context-type="linenumber">102</context></context-group>
</trans-unit>
- <trans-unit id="_msg443">
+ <trans-unit id="_msg444">
<source xml:space="preserve">Copy to Clipboard</source>
<context-group purpose="location"><context context-type="linenumber">122</context></context-group>
</trans-unit>
- <trans-unit id="_msg444">
+ <trans-unit id="_msg445">
<source xml:space="preserve">Save…</source>
<context-group purpose="location"><context context-type="linenumber">129</context></context-group>
</trans-unit>
- <trans-unit id="_msg445">
+ <trans-unit id="_msg446">
<source xml:space="preserve">Close</source>
<context-group purpose="location"><context context-type="linenumber">136</context></context-group>
</trans-unit>
@@ -2019,150 +2025,150 @@ The migration process will create a backup of the wallet before migrating. This
</body></file>
<file original="../psbtoperationsdialog.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="PSBTOperationsDialog">
- <trans-unit id="_msg446">
+ <trans-unit id="_msg447">
<source xml:space="preserve">Failed to load transaction: %1</source>
<context-group purpose="location"><context context-type="linenumber">60</context></context-group>
</trans-unit>
- <trans-unit id="_msg447">
+ <trans-unit id="_msg448">
<source xml:space="preserve">Failed to sign transaction: %1</source>
<context-group purpose="location"><context context-type="linenumber">85</context></context-group>
</trans-unit>
- <trans-unit id="_msg448">
+ <trans-unit id="_msg449">
<source xml:space="preserve">Cannot sign inputs while wallet is locked.</source>
<context-group purpose="location"><context context-type="linenumber">93</context></context-group>
</trans-unit>
- <trans-unit id="_msg449">
+ <trans-unit id="_msg450">
<source xml:space="preserve">Could not sign any more inputs.</source>
<context-group purpose="location"><context context-type="linenumber">95</context></context-group>
</trans-unit>
- <trans-unit id="_msg450">
+ <trans-unit id="_msg451">
<source xml:space="preserve">Signed %1 inputs, but more signatures are still required.</source>
<context-group purpose="location"><context context-type="linenumber">97</context></context-group>
</trans-unit>
- <trans-unit id="_msg451">
+ <trans-unit id="_msg452">
<source xml:space="preserve">Signed transaction successfully. Transaction is ready to broadcast.</source>
<context-group purpose="location"><context context-type="linenumber">100</context></context-group>
</trans-unit>
- <trans-unit id="_msg452">
+ <trans-unit id="_msg453">
<source xml:space="preserve">Unknown error processing transaction.</source>
<context-group purpose="location"><context context-type="linenumber">112</context></context-group>
</trans-unit>
- <trans-unit id="_msg453">
+ <trans-unit id="_msg454">
<source xml:space="preserve">Transaction broadcast successfully! Transaction ID: %1</source>
<context-group purpose="location"><context context-type="linenumber">122</context></context-group>
</trans-unit>
- <trans-unit id="_msg454">
+ <trans-unit id="_msg455">
<source xml:space="preserve">Transaction broadcast failed: %1</source>
<context-group purpose="location"><context context-type="linenumber">125</context></context-group>
</trans-unit>
- <trans-unit id="_msg455">
+ <trans-unit id="_msg456">
<source xml:space="preserve">PSBT copied to clipboard.</source>
<context-group purpose="location"><context context-type="linenumber">134</context></context-group>
</trans-unit>
- <trans-unit id="_msg456">
+ <trans-unit id="_msg457">
<source xml:space="preserve">Save Transaction Data</source>
<context-group purpose="location"><context context-type="linenumber">157</context></context-group>
</trans-unit>
- <trans-unit id="_msg457">
+ <trans-unit id="_msg458">
<source xml:space="preserve">Partially Signed Transaction (Binary)</source>
<context-group purpose="location"><context context-type="linenumber">159</context></context-group>
<note annotates="source" from="developer">Expanded name of the binary PSBT file format. See: BIP 174.</note>
</trans-unit>
- <trans-unit id="_msg458">
+ <trans-unit id="_msg459">
<source xml:space="preserve">PSBT saved to disk.</source>
<context-group purpose="location"><context context-type="linenumber">166</context></context-group>
</trans-unit>
- <trans-unit id="_msg459">
- <source xml:space="preserve"> * Sends %1 to %2</source>
- <context-group purpose="location"><context context-type="linenumber">182</context></context-group>
- </trans-unit>
<trans-unit id="_msg460">
- <source xml:space="preserve">own address</source>
- <context-group purpose="location"><context context-type="linenumber">186</context></context-group>
+ <source xml:space="preserve">Sends %1 to %2</source>
+ <context-group purpose="location"><context context-type="linenumber">183</context></context-group>
</trans-unit>
<trans-unit id="_msg461">
- <source xml:space="preserve">Unable to calculate transaction fee or total transaction amount.</source>
- <context-group purpose="location"><context context-type="linenumber">194</context></context-group>
+ <source xml:space="preserve">own address</source>
+ <context-group purpose="location"><context context-type="linenumber">187</context></context-group>
</trans-unit>
<trans-unit id="_msg462">
- <source xml:space="preserve">Pays transaction fee: </source>
- <context-group purpose="location"><context context-type="linenumber">196</context></context-group>
+ <source xml:space="preserve">Unable to calculate transaction fee or total transaction amount.</source>
+ <context-group purpose="location"><context context-type="linenumber">195</context></context-group>
</trans-unit>
<trans-unit id="_msg463">
- <source xml:space="preserve">Total Amount</source>
- <context-group purpose="location"><context context-type="linenumber">208</context></context-group>
+ <source xml:space="preserve">Pays transaction fee: </source>
+ <context-group purpose="location"><context context-type="linenumber">197</context></context-group>
</trans-unit>
<trans-unit id="_msg464">
- <source xml:space="preserve">or</source>
- <context-group purpose="location"><context context-type="linenumber">211</context></context-group>
+ <source xml:space="preserve">Total Amount</source>
+ <context-group purpose="location"><context context-type="linenumber">209</context></context-group>
</trans-unit>
<trans-unit id="_msg465">
- <source xml:space="preserve">Transaction has %1 unsigned inputs.</source>
- <context-group purpose="location"><context context-type="linenumber">217</context></context-group>
+ <source xml:space="preserve">or</source>
+ <context-group purpose="location"><context context-type="linenumber">212</context></context-group>
</trans-unit>
<trans-unit id="_msg466">
- <source xml:space="preserve">Transaction is missing some information about inputs.</source>
- <context-group purpose="location"><context context-type="linenumber">263</context></context-group>
+ <source xml:space="preserve">Transaction has %1 unsigned inputs.</source>
+ <context-group purpose="location"><context context-type="linenumber">218</context></context-group>
</trans-unit>
<trans-unit id="_msg467">
- <source xml:space="preserve">Transaction still needs signature(s).</source>
- <context-group purpose="location"><context context-type="linenumber">267</context></context-group>
+ <source xml:space="preserve">Transaction is missing some information about inputs.</source>
+ <context-group purpose="location"><context context-type="linenumber">264</context></context-group>
</trans-unit>
<trans-unit id="_msg468">
- <source xml:space="preserve">(But no wallet is loaded.)</source>
- <context-group purpose="location"><context context-type="linenumber">270</context></context-group>
+ <source xml:space="preserve">Transaction still needs signature(s).</source>
+ <context-group purpose="location"><context context-type="linenumber">268</context></context-group>
</trans-unit>
<trans-unit id="_msg469">
- <source xml:space="preserve">(But this wallet cannot sign transactions.)</source>
- <context-group purpose="location"><context context-type="linenumber">273</context></context-group>
+ <source xml:space="preserve">(But no wallet is loaded.)</source>
+ <context-group purpose="location"><context context-type="linenumber">271</context></context-group>
</trans-unit>
<trans-unit id="_msg470">
- <source xml:space="preserve">(But this wallet does not have the right keys.)</source>
- <context-group purpose="location"><context context-type="linenumber">276</context></context-group>
+ <source xml:space="preserve">(But this wallet cannot sign transactions.)</source>
+ <context-group purpose="location"><context context-type="linenumber">274</context></context-group>
</trans-unit>
<trans-unit id="_msg471">
- <source xml:space="preserve">Transaction is fully signed and ready for broadcast.</source>
- <context-group purpose="location"><context context-type="linenumber">284</context></context-group>
+ <source xml:space="preserve">(But this wallet does not have the right keys.)</source>
+ <context-group purpose="location"><context context-type="linenumber">277</context></context-group>
</trans-unit>
<trans-unit id="_msg472">
+ <source xml:space="preserve">Transaction is fully signed and ready for broadcast.</source>
+ <context-group purpose="location"><context context-type="linenumber">285</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg473">
<source xml:space="preserve">Transaction status is unknown.</source>
- <context-group purpose="location"><context context-type="linenumber">288</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">289</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../paymentserver.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="PaymentServer">
- <trans-unit id="_msg473">
+ <trans-unit id="_msg474">
<source xml:space="preserve">Payment request error</source>
<context-group purpose="location"><context context-type="linenumber">149</context></context-group>
</trans-unit>
- <trans-unit id="_msg474">
+ <trans-unit id="_msg475">
<source xml:space="preserve">Cannot start bitcoin: click-to-pay handler</source>
<context-group purpose="location"><context context-type="linenumber">150</context></context-group>
</trans-unit>
- <trans-unit id="_msg475">
+ <trans-unit id="_msg476">
<source xml:space="preserve">URI handling</source>
<context-group purpose="location"><context context-type="linenumber">198</context></context-group>
<context-group purpose="location"><context context-type="linenumber">214</context></context-group>
<context-group purpose="location"><context context-type="linenumber">220</context></context-group>
<context-group purpose="location"><context context-type="linenumber">227</context></context-group>
</trans-unit>
- <trans-unit id="_msg476">
+ <trans-unit id="_msg477">
<source xml:space="preserve">&apos;bitcoin://&apos; is not a valid URI. Use &apos;bitcoin:&apos; instead.</source>
<context-group purpose="location"><context context-type="linenumber">198</context></context-group>
</trans-unit>
- <trans-unit id="_msg477">
+ <trans-unit id="_msg478">
<source xml:space="preserve">Cannot process payment request because BIP70 is not supported.
Due to widespread security flaws in BIP70 it&apos;s strongly recommended that any merchant instructions to switch wallets be ignored.
If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
<context-group purpose="location"><context context-type="linenumber">215</context></context-group>
<context-group purpose="location"><context context-type="linenumber">238</context></context-group>
</trans-unit>
- <trans-unit id="_msg478">
+ <trans-unit id="_msg479">
<source xml:space="preserve">URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source>
<context-group purpose="location"><context context-type="linenumber">228</context></context-group>
</trans-unit>
- <trans-unit id="_msg479">
+ <trans-unit id="_msg480">
<source xml:space="preserve">Payment request file handling</source>
<context-group purpose="location"><context context-type="linenumber">237</context></context-group>
</trans-unit>
@@ -2170,52 +2176,52 @@ If you are receiving this error you should request the merchant provide a BIP21
</body></file>
<file original="../peertablemodel.h" datatype="c" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="PeerTableModel">
- <trans-unit id="_msg480">
+ <trans-unit id="_msg481">
<source xml:space="preserve">User Agent</source>
<context-group purpose="location"><context context-type="linenumber">112</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which contains the peer&apos;s User Agent string.</note>
</trans-unit>
- <trans-unit id="_msg481">
+ <trans-unit id="_msg482">
<source xml:space="preserve">Ping</source>
<context-group purpose="location"><context context-type="linenumber">103</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which indicates the current latency of the connection with the peer.</note>
</trans-unit>
- <trans-unit id="_msg482">
+ <trans-unit id="_msg483">
<source xml:space="preserve">Peer</source>
<context-group purpose="location"><context context-type="linenumber">85</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which contains a unique number used to identify a connection.</note>
</trans-unit>
- <trans-unit id="_msg483">
+ <trans-unit id="_msg484">
<source xml:space="preserve">Age</source>
<context-group purpose="location"><context context-type="linenumber">88</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</note>
</trans-unit>
- <trans-unit id="_msg484">
+ <trans-unit id="_msg485">
<source xml:space="preserve">Direction</source>
<context-group purpose="location"><context context-type="linenumber">94</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which indicates the direction the peer connection was initiated from.</note>
</trans-unit>
- <trans-unit id="_msg485">
+ <trans-unit id="_msg486">
<source xml:space="preserve">Sent</source>
<context-group purpose="location"><context context-type="linenumber">106</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which indicates the total amount of network information we have sent to the peer.</note>
</trans-unit>
- <trans-unit id="_msg486">
+ <trans-unit id="_msg487">
<source xml:space="preserve">Received</source>
<context-group purpose="location"><context context-type="linenumber">109</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which indicates the total amount of network information we have received from the peer.</note>
</trans-unit>
- <trans-unit id="_msg487">
+ <trans-unit id="_msg488">
<source xml:space="preserve">Address</source>
<context-group purpose="location"><context context-type="linenumber">91</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</note>
</trans-unit>
- <trans-unit id="_msg488">
+ <trans-unit id="_msg489">
<source xml:space="preserve">Type</source>
<context-group purpose="location"><context context-type="linenumber">97</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which describes the type of peer connection. The &quot;type&quot; describes why the connection exists.</note>
</trans-unit>
- <trans-unit id="_msg489">
+ <trans-unit id="_msg490">
<source xml:space="preserve">Network</source>
<context-group purpose="location"><context context-type="linenumber">100</context></context-group>
<note annotates="source" from="developer">Title of Peers Table column which states the network the peer connected through.</note>
@@ -2224,12 +2230,12 @@ If you are receiving this error you should request the merchant provide a BIP21
</body></file>
<file original="../peertablemodel.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="PeerTableModel">
- <trans-unit id="_msg490">
+ <trans-unit id="_msg491">
<source xml:space="preserve">Inbound</source>
<context-group purpose="location"><context context-type="linenumber">77</context></context-group>
<note annotates="source" from="developer">An Inbound Connection from a Peer.</note>
</trans-unit>
- <trans-unit id="_msg491">
+ <trans-unit id="_msg492">
<source xml:space="preserve">Outbound</source>
<context-group purpose="location"><context context-type="linenumber">79</context></context-group>
<note annotates="source" from="developer">An Outbound Connection to a Peer.</note>
@@ -2238,7 +2244,7 @@ If you are receiving this error you should request the merchant provide a BIP21
</body></file>
<file original="../bitcoinunits.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="QObject">
- <trans-unit id="_msg492">
+ <trans-unit id="_msg493">
<source xml:space="preserve">Amount</source>
<context-group purpose="location"><context context-type="linenumber">197</context></context-group>
</trans-unit>
@@ -2246,222 +2252,222 @@ If you are receiving this error you should request the merchant provide a BIP21
</body></file>
<file original="../guiutil.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="QObject">
- <trans-unit id="_msg493">
+ <trans-unit id="_msg494">
<source xml:space="preserve">Enter a Bitcoin address (e.g. %1)</source>
<context-group purpose="location"><context context-type="linenumber">133</context></context-group>
</trans-unit>
- <trans-unit id="_msg494">
+ <trans-unit id="_msg495">
<source xml:space="preserve">Ctrl+W</source>
<context-group purpose="location"><context context-type="linenumber">421</context></context-group>
</trans-unit>
- <trans-unit id="_msg495">
+ <trans-unit id="_msg496">
<source xml:space="preserve">Unroutable</source>
<context-group purpose="location"><context context-type="linenumber">678</context></context-group>
</trans-unit>
- <trans-unit id="_msg496">
+ <trans-unit id="_msg497">
<source xml:space="preserve">IPv4</source>
<context-group purpose="location"><context context-type="linenumber">680</context></context-group>
<context-group><context context-type="x-gettext-msgctxt">network name</context></context-group>
<note annotates="source" from="developer">Name of IPv4 network in peer info</note>
</trans-unit>
- <trans-unit id="_msg497">
+ <trans-unit id="_msg498">
<source xml:space="preserve">IPv6</source>
<context-group purpose="location"><context context-type="linenumber">682</context></context-group>
<context-group><context context-type="x-gettext-msgctxt">network name</context></context-group>
<note annotates="source" from="developer">Name of IPv6 network in peer info</note>
</trans-unit>
- <trans-unit id="_msg498">
+ <trans-unit id="_msg499">
<source xml:space="preserve">Onion</source>
<context-group purpose="location"><context context-type="linenumber">684</context></context-group>
<context-group><context context-type="x-gettext-msgctxt">network name</context></context-group>
<note annotates="source" from="developer">Name of Tor network in peer info</note>
</trans-unit>
- <trans-unit id="_msg499">
+ <trans-unit id="_msg500">
<source xml:space="preserve">I2P</source>
<context-group purpose="location"><context context-type="linenumber">686</context></context-group>
<context-group><context context-type="x-gettext-msgctxt">network name</context></context-group>
<note annotates="source" from="developer">Name of I2P network in peer info</note>
</trans-unit>
- <trans-unit id="_msg500">
+ <trans-unit id="_msg501">
<source xml:space="preserve">CJDNS</source>
<context-group purpose="location"><context context-type="linenumber">688</context></context-group>
<context-group><context context-type="x-gettext-msgctxt">network name</context></context-group>
<note annotates="source" from="developer">Name of CJDNS network in peer info</note>
</trans-unit>
- <trans-unit id="_msg501">
+ <trans-unit id="_msg502">
<source xml:space="preserve">Inbound</source>
<context-group purpose="location"><context context-type="linenumber">702</context></context-group>
<note annotates="source" from="developer">An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</note>
</trans-unit>
- <trans-unit id="_msg502">
+ <trans-unit id="_msg503">
<source xml:space="preserve">Outbound</source>
<context-group purpose="location"><context context-type="linenumber">705</context></context-group>
<note annotates="source" from="developer">An outbound connection to a peer. An outbound connection is a connection initiated by us.</note>
</trans-unit>
- <trans-unit id="_msg503">
+ <trans-unit id="_msg504">
<source xml:space="preserve">Full Relay</source>
<context-group purpose="location"><context context-type="linenumber">710</context></context-group>
<note annotates="source" from="developer">Peer connection type that relays all network information.</note>
</trans-unit>
- <trans-unit id="_msg504">
+ <trans-unit id="_msg505">
<source xml:space="preserve">Block Relay</source>
<context-group purpose="location"><context context-type="linenumber">713</context></context-group>
<note annotates="source" from="developer">Peer connection type that relays network information about blocks and not transactions or addresses.</note>
</trans-unit>
- <trans-unit id="_msg505">
+ <trans-unit id="_msg506">
<source xml:space="preserve">Manual</source>
<context-group purpose="location"><context context-type="linenumber">715</context></context-group>
<note annotates="source" from="developer">Peer connection type established manually through one of several methods.</note>
</trans-unit>
- <trans-unit id="_msg506">
+ <trans-unit id="_msg507">
<source xml:space="preserve">Feeler</source>
<context-group purpose="location"><context context-type="linenumber">717</context></context-group>
<note annotates="source" from="developer">Short-lived peer connection type that tests the aliveness of known addresses.</note>
</trans-unit>
- <trans-unit id="_msg507">
+ <trans-unit id="_msg508">
<source xml:space="preserve">Address Fetch</source>
<context-group purpose="location"><context context-type="linenumber">719</context></context-group>
<note annotates="source" from="developer">Short-lived peer connection type that solicits known addresses from a peer.</note>
</trans-unit>
- <trans-unit id="_msg508">
+ <trans-unit id="_msg509">
<source xml:space="preserve">%1 d</source>
+ <context-group purpose="location"><context context-type="linenumber">731</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">743</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg510">
+ <source xml:space="preserve">%1 h</source>
<context-group purpose="location"><context context-type="linenumber">732</context></context-group>
<context-group purpose="location"><context context-type="linenumber">744</context></context-group>
</trans-unit>
- <trans-unit id="_msg509">
- <source xml:space="preserve">%1 h</source>
+ <trans-unit id="_msg511">
+ <source xml:space="preserve">%1 m</source>
<context-group purpose="location"><context context-type="linenumber">733</context></context-group>
<context-group purpose="location"><context context-type="linenumber">745</context></context-group>
</trans-unit>
- <trans-unit id="_msg510">
- <source xml:space="preserve">%1 m</source>
- <context-group purpose="location"><context context-type="linenumber">734</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">746</context></context-group>
- </trans-unit>
- <trans-unit id="_msg511">
+ <trans-unit id="_msg512">
<source xml:space="preserve">%1 s</source>
- <context-group purpose="location"><context context-type="linenumber">736</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">747</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">773</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">735</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">746</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">772</context></context-group>
</trans-unit>
- <trans-unit id="_msg512">
+ <trans-unit id="_msg513">
<source xml:space="preserve">None</source>
- <context-group purpose="location"><context context-type="linenumber">761</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">760</context></context-group>
</trans-unit>
- <trans-unit id="_msg513">
+ <trans-unit id="_msg514">
<source xml:space="preserve">N/A</source>
- <context-group purpose="location"><context context-type="linenumber">767</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">766</context></context-group>
</trans-unit>
- <trans-unit id="_msg514">
+ <trans-unit id="_msg515">
<source xml:space="preserve">%1 ms</source>
- <context-group purpose="location"><context context-type="linenumber">768</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">767</context></context-group>
</trans-unit>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">786</context></context-group>
- <trans-unit id="_msg515[0]">
+ <context-group purpose="location"><context context-type="linenumber">785</context></context-group>
+ <trans-unit id="_msg516[0]">
<source xml:space="preserve">%n second(s)</source>
</trans-unit>
- <trans-unit id="_msg515[1]">
+ <trans-unit id="_msg516[1]">
<source xml:space="preserve">%n second(s)</source>
</trans-unit>
</group>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">790</context></context-group>
- <trans-unit id="_msg516[0]">
+ <context-group purpose="location"><context context-type="linenumber">789</context></context-group>
+ <trans-unit id="_msg517[0]">
<source xml:space="preserve">%n minute(s)</source>
</trans-unit>
- <trans-unit id="_msg516[1]">
+ <trans-unit id="_msg517[1]">
<source xml:space="preserve">%n minute(s)</source>
</trans-unit>
</group>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">794</context></context-group>
- <trans-unit id="_msg517[0]">
+ <context-group purpose="location"><context context-type="linenumber">793</context></context-group>
+ <trans-unit id="_msg518[0]">
<source xml:space="preserve">%n hour(s)</source>
</trans-unit>
- <trans-unit id="_msg517[1]">
+ <trans-unit id="_msg518[1]">
<source xml:space="preserve">%n hour(s)</source>
</trans-unit>
</group>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">798</context></context-group>
- <trans-unit id="_msg518[0]">
+ <context-group purpose="location"><context context-type="linenumber">797</context></context-group>
+ <trans-unit id="_msg519[0]">
<source xml:space="preserve">%n day(s)</source>
</trans-unit>
- <trans-unit id="_msg518[1]">
+ <trans-unit id="_msg519[1]">
<source xml:space="preserve">%n day(s)</source>
</trans-unit>
</group>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">802</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">808</context></context-group>
- <trans-unit id="_msg519[0]">
+ <context-group purpose="location"><context context-type="linenumber">801</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">807</context></context-group>
+ <trans-unit id="_msg520[0]">
<source xml:space="preserve">%n week(s)</source>
</trans-unit>
- <trans-unit id="_msg519[1]">
+ <trans-unit id="_msg520[1]">
<source xml:space="preserve">%n week(s)</source>
</trans-unit>
</group>
- <trans-unit id="_msg520">
+ <trans-unit id="_msg521">
<source xml:space="preserve">%1 and %2</source>
- <context-group purpose="location"><context context-type="linenumber">808</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">807</context></context-group>
</trans-unit>
<group restype="x-gettext-plurals">
- <context-group purpose="location"><context context-type="linenumber">808</context></context-group>
- <trans-unit id="_msg521[0]">
+ <context-group purpose="location"><context context-type="linenumber">807</context></context-group>
+ <trans-unit id="_msg522[0]">
<source xml:space="preserve">%n year(s)</source>
</trans-unit>
- <trans-unit id="_msg521[1]">
+ <trans-unit id="_msg522[1]">
<source xml:space="preserve">%n year(s)</source>
</trans-unit>
</group>
- <trans-unit id="_msg522">
- <source xml:space="preserve">%1 B</source>
- <context-group purpose="location"><context context-type="linenumber">816</context></context-group>
- </trans-unit>
<trans-unit id="_msg523">
- <source xml:space="preserve">%1 kB</source>
- <context-group purpose="location"><context context-type="linenumber">818</context></context-group>
- <context-group purpose="location"><context context-type="sourcefile">../rpcconsole.cpp</context><context context-type="linenumber">1004</context></context-group>
+ <source xml:space="preserve">%1 B</source>
+ <context-group purpose="location"><context context-type="linenumber">815</context></context-group>
</trans-unit>
<trans-unit id="_msg524">
- <source xml:space="preserve">%1 MB</source>
- <context-group purpose="location"><context context-type="linenumber">820</context></context-group>
+ <source xml:space="preserve">%1 kB</source>
+ <context-group purpose="location"><context context-type="linenumber">817</context></context-group>
<context-group purpose="location"><context context-type="sourcefile">../rpcconsole.cpp</context><context context-type="linenumber">1006</context></context-group>
</trans-unit>
<trans-unit id="_msg525">
+ <source xml:space="preserve">%1 MB</source>
+ <context-group purpose="location"><context context-type="linenumber">819</context></context-group>
+ <context-group purpose="location"><context context-type="sourcefile">../rpcconsole.cpp</context><context context-type="linenumber">1008</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg526">
<source xml:space="preserve">%1 GB</source>
- <context-group purpose="location"><context context-type="linenumber">822</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">821</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../qrimagewidget.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="QRImageWidget">
- <trans-unit id="_msg526">
+ <trans-unit id="_msg527">
<source xml:space="preserve">&amp;Save Image…</source>
<context-group purpose="location"><context context-type="linenumber">30</context></context-group>
</trans-unit>
- <trans-unit id="_msg527">
+ <trans-unit id="_msg528">
<source xml:space="preserve">&amp;Copy Image</source>
<context-group purpose="location"><context context-type="linenumber">31</context></context-group>
</trans-unit>
- <trans-unit id="_msg528">
+ <trans-unit id="_msg529">
<source xml:space="preserve">Resulting URI too long, try to reduce the text for label / message.</source>
<context-group purpose="location"><context context-type="linenumber">42</context></context-group>
</trans-unit>
- <trans-unit id="_msg529">
+ <trans-unit id="_msg530">
<source xml:space="preserve">Error encoding URI into QR Code.</source>
<context-group purpose="location"><context context-type="linenumber">49</context></context-group>
</trans-unit>
- <trans-unit id="_msg530">
+ <trans-unit id="_msg531">
<source xml:space="preserve">QR code support not available.</source>
<context-group purpose="location"><context context-type="linenumber">90</context></context-group>
</trans-unit>
- <trans-unit id="_msg531">
+ <trans-unit id="_msg532">
<source xml:space="preserve">Save QR Code</source>
<context-group purpose="location"><context context-type="linenumber">120</context></context-group>
</trans-unit>
- <trans-unit id="_msg532">
+ <trans-unit id="_msg533">
<source xml:space="preserve">PNG Image</source>
<context-group purpose="location"><context context-type="linenumber">123</context></context-group>
<note annotates="source" from="developer">Expanded name of the PNG file format. See: https://en.wikipedia.org/wiki/Portable_Network_Graphics.</note>
@@ -2470,7 +2476,7 @@ If you are receiving this error you should request the merchant provide a BIP21
</body></file>
<file original="../forms/debugwindow.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="RPCConsole">
- <trans-unit id="_msg533">
+ <trans-unit id="_msg534">
<source xml:space="preserve">N/A</source>
<context-group purpose="location"><context context-type="linenumber">75</context></context-group>
<context-group purpose="location"><context context-type="linenumber">101</context></context-group>
@@ -2513,307 +2519,307 @@ If you are receiving this error you should request the merchant provide a BIP21
<context-group purpose="location"><context context-type="linenumber">1714</context></context-group>
<context-group purpose="location"><context context-type="sourcefile">../rpcconsole.h</context><context context-type="linenumber">147</context></context-group>
</trans-unit>
- <trans-unit id="_msg534">
+ <trans-unit id="_msg535">
<source xml:space="preserve">Client version</source>
<context-group purpose="location"><context context-type="linenumber">65</context></context-group>
</trans-unit>
- <trans-unit id="_msg535">
+ <trans-unit id="_msg536">
<source xml:space="preserve">&amp;Information</source>
<context-group purpose="location"><context context-type="linenumber">43</context></context-group>
</trans-unit>
- <trans-unit id="_msg536">
+ <trans-unit id="_msg537">
<source xml:space="preserve">General</source>
<context-group purpose="location"><context context-type="linenumber">58</context></context-group>
</trans-unit>
- <trans-unit id="_msg537">
+ <trans-unit id="_msg538">
<source xml:space="preserve">Datadir</source>
<context-group purpose="location"><context context-type="linenumber">114</context></context-group>
</trans-unit>
- <trans-unit id="_msg538">
+ <trans-unit id="_msg539">
<source xml:space="preserve">To specify a non-default location of the data directory use the &apos;%1&apos; option.</source>
<context-group purpose="location"><context context-type="linenumber">124</context></context-group>
</trans-unit>
- <trans-unit id="_msg539">
+ <trans-unit id="_msg540">
<source xml:space="preserve">Blocksdir</source>
<context-group purpose="location"><context context-type="linenumber">143</context></context-group>
</trans-unit>
- <trans-unit id="_msg540">
+ <trans-unit id="_msg541">
<source xml:space="preserve">To specify a non-default location of the blocks directory use the &apos;%1&apos; option.</source>
<context-group purpose="location"><context context-type="linenumber">153</context></context-group>
</trans-unit>
- <trans-unit id="_msg541">
+ <trans-unit id="_msg542">
<source xml:space="preserve">Startup time</source>
<context-group purpose="location"><context context-type="linenumber">172</context></context-group>
</trans-unit>
- <trans-unit id="_msg542">
+ <trans-unit id="_msg543">
<source xml:space="preserve">Network</source>
<context-group purpose="location"><context context-type="linenumber">201</context></context-group>
<context-group purpose="location"><context context-type="linenumber">1145</context></context-group>
</trans-unit>
- <trans-unit id="_msg543">
+ <trans-unit id="_msg544">
<source xml:space="preserve">Name</source>
<context-group purpose="location"><context context-type="linenumber">208</context></context-group>
</trans-unit>
- <trans-unit id="_msg544">
+ <trans-unit id="_msg545">
<source xml:space="preserve">Number of connections</source>
<context-group purpose="location"><context context-type="linenumber">231</context></context-group>
</trans-unit>
- <trans-unit id="_msg545">
+ <trans-unit id="_msg546">
<source xml:space="preserve">Block chain</source>
<context-group purpose="location"><context context-type="linenumber">260</context></context-group>
</trans-unit>
- <trans-unit id="_msg546">
+ <trans-unit id="_msg547">
<source xml:space="preserve">Memory Pool</source>
<context-group purpose="location"><context context-type="linenumber">319</context></context-group>
</trans-unit>
- <trans-unit id="_msg547">
+ <trans-unit id="_msg548">
<source xml:space="preserve">Current number of transactions</source>
<context-group purpose="location"><context context-type="linenumber">326</context></context-group>
</trans-unit>
- <trans-unit id="_msg548">
+ <trans-unit id="_msg549">
<source xml:space="preserve">Memory usage</source>
<context-group purpose="location"><context context-type="linenumber">349</context></context-group>
</trans-unit>
- <trans-unit id="_msg549">
+ <trans-unit id="_msg550">
<source xml:space="preserve">Wallet: </source>
<context-group purpose="location"><context context-type="linenumber">443</context></context-group>
</trans-unit>
- <trans-unit id="_msg550">
+ <trans-unit id="_msg551">
<source xml:space="preserve">(none)</source>
<context-group purpose="location"><context context-type="linenumber">454</context></context-group>
</trans-unit>
- <trans-unit id="_msg551">
+ <trans-unit id="_msg552">
<source xml:space="preserve">&amp;Reset</source>
<context-group purpose="location"><context context-type="linenumber">665</context></context-group>
</trans-unit>
- <trans-unit id="_msg552">
+ <trans-unit id="_msg553">
<source xml:space="preserve">Received</source>
<context-group purpose="location"><context context-type="linenumber">745</context></context-group>
<context-group purpose="location"><context context-type="linenumber">1505</context></context-group>
</trans-unit>
- <trans-unit id="_msg553">
+ <trans-unit id="_msg554">
<source xml:space="preserve">Sent</source>
<context-group purpose="location"><context context-type="linenumber">825</context></context-group>
<context-group purpose="location"><context context-type="linenumber">1482</context></context-group>
</trans-unit>
- <trans-unit id="_msg554">
+ <trans-unit id="_msg555">
<source xml:space="preserve">&amp;Peers</source>
<context-group purpose="location"><context context-type="linenumber">866</context></context-group>
</trans-unit>
- <trans-unit id="_msg555">
+ <trans-unit id="_msg556">
<source xml:space="preserve">Banned peers</source>
<context-group purpose="location"><context context-type="linenumber">942</context></context-group>
</trans-unit>
- <trans-unit id="_msg556">
+ <trans-unit id="_msg557">
<source xml:space="preserve">Select a peer to view detailed information.</source>
<context-group purpose="location"><context context-type="linenumber">1010</context></context-group>
- <context-group purpose="location"><context context-type="sourcefile">../rpcconsole.cpp</context><context context-type="linenumber">1171</context></context-group>
+ <context-group purpose="location"><context context-type="sourcefile">../rpcconsole.cpp</context><context context-type="linenumber">1173</context></context-group>
</trans-unit>
- <trans-unit id="_msg557">
+ <trans-unit id="_msg558">
<source xml:space="preserve">The transport layer version: %1</source>
<context-group purpose="location"><context context-type="linenumber">1090</context></context-group>
</trans-unit>
- <trans-unit id="_msg558">
+ <trans-unit id="_msg559">
<source xml:space="preserve">Transport</source>
<context-group purpose="location"><context context-type="linenumber">1093</context></context-group>
</trans-unit>
- <trans-unit id="_msg559">
+ <trans-unit id="_msg560">
<source xml:space="preserve">The BIP324 session ID string in hex, if any.</source>
<context-group purpose="location"><context context-type="linenumber">1116</context></context-group>
</trans-unit>
- <trans-unit id="_msg560">
+ <trans-unit id="_msg561">
<source xml:space="preserve">Session ID</source>
<context-group purpose="location"><context context-type="linenumber">1119</context></context-group>
</trans-unit>
- <trans-unit id="_msg561">
+ <trans-unit id="_msg562">
<source xml:space="preserve">Version</source>
<context-group purpose="location"><context context-type="linenumber">1168</context></context-group>
</trans-unit>
- <trans-unit id="_msg562">
+ <trans-unit id="_msg563">
<source xml:space="preserve">Whether we relay transactions to this peer.</source>
<context-group purpose="location"><context context-type="linenumber">1240</context></context-group>
</trans-unit>
- <trans-unit id="_msg563">
+ <trans-unit id="_msg564">
<source xml:space="preserve">Transaction Relay</source>
<context-group purpose="location"><context context-type="linenumber">1243</context></context-group>
</trans-unit>
- <trans-unit id="_msg564">
+ <trans-unit id="_msg565">
<source xml:space="preserve">Starting Block</source>
<context-group purpose="location"><context context-type="linenumber">1292</context></context-group>
</trans-unit>
- <trans-unit id="_msg565">
+ <trans-unit id="_msg566">
<source xml:space="preserve">Synced Headers</source>
<context-group purpose="location"><context context-type="linenumber">1315</context></context-group>
</trans-unit>
- <trans-unit id="_msg566">
+ <trans-unit id="_msg567">
<source xml:space="preserve">Synced Blocks</source>
<context-group purpose="location"><context context-type="linenumber">1338</context></context-group>
</trans-unit>
- <trans-unit id="_msg567">
+ <trans-unit id="_msg568">
<source xml:space="preserve">Last Transaction</source>
<context-group purpose="location"><context context-type="linenumber">1413</context></context-group>
</trans-unit>
- <trans-unit id="_msg568">
+ <trans-unit id="_msg569">
<source xml:space="preserve">The mapped Autonomous System used for diversifying peer selection.</source>
<context-group purpose="location"><context context-type="linenumber">1623</context></context-group>
</trans-unit>
- <trans-unit id="_msg569">
+ <trans-unit id="_msg570">
<source xml:space="preserve">Mapped AS</source>
<context-group purpose="location"><context context-type="linenumber">1626</context></context-group>
</trans-unit>
- <trans-unit id="_msg570">
+ <trans-unit id="_msg571">
<source xml:space="preserve">Whether we relay addresses to this peer.</source>
<context-group purpose="location"><context context-type="linenumber">1649</context></context-group>
<note annotates="source" from="developer">Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</note>
</trans-unit>
- <trans-unit id="_msg571">
+ <trans-unit id="_msg572">
<source xml:space="preserve">Address Relay</source>
<context-group purpose="location"><context context-type="linenumber">1652</context></context-group>
<note annotates="source" from="developer">Text title for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</note>
</trans-unit>
- <trans-unit id="_msg572">
+ <trans-unit id="_msg573">
<source xml:space="preserve">The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
<context-group purpose="location"><context context-type="linenumber">1675</context></context-group>
<note annotates="source" from="developer">Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</note>
</trans-unit>
- <trans-unit id="_msg573">
+ <trans-unit id="_msg574">
<source xml:space="preserve">The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
<context-group purpose="location"><context context-type="linenumber">1701</context></context-group>
<note annotates="source" from="developer">Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</note>
</trans-unit>
- <trans-unit id="_msg574">
+ <trans-unit id="_msg575">
<source xml:space="preserve">Addresses Processed</source>
<context-group purpose="location"><context context-type="linenumber">1678</context></context-group>
<note annotates="source" from="developer">Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</note>
</trans-unit>
- <trans-unit id="_msg575">
+ <trans-unit id="_msg576">
<source xml:space="preserve">Addresses Rate-Limited</source>
<context-group purpose="location"><context context-type="linenumber">1704</context></context-group>
<note annotates="source" from="developer">Text title for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</note>
</trans-unit>
- <trans-unit id="_msg576">
+ <trans-unit id="_msg577">
<source xml:space="preserve">User Agent</source>
<context-group purpose="location"><context context-type="linenumber">88</context></context-group>
<context-group purpose="location"><context context-type="linenumber">1191</context></context-group>
</trans-unit>
- <trans-unit id="_msg577">
+ <trans-unit id="_msg578">
<source xml:space="preserve">Node window</source>
<context-group purpose="location"><context context-type="linenumber">14</context></context-group>
</trans-unit>
- <trans-unit id="_msg578">
+ <trans-unit id="_msg579">
<source xml:space="preserve">Current block height</source>
<context-group purpose="location"><context context-type="linenumber">267</context></context-group>
</trans-unit>
- <trans-unit id="_msg579">
+ <trans-unit id="_msg580">
<source xml:space="preserve">Open the %1 debug log file from the current data directory. This can take a few seconds for large log files.</source>
<context-group purpose="location"><context context-type="linenumber">397</context></context-group>
</trans-unit>
- <trans-unit id="_msg580">
+ <trans-unit id="_msg581">
<source xml:space="preserve">Decrease font size</source>
<context-group purpose="location"><context context-type="linenumber">475</context></context-group>
</trans-unit>
- <trans-unit id="_msg581">
+ <trans-unit id="_msg582">
<source xml:space="preserve">Increase font size</source>
<context-group purpose="location"><context context-type="linenumber">495</context></context-group>
</trans-unit>
- <trans-unit id="_msg582">
+ <trans-unit id="_msg583">
<source xml:space="preserve">Permissions</source>
<context-group purpose="location"><context context-type="linenumber">1041</context></context-group>
</trans-unit>
- <trans-unit id="_msg583">
+ <trans-unit id="_msg584">
<source xml:space="preserve">The direction and type of peer connection: %1</source>
<context-group purpose="location"><context context-type="linenumber">1064</context></context-group>
</trans-unit>
- <trans-unit id="_msg584">
+ <trans-unit id="_msg585">
<source xml:space="preserve">Direction/Type</source>
<context-group purpose="location"><context context-type="linenumber">1067</context></context-group>
</trans-unit>
- <trans-unit id="_msg585">
+ <trans-unit id="_msg586">
<source xml:space="preserve">The network protocol this peer is connected through: IPv4, IPv6, Onion, I2P, or CJDNS.</source>
<context-group purpose="location"><context context-type="linenumber">1142</context></context-group>
</trans-unit>
- <trans-unit id="_msg586">
+ <trans-unit id="_msg587">
<source xml:space="preserve">Services</source>
<context-group purpose="location"><context context-type="linenumber">1214</context></context-group>
</trans-unit>
- <trans-unit id="_msg587">
+ <trans-unit id="_msg588">
<source xml:space="preserve">High bandwidth BIP152 compact block relay: %1</source>
<context-group purpose="location"><context context-type="linenumber">1266</context></context-group>
</trans-unit>
- <trans-unit id="_msg588">
+ <trans-unit id="_msg589">
<source xml:space="preserve">High Bandwidth</source>
<context-group purpose="location"><context context-type="linenumber">1269</context></context-group>
</trans-unit>
- <trans-unit id="_msg589">
+ <trans-unit id="_msg590">
<source xml:space="preserve">Connection Time</source>
<context-group purpose="location"><context context-type="linenumber">1361</context></context-group>
</trans-unit>
- <trans-unit id="_msg590">
+ <trans-unit id="_msg591">
<source xml:space="preserve">Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
<context-group purpose="location"><context context-type="linenumber">1384</context></context-group>
</trans-unit>
- <trans-unit id="_msg591">
+ <trans-unit id="_msg592">
<source xml:space="preserve">Last Block</source>
<context-group purpose="location"><context context-type="linenumber">1387</context></context-group>
</trans-unit>
- <trans-unit id="_msg592">
+ <trans-unit id="_msg593">
<source xml:space="preserve">Elapsed time since a novel transaction accepted into our mempool was received from this peer.</source>
<context-group purpose="location"><context context-type="linenumber">1410</context></context-group>
<note annotates="source" from="developer">Tooltip text for the Last Transaction field in the peer details area.</note>
</trans-unit>
- <trans-unit id="_msg593">
+ <trans-unit id="_msg594">
<source xml:space="preserve">Last Send</source>
<context-group purpose="location"><context context-type="linenumber">1436</context></context-group>
</trans-unit>
- <trans-unit id="_msg594">
+ <trans-unit id="_msg595">
<source xml:space="preserve">Last Receive</source>
<context-group purpose="location"><context context-type="linenumber">1459</context></context-group>
</trans-unit>
- <trans-unit id="_msg595">
+ <trans-unit id="_msg596">
<source xml:space="preserve">Ping Time</source>
<context-group purpose="location"><context context-type="linenumber">1528</context></context-group>
</trans-unit>
- <trans-unit id="_msg596">
+ <trans-unit id="_msg597">
<source xml:space="preserve">The duration of a currently outstanding ping.</source>
<context-group purpose="location"><context context-type="linenumber">1551</context></context-group>
</trans-unit>
- <trans-unit id="_msg597">
+ <trans-unit id="_msg598">
<source xml:space="preserve">Ping Wait</source>
<context-group purpose="location"><context context-type="linenumber">1554</context></context-group>
</trans-unit>
- <trans-unit id="_msg598">
+ <trans-unit id="_msg599">
<source xml:space="preserve">Min Ping</source>
<context-group purpose="location"><context context-type="linenumber">1577</context></context-group>
</trans-unit>
- <trans-unit id="_msg599">
+ <trans-unit id="_msg600">
<source xml:space="preserve">Time Offset</source>
<context-group purpose="location"><context context-type="linenumber">1600</context></context-group>
</trans-unit>
- <trans-unit id="_msg600">
+ <trans-unit id="_msg601">
<source xml:space="preserve">Last block time</source>
<context-group purpose="location"><context context-type="linenumber">290</context></context-group>
</trans-unit>
- <trans-unit id="_msg601">
+ <trans-unit id="_msg602">
<source xml:space="preserve">&amp;Open</source>
<context-group purpose="location"><context context-type="linenumber">400</context></context-group>
</trans-unit>
- <trans-unit id="_msg602">
+ <trans-unit id="_msg603">
<source xml:space="preserve">&amp;Console</source>
<context-group purpose="location"><context context-type="linenumber">426</context></context-group>
</trans-unit>
- <trans-unit id="_msg603">
+ <trans-unit id="_msg604">
<source xml:space="preserve">&amp;Network Traffic</source>
<context-group purpose="location"><context context-type="linenumber">613</context></context-group>
</trans-unit>
- <trans-unit id="_msg604">
+ <trans-unit id="_msg605">
<source xml:space="preserve">Totals</source>
<context-group purpose="location"><context context-type="linenumber">681</context></context-group>
</trans-unit>
- <trans-unit id="_msg605">
+ <trans-unit id="_msg606">
<source xml:space="preserve">Debug log file</source>
<context-group purpose="location"><context context-type="linenumber">390</context></context-group>
</trans-unit>
- <trans-unit id="_msg606">
+ <trans-unit id="_msg607">
<source xml:space="preserve">Clear console</source>
<context-group purpose="location"><context context-type="linenumber">515</context></context-group>
</trans-unit>
@@ -2821,154 +2827,158 @@ If you are receiving this error you should request the merchant provide a BIP21
</body></file>
<file original="../rpcconsole.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="RPCConsole">
- <trans-unit id="_msg607">
+ <trans-unit id="_msg608">
<source xml:space="preserve">In:</source>
- <context-group purpose="location"><context context-type="linenumber">968</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">970</context></context-group>
</trans-unit>
- <trans-unit id="_msg608">
+ <trans-unit id="_msg609">
<source xml:space="preserve">Out:</source>
- <context-group purpose="location"><context context-type="linenumber">969</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">971</context></context-group>
</trans-unit>
- <trans-unit id="_msg609">
+ <trans-unit id="_msg610">
<source xml:space="preserve">Inbound: initiated by peer</source>
<context-group purpose="location"><context context-type="linenumber">496</context></context-group>
<note annotates="source" from="developer">Explanatory text for an inbound peer connection.</note>
</trans-unit>
- <trans-unit id="_msg610">
+ <trans-unit id="_msg611">
<source xml:space="preserve">Outbound Full Relay: default</source>
<context-group purpose="location"><context context-type="linenumber">500</context></context-group>
<note annotates="source" from="developer">Explanatory text for an outbound peer connection that relays all network information. This is the default behavior for outbound connections.</note>
</trans-unit>
- <trans-unit id="_msg611">
+ <trans-unit id="_msg612">
<source xml:space="preserve">Outbound Block Relay: does not relay transactions or addresses</source>
<context-group purpose="location"><context context-type="linenumber">503</context></context-group>
<note annotates="source" from="developer">Explanatory text for an outbound peer connection that relays network information about blocks and not transactions or addresses.</note>
</trans-unit>
- <trans-unit id="_msg612">
+ <trans-unit id="_msg613">
<source xml:space="preserve">Outbound Manual: added using RPC %1 or %2/%3 configuration options</source>
<context-group purpose="location"><context context-type="linenumber">508</context></context-group>
<note annotates="source" from="developer">Explanatory text for an outbound peer connection that was established manually through one of several methods. The numbered arguments are stand-ins for the methods available to establish manual connections.</note>
</trans-unit>
- <trans-unit id="_msg613">
+ <trans-unit id="_msg614">
<source xml:space="preserve">Outbound Feeler: short-lived, for testing addresses</source>
<context-group purpose="location"><context context-type="linenumber">514</context></context-group>
<note annotates="source" from="developer">Explanatory text for a short-lived outbound peer connection that is used to test the aliveness of known addresses.</note>
</trans-unit>
- <trans-unit id="_msg614">
+ <trans-unit id="_msg615">
<source xml:space="preserve">Outbound Address Fetch: short-lived, for soliciting addresses</source>
<context-group purpose="location"><context context-type="linenumber">517</context></context-group>
<note annotates="source" from="developer">Explanatory text for a short-lived outbound peer connection that is used to request addresses from a peer.</note>
</trans-unit>
- <trans-unit id="_msg615">
+ <trans-unit id="_msg616">
<source xml:space="preserve">detecting: peer could be v1 or v2</source>
<context-group purpose="location"><context context-type="linenumber">522</context></context-group>
<note annotates="source" from="developer">Explanatory text for &quot;detecting&quot; transport type.</note>
</trans-unit>
- <trans-unit id="_msg616">
+ <trans-unit id="_msg617">
<source xml:space="preserve">v1: unencrypted, plaintext transport protocol</source>
<context-group purpose="location"><context context-type="linenumber">524</context></context-group>
<note annotates="source" from="developer">Explanatory text for v1 transport type.</note>
</trans-unit>
- <trans-unit id="_msg617">
+ <trans-unit id="_msg618">
<source xml:space="preserve">v2: BIP324 encrypted transport protocol</source>
<context-group purpose="location"><context context-type="linenumber">526</context></context-group>
<note annotates="source" from="developer">Explanatory text for v2 transport type.</note>
</trans-unit>
- <trans-unit id="_msg618">
+ <trans-unit id="_msg619">
<source xml:space="preserve">we selected the peer for high bandwidth relay</source>
<context-group purpose="location"><context context-type="linenumber">530</context></context-group>
</trans-unit>
- <trans-unit id="_msg619">
+ <trans-unit id="_msg620">
<source xml:space="preserve">the peer selected us for high bandwidth relay</source>
<context-group purpose="location"><context context-type="linenumber">531</context></context-group>
</trans-unit>
- <trans-unit id="_msg620">
+ <trans-unit id="_msg621">
<source xml:space="preserve">no high bandwidth relay selected</source>
<context-group purpose="location"><context context-type="linenumber">532</context></context-group>
</trans-unit>
- <trans-unit id="_msg621">
+ <trans-unit id="_msg622">
<source xml:space="preserve">Ctrl++</source>
<context-group purpose="location"><context context-type="linenumber">545</context></context-group>
<note annotates="source" from="developer">Main shortcut to increase the RPC console font size.</note>
</trans-unit>
- <trans-unit id="_msg622">
+ <trans-unit id="_msg623">
<source xml:space="preserve">Ctrl+=</source>
<context-group purpose="location"><context context-type="linenumber">547</context></context-group>
<note annotates="source" from="developer">Secondary shortcut to increase the RPC console font size.</note>
</trans-unit>
- <trans-unit id="_msg623">
+ <trans-unit id="_msg624">
<source xml:space="preserve">Ctrl+-</source>
<context-group purpose="location"><context context-type="linenumber">551</context></context-group>
<note annotates="source" from="developer">Main shortcut to decrease the RPC console font size.</note>
</trans-unit>
- <trans-unit id="_msg624">
+ <trans-unit id="_msg625">
<source xml:space="preserve">Ctrl+_</source>
<context-group purpose="location"><context context-type="linenumber">553</context></context-group>
<note annotates="source" from="developer">Secondary shortcut to decrease the RPC console font size.</note>
</trans-unit>
- <trans-unit id="_msg625">
+ <trans-unit id="_msg626">
<source xml:space="preserve">&amp;Copy address</source>
- <context-group purpose="location"><context context-type="linenumber">704</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">706</context></context-group>
<note annotates="source" from="developer">Context menu action to copy the address of a peer.</note>
</trans-unit>
- <trans-unit id="_msg626">
+ <trans-unit id="_msg627">
<source xml:space="preserve">&amp;Disconnect</source>
- <context-group purpose="location"><context context-type="linenumber">708</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">710</context></context-group>
</trans-unit>
- <trans-unit id="_msg627">
+ <trans-unit id="_msg628">
<source xml:space="preserve">1 &amp;hour</source>
- <context-group purpose="location"><context context-type="linenumber">709</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">711</context></context-group>
</trans-unit>
- <trans-unit id="_msg628">
+ <trans-unit id="_msg629">
<source xml:space="preserve">1 d&amp;ay</source>
- <context-group purpose="location"><context context-type="linenumber">710</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">712</context></context-group>
</trans-unit>
- <trans-unit id="_msg629">
+ <trans-unit id="_msg630">
<source xml:space="preserve">1 &amp;week</source>
- <context-group purpose="location"><context context-type="linenumber">711</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">713</context></context-group>
</trans-unit>
- <trans-unit id="_msg630">
+ <trans-unit id="_msg631">
<source xml:space="preserve">1 &amp;year</source>
- <context-group purpose="location"><context context-type="linenumber">712</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">714</context></context-group>
</trans-unit>
- <trans-unit id="_msg631">
+ <trans-unit id="_msg632">
<source xml:space="preserve">&amp;Copy IP/Netmask</source>
- <context-group purpose="location"><context context-type="linenumber">738</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">740</context></context-group>
<note annotates="source" from="developer">Context menu action to copy the IP/Netmask of a banned peer. IP/Netmask is the combination of a peer&apos;s IP address and its Netmask. For IP address, see: https://en.wikipedia.org/wiki/IP_address.</note>
</trans-unit>
- <trans-unit id="_msg632">
+ <trans-unit id="_msg633">
<source xml:space="preserve">&amp;Unban</source>
- <context-group purpose="location"><context context-type="linenumber">742</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">744</context></context-group>
</trans-unit>
- <trans-unit id="_msg633">
+ <trans-unit id="_msg634">
<source xml:space="preserve">Network activity disabled</source>
- <context-group purpose="location"><context context-type="linenumber">972</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">974</context></context-group>
</trans-unit>
- <trans-unit id="_msg634">
+ <trans-unit id="_msg635">
<source xml:space="preserve">Executing command without any wallet</source>
- <context-group purpose="location"><context context-type="linenumber">1051</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1053</context></context-group>
</trans-unit>
- <trans-unit id="_msg635">
+ <trans-unit id="_msg636">
<source xml:space="preserve">Ctrl+I</source>
- <context-group purpose="location"><context context-type="linenumber">1376</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1378</context></context-group>
</trans-unit>
- <trans-unit id="_msg636">
+ <trans-unit id="_msg637">
<source xml:space="preserve">Ctrl+T</source>
- <context-group purpose="location"><context context-type="linenumber">1377</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1379</context></context-group>
</trans-unit>
- <trans-unit id="_msg637">
+ <trans-unit id="_msg638">
<source xml:space="preserve">Ctrl+N</source>
- <context-group purpose="location"><context context-type="linenumber">1378</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1380</context></context-group>
</trans-unit>
- <trans-unit id="_msg638">
+ <trans-unit id="_msg639">
<source xml:space="preserve">Ctrl+P</source>
- <context-group purpose="location"><context context-type="linenumber">1379</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1381</context></context-group>
</trans-unit>
- <trans-unit id="_msg639">
+ <trans-unit id="_msg640">
+ <source xml:space="preserve">Node window - [%1]</source>
+ <context-group purpose="location"><context context-type="linenumber">1399</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg641">
<source xml:space="preserve">Executing command using &quot;%1&quot; wallet</source>
- <context-group purpose="location"><context context-type="linenumber">1049</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1051</context></context-group>
</trans-unit>
- <trans-unit id="_msg640">
+ <trans-unit id="_msg642">
<source xml:space="preserve">Welcome to the %1 RPC console.
Use up and down arrows to navigate history, and %2 to clear screen.
Use %3 and %4 to increase or decrease the font size.
@@ -2976,51 +2986,51 @@ Type %5 for an overview of available commands.
For more information on using this console, type %6.
%7WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command.%8</source>
- <context-group purpose="location"><context context-type="linenumber">902</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">904</context></context-group>
<note annotates="source" from="developer">RPC console welcome message. Placeholders %7 and %8 are style tags for the warning content, and they are not space separated from the rest of the text intentionally.</note>
</trans-unit>
- <trans-unit id="_msg641">
+ <trans-unit id="_msg643">
<source xml:space="preserve">Executing…</source>
- <context-group purpose="location"><context context-type="linenumber">1059</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1061</context></context-group>
<note annotates="source" from="developer">A console message indicating an entered command is currently being executed.</note>
</trans-unit>
- <trans-unit id="_msg642">
+ <trans-unit id="_msg644">
<source xml:space="preserve">(peer: %1)</source>
- <context-group purpose="location"><context context-type="linenumber">1177</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1179</context></context-group>
</trans-unit>
- <trans-unit id="_msg643">
+ <trans-unit id="_msg645">
<source xml:space="preserve">via %1</source>
- <context-group purpose="location"><context context-type="linenumber">1179</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">1181</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../rpcconsole.h" datatype="c" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="RPCConsole">
- <trans-unit id="_msg644">
+ <trans-unit id="_msg646">
<source xml:space="preserve">Yes</source>
<context-group purpose="location"><context context-type="linenumber">146</context></context-group>
</trans-unit>
- <trans-unit id="_msg645">
+ <trans-unit id="_msg647">
<source xml:space="preserve">No</source>
<context-group purpose="location"><context context-type="linenumber">146</context></context-group>
</trans-unit>
- <trans-unit id="_msg646">
+ <trans-unit id="_msg648">
<source xml:space="preserve">To</source>
<context-group purpose="location"><context context-type="linenumber">146</context></context-group>
</trans-unit>
- <trans-unit id="_msg647">
+ <trans-unit id="_msg649">
<source xml:space="preserve">From</source>
<context-group purpose="location"><context context-type="linenumber">146</context></context-group>
</trans-unit>
- <trans-unit id="_msg648">
+ <trans-unit id="_msg650">
<source xml:space="preserve">Ban for</source>
<context-group purpose="location"><context context-type="linenumber">147</context></context-group>
</trans-unit>
- <trans-unit id="_msg649">
+ <trans-unit id="_msg651">
<source xml:space="preserve">Never</source>
<context-group purpose="location"><context context-type="linenumber">189</context></context-group>
</trans-unit>
- <trans-unit id="_msg650">
+ <trans-unit id="_msg652">
<source xml:space="preserve">Unknown</source>
<context-group purpose="location"><context context-type="linenumber">147</context></context-group>
</trans-unit>
@@ -3028,72 +3038,72 @@ For more information on using this console, type %6.
</body></file>
<file original="../forms/receivecoinsdialog.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="ReceiveCoinsDialog">
- <trans-unit id="_msg651">
+ <trans-unit id="_msg653">
<source xml:space="preserve">&amp;Amount:</source>
<context-group purpose="location"><context context-type="linenumber">37</context></context-group>
</trans-unit>
- <trans-unit id="_msg652">
+ <trans-unit id="_msg654">
<source xml:space="preserve">&amp;Label:</source>
<context-group purpose="location"><context context-type="linenumber">83</context></context-group>
</trans-unit>
- <trans-unit id="_msg653">
+ <trans-unit id="_msg655">
<source xml:space="preserve">&amp;Message:</source>
<context-group purpose="location"><context context-type="linenumber">53</context></context-group>
</trans-unit>
- <trans-unit id="_msg654">
+ <trans-unit id="_msg656">
<source xml:space="preserve">An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source>
<context-group purpose="location"><context context-type="linenumber">50</context></context-group>
</trans-unit>
- <trans-unit id="_msg655">
+ <trans-unit id="_msg657">
<source xml:space="preserve">An optional label to associate with the new receiving address.</source>
<context-group purpose="location"><context context-type="linenumber">80</context></context-group>
</trans-unit>
- <trans-unit id="_msg656">
+ <trans-unit id="_msg658">
<source xml:space="preserve">Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
<context-group purpose="location"><context context-type="linenumber">73</context></context-group>
</trans-unit>
- <trans-unit id="_msg657">
+ <trans-unit id="_msg659">
<source xml:space="preserve">An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
<context-group purpose="location"><context context-type="linenumber">34</context></context-group>
<context-group purpose="location"><context context-type="linenumber">193</context></context-group>
</trans-unit>
- <trans-unit id="_msg658">
+ <trans-unit id="_msg660">
<source xml:space="preserve">An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request.</source>
<context-group purpose="location"><context context-type="linenumber">66</context></context-group>
</trans-unit>
- <trans-unit id="_msg659">
+ <trans-unit id="_msg661">
<source xml:space="preserve">An optional message that is attached to the payment request and may be displayed to the sender.</source>
<context-group purpose="location"><context context-type="linenumber">96</context></context-group>
</trans-unit>
- <trans-unit id="_msg660">
+ <trans-unit id="_msg662">
<source xml:space="preserve">&amp;Create new receiving address</source>
<context-group purpose="location"><context context-type="linenumber">111</context></context-group>
</trans-unit>
- <trans-unit id="_msg661">
+ <trans-unit id="_msg663">
<source xml:space="preserve">Clear all fields of the form.</source>
<context-group purpose="location"><context context-type="linenumber">134</context></context-group>
</trans-unit>
- <trans-unit id="_msg662">
+ <trans-unit id="_msg664">
<source xml:space="preserve">Clear</source>
<context-group purpose="location"><context context-type="linenumber">137</context></context-group>
</trans-unit>
- <trans-unit id="_msg663">
+ <trans-unit id="_msg665">
<source xml:space="preserve">Requested payments history</source>
<context-group purpose="location"><context context-type="linenumber">273</context></context-group>
</trans-unit>
- <trans-unit id="_msg664">
+ <trans-unit id="_msg666">
<source xml:space="preserve">Show the selected request (does the same as double clicking an entry)</source>
<context-group purpose="location"><context context-type="linenumber">298</context></context-group>
</trans-unit>
- <trans-unit id="_msg665">
+ <trans-unit id="_msg667">
<source xml:space="preserve">Show</source>
<context-group purpose="location"><context context-type="linenumber">301</context></context-group>
</trans-unit>
- <trans-unit id="_msg666">
+ <trans-unit id="_msg668">
<source xml:space="preserve">Remove the selected entries from the list</source>
<context-group purpose="location"><context context-type="linenumber">318</context></context-group>
</trans-unit>
- <trans-unit id="_msg667">
+ <trans-unit id="_msg669">
<source xml:space="preserve">Remove</source>
<context-group purpose="location"><context context-type="linenumber">321</context></context-group>
</trans-unit>
@@ -3101,63 +3111,63 @@ For more information on using this console, type %6.
</body></file>
<file original="../receivecoinsdialog.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="ReceiveCoinsDialog">
- <trans-unit id="_msg668">
+ <trans-unit id="_msg670">
<source xml:space="preserve">Copy &amp;URI</source>
<context-group purpose="location"><context context-type="linenumber">46</context></context-group>
</trans-unit>
- <trans-unit id="_msg669">
+ <trans-unit id="_msg671">
<source xml:space="preserve">&amp;Copy address</source>
<context-group purpose="location"><context context-type="linenumber">47</context></context-group>
</trans-unit>
- <trans-unit id="_msg670">
+ <trans-unit id="_msg672">
<source xml:space="preserve">Copy &amp;label</source>
<context-group purpose="location"><context context-type="linenumber">48</context></context-group>
</trans-unit>
- <trans-unit id="_msg671">
+ <trans-unit id="_msg673">
<source xml:space="preserve">Copy &amp;message</source>
<context-group purpose="location"><context context-type="linenumber">49</context></context-group>
</trans-unit>
- <trans-unit id="_msg672">
+ <trans-unit id="_msg674">
<source xml:space="preserve">Copy &amp;amount</source>
<context-group purpose="location"><context context-type="linenumber">50</context></context-group>
</trans-unit>
- <trans-unit id="_msg673">
+ <trans-unit id="_msg675">
<source xml:space="preserve">Base58 (Legacy)</source>
<context-group purpose="location"><context context-type="linenumber">96</context></context-group>
</trans-unit>
- <trans-unit id="_msg674">
+ <trans-unit id="_msg676">
<source xml:space="preserve">Not recommended due to higher fees and less protection against typos.</source>
<context-group purpose="location"><context context-type="linenumber">96</context></context-group>
</trans-unit>
- <trans-unit id="_msg675">
+ <trans-unit id="_msg677">
<source xml:space="preserve">Base58 (P2SH-SegWit)</source>
<context-group purpose="location"><context context-type="linenumber">97</context></context-group>
</trans-unit>
- <trans-unit id="_msg676">
+ <trans-unit id="_msg678">
<source xml:space="preserve">Generates an address compatible with older wallets.</source>
<context-group purpose="location"><context context-type="linenumber">97</context></context-group>
</trans-unit>
- <trans-unit id="_msg677">
+ <trans-unit id="_msg679">
<source xml:space="preserve">Bech32 (SegWit)</source>
<context-group purpose="location"><context context-type="linenumber">98</context></context-group>
</trans-unit>
- <trans-unit id="_msg678">
+ <trans-unit id="_msg680">
<source xml:space="preserve">Generates a native segwit address (BIP-173). Some old wallets don&apos;t support it.</source>
<context-group purpose="location"><context context-type="linenumber">98</context></context-group>
</trans-unit>
- <trans-unit id="_msg679">
+ <trans-unit id="_msg681">
<source xml:space="preserve">Bech32m (Taproot)</source>
<context-group purpose="location"><context context-type="linenumber">100</context></context-group>
</trans-unit>
- <trans-unit id="_msg680">
+ <trans-unit id="_msg682">
<source xml:space="preserve">Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
<context-group purpose="location"><context context-type="linenumber">100</context></context-group>
</trans-unit>
- <trans-unit id="_msg681">
+ <trans-unit id="_msg683">
<source xml:space="preserve">Could not unlock wallet.</source>
<context-group purpose="location"><context context-type="linenumber">175</context></context-group>
</trans-unit>
- <trans-unit id="_msg682">
+ <trans-unit id="_msg684">
<source xml:space="preserve">Could not generate new %1 address</source>
<context-group purpose="location"><context context-type="linenumber">180</context></context-group>
</trans-unit>
@@ -3165,51 +3175,51 @@ For more information on using this console, type %6.
</body></file>
<file original="../forms/receiverequestdialog.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="ReceiveRequestDialog">
- <trans-unit id="_msg683">
+ <trans-unit id="_msg685">
<source xml:space="preserve">Request payment to …</source>
<context-group purpose="location"><context context-type="linenumber">14</context></context-group>
</trans-unit>
- <trans-unit id="_msg684">
+ <trans-unit id="_msg686">
<source xml:space="preserve">Address:</source>
<context-group purpose="location"><context context-type="linenumber">90</context></context-group>
</trans-unit>
- <trans-unit id="_msg685">
+ <trans-unit id="_msg687">
<source xml:space="preserve">Amount:</source>
<context-group purpose="location"><context context-type="linenumber">119</context></context-group>
</trans-unit>
- <trans-unit id="_msg686">
+ <trans-unit id="_msg688">
<source xml:space="preserve">Label:</source>
<context-group purpose="location"><context context-type="linenumber">148</context></context-group>
</trans-unit>
- <trans-unit id="_msg687">
+ <trans-unit id="_msg689">
<source xml:space="preserve">Message:</source>
<context-group purpose="location"><context context-type="linenumber">180</context></context-group>
</trans-unit>
- <trans-unit id="_msg688">
+ <trans-unit id="_msg690">
<source xml:space="preserve">Wallet:</source>
<context-group purpose="location"><context context-type="linenumber">212</context></context-group>
</trans-unit>
- <trans-unit id="_msg689">
+ <trans-unit id="_msg691">
<source xml:space="preserve">Copy &amp;URI</source>
<context-group purpose="location"><context context-type="linenumber">240</context></context-group>
</trans-unit>
- <trans-unit id="_msg690">
+ <trans-unit id="_msg692">
<source xml:space="preserve">Copy &amp;Address</source>
<context-group purpose="location"><context context-type="linenumber">250</context></context-group>
</trans-unit>
- <trans-unit id="_msg691">
+ <trans-unit id="_msg693">
<source xml:space="preserve">&amp;Verify</source>
<context-group purpose="location"><context context-type="linenumber">260</context></context-group>
</trans-unit>
- <trans-unit id="_msg692">
+ <trans-unit id="_msg694">
<source xml:space="preserve">Verify this address on e.g. a hardware wallet screen</source>
<context-group purpose="location"><context context-type="linenumber">263</context></context-group>
</trans-unit>
- <trans-unit id="_msg693">
+ <trans-unit id="_msg695">
<source xml:space="preserve">&amp;Save Image…</source>
<context-group purpose="location"><context context-type="linenumber">273</context></context-group>
</trans-unit>
- <trans-unit id="_msg694">
+ <trans-unit id="_msg696">
<source xml:space="preserve">Payment information</source>
<context-group purpose="location"><context context-type="linenumber">39</context></context-group>
</trans-unit>
@@ -3217,7 +3227,7 @@ For more information on using this console, type %6.
</body></file>
<file original="../receiverequestdialog.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="ReceiveRequestDialog">
- <trans-unit id="_msg695">
+ <trans-unit id="_msg697">
<source xml:space="preserve">Request payment to %1</source>
<context-group purpose="location"><context context-type="linenumber">48</context></context-group>
</trans-unit>
@@ -3225,31 +3235,31 @@ For more information on using this console, type %6.
</body></file>
<file original="../recentrequeststablemodel.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="RecentRequestsTableModel">
- <trans-unit id="_msg696">
+ <trans-unit id="_msg698">
<source xml:space="preserve">Date</source>
<context-group purpose="location"><context context-type="linenumber">32</context></context-group>
</trans-unit>
- <trans-unit id="_msg697">
+ <trans-unit id="_msg699">
<source xml:space="preserve">Label</source>
<context-group purpose="location"><context context-type="linenumber">32</context></context-group>
</trans-unit>
- <trans-unit id="_msg698">
+ <trans-unit id="_msg700">
<source xml:space="preserve">Message</source>
<context-group purpose="location"><context context-type="linenumber">32</context></context-group>
</trans-unit>
- <trans-unit id="_msg699">
+ <trans-unit id="_msg701">
<source xml:space="preserve">(no label)</source>
<context-group purpose="location"><context context-type="linenumber">70</context></context-group>
</trans-unit>
- <trans-unit id="_msg700">
+ <trans-unit id="_msg702">
<source xml:space="preserve">(no message)</source>
<context-group purpose="location"><context context-type="linenumber">79</context></context-group>
</trans-unit>
- <trans-unit id="_msg701">
+ <trans-unit id="_msg703">
<source xml:space="preserve">(no amount requested)</source>
<context-group purpose="location"><context context-type="linenumber">87</context></context-group>
</trans-unit>
- <trans-unit id="_msg702">
+ <trans-unit id="_msg704">
<source xml:space="preserve">Requested</source>
<context-group purpose="location"><context context-type="linenumber">130</context></context-group>
</trans-unit>
@@ -3257,150 +3267,150 @@ For more information on using this console, type %6.
</body></file>
<file original="../forms/sendcoinsdialog.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="SendCoinsDialog">
- <trans-unit id="_msg703">
+ <trans-unit id="_msg705">
<source xml:space="preserve">Send Coins</source>
<context-group purpose="location"><context context-type="linenumber">14</context></context-group>
<context-group purpose="location"><context context-type="sourcefile">../sendcoinsdialog.cpp</context><context context-type="linenumber">762</context></context-group>
</trans-unit>
- <trans-unit id="_msg704">
+ <trans-unit id="_msg706">
<source xml:space="preserve">Coin Control Features</source>
<context-group purpose="location"><context context-type="linenumber">90</context></context-group>
</trans-unit>
- <trans-unit id="_msg705">
+ <trans-unit id="_msg707">
<source xml:space="preserve">automatically selected</source>
<context-group purpose="location"><context context-type="linenumber">120</context></context-group>
</trans-unit>
- <trans-unit id="_msg706">
+ <trans-unit id="_msg708">
<source xml:space="preserve">Insufficient funds!</source>
<context-group purpose="location"><context context-type="linenumber">139</context></context-group>
</trans-unit>
- <trans-unit id="_msg707">
+ <trans-unit id="_msg709">
<source xml:space="preserve">Quantity:</source>
<context-group purpose="location"><context context-type="linenumber">231</context></context-group>
</trans-unit>
- <trans-unit id="_msg708">
+ <trans-unit id="_msg710">
<source xml:space="preserve">Bytes:</source>
<context-group purpose="location"><context context-type="linenumber">266</context></context-group>
</trans-unit>
- <trans-unit id="_msg709">
+ <trans-unit id="_msg711">
<source xml:space="preserve">Amount:</source>
<context-group purpose="location"><context context-type="linenumber">314</context></context-group>
</trans-unit>
- <trans-unit id="_msg710">
+ <trans-unit id="_msg712">
<source xml:space="preserve">Fee:</source>
<context-group purpose="location"><context context-type="linenumber">365</context></context-group>
</trans-unit>
- <trans-unit id="_msg711">
+ <trans-unit id="_msg713">
<source xml:space="preserve">After Fee:</source>
<context-group purpose="location"><context context-type="linenumber">419</context></context-group>
</trans-unit>
- <trans-unit id="_msg712">
+ <trans-unit id="_msg714">
<source xml:space="preserve">Change:</source>
<context-group purpose="location"><context context-type="linenumber">451</context></context-group>
</trans-unit>
- <trans-unit id="_msg713">
+ <trans-unit id="_msg715">
<source xml:space="preserve">If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source>
<context-group purpose="location"><context context-type="linenumber">495</context></context-group>
</trans-unit>
- <trans-unit id="_msg714">
+ <trans-unit id="_msg716">
<source xml:space="preserve">Custom change address</source>
<context-group purpose="location"><context context-type="linenumber">498</context></context-group>
</trans-unit>
- <trans-unit id="_msg715">
+ <trans-unit id="_msg717">
<source xml:space="preserve">Transaction Fee:</source>
<context-group purpose="location"><context context-type="linenumber">704</context></context-group>
</trans-unit>
- <trans-unit id="_msg716">
+ <trans-unit id="_msg718">
<source xml:space="preserve">Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain.</source>
<context-group purpose="location"><context context-type="linenumber">742</context></context-group>
</trans-unit>
- <trans-unit id="_msg717">
+ <trans-unit id="_msg719">
<source xml:space="preserve">Warning: Fee estimation is currently not possible.</source>
<context-group purpose="location"><context context-type="linenumber">751</context></context-group>
</trans-unit>
- <trans-unit id="_msg718">
+ <trans-unit id="_msg720">
<source xml:space="preserve">per kilobyte</source>
<context-group purpose="location"><context context-type="linenumber">833</context></context-group>
</trans-unit>
- <trans-unit id="_msg719">
+ <trans-unit id="_msg721">
<source xml:space="preserve">Hide</source>
<context-group purpose="location"><context context-type="linenumber">780</context></context-group>
</trans-unit>
- <trans-unit id="_msg720">
+ <trans-unit id="_msg722">
<source xml:space="preserve">Recommended:</source>
<context-group purpose="location"><context context-type="linenumber">892</context></context-group>
</trans-unit>
- <trans-unit id="_msg721">
+ <trans-unit id="_msg723">
<source xml:space="preserve">Custom:</source>
<context-group purpose="location"><context context-type="linenumber">922</context></context-group>
</trans-unit>
- <trans-unit id="_msg722">
+ <trans-unit id="_msg724">
<source xml:space="preserve">Send to multiple recipients at once</source>
<context-group purpose="location"><context context-type="linenumber">1137</context></context-group>
</trans-unit>
- <trans-unit id="_msg723">
+ <trans-unit id="_msg725">
<source xml:space="preserve">Add &amp;Recipient</source>
<context-group purpose="location"><context context-type="linenumber">1140</context></context-group>
</trans-unit>
- <trans-unit id="_msg724">
+ <trans-unit id="_msg726">
<source xml:space="preserve">Clear all fields of the form.</source>
<context-group purpose="location"><context context-type="linenumber">1120</context></context-group>
</trans-unit>
- <trans-unit id="_msg725">
+ <trans-unit id="_msg727">
<source xml:space="preserve">Inputs…</source>
<context-group purpose="location"><context context-type="linenumber">110</context></context-group>
</trans-unit>
- <trans-unit id="_msg726">
+ <trans-unit id="_msg728">
<source xml:space="preserve">Choose…</source>
<context-group purpose="location"><context context-type="linenumber">718</context></context-group>
</trans-unit>
- <trans-unit id="_msg727">
+ <trans-unit id="_msg729">
<source xml:space="preserve">Hide transaction fee settings</source>
<context-group purpose="location"><context context-type="linenumber">777</context></context-group>
</trans-unit>
- <trans-unit id="_msg728">
+ <trans-unit id="_msg730">
<source xml:space="preserve">Specify a custom fee per kB (1,000 bytes) of the transaction&apos;s virtual size.
Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100 satoshis per kvB&quot; for a transaction size of 500 virtual bytes (half of 1 kvB) would ultimately yield a fee of only 50 satoshis.</source>
<context-group purpose="location"><context context-type="linenumber">828</context></context-group>
</trans-unit>
- <trans-unit id="_msg729">
+ <trans-unit id="_msg731">
<source xml:space="preserve">When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
<context-group purpose="location"><context context-type="linenumber">863</context></context-group>
</trans-unit>
- <trans-unit id="_msg730">
+ <trans-unit id="_msg732">
<source xml:space="preserve">A too low fee might result in a never confirming transaction (read the tooltip)</source>
<context-group purpose="location"><context context-type="linenumber">866</context></context-group>
</trans-unit>
- <trans-unit id="_msg731">
+ <trans-unit id="_msg733">
<source xml:space="preserve">(Smart fee not initialized yet. This usually takes a few blocks…)</source>
<context-group purpose="location"><context context-type="linenumber">971</context></context-group>
</trans-unit>
- <trans-unit id="_msg732">
+ <trans-unit id="_msg734">
<source xml:space="preserve">Confirmation time target:</source>
<context-group purpose="location"><context context-type="linenumber">997</context></context-group>
</trans-unit>
- <trans-unit id="_msg733">
+ <trans-unit id="_msg735">
<source xml:space="preserve">Enable Replace-By-Fee</source>
<context-group purpose="location"><context context-type="linenumber">1055</context></context-group>
</trans-unit>
- <trans-unit id="_msg734">
+ <trans-unit id="_msg736">
<source xml:space="preserve">With Replace-By-Fee (BIP-125) you can increase a transaction&apos;s fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk.</source>
<context-group purpose="location"><context context-type="linenumber">1058</context></context-group>
</trans-unit>
- <trans-unit id="_msg735">
+ <trans-unit id="_msg737">
<source xml:space="preserve">Clear &amp;All</source>
<context-group purpose="location"><context context-type="linenumber">1123</context></context-group>
</trans-unit>
- <trans-unit id="_msg736">
+ <trans-unit id="_msg738">
<source xml:space="preserve">Balance:</source>
<context-group purpose="location"><context context-type="linenumber">1178</context></context-group>
</trans-unit>
- <trans-unit id="_msg737">
+ <trans-unit id="_msg739">
<source xml:space="preserve">Confirm the send action</source>
<context-group purpose="location"><context context-type="linenumber">1094</context></context-group>
</trans-unit>
- <trans-unit id="_msg738">
+ <trans-unit id="_msg740">
<source xml:space="preserve">S&amp;end</source>
<context-group purpose="location"><context context-type="linenumber">1097</context></context-group>
</trans-unit>
@@ -3408,231 +3418,231 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../sendcoinsdialog.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="SendCoinsDialog">
- <trans-unit id="_msg739">
+ <trans-unit id="_msg741">
<source xml:space="preserve">Copy quantity</source>
<context-group purpose="location"><context context-type="linenumber">95</context></context-group>
</trans-unit>
- <trans-unit id="_msg740">
+ <trans-unit id="_msg742">
<source xml:space="preserve">Copy amount</source>
<context-group purpose="location"><context context-type="linenumber">96</context></context-group>
</trans-unit>
- <trans-unit id="_msg741">
+ <trans-unit id="_msg743">
<source xml:space="preserve">Copy fee</source>
<context-group purpose="location"><context context-type="linenumber">97</context></context-group>
</trans-unit>
- <trans-unit id="_msg742">
+ <trans-unit id="_msg744">
<source xml:space="preserve">Copy after fee</source>
<context-group purpose="location"><context context-type="linenumber">98</context></context-group>
</trans-unit>
- <trans-unit id="_msg743">
+ <trans-unit id="_msg745">
<source xml:space="preserve">Copy bytes</source>
<context-group purpose="location"><context context-type="linenumber">99</context></context-group>
</trans-unit>
- <trans-unit id="_msg744">
+ <trans-unit id="_msg746">
<source xml:space="preserve">Copy change</source>
<context-group purpose="location"><context context-type="linenumber">100</context></context-group>
</trans-unit>
- <trans-unit id="_msg745">
+ <trans-unit id="_msg747">
<source xml:space="preserve">%1 (%2 blocks)</source>
<context-group purpose="location"><context context-type="linenumber">172</context></context-group>
</trans-unit>
- <trans-unit id="_msg746">
+ <trans-unit id="_msg748">
<source xml:space="preserve">Sign on device</source>
<context-group purpose="location"><context context-type="linenumber">202</context></context-group>
<note annotates="source" from="developer">&quot;device&quot; usually means a hardware wallet.</note>
</trans-unit>
- <trans-unit id="_msg747">
+ <trans-unit id="_msg749">
<source xml:space="preserve">Connect your hardware wallet first.</source>
<context-group purpose="location"><context context-type="linenumber">205</context></context-group>
</trans-unit>
- <trans-unit id="_msg748">
+ <trans-unit id="_msg750">
<source xml:space="preserve">Set external signer script path in Options -&gt; Wallet</source>
<context-group purpose="location"><context context-type="linenumber">209</context></context-group>
<note annotates="source" from="developer">&quot;External signer&quot; means using devices such as hardware wallets.</note>
</trans-unit>
- <trans-unit id="_msg749">
+ <trans-unit id="_msg751">
<source xml:space="preserve">Cr&amp;eate Unsigned</source>
<context-group purpose="location"><context context-type="linenumber">212</context></context-group>
</trans-unit>
- <trans-unit id="_msg750">
+ <trans-unit id="_msg752">
<source xml:space="preserve">Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
<context-group purpose="location"><context context-type="linenumber">213</context></context-group>
</trans-unit>
- <trans-unit id="_msg751">
- <source xml:space="preserve"> from wallet &apos;%1&apos;</source>
- <context-group purpose="location"><context context-type="linenumber">305</context></context-group>
- </trans-unit>
- <trans-unit id="_msg752">
+ <trans-unit id="_msg753">
<source xml:space="preserve">%1 to &apos;%2&apos;</source>
<context-group purpose="location"><context context-type="linenumber">316</context></context-group>
</trans-unit>
- <trans-unit id="_msg753">
+ <trans-unit id="_msg754">
<source xml:space="preserve">%1 to %2</source>
<context-group purpose="location"><context context-type="linenumber">321</context></context-group>
</trans-unit>
- <trans-unit id="_msg754">
+ <trans-unit id="_msg755">
<source xml:space="preserve">To review recipient list click &quot;Show Details…&quot;</source>
<context-group purpose="location"><context context-type="linenumber">388</context></context-group>
</trans-unit>
- <trans-unit id="_msg755">
+ <trans-unit id="_msg756">
<source xml:space="preserve">Sign failed</source>
<context-group purpose="location"><context context-type="linenumber">450</context></context-group>
</trans-unit>
- <trans-unit id="_msg756">
+ <trans-unit id="_msg757">
<source xml:space="preserve">External signer not found</source>
<context-group purpose="location"><context context-type="linenumber">455</context></context-group>
<note annotates="source" from="developer">&quot;External signer&quot; means using devices such as hardware wallets.</note>
</trans-unit>
- <trans-unit id="_msg757">
+ <trans-unit id="_msg758">
<source xml:space="preserve">External signer failure</source>
<context-group purpose="location"><context context-type="linenumber">461</context></context-group>
<note annotates="source" from="developer">&quot;External signer&quot; means using devices such as hardware wallets.</note>
</trans-unit>
- <trans-unit id="_msg758">
+ <trans-unit id="_msg759">
<source xml:space="preserve">Save Transaction Data</source>
<context-group purpose="location"><context context-type="linenumber">425</context></context-group>
</trans-unit>
- <trans-unit id="_msg759">
+ <trans-unit id="_msg760">
<source xml:space="preserve">Partially Signed Transaction (Binary)</source>
<context-group purpose="location"><context context-type="linenumber">427</context></context-group>
<note annotates="source" from="developer">Expanded name of the binary PSBT file format. See: BIP 174.</note>
</trans-unit>
- <trans-unit id="_msg760">
+ <trans-unit id="_msg761">
<source xml:space="preserve">PSBT saved</source>
<context-group purpose="location"><context context-type="linenumber">435</context></context-group>
<note annotates="source" from="developer">Popup message when a PSBT has been saved to a file</note>
</trans-unit>
- <trans-unit id="_msg761">
+ <trans-unit id="_msg762">
<source xml:space="preserve">External balance:</source>
<context-group purpose="location"><context context-type="linenumber">708</context></context-group>
</trans-unit>
- <trans-unit id="_msg762">
+ <trans-unit id="_msg763">
<source xml:space="preserve">or</source>
<context-group purpose="location"><context context-type="linenumber">384</context></context-group>
</trans-unit>
- <trans-unit id="_msg763">
+ <trans-unit id="_msg764">
<source xml:space="preserve">You can increase the fee later (signals Replace-By-Fee, BIP-125).</source>
<context-group purpose="location"><context context-type="linenumber">366</context></context-group>
</trans-unit>
- <trans-unit id="_msg764">
+ <trans-unit id="_msg765">
<source xml:space="preserve">Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
<context-group purpose="location"><context context-type="linenumber">335</context></context-group>
<note annotates="source" from="developer">Text to inform a user attempting to create a transaction of their current options. At this stage, a user can only create a PSBT. This string is displayed when private keys are disabled and an external signer is not available.</note>
</trans-unit>
- <trans-unit id="_msg765">
+ <trans-unit id="_msg766">
+ <source xml:space="preserve">%1 from wallet &apos;%2&apos;</source>
+ <context-group purpose="location"><context context-type="linenumber">305</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg767">
<source xml:space="preserve">Do you want to create this transaction?</source>
<context-group purpose="location"><context context-type="linenumber">329</context></context-group>
<note annotates="source" from="developer">Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</note>
</trans-unit>
- <trans-unit id="_msg766">
+ <trans-unit id="_msg768">
<source xml:space="preserve">Please, review your transaction. You can create and send this transaction or create a Partially Signed Bitcoin Transaction (PSBT), which you can save or copy and then sign with, e.g., an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
<context-group purpose="location"><context context-type="linenumber">340</context></context-group>
<note annotates="source" from="developer">Text to inform a user attempting to create a transaction of their current options. At this stage, a user can send their transaction or create a PSBT. This string is displayed when both private keys and PSBT controls are enabled.</note>
</trans-unit>
- <trans-unit id="_msg767">
+ <trans-unit id="_msg769">
<source xml:space="preserve">Please, review your transaction.</source>
<context-group purpose="location"><context context-type="linenumber">343</context></context-group>
<note annotates="source" from="developer">Text to prompt a user to review the details of the transaction they are attempting to send.</note>
</trans-unit>
- <trans-unit id="_msg768">
+ <trans-unit id="_msg770">
<source xml:space="preserve">Transaction fee</source>
<context-group purpose="location"><context context-type="linenumber">351</context></context-group>
</trans-unit>
- <trans-unit id="_msg769">
+ <trans-unit id="_msg771">
<source xml:space="preserve">%1 kvB</source>
<context-group purpose="location"><context context-type="linenumber">356</context></context-group>
<context-group><context context-type="x-gettext-msgctxt">PSBT transaction creation</context></context-group>
<note annotates="source" from="developer">When reviewing a newly created PSBT (via Send flow), the transaction fee is shown, with &quot;virtual size&quot; of the transaction displayed for context</note>
</trans-unit>
- <trans-unit id="_msg770">
+ <trans-unit id="_msg772">
<source xml:space="preserve">Not signalling Replace-By-Fee, BIP-125.</source>
<context-group purpose="location"><context context-type="linenumber">368</context></context-group>
</trans-unit>
- <trans-unit id="_msg771">
+ <trans-unit id="_msg773">
<source xml:space="preserve">Total Amount</source>
<context-group purpose="location"><context context-type="linenumber">381</context></context-group>
</trans-unit>
- <trans-unit id="_msg772">
+ <trans-unit id="_msg774">
<source xml:space="preserve">Unsigned Transaction</source>
<context-group purpose="location"><context context-type="linenumber">405</context></context-group>
<context-group><context context-type="x-gettext-msgctxt">PSBT copied</context></context-group>
<note annotates="source" from="developer">Caption of &quot;PSBT has been copied&quot; messagebox</note>
</trans-unit>
- <trans-unit id="_msg773">
+ <trans-unit id="_msg775">
<source xml:space="preserve">The PSBT has been copied to the clipboard. You can also save it.</source>
<context-group purpose="location"><context context-type="linenumber">406</context></context-group>
</trans-unit>
- <trans-unit id="_msg774">
+ <trans-unit id="_msg776">
<source xml:space="preserve">PSBT saved to disk</source>
<context-group purpose="location"><context context-type="linenumber">435</context></context-group>
</trans-unit>
- <trans-unit id="_msg775">
+ <trans-unit id="_msg777">
<source xml:space="preserve">Confirm send coins</source>
<context-group purpose="location"><context context-type="linenumber">484</context></context-group>
</trans-unit>
- <trans-unit id="_msg776">
+ <trans-unit id="_msg778">
<source xml:space="preserve">Watch-only balance:</source>
<context-group purpose="location"><context context-type="linenumber">711</context></context-group>
</trans-unit>
- <trans-unit id="_msg777">
+ <trans-unit id="_msg779">
<source xml:space="preserve">The recipient address is not valid. Please recheck.</source>
<context-group purpose="location"><context context-type="linenumber">735</context></context-group>
</trans-unit>
- <trans-unit id="_msg778">
+ <trans-unit id="_msg780">
<source xml:space="preserve">The amount to pay must be larger than 0.</source>
<context-group purpose="location"><context context-type="linenumber">738</context></context-group>
</trans-unit>
- <trans-unit id="_msg779">
+ <trans-unit id="_msg781">
<source xml:space="preserve">The amount exceeds your balance.</source>
<context-group purpose="location"><context context-type="linenumber">741</context></context-group>
</trans-unit>
- <trans-unit id="_msg780">
+ <trans-unit id="_msg782">
<source xml:space="preserve">The total exceeds your balance when the %1 transaction fee is included.</source>
<context-group purpose="location"><context context-type="linenumber">744</context></context-group>
</trans-unit>
- <trans-unit id="_msg781">
+ <trans-unit id="_msg783">
<source xml:space="preserve">Duplicate address found: addresses should only be used once each.</source>
<context-group purpose="location"><context context-type="linenumber">747</context></context-group>
</trans-unit>
- <trans-unit id="_msg782">
+ <trans-unit id="_msg784">
<source xml:space="preserve">Transaction creation failed!</source>
<context-group purpose="location"><context context-type="linenumber">750</context></context-group>
</trans-unit>
- <trans-unit id="_msg783">
+ <trans-unit id="_msg785">
<source xml:space="preserve">A fee higher than %1 is considered an absurdly high fee.</source>
<context-group purpose="location"><context context-type="linenumber">754</context></context-group>
</trans-unit>
- <trans-unit id="_msg784">
+ <trans-unit id="_msg786">
<source xml:space="preserve">%1/kvB</source>
<context-group purpose="location"><context context-type="linenumber">833</context></context-group>
<context-group purpose="location"><context context-type="linenumber">868</context></context-group>
</trans-unit>
<group restype="x-gettext-plurals">
<context-group purpose="location"><context context-type="linenumber">882</context></context-group>
- <trans-unit id="_msg785[0]">
+ <trans-unit id="_msg787[0]">
<source xml:space="preserve">Estimated to begin confirmation within %n block(s).</source>
</trans-unit>
- <trans-unit id="_msg785[1]">
+ <trans-unit id="_msg787[1]">
<source xml:space="preserve">Estimated to begin confirmation within %n block(s).</source>
</trans-unit>
</group>
- <trans-unit id="_msg786">
+ <trans-unit id="_msg788">
<source xml:space="preserve">Warning: Invalid Bitcoin address</source>
<context-group purpose="location"><context context-type="linenumber">977</context></context-group>
</trans-unit>
- <trans-unit id="_msg787">
+ <trans-unit id="_msg789">
<source xml:space="preserve">Warning: Unknown change address</source>
<context-group purpose="location"><context context-type="linenumber">982</context></context-group>
</trans-unit>
- <trans-unit id="_msg788">
+ <trans-unit id="_msg790">
<source xml:space="preserve">Confirm custom change address</source>
<context-group purpose="location"><context context-type="linenumber">985</context></context-group>
</trans-unit>
- <trans-unit id="_msg789">
+ <trans-unit id="_msg791">
<source xml:space="preserve">The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure?</source>
<context-group purpose="location"><context context-type="linenumber">985</context></context-group>
</trans-unit>
- <trans-unit id="_msg790">
+ <trans-unit id="_msg792">
<source xml:space="preserve">(no label)</source>
<context-group purpose="location"><context context-type="linenumber">1006</context></context-group>
</trans-unit>
@@ -3640,68 +3650,68 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../forms/sendcoinsentry.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="SendCoinsEntry">
- <trans-unit id="_msg791">
+ <trans-unit id="_msg793">
<source xml:space="preserve">A&amp;mount:</source>
<context-group purpose="location"><context context-type="linenumber">151</context></context-group>
</trans-unit>
- <trans-unit id="_msg792">
+ <trans-unit id="_msg794">
<source xml:space="preserve">Pay &amp;To:</source>
<context-group purpose="location"><context context-type="linenumber">35</context></context-group>
</trans-unit>
- <trans-unit id="_msg793">
+ <trans-unit id="_msg795">
<source xml:space="preserve">&amp;Label:</source>
<context-group purpose="location"><context context-type="linenumber">128</context></context-group>
</trans-unit>
- <trans-unit id="_msg794">
+ <trans-unit id="_msg796">
<source xml:space="preserve">Choose previously used address</source>
<context-group purpose="location"><context context-type="linenumber">60</context></context-group>
</trans-unit>
- <trans-unit id="_msg795">
+ <trans-unit id="_msg797">
<source xml:space="preserve">The Bitcoin address to send the payment to</source>
<context-group purpose="location"><context context-type="linenumber">53</context></context-group>
</trans-unit>
- <trans-unit id="_msg796">
+ <trans-unit id="_msg798">
<source xml:space="preserve">Alt+A</source>
<context-group purpose="location"><context context-type="linenumber">76</context></context-group>
</trans-unit>
- <trans-unit id="_msg797">
+ <trans-unit id="_msg799">
<source xml:space="preserve">Paste address from clipboard</source>
<context-group purpose="location"><context context-type="linenumber">83</context></context-group>
</trans-unit>
- <trans-unit id="_msg798">
+ <trans-unit id="_msg800">
<source xml:space="preserve">Alt+P</source>
<context-group purpose="location"><context context-type="linenumber">99</context></context-group>
</trans-unit>
- <trans-unit id="_msg799">
+ <trans-unit id="_msg801">
<source xml:space="preserve">Remove this entry</source>
<context-group purpose="location"><context context-type="linenumber">106</context></context-group>
</trans-unit>
- <trans-unit id="_msg800">
+ <trans-unit id="_msg802">
<source xml:space="preserve">The amount to send in the selected unit</source>
<context-group purpose="location"><context context-type="linenumber">166</context></context-group>
</trans-unit>
- <trans-unit id="_msg801">
+ <trans-unit id="_msg803">
<source xml:space="preserve">The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source>
<context-group purpose="location"><context context-type="linenumber">173</context></context-group>
</trans-unit>
- <trans-unit id="_msg802">
+ <trans-unit id="_msg804">
<source xml:space="preserve">S&amp;ubtract fee from amount</source>
<context-group purpose="location"><context context-type="linenumber">176</context></context-group>
</trans-unit>
- <trans-unit id="_msg803">
+ <trans-unit id="_msg805">
<source xml:space="preserve">Use available balance</source>
<context-group purpose="location"><context context-type="linenumber">183</context></context-group>
</trans-unit>
- <trans-unit id="_msg804">
+ <trans-unit id="_msg806">
<source xml:space="preserve">Message:</source>
<context-group purpose="location"><context context-type="linenumber">192</context></context-group>
</trans-unit>
- <trans-unit id="_msg805">
+ <trans-unit id="_msg807">
<source xml:space="preserve">Enter a label for this address to add it to the list of used addresses</source>
<context-group purpose="location"><context context-type="linenumber">141</context></context-group>
<context-group purpose="location"><context context-type="linenumber">144</context></context-group>
</trans-unit>
- <trans-unit id="_msg806">
+ <trans-unit id="_msg808">
<source xml:space="preserve">A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network.</source>
<context-group purpose="location"><context context-type="linenumber">202</context></context-group>
</trans-unit>
@@ -3709,11 +3719,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../sendcoinsdialog.h" datatype="c" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="SendConfirmationDialog">
- <trans-unit id="_msg807">
+ <trans-unit id="_msg809">
<source xml:space="preserve">Send</source>
<context-group purpose="location"><context context-type="linenumber">146</context></context-group>
</trans-unit>
- <trans-unit id="_msg808">
+ <trans-unit id="_msg810">
<source xml:space="preserve">Create Unsigned</source>
<context-group purpose="location"><context context-type="linenumber">148</context></context-group>
</trans-unit>
@@ -3721,105 +3731,105 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../forms/signverifymessagedialog.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="SignVerifyMessageDialog">
- <trans-unit id="_msg809">
+ <trans-unit id="_msg811">
<source xml:space="preserve">Signatures - Sign / Verify a Message</source>
<context-group purpose="location"><context context-type="linenumber">14</context></context-group>
</trans-unit>
- <trans-unit id="_msg810">
+ <trans-unit id="_msg812">
<source xml:space="preserve">&amp;Sign Message</source>
<context-group purpose="location"><context context-type="linenumber">27</context></context-group>
</trans-unit>
- <trans-unit id="_msg811">
+ <trans-unit id="_msg813">
<source xml:space="preserve">You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source>
<context-group purpose="location"><context context-type="linenumber">33</context></context-group>
</trans-unit>
- <trans-unit id="_msg812">
+ <trans-unit id="_msg814">
<source xml:space="preserve">The Bitcoin address to sign the message with</source>
<context-group purpose="location"><context context-type="linenumber">51</context></context-group>
</trans-unit>
- <trans-unit id="_msg813">
+ <trans-unit id="_msg815">
<source xml:space="preserve">Choose previously used address</source>
<context-group purpose="location"><context context-type="linenumber">58</context></context-group>
<context-group purpose="location"><context context-type="linenumber">274</context></context-group>
</trans-unit>
- <trans-unit id="_msg814">
+ <trans-unit id="_msg816">
<source xml:space="preserve">Alt+A</source>
<context-group purpose="location"><context context-type="linenumber">68</context></context-group>
<context-group purpose="location"><context context-type="linenumber">284</context></context-group>
</trans-unit>
- <trans-unit id="_msg815">
+ <trans-unit id="_msg817">
<source xml:space="preserve">Paste address from clipboard</source>
<context-group purpose="location"><context context-type="linenumber">78</context></context-group>
</trans-unit>
- <trans-unit id="_msg816">
+ <trans-unit id="_msg818">
<source xml:space="preserve">Alt+P</source>
<context-group purpose="location"><context context-type="linenumber">88</context></context-group>
</trans-unit>
- <trans-unit id="_msg817">
+ <trans-unit id="_msg819">
<source xml:space="preserve">Enter the message you want to sign here</source>
<context-group purpose="location"><context context-type="linenumber">100</context></context-group>
<context-group purpose="location"><context context-type="linenumber">103</context></context-group>
</trans-unit>
- <trans-unit id="_msg818">
+ <trans-unit id="_msg820">
<source xml:space="preserve">Signature</source>
<context-group purpose="location"><context context-type="linenumber">110</context></context-group>
</trans-unit>
- <trans-unit id="_msg819">
+ <trans-unit id="_msg821">
<source xml:space="preserve">Copy the current signature to the system clipboard</source>
<context-group purpose="location"><context context-type="linenumber">140</context></context-group>
</trans-unit>
- <trans-unit id="_msg820">
+ <trans-unit id="_msg822">
<source xml:space="preserve">Sign the message to prove you own this Bitcoin address</source>
<context-group purpose="location"><context context-type="linenumber">161</context></context-group>
</trans-unit>
- <trans-unit id="_msg821">
+ <trans-unit id="_msg823">
<source xml:space="preserve">Sign &amp;Message</source>
<context-group purpose="location"><context context-type="linenumber">164</context></context-group>
</trans-unit>
- <trans-unit id="_msg822">
+ <trans-unit id="_msg824">
<source xml:space="preserve">Reset all sign message fields</source>
<context-group purpose="location"><context context-type="linenumber">178</context></context-group>
</trans-unit>
- <trans-unit id="_msg823">
+ <trans-unit id="_msg825">
<source xml:space="preserve">Clear &amp;All</source>
<context-group purpose="location"><context context-type="linenumber">181</context></context-group>
<context-group purpose="location"><context context-type="linenumber">338</context></context-group>
</trans-unit>
- <trans-unit id="_msg824">
+ <trans-unit id="_msg826">
<source xml:space="preserve">&amp;Verify Message</source>
<context-group purpose="location"><context context-type="linenumber">240</context></context-group>
</trans-unit>
- <trans-unit id="_msg825">
+ <trans-unit id="_msg827">
<source xml:space="preserve">Enter the receiver&apos;s address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source>
<context-group purpose="location"><context context-type="linenumber">246</context></context-group>
</trans-unit>
- <trans-unit id="_msg826">
+ <trans-unit id="_msg828">
<source xml:space="preserve">The Bitcoin address the message was signed with</source>
<context-group purpose="location"><context context-type="linenumber">267</context></context-group>
</trans-unit>
- <trans-unit id="_msg827">
+ <trans-unit id="_msg829">
<source xml:space="preserve">The signed message to verify</source>
<context-group purpose="location"><context context-type="linenumber">296</context></context-group>
<context-group purpose="location"><context context-type="linenumber">299</context></context-group>
</trans-unit>
- <trans-unit id="_msg828">
+ <trans-unit id="_msg830">
<source xml:space="preserve">The signature given when the message was signed</source>
<context-group purpose="location"><context context-type="linenumber">306</context></context-group>
<context-group purpose="location"><context context-type="linenumber">309</context></context-group>
</trans-unit>
- <trans-unit id="_msg829">
+ <trans-unit id="_msg831">
<source xml:space="preserve">Verify the message to ensure it was signed with the specified Bitcoin address</source>
<context-group purpose="location"><context context-type="linenumber">318</context></context-group>
</trans-unit>
- <trans-unit id="_msg830">
+ <trans-unit id="_msg832">
<source xml:space="preserve">Verify &amp;Message</source>
<context-group purpose="location"><context context-type="linenumber">321</context></context-group>
</trans-unit>
- <trans-unit id="_msg831">
+ <trans-unit id="_msg833">
<source xml:space="preserve">Reset all verify message fields</source>
<context-group purpose="location"><context context-type="linenumber">335</context></context-group>
</trans-unit>
- <trans-unit id="_msg832">
+ <trans-unit id="_msg834">
<source xml:space="preserve">Click &quot;Sign Message&quot; to generate signature</source>
<context-group purpose="location"><context context-type="linenumber">125</context></context-group>
</trans-unit>
@@ -3827,61 +3837,61 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../signverifymessagedialog.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="SignVerifyMessageDialog">
- <trans-unit id="_msg833">
+ <trans-unit id="_msg835">
<source xml:space="preserve">The entered address is invalid.</source>
<context-group purpose="location"><context context-type="linenumber">119</context></context-group>
<context-group purpose="location"><context context-type="linenumber">218</context></context-group>
</trans-unit>
- <trans-unit id="_msg834">
+ <trans-unit id="_msg836">
<source xml:space="preserve">Please check the address and try again.</source>
<context-group purpose="location"><context context-type="linenumber">119</context></context-group>
<context-group purpose="location"><context context-type="linenumber">126</context></context-group>
<context-group purpose="location"><context context-type="linenumber">219</context></context-group>
<context-group purpose="location"><context context-type="linenumber">226</context></context-group>
</trans-unit>
- <trans-unit id="_msg835">
+ <trans-unit id="_msg837">
<source xml:space="preserve">The entered address does not refer to a key.</source>
<context-group purpose="location"><context context-type="linenumber">126</context></context-group>
<context-group purpose="location"><context context-type="linenumber">225</context></context-group>
</trans-unit>
- <trans-unit id="_msg836">
+ <trans-unit id="_msg838">
<source xml:space="preserve">Wallet unlock was cancelled.</source>
<context-group purpose="location"><context context-type="linenumber">134</context></context-group>
</trans-unit>
- <trans-unit id="_msg837">
+ <trans-unit id="_msg839">
<source xml:space="preserve">No error</source>
<context-group purpose="location"><context context-type="linenumber">145</context></context-group>
</trans-unit>
- <trans-unit id="_msg838">
+ <trans-unit id="_msg840">
<source xml:space="preserve">Private key for the entered address is not available.</source>
<context-group purpose="location"><context context-type="linenumber">148</context></context-group>
</trans-unit>
- <trans-unit id="_msg839">
+ <trans-unit id="_msg841">
<source xml:space="preserve">Message signing failed.</source>
<context-group purpose="location"><context context-type="linenumber">151</context></context-group>
</trans-unit>
- <trans-unit id="_msg840">
+ <trans-unit id="_msg842">
<source xml:space="preserve">Message signed.</source>
<context-group purpose="location"><context context-type="linenumber">163</context></context-group>
</trans-unit>
- <trans-unit id="_msg841">
+ <trans-unit id="_msg843">
<source xml:space="preserve">The signature could not be decoded.</source>
<context-group purpose="location"><context context-type="linenumber">232</context></context-group>
</trans-unit>
- <trans-unit id="_msg842">
+ <trans-unit id="_msg844">
<source xml:space="preserve">Please check the signature and try again.</source>
<context-group purpose="location"><context context-type="linenumber">233</context></context-group>
<context-group purpose="location"><context context-type="linenumber">240</context></context-group>
</trans-unit>
- <trans-unit id="_msg843">
+ <trans-unit id="_msg845">
<source xml:space="preserve">The signature did not match the message digest.</source>
<context-group purpose="location"><context context-type="linenumber">239</context></context-group>
</trans-unit>
- <trans-unit id="_msg844">
+ <trans-unit id="_msg846">
<source xml:space="preserve">Message verification failed.</source>
<context-group purpose="location"><context context-type="linenumber">245</context></context-group>
</trans-unit>
- <trans-unit id="_msg845">
+ <trans-unit id="_msg847">
<source xml:space="preserve">Message verified.</source>
<context-group purpose="location"><context context-type="linenumber">213</context></context-group>
</trans-unit>
@@ -3889,11 +3899,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../splashscreen.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="SplashScreen">
- <trans-unit id="_msg846">
+ <trans-unit id="_msg848">
<source xml:space="preserve">(press q to shutdown and continue later)</source>
<context-group purpose="location"><context context-type="linenumber">177</context></context-group>
</trans-unit>
- <trans-unit id="_msg847">
+ <trans-unit id="_msg849">
<source xml:space="preserve">press q to shutdown</source>
<context-group purpose="location"><context context-type="linenumber">178</context></context-group>
</trans-unit>
@@ -3901,7 +3911,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../trafficgraphwidget.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="TrafficGraphWidget">
- <trans-unit id="_msg848">
+ <trans-unit id="_msg850">
<source xml:space="preserve">kB/s</source>
<context-group purpose="location"><context context-type="linenumber">74</context></context-group>
</trans-unit>
@@ -3909,84 +3919,84 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../transactiondesc.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="TransactionDesc">
- <trans-unit id="_msg849">
+ <trans-unit id="_msg851">
<source xml:space="preserve">conflicted with a transaction with %1 confirmations</source>
<context-group purpose="location"><context context-type="linenumber">44</context></context-group>
<note annotates="source" from="developer">Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that conflicts with a confirmed transaction.</note>
</trans-unit>
- <trans-unit id="_msg850">
+ <trans-unit id="_msg852">
<source xml:space="preserve">0/unconfirmed, in memory pool</source>
<context-group purpose="location"><context context-type="linenumber">51</context></context-group>
<note annotates="source" from="developer">Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</note>
</trans-unit>
- <trans-unit id="_msg851">
+ <trans-unit id="_msg853">
<source xml:space="preserve">0/unconfirmed, not in memory pool</source>
<context-group purpose="location"><context context-type="linenumber">56</context></context-group>
<note annotates="source" from="developer">Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</note>
</trans-unit>
- <trans-unit id="_msg852">
+ <trans-unit id="_msg854">
<source xml:space="preserve">abandoned</source>
<context-group purpose="location"><context context-type="linenumber">62</context></context-group>
<note annotates="source" from="developer">Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an abandoned transaction.</note>
</trans-unit>
- <trans-unit id="_msg853">
+ <trans-unit id="_msg855">
<source xml:space="preserve">%1/unconfirmed</source>
<context-group purpose="location"><context context-type="linenumber">70</context></context-group>
<note annotates="source" from="developer">Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in at least one block, but less than 6 blocks.</note>
</trans-unit>
- <trans-unit id="_msg854">
+ <trans-unit id="_msg856">
<source xml:space="preserve">%1 confirmations</source>
<context-group purpose="location"><context context-type="linenumber">75</context></context-group>
<note annotates="source" from="developer">Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in 6 or more blocks.</note>
</trans-unit>
- <trans-unit id="_msg855">
+ <trans-unit id="_msg857">
<source xml:space="preserve">Status</source>
<context-group purpose="location"><context context-type="linenumber">125</context></context-group>
</trans-unit>
- <trans-unit id="_msg856">
+ <trans-unit id="_msg858">
<source xml:space="preserve">Date</source>
<context-group purpose="location"><context context-type="linenumber">128</context></context-group>
</trans-unit>
- <trans-unit id="_msg857">
+ <trans-unit id="_msg859">
<source xml:space="preserve">Source</source>
<context-group purpose="location"><context context-type="linenumber">135</context></context-group>
</trans-unit>
- <trans-unit id="_msg858">
+ <trans-unit id="_msg860">
<source xml:space="preserve">Generated</source>
<context-group purpose="location"><context context-type="linenumber">135</context></context-group>
</trans-unit>
- <trans-unit id="_msg859">
+ <trans-unit id="_msg861">
<source xml:space="preserve">From</source>
<context-group purpose="location"><context context-type="linenumber">140</context></context-group>
<context-group purpose="location"><context context-type="linenumber">154</context></context-group>
<context-group purpose="location"><context context-type="linenumber">226</context></context-group>
</trans-unit>
- <trans-unit id="_msg860">
+ <trans-unit id="_msg862">
<source xml:space="preserve">unknown</source>
<context-group purpose="location"><context context-type="linenumber">154</context></context-group>
</trans-unit>
- <trans-unit id="_msg861">
+ <trans-unit id="_msg863">
<source xml:space="preserve">To</source>
<context-group purpose="location"><context context-type="linenumber">155</context></context-group>
<context-group purpose="location"><context context-type="linenumber">175</context></context-group>
<context-group purpose="location"><context context-type="linenumber">245</context></context-group>
</trans-unit>
- <trans-unit id="_msg862">
+ <trans-unit id="_msg864">
<source xml:space="preserve">own address</source>
<context-group purpose="location"><context context-type="linenumber">157</context></context-group>
<context-group purpose="location"><context context-type="linenumber">252</context></context-group>
</trans-unit>
- <trans-unit id="_msg863">
+ <trans-unit id="_msg865">
<source xml:space="preserve">watch-only</source>
<context-group purpose="location"><context context-type="linenumber">157</context></context-group>
<context-group purpose="location"><context context-type="linenumber">226</context></context-group>
<context-group purpose="location"><context context-type="linenumber">254</context></context-group>
</trans-unit>
- <trans-unit id="_msg864">
+ <trans-unit id="_msg866">
<source xml:space="preserve">label</source>
<context-group purpose="location"><context context-type="linenumber">159</context></context-group>
</trans-unit>
- <trans-unit id="_msg865">
+ <trans-unit id="_msg867">
<source xml:space="preserve">Credit</source>
<context-group purpose="location"><context context-type="linenumber">195</context></context-group>
<context-group purpose="location"><context context-type="linenumber">207</context></context-group>
@@ -3996,107 +4006,107 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</trans-unit>
<group restype="x-gettext-plurals">
<context-group purpose="location"><context context-type="linenumber">197</context></context-group>
- <trans-unit id="_msg866[0]">
+ <trans-unit id="_msg868[0]">
<source xml:space="preserve">matures in %n more block(s)</source>
</trans-unit>
- <trans-unit id="_msg866[1]">
+ <trans-unit id="_msg868[1]">
<source xml:space="preserve">matures in %n more block(s)</source>
</trans-unit>
</group>
- <trans-unit id="_msg867">
+ <trans-unit id="_msg869">
<source xml:space="preserve">not accepted</source>
<context-group purpose="location"><context context-type="linenumber">199</context></context-group>
</trans-unit>
- <trans-unit id="_msg868">
+ <trans-unit id="_msg870">
<source xml:space="preserve">Debit</source>
<context-group purpose="location"><context context-type="linenumber">259</context></context-group>
<context-group purpose="location"><context context-type="linenumber">285</context></context-group>
<context-group purpose="location"><context context-type="linenumber">348</context></context-group>
</trans-unit>
- <trans-unit id="_msg869">
+ <trans-unit id="_msg871">
<source xml:space="preserve">Total debit</source>
<context-group purpose="location"><context context-type="linenumber">269</context></context-group>
</trans-unit>
- <trans-unit id="_msg870">
+ <trans-unit id="_msg872">
<source xml:space="preserve">Total credit</source>
<context-group purpose="location"><context context-type="linenumber">270</context></context-group>
</trans-unit>
- <trans-unit id="_msg871">
+ <trans-unit id="_msg873">
<source xml:space="preserve">Transaction fee</source>
<context-group purpose="location"><context context-type="linenumber">275</context></context-group>
</trans-unit>
- <trans-unit id="_msg872">
+ <trans-unit id="_msg874">
<source xml:space="preserve">Net amount</source>
<context-group purpose="location"><context context-type="linenumber">297</context></context-group>
</trans-unit>
- <trans-unit id="_msg873">
+ <trans-unit id="_msg875">
<source xml:space="preserve">Message</source>
<context-group purpose="location"><context context-type="linenumber">303</context></context-group>
<context-group purpose="location"><context context-type="linenumber">315</context></context-group>
</trans-unit>
- <trans-unit id="_msg874">
+ <trans-unit id="_msg876">
<source xml:space="preserve">Comment</source>
<context-group purpose="location"><context context-type="linenumber">305</context></context-group>
</trans-unit>
- <trans-unit id="_msg875">
+ <trans-unit id="_msg877">
<source xml:space="preserve">Transaction ID</source>
<context-group purpose="location"><context context-type="linenumber">307</context></context-group>
</trans-unit>
- <trans-unit id="_msg876">
+ <trans-unit id="_msg878">
<source xml:space="preserve">Transaction total size</source>
<context-group purpose="location"><context context-type="linenumber">308</context></context-group>
</trans-unit>
- <trans-unit id="_msg877">
+ <trans-unit id="_msg879">
<source xml:space="preserve">Transaction virtual size</source>
<context-group purpose="location"><context context-type="linenumber">309</context></context-group>
</trans-unit>
- <trans-unit id="_msg878">
+ <trans-unit id="_msg880">
<source xml:space="preserve">Output index</source>
<context-group purpose="location"><context context-type="linenumber">310</context></context-group>
</trans-unit>
- <trans-unit id="_msg879">
- <source xml:space="preserve"> (Certificate was not verified)</source>
+ <trans-unit id="_msg881">
+ <source xml:space="preserve">%1 (Certificate was not verified)</source>
<context-group purpose="location"><context context-type="linenumber">326</context></context-group>
</trans-unit>
- <trans-unit id="_msg880">
+ <trans-unit id="_msg882">
<source xml:space="preserve">Merchant</source>
<context-group purpose="location"><context context-type="linenumber">329</context></context-group>
</trans-unit>
- <trans-unit id="_msg881">
+ <trans-unit id="_msg883">
<source xml:space="preserve">Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to &quot;not accepted&quot; and it won&apos;t be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source>
<context-group purpose="location"><context context-type="linenumber">337</context></context-group>
</trans-unit>
- <trans-unit id="_msg882">
+ <trans-unit id="_msg884">
<source xml:space="preserve">Debug information</source>
<context-group purpose="location"><context context-type="linenumber">345</context></context-group>
</trans-unit>
- <trans-unit id="_msg883">
+ <trans-unit id="_msg885">
<source xml:space="preserve">Transaction</source>
<context-group purpose="location"><context context-type="linenumber">353</context></context-group>
</trans-unit>
- <trans-unit id="_msg884">
+ <trans-unit id="_msg886">
<source xml:space="preserve">Inputs</source>
<context-group purpose="location"><context context-type="linenumber">356</context></context-group>
</trans-unit>
- <trans-unit id="_msg885">
+ <trans-unit id="_msg887">
<source xml:space="preserve">Amount</source>
- <context-group purpose="location"><context context-type="linenumber">377</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">375</context></context-group>
</trans-unit>
- <trans-unit id="_msg886">
+ <trans-unit id="_msg888">
<source xml:space="preserve">true</source>
- <context-group purpose="location"><context context-type="linenumber">378</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">379</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">376</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">377</context></context-group>
</trans-unit>
- <trans-unit id="_msg887">
+ <trans-unit id="_msg889">
<source xml:space="preserve">false</source>
- <context-group purpose="location"><context context-type="linenumber">378</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">379</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">376</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">377</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../forms/transactiondescdialog.ui" datatype="x-trolltech-designer-ui" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="TransactionDescDialog">
- <trans-unit id="_msg888">
+ <trans-unit id="_msg890">
<source xml:space="preserve">This pane shows a detailed description of the transaction</source>
<context-group purpose="location"><context context-type="linenumber">20</context></context-group>
</trans-unit>
@@ -4104,7 +4114,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../transactiondescdialog.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="TransactionDescDialog">
- <trans-unit id="_msg889">
+ <trans-unit id="_msg891">
<source xml:space="preserve">Details for %1</source>
<context-group purpose="location"><context context-type="linenumber">18</context></context-group>
</trans-unit>
@@ -4112,95 +4122,95 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../transactiontablemodel.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="TransactionTableModel">
- <trans-unit id="_msg890">
+ <trans-unit id="_msg892">
<source xml:space="preserve">Date</source>
<context-group purpose="location"><context context-type="linenumber">258</context></context-group>
</trans-unit>
- <trans-unit id="_msg891">
+ <trans-unit id="_msg893">
<source xml:space="preserve">Type</source>
<context-group purpose="location"><context context-type="linenumber">258</context></context-group>
</trans-unit>
- <trans-unit id="_msg892">
+ <trans-unit id="_msg894">
<source xml:space="preserve">Label</source>
<context-group purpose="location"><context context-type="linenumber">258</context></context-group>
</trans-unit>
- <trans-unit id="_msg893">
+ <trans-unit id="_msg895">
<source xml:space="preserve">Unconfirmed</source>
<context-group purpose="location"><context context-type="linenumber">318</context></context-group>
</trans-unit>
- <trans-unit id="_msg894">
+ <trans-unit id="_msg896">
<source xml:space="preserve">Abandoned</source>
<context-group purpose="location"><context context-type="linenumber">321</context></context-group>
</trans-unit>
- <trans-unit id="_msg895">
+ <trans-unit id="_msg897">
<source xml:space="preserve">Confirming (%1 of %2 recommended confirmations)</source>
<context-group purpose="location"><context context-type="linenumber">324</context></context-group>
</trans-unit>
- <trans-unit id="_msg896">
+ <trans-unit id="_msg898">
<source xml:space="preserve">Confirmed (%1 confirmations)</source>
<context-group purpose="location"><context context-type="linenumber">327</context></context-group>
</trans-unit>
- <trans-unit id="_msg897">
+ <trans-unit id="_msg899">
<source xml:space="preserve">Conflicted</source>
<context-group purpose="location"><context context-type="linenumber">330</context></context-group>
</trans-unit>
- <trans-unit id="_msg898">
+ <trans-unit id="_msg900">
<source xml:space="preserve">Immature (%1 confirmations, will be available after %2)</source>
<context-group purpose="location"><context context-type="linenumber">333</context></context-group>
</trans-unit>
- <trans-unit id="_msg899">
+ <trans-unit id="_msg901">
<source xml:space="preserve">Generated but not accepted</source>
<context-group purpose="location"><context context-type="linenumber">336</context></context-group>
</trans-unit>
- <trans-unit id="_msg900">
+ <trans-unit id="_msg902">
<source xml:space="preserve">Received with</source>
<context-group purpose="location"><context context-type="linenumber">375</context></context-group>
</trans-unit>
- <trans-unit id="_msg901">
+ <trans-unit id="_msg903">
<source xml:space="preserve">Received from</source>
<context-group purpose="location"><context context-type="linenumber">377</context></context-group>
</trans-unit>
- <trans-unit id="_msg902">
+ <trans-unit id="_msg904">
<source xml:space="preserve">Sent to</source>
<context-group purpose="location"><context context-type="linenumber">380</context></context-group>
</trans-unit>
- <trans-unit id="_msg903">
+ <trans-unit id="_msg905">
<source xml:space="preserve">Mined</source>
<context-group purpose="location"><context context-type="linenumber">382</context></context-group>
</trans-unit>
- <trans-unit id="_msg904">
+ <trans-unit id="_msg906">
<source xml:space="preserve">watch-only</source>
<context-group purpose="location"><context context-type="linenumber">410</context></context-group>
</trans-unit>
- <trans-unit id="_msg905">
+ <trans-unit id="_msg907">
<source xml:space="preserve">(n/a)</source>
<context-group purpose="location"><context context-type="linenumber">424</context></context-group>
</trans-unit>
- <trans-unit id="_msg906">
+ <trans-unit id="_msg908">
<source xml:space="preserve">(no label)</source>
<context-group purpose="location"><context context-type="linenumber">629</context></context-group>
</trans-unit>
- <trans-unit id="_msg907">
+ <trans-unit id="_msg909">
<source xml:space="preserve">Transaction status. Hover over this field to show number of confirmations.</source>
<context-group purpose="location"><context context-type="linenumber">668</context></context-group>
</trans-unit>
- <trans-unit id="_msg908">
+ <trans-unit id="_msg910">
<source xml:space="preserve">Date and time that the transaction was received.</source>
<context-group purpose="location"><context context-type="linenumber">670</context></context-group>
</trans-unit>
- <trans-unit id="_msg909">
+ <trans-unit id="_msg911">
<source xml:space="preserve">Type of transaction.</source>
<context-group purpose="location"><context context-type="linenumber">672</context></context-group>
</trans-unit>
- <trans-unit id="_msg910">
+ <trans-unit id="_msg912">
<source xml:space="preserve">Whether or not a watch-only address is involved in this transaction.</source>
<context-group purpose="location"><context context-type="linenumber">674</context></context-group>
</trans-unit>
- <trans-unit id="_msg911">
+ <trans-unit id="_msg913">
<source xml:space="preserve">User-defined intent/purpose of the transaction.</source>
<context-group purpose="location"><context context-type="linenumber">676</context></context-group>
</trans-unit>
- <trans-unit id="_msg912">
+ <trans-unit id="_msg914">
<source xml:space="preserve">Amount removed from or added to balance.</source>
<context-group purpose="location"><context context-type="linenumber">678</context></context-group>
</trans-unit>
@@ -4208,202 +4218,202 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of &quot;100
</body></file>
<file original="../transactionview.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="TransactionView">
- <trans-unit id="_msg913">
+ <trans-unit id="_msg915">
<source xml:space="preserve">All</source>
<context-group purpose="location"><context context-type="linenumber">73</context></context-group>
<context-group purpose="location"><context context-type="linenumber">89</context></context-group>
</trans-unit>
- <trans-unit id="_msg914">
+ <trans-unit id="_msg916">
<source xml:space="preserve">Today</source>
<context-group purpose="location"><context context-type="linenumber">74</context></context-group>
</trans-unit>
- <trans-unit id="_msg915">
+ <trans-unit id="_msg917">
<source xml:space="preserve">This week</source>
<context-group purpose="location"><context context-type="linenumber">75</context></context-group>
</trans-unit>
- <trans-unit id="_msg916">
+ <trans-unit id="_msg918">
<source xml:space="preserve">This month</source>
<context-group purpose="location"><context context-type="linenumber">76</context></context-group>
</trans-unit>
- <trans-unit id="_msg917">
+ <trans-unit id="_msg919">
<source xml:space="preserve">Last month</source>
<context-group purpose="location"><context context-type="linenumber">77</context></context-group>
</trans-unit>
- <trans-unit id="_msg918">
+ <trans-unit id="_msg920">
<source xml:space="preserve">This year</source>
<context-group purpose="location"><context context-type="linenumber">78</context></context-group>
</trans-unit>
- <trans-unit id="_msg919">
+ <trans-unit id="_msg921">
<source xml:space="preserve">Received with</source>
<context-group purpose="location"><context context-type="linenumber">90</context></context-group>
</trans-unit>
- <trans-unit id="_msg920">
+ <trans-unit id="_msg922">
<source xml:space="preserve">Sent to</source>
<context-group purpose="location"><context context-type="linenumber">92</context></context-group>
</trans-unit>
- <trans-unit id="_msg921">
+ <trans-unit id="_msg923">
<source xml:space="preserve">Mined</source>
<context-group purpose="location"><context context-type="linenumber">94</context></context-group>
</trans-unit>
- <trans-unit id="_msg922">
+ <trans-unit id="_msg924">
<source xml:space="preserve">Other</source>
<context-group purpose="location"><context context-type="linenumber">95</context></context-group>
</trans-unit>
- <trans-unit id="_msg923">
+ <trans-unit id="_msg925">
<source xml:space="preserve">Enter address, transaction id, or label to search</source>
<context-group purpose="location"><context context-type="linenumber">100</context></context-group>
</trans-unit>
- <trans-unit id="_msg924">
+ <trans-unit id="_msg926">
<source xml:space="preserve">Min amount</source>
<context-group purpose="location"><context context-type="linenumber">104</context></context-group>
</trans-unit>
- <trans-unit id="_msg925">
+ <trans-unit id="_msg927">
<source xml:space="preserve">Range…</source>
<context-group purpose="location"><context context-type="linenumber">79</context></context-group>
</trans-unit>
- <trans-unit id="_msg926">
+ <trans-unit id="_msg928">
<source xml:space="preserve">&amp;Copy address</source>
<context-group purpose="location"><context context-type="linenumber">168</context></context-group>
</trans-unit>
- <trans-unit id="_msg927">
+ <trans-unit id="_msg929">
<source xml:space="preserve">Copy &amp;label</source>
<context-group purpose="location"><context context-type="linenumber">169</context></context-group>
</trans-unit>
- <trans-unit id="_msg928">
+ <trans-unit id="_msg930">
<source xml:space="preserve">Copy &amp;amount</source>
<context-group purpose="location"><context context-type="linenumber">170</context></context-group>
</trans-unit>
- <trans-unit id="_msg929">
+ <trans-unit id="_msg931">
<source xml:space="preserve">Copy transaction &amp;ID</source>
<context-group purpose="location"><context context-type="linenumber">171</context></context-group>
</trans-unit>
- <trans-unit id="_msg930">
+ <trans-unit id="_msg932">
<source xml:space="preserve">Copy &amp;raw transaction</source>
<context-group purpose="location"><context context-type="linenumber">172</context></context-group>
</trans-unit>
- <trans-unit id="_msg931">
+ <trans-unit id="_msg933">
<source xml:space="preserve">Copy full transaction &amp;details</source>
<context-group purpose="location"><context context-type="linenumber">173</context></context-group>
</trans-unit>
- <trans-unit id="_msg932">
+ <trans-unit id="_msg934">
<source xml:space="preserve">&amp;Show transaction details</source>
<context-group purpose="location"><context context-type="linenumber">174</context></context-group>
</trans-unit>
- <trans-unit id="_msg933">
+ <trans-unit id="_msg935">
<source xml:space="preserve">Increase transaction &amp;fee</source>
<context-group purpose="location"><context context-type="linenumber">176</context></context-group>
</trans-unit>
- <trans-unit id="_msg934">
+ <trans-unit id="_msg936">
<source xml:space="preserve">A&amp;bandon transaction</source>
<context-group purpose="location"><context context-type="linenumber">179</context></context-group>
</trans-unit>
- <trans-unit id="_msg935">
+ <trans-unit id="_msg937">
<source xml:space="preserve">&amp;Edit address label</source>
<context-group purpose="location"><context context-type="linenumber">180</context></context-group>
</trans-unit>
- <trans-unit id="_msg936">
+ <trans-unit id="_msg938">
<source xml:space="preserve">Show in %1</source>
<context-group purpose="location"><context context-type="linenumber">239</context></context-group>
<note annotates="source" from="developer">Transactions table context menu action to show the selected transaction in a third-party block explorer. %1 is a stand-in argument for the URL of the explorer.</note>
</trans-unit>
- <trans-unit id="_msg937">
+ <trans-unit id="_msg939">
<source xml:space="preserve">Export Transaction History</source>
<context-group purpose="location"><context context-type="linenumber">358</context></context-group>
</trans-unit>
- <trans-unit id="_msg938">
+ <trans-unit id="_msg940">
<source xml:space="preserve">Comma separated file</source>
<context-group purpose="location"><context context-type="linenumber">361</context></context-group>
<note annotates="source" from="developer">Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</note>
</trans-unit>
- <trans-unit id="_msg939">
+ <trans-unit id="_msg941">
<source xml:space="preserve">Confirmed</source>
<context-group purpose="location"><context context-type="linenumber">370</context></context-group>
</trans-unit>
- <trans-unit id="_msg940">
+ <trans-unit id="_msg942">
<source xml:space="preserve">Watch-only</source>
<context-group purpose="location"><context context-type="linenumber">372</context></context-group>
</trans-unit>
- <trans-unit id="_msg941">
+ <trans-unit id="_msg943">
<source xml:space="preserve">Date</source>
<context-group purpose="location"><context context-type="linenumber">373</context></context-group>
</trans-unit>
- <trans-unit id="_msg942">
+ <trans-unit id="_msg944">
<source xml:space="preserve">Type</source>
<context-group purpose="location"><context context-type="linenumber">374</context></context-group>
</trans-unit>
- <trans-unit id="_msg943">
+ <trans-unit id="_msg945">
<source xml:space="preserve">Label</source>
<context-group purpose="location"><context context-type="linenumber">375</context></context-group>
</trans-unit>
- <trans-unit id="_msg944">
+ <trans-unit id="_msg946">
<source xml:space="preserve">Address</source>
<context-group purpose="location"><context context-type="linenumber">376</context></context-group>
</trans-unit>
- <trans-unit id="_msg945">
+ <trans-unit id="_msg947">
<source xml:space="preserve">ID</source>
<context-group purpose="location"><context context-type="linenumber">378</context></context-group>
</trans-unit>
- <trans-unit id="_msg946">
+ <trans-unit id="_msg948">
<source xml:space="preserve">Exporting Failed</source>
<context-group purpose="location"><context context-type="linenumber">381</context></context-group>
</trans-unit>
- <trans-unit id="_msg947">
+ <trans-unit id="_msg949">
<source xml:space="preserve">There was an error trying to save the transaction history to %1.</source>
<context-group purpose="location"><context context-type="linenumber">381</context></context-group>
</trans-unit>
- <trans-unit id="_msg948">
+ <trans-unit id="_msg950">
<source xml:space="preserve">Exporting Successful</source>
<context-group purpose="location"><context context-type="linenumber">385</context></context-group>
</trans-unit>
- <trans-unit id="_msg949">
+ <trans-unit id="_msg951">
<source xml:space="preserve">The transaction history was successfully saved to %1.</source>
<context-group purpose="location"><context context-type="linenumber">385</context></context-group>
</trans-unit>
- <trans-unit id="_msg950">
+ <trans-unit id="_msg952">
<source xml:space="preserve">Range:</source>
- <context-group purpose="location"><context context-type="linenumber">555</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">558</context></context-group>
</trans-unit>
- <trans-unit id="_msg951">
+ <trans-unit id="_msg953">
<source xml:space="preserve">to</source>
- <context-group purpose="location"><context context-type="linenumber">563</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">566</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../walletframe.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="WalletFrame">
- <trans-unit id="_msg952">
+ <trans-unit id="_msg954">
<source xml:space="preserve">No wallet has been loaded.
Go to File &gt; Open Wallet to load a wallet.
- OR -</source>
<context-group purpose="location"><context context-type="linenumber">45</context></context-group>
</trans-unit>
- <trans-unit id="_msg953">
+ <trans-unit id="_msg955">
<source xml:space="preserve">Create a new wallet</source>
<context-group purpose="location"><context context-type="linenumber">50</context></context-group>
</trans-unit>
- <trans-unit id="_msg954">
+ <trans-unit id="_msg956">
<source xml:space="preserve">Error</source>
<context-group purpose="location"><context context-type="linenumber">201</context></context-group>
<context-group purpose="location"><context context-type="linenumber">211</context></context-group>
<context-group purpose="location"><context context-type="linenumber">229</context></context-group>
</trans-unit>
- <trans-unit id="_msg955">
+ <trans-unit id="_msg957">
<source xml:space="preserve">Unable to decode PSBT from clipboard (invalid base64)</source>
<context-group purpose="location"><context context-type="linenumber">201</context></context-group>
</trans-unit>
- <trans-unit id="_msg956">
+ <trans-unit id="_msg958">
<source xml:space="preserve">Load Transaction Data</source>
<context-group purpose="location"><context context-type="linenumber">207</context></context-group>
</trans-unit>
- <trans-unit id="_msg957">
+ <trans-unit id="_msg959">
<source xml:space="preserve">Partially Signed Transaction (*.psbt)</source>
<context-group purpose="location"><context context-type="linenumber">208</context></context-group>
</trans-unit>
- <trans-unit id="_msg958">
+ <trans-unit id="_msg960">
<source xml:space="preserve">PSBT file must be smaller than 100 MiB</source>
<context-group purpose="location"><context context-type="linenumber">211</context></context-group>
</trans-unit>
- <trans-unit id="_msg959">
+ <trans-unit id="_msg961">
<source xml:space="preserve">Unable to decode PSBT</source>
<context-group purpose="location"><context context-type="linenumber">229</context></context-group>
</trans-unit>
@@ -4411,114 +4421,114 @@ Go to File &gt; Open Wallet to load a wallet.
</body></file>
<file original="../walletmodel.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="WalletModel">
- <trans-unit id="_msg960">
+ <trans-unit id="_msg962">
<source xml:space="preserve">Send Coins</source>
- <context-group purpose="location"><context context-type="linenumber">228</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">241</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">227</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">240</context></context-group>
</trans-unit>
- <trans-unit id="_msg961">
+ <trans-unit id="_msg963">
<source xml:space="preserve">Fee bump error</source>
- <context-group purpose="location"><context context-type="linenumber">488</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">543</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">558</context></context-group>
- <context-group purpose="location"><context context-type="linenumber">563</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">494</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">549</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">564</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">569</context></context-group>
</trans-unit>
- <trans-unit id="_msg962">
+ <trans-unit id="_msg964">
<source xml:space="preserve">Increasing transaction fee failed</source>
- <context-group purpose="location"><context context-type="linenumber">488</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">494</context></context-group>
</trans-unit>
- <trans-unit id="_msg963">
+ <trans-unit id="_msg965">
<source xml:space="preserve">Do you want to increase the fee?</source>
- <context-group purpose="location"><context context-type="linenumber">495</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">501</context></context-group>
<note annotates="source" from="developer">Asks a user if they would like to manually increase the fee of a transaction that has already been created.</note>
</trans-unit>
- <trans-unit id="_msg964">
+ <trans-unit id="_msg966">
<source xml:space="preserve">Current fee:</source>
- <context-group purpose="location"><context context-type="linenumber">499</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">505</context></context-group>
</trans-unit>
- <trans-unit id="_msg965">
+ <trans-unit id="_msg967">
<source xml:space="preserve">Increase:</source>
- <context-group purpose="location"><context context-type="linenumber">503</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">509</context></context-group>
</trans-unit>
- <trans-unit id="_msg966">
+ <trans-unit id="_msg968">
<source xml:space="preserve">New fee:</source>
- <context-group purpose="location"><context context-type="linenumber">507</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">513</context></context-group>
</trans-unit>
- <trans-unit id="_msg967">
+ <trans-unit id="_msg969">
<source xml:space="preserve">Warning: This may pay the additional fee by reducing change outputs or adding inputs, when necessary. It may add a new change output if one does not already exist. These changes may potentially leak privacy.</source>
- <context-group purpose="location"><context context-type="linenumber">515</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">521</context></context-group>
</trans-unit>
- <trans-unit id="_msg968">
+ <trans-unit id="_msg970">
<source xml:space="preserve">Confirm fee bump</source>
- <context-group purpose="location"><context context-type="linenumber">520</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">526</context></context-group>
</trans-unit>
- <trans-unit id="_msg969">
+ <trans-unit id="_msg971">
<source xml:space="preserve">Can&apos;t draft transaction.</source>
- <context-group purpose="location"><context context-type="linenumber">543</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">549</context></context-group>
</trans-unit>
- <trans-unit id="_msg970">
+ <trans-unit id="_msg972">
<source xml:space="preserve">PSBT copied</source>
- <context-group purpose="location"><context context-type="linenumber">550</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">556</context></context-group>
</trans-unit>
- <trans-unit id="_msg971">
+ <trans-unit id="_msg973">
<source xml:space="preserve">Copied to clipboard</source>
- <context-group purpose="location"><context context-type="linenumber">550</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">556</context></context-group>
<context-group><context context-type="x-gettext-msgctxt">Fee-bump PSBT saved</context></context-group>
</trans-unit>
- <trans-unit id="_msg972">
+ <trans-unit id="_msg974">
<source xml:space="preserve">Can&apos;t sign transaction.</source>
- <context-group purpose="location"><context context-type="linenumber">558</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">564</context></context-group>
</trans-unit>
- <trans-unit id="_msg973">
+ <trans-unit id="_msg975">
<source xml:space="preserve">Could not commit transaction</source>
- <context-group purpose="location"><context context-type="linenumber">563</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">569</context></context-group>
</trans-unit>
- <trans-unit id="_msg974">
+ <trans-unit id="_msg976">
<source xml:space="preserve">Can&apos;t display address</source>
- <context-group purpose="location"><context context-type="linenumber">577</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">583</context></context-group>
</trans-unit>
- <trans-unit id="_msg975">
+ <trans-unit id="_msg977">
<source xml:space="preserve">default wallet</source>
- <context-group purpose="location"><context context-type="linenumber">595</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">601</context></context-group>
</trans-unit>
</group>
</body></file>
<file original="../walletview.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="WalletView">
- <trans-unit id="_msg976">
+ <trans-unit id="_msg978">
<source xml:space="preserve">&amp;Export</source>
<context-group purpose="location"><context context-type="linenumber">50</context></context-group>
</trans-unit>
- <trans-unit id="_msg977">
+ <trans-unit id="_msg979">
<source xml:space="preserve">Export the data in the current tab to a file</source>
<context-group purpose="location"><context context-type="linenumber">51</context></context-group>
</trans-unit>
- <trans-unit id="_msg978">
+ <trans-unit id="_msg980">
<source xml:space="preserve">Backup Wallet</source>
<context-group purpose="location"><context context-type="linenumber">214</context></context-group>
</trans-unit>
- <trans-unit id="_msg979">
+ <trans-unit id="_msg981">
<source xml:space="preserve">Wallet Data</source>
<context-group purpose="location"><context context-type="linenumber">216</context></context-group>
<note annotates="source" from="developer">Name of the wallet data file format.</note>
</trans-unit>
- <trans-unit id="_msg980">
+ <trans-unit id="_msg982">
<source xml:space="preserve">Backup Failed</source>
<context-group purpose="location"><context context-type="linenumber">222</context></context-group>
</trans-unit>
- <trans-unit id="_msg981">
+ <trans-unit id="_msg983">
<source xml:space="preserve">There was an error trying to save the wallet data to %1.</source>
<context-group purpose="location"><context context-type="linenumber">222</context></context-group>
</trans-unit>
- <trans-unit id="_msg982">
+ <trans-unit id="_msg984">
<source xml:space="preserve">Backup Successful</source>
<context-group purpose="location"><context context-type="linenumber">226</context></context-group>
</trans-unit>
- <trans-unit id="_msg983">
+ <trans-unit id="_msg985">
<source xml:space="preserve">The wallet data was successfully saved to %1.</source>
<context-group purpose="location"><context context-type="linenumber">226</context></context-group>
</trans-unit>
- <trans-unit id="_msg984">
+ <trans-unit id="_msg986">
<source xml:space="preserve">Cancel</source>
<context-group purpose="location"><context context-type="linenumber">263</context></context-group>
</trans-unit>
@@ -4526,318 +4536,318 @@ Go to File &gt; Open Wallet to load a wallet.
</body></file>
<file original="../bitcoinstrings.cpp" datatype="cpp" source-language="en"><body>
<group restype="x-trolltech-linguist-context" resname="bitcoin-core">
- <trans-unit id="_msg985">
+ <trans-unit id="_msg987">
<source xml:space="preserve">The %s developers</source>
<context-group purpose="location"><context context-type="linenumber">12</context></context-group>
</trans-unit>
- <trans-unit id="_msg986">
+ <trans-unit id="_msg988">
<source xml:space="preserve">%s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup.</source>
<context-group purpose="location"><context context-type="linenumber">13</context></context-group>
</trans-unit>
- <trans-unit id="_msg987">
+ <trans-unit id="_msg989">
<source xml:space="preserve">%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
<context-group purpose="location"><context context-type="linenumber">16</context></context-group>
</trans-unit>
- <trans-unit id="_msg988">
+ <trans-unit id="_msg990">
<source xml:space="preserve">%s request to listen on port %u. This port is considered &quot;bad&quot; and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<context-group purpose="location"><context context-type="linenumber">28</context></context-group>
</trans-unit>
- <trans-unit id="_msg989">
+ <trans-unit id="_msg991">
<source xml:space="preserve">Cannot downgrade wallet from version %i to version %i. Wallet version unchanged.</source>
<context-group purpose="location"><context context-type="linenumber">32</context></context-group>
</trans-unit>
- <trans-unit id="_msg990">
+ <trans-unit id="_msg992">
<source xml:space="preserve">Cannot obtain a lock on data directory %s. %s is probably already running.</source>
<context-group purpose="location"><context context-type="linenumber">35</context></context-group>
</trans-unit>
- <trans-unit id="_msg991">
+ <trans-unit id="_msg993">
<source xml:space="preserve">Cannot upgrade a non HD split wallet from version %i to version %i without upgrading to support pre-split keypool. Please use version %i or no version specified.</source>
<context-group purpose="location"><context context-type="linenumber">40</context></context-group>
</trans-unit>
- <trans-unit id="_msg992">
+ <trans-unit id="_msg994">
<source xml:space="preserve">Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
<context-group purpose="location"><context context-type="linenumber">44</context></context-group>
</trans-unit>
- <trans-unit id="_msg993">
+ <trans-unit id="_msg995">
<source xml:space="preserve">Distributed under the MIT software license, see the accompanying file %s or %s</source>
<context-group purpose="location"><context context-type="linenumber">47</context></context-group>
</trans-unit>
- <trans-unit id="_msg994">
+ <trans-unit id="_msg996">
<source xml:space="preserve">Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
<context-group purpose="location"><context context-type="linenumber">53</context></context-group>
</trans-unit>
- <trans-unit id="_msg995">
+ <trans-unit id="_msg997">
<source xml:space="preserve">Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<context-group purpose="location"><context context-type="linenumber">61</context></context-group>
</trans-unit>
- <trans-unit id="_msg996">
+ <trans-unit id="_msg998">
<source xml:space="preserve">Error: Dumpfile format record is incorrect. Got &quot;%s&quot;, expected &quot;format&quot;.</source>
<context-group purpose="location"><context context-type="linenumber">67</context></context-group>
</trans-unit>
- <trans-unit id="_msg997">
+ <trans-unit id="_msg999">
<source xml:space="preserve">Error: Dumpfile identifier record is incorrect. Got &quot;%s&quot;, expected &quot;%s&quot;.</source>
<context-group purpose="location"><context context-type="linenumber">69</context></context-group>
</trans-unit>
- <trans-unit id="_msg998">
+ <trans-unit id="_msg1000">
<source xml:space="preserve">Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
<context-group purpose="location"><context context-type="linenumber">71</context></context-group>
</trans-unit>
- <trans-unit id="_msg999">
+ <trans-unit id="_msg1001">
<source xml:space="preserve">Error: Legacy wallets only support the &quot;legacy&quot;, &quot;p2sh-segwit&quot;, and &quot;bech32&quot; address types</source>
<context-group purpose="location"><context context-type="linenumber">77</context></context-group>
</trans-unit>
- <trans-unit id="_msg1000">
+ <trans-unit id="_msg1002">
<source xml:space="preserve">Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet&apos;s passphrase if it is encrypted.</source>
<context-group purpose="location"><context context-type="linenumber">83</context></context-group>
</trans-unit>
- <trans-unit id="_msg1001">
+ <trans-unit id="_msg1003">
<source xml:space="preserve">File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
<context-group purpose="location"><context context-type="linenumber">95</context></context-group>
</trans-unit>
- <trans-unit id="_msg1002">
+ <trans-unit id="_msg1004">
<source xml:space="preserve">Invalid or corrupt peers.dat (%s). If you believe this is a bug, please report it to %s. As a workaround, you can move the file (%s) out of the way (rename, move, or delete) to have a new one created on the next start.</source>
<context-group purpose="location"><context context-type="linenumber">104</context></context-group>
</trans-unit>
- <trans-unit id="_msg1003">
+ <trans-unit id="_msg1005">
<source xml:space="preserve">More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
<context-group purpose="location"><context context-type="linenumber">108</context></context-group>
</trans-unit>
- <trans-unit id="_msg1004">
+ <trans-unit id="_msg1006">
<source xml:space="preserve">No dump file provided. To use createfromdump, -dumpfile=&lt;filename&gt; must be provided.</source>
<context-group purpose="location"><context context-type="linenumber">111</context></context-group>
</trans-unit>
- <trans-unit id="_msg1005">
+ <trans-unit id="_msg1007">
<source xml:space="preserve">No dump file provided. To use dump, -dumpfile=&lt;filename&gt; must be provided.</source>
<context-group purpose="location"><context context-type="linenumber">114</context></context-group>
</trans-unit>
- <trans-unit id="_msg1006">
+ <trans-unit id="_msg1008">
<source xml:space="preserve">No wallet file format provided. To use createfromdump, -format=&lt;format&gt; must be provided.</source>
<context-group purpose="location"><context context-type="linenumber">116</context></context-group>
</trans-unit>
- <trans-unit id="_msg1007">
+ <trans-unit id="_msg1009">
<source xml:space="preserve">Please check that your computer&apos;s date and time are correct! If your clock is wrong, %s will not work properly.</source>
<context-group purpose="location"><context context-type="linenumber">132</context></context-group>
</trans-unit>
- <trans-unit id="_msg1008">
+ <trans-unit id="_msg1010">
<source xml:space="preserve">Please contribute if you find %s useful. Visit %s for further information about the software.</source>
<context-group purpose="location"><context context-type="linenumber">135</context></context-group>
</trans-unit>
- <trans-unit id="_msg1009">
+ <trans-unit id="_msg1011">
<source xml:space="preserve">Prune configured below the minimum of %d MiB. Please use a higher number.</source>
<context-group purpose="location"><context context-type="linenumber">138</context></context-group>
</trans-unit>
- <trans-unit id="_msg1010">
+ <trans-unit id="_msg1012">
<source xml:space="preserve">Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
<context-group purpose="location"><context context-type="linenumber">140</context></context-group>
</trans-unit>
- <trans-unit id="_msg1011">
+ <trans-unit id="_msg1013">
<source xml:space="preserve">Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
<context-group purpose="location"><context context-type="linenumber">143</context></context-group>
</trans-unit>
- <trans-unit id="_msg1012">
+ <trans-unit id="_msg1014">
<source xml:space="preserve">Rename of &apos;%s&apos; -&gt; &apos;%s&apos; failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
<context-group purpose="location"><context context-type="linenumber">146</context></context-group>
</trans-unit>
- <trans-unit id="_msg1013">
+ <trans-unit id="_msg1015">
<source xml:space="preserve">SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<context-group purpose="location"><context context-type="linenumber">150</context></context-group>
</trans-unit>
- <trans-unit id="_msg1014">
+ <trans-unit id="_msg1016">
<source xml:space="preserve">The block database contains a block which appears to be from the future. This may be due to your computer&apos;s date and time being set incorrectly. Only rebuild the block database if you are sure that your computer&apos;s date and time are correct</source>
<context-group purpose="location"><context context-type="linenumber">153</context></context-group>
</trans-unit>
- <trans-unit id="_msg1015">
+ <trans-unit id="_msg1017">
<source xml:space="preserve">The transaction amount is too small to send after the fee has been deducted</source>
<context-group purpose="location"><context context-type="linenumber">165</context></context-group>
</trans-unit>
- <trans-unit id="_msg1016">
+ <trans-unit id="_msg1018">
<source xml:space="preserve">This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet</source>
<context-group purpose="location"><context context-type="linenumber">167</context></context-group>
</trans-unit>
- <trans-unit id="_msg1017">
+ <trans-unit id="_msg1019">
<source xml:space="preserve">This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source>
<context-group purpose="location"><context context-type="linenumber">171</context></context-group>
</trans-unit>
- <trans-unit id="_msg1018">
+ <trans-unit id="_msg1020">
<source xml:space="preserve">This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection.</source>
<context-group purpose="location"><context context-type="linenumber">174</context></context-group>
</trans-unit>
- <trans-unit id="_msg1019">
+ <trans-unit id="_msg1021">
<source xml:space="preserve">This is the transaction fee you may discard if change is smaller than dust at this level</source>
<context-group purpose="location"><context context-type="linenumber">177</context></context-group>
</trans-unit>
- <trans-unit id="_msg1020">
+ <trans-unit id="_msg1022">
<source xml:space="preserve">This is the transaction fee you may pay when fee estimates are not available.</source>
<context-group purpose="location"><context context-type="linenumber">180</context></context-group>
</trans-unit>
- <trans-unit id="_msg1021">
+ <trans-unit id="_msg1023">
<source xml:space="preserve">Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source>
<context-group purpose="location"><context context-type="linenumber">182</context></context-group>
</trans-unit>
- <trans-unit id="_msg1022">
+ <trans-unit id="_msg1024">
<source xml:space="preserve">Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate.</source>
<context-group purpose="location"><context context-type="linenumber">191</context></context-group>
</trans-unit>
- <trans-unit id="_msg1023">
+ <trans-unit id="_msg1025">
<source xml:space="preserve">Unknown wallet file format &quot;%s&quot; provided. Please provide one of &quot;bdb&quot; or &quot;sqlite&quot;.</source>
<context-group purpose="location"><context context-type="linenumber">201</context></context-group>
</trans-unit>
- <trans-unit id="_msg1024">
+ <trans-unit id="_msg1026">
<source xml:space="preserve">Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
<context-group purpose="location"><context context-type="linenumber">209</context></context-group>
</trans-unit>
- <trans-unit id="_msg1025">
+ <trans-unit id="_msg1027">
<source xml:space="preserve">Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<context-group purpose="location"><context context-type="linenumber">212</context></context-group>
</trans-unit>
- <trans-unit id="_msg1026">
+ <trans-unit id="_msg1028">
<source xml:space="preserve">Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
<context-group purpose="location"><context context-type="linenumber">215</context></context-group>
</trans-unit>
- <trans-unit id="_msg1027">
+ <trans-unit id="_msg1029">
<source xml:space="preserve">Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
<context-group purpose="location"><context context-type="linenumber">219</context></context-group>
</trans-unit>
- <trans-unit id="_msg1028">
+ <trans-unit id="_msg1030">
<source xml:space="preserve">Warning: Dumpfile wallet format &quot;%s&quot; does not match command line specified format &quot;%s&quot;.</source>
<context-group purpose="location"><context context-type="linenumber">224</context></context-group>
</trans-unit>
- <trans-unit id="_msg1029">
+ <trans-unit id="_msg1031">
<source xml:space="preserve">Warning: Private keys detected in wallet {%s} with disabled private keys</source>
<context-group purpose="location"><context context-type="linenumber">227</context></context-group>
</trans-unit>
- <trans-unit id="_msg1030">
+ <trans-unit id="_msg1032">
<source xml:space="preserve">Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source>
<context-group purpose="location"><context context-type="linenumber">229</context></context-group>
</trans-unit>
- <trans-unit id="_msg1031">
+ <trans-unit id="_msg1033">
<source xml:space="preserve">Witness data for blocks after height %d requires validation. Please restart with -reindex.</source>
<context-group purpose="location"><context context-type="linenumber">232</context></context-group>
</trans-unit>
- <trans-unit id="_msg1032">
+ <trans-unit id="_msg1034">
<source xml:space="preserve">You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source>
<context-group purpose="location"><context context-type="linenumber">235</context></context-group>
</trans-unit>
- <trans-unit id="_msg1033">
+ <trans-unit id="_msg1035">
<source xml:space="preserve">%s is set very high!</source>
<context-group purpose="location"><context context-type="linenumber">244</context></context-group>
</trans-unit>
- <trans-unit id="_msg1034">
+ <trans-unit id="_msg1036">
<source xml:space="preserve">-maxmempool must be at least %d MB</source>
<context-group purpose="location"><context context-type="linenumber">245</context></context-group>
</trans-unit>
- <trans-unit id="_msg1035">
+ <trans-unit id="_msg1037">
<source xml:space="preserve">A fatal internal error occurred, see debug.log for details</source>
<context-group purpose="location"><context context-type="linenumber">246</context></context-group>
</trans-unit>
- <trans-unit id="_msg1036">
+ <trans-unit id="_msg1038">
<source xml:space="preserve">Cannot resolve -%s address: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">248</context></context-group>
</trans-unit>
- <trans-unit id="_msg1037">
+ <trans-unit id="_msg1039">
<source xml:space="preserve">Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
<context-group purpose="location"><context context-type="linenumber">249</context></context-group>
</trans-unit>
- <trans-unit id="_msg1038">
+ <trans-unit id="_msg1040">
<source xml:space="preserve">Cannot set -peerblockfilters without -blockfilterindex.</source>
<context-group purpose="location"><context context-type="linenumber">250</context></context-group>
</trans-unit>
- <trans-unit id="_msg1039">
+ <trans-unit id="_msg1041">
<source xml:space="preserve">Cannot write to data directory &apos;%s&apos;; check permissions.</source>
<context-group purpose="location"><context context-type="linenumber">251</context></context-group>
</trans-unit>
- <trans-unit id="_msg1040">
+ <trans-unit id="_msg1042">
<source xml:space="preserve">%s is set very high! Fees this large could be paid on a single transaction.</source>
<context-group purpose="location"><context context-type="linenumber">26</context></context-group>
</trans-unit>
- <trans-unit id="_msg1041">
+ <trans-unit id="_msg1043">
<source xml:space="preserve">Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<context-group purpose="location"><context context-type="linenumber">37</context></context-group>
</trans-unit>
- <trans-unit id="_msg1042">
+ <trans-unit id="_msg1044">
<source xml:space="preserve">Error loading %s: External signer wallet being loaded without external signer support compiled</source>
<context-group purpose="location"><context context-type="linenumber">50</context></context-group>
</trans-unit>
- <trans-unit id="_msg1043">
+ <trans-unit id="_msg1045">
<source xml:space="preserve">Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
<context-group purpose="location"><context context-type="linenumber">58</context></context-group>
</trans-unit>
- <trans-unit id="_msg1044">
+ <trans-unit id="_msg1046">
<source xml:space="preserve">Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<context-group purpose="location"><context context-type="linenumber">64</context></context-group>
</trans-unit>
- <trans-unit id="_msg1045">
+ <trans-unit id="_msg1047">
<source xml:space="preserve">Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
<context-group purpose="location"><context context-type="linenumber">74</context></context-group>
</trans-unit>
- <trans-unit id="_msg1046">
+ <trans-unit id="_msg1048">
<source xml:space="preserve">Error: Transaction %s in wallet cannot be identified to belong to migrated wallets</source>
<context-group purpose="location"><context context-type="linenumber">80</context></context-group>
</trans-unit>
- <trans-unit id="_msg1047">
+ <trans-unit id="_msg1049">
<source xml:space="preserve">Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
<context-group purpose="location"><context context-type="linenumber">86</context></context-group>
</trans-unit>
- <trans-unit id="_msg1048">
+ <trans-unit id="_msg1050">
<source xml:space="preserve">Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<context-group purpose="location"><context context-type="linenumber">89</context></context-group>
</trans-unit>
- <trans-unit id="_msg1049">
+ <trans-unit id="_msg1051">
<source xml:space="preserve">Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
<context-group purpose="location"><context context-type="linenumber">92</context></context-group>
</trans-unit>
- <trans-unit id="_msg1050">
+ <trans-unit id="_msg1052">
<source xml:space="preserve">Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
<context-group purpose="location"><context context-type="linenumber">98</context></context-group>
</trans-unit>
- <trans-unit id="_msg1051">
+ <trans-unit id="_msg1053">
<source xml:space="preserve">Invalid amount for %s=&lt;amount&gt;: &apos;%s&apos; (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
<context-group purpose="location"><context context-type="linenumber">101</context></context-group>
</trans-unit>
- <trans-unit id="_msg1052">
+ <trans-unit id="_msg1054">
<source xml:space="preserve">Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
<context-group purpose="location"><context context-type="linenumber">119</context></context-group>
</trans-unit>
- <trans-unit id="_msg1053">
+ <trans-unit id="_msg1055">
<source xml:space="preserve">Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is explicitly forbidden: -onion=0</source>
<context-group purpose="location"><context context-type="linenumber">122</context></context-group>
</trans-unit>
- <trans-unit id="_msg1054">
+ <trans-unit id="_msg1056">
<source xml:space="preserve">Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is not provided: none of -proxy, -onion or -listenonion is given</source>
<context-group purpose="location"><context context-type="linenumber">125</context></context-group>
</trans-unit>
- <trans-unit id="_msg1055">
+ <trans-unit id="_msg1057">
<source xml:space="preserve">Outbound connections restricted to i2p (-onlynet=i2p) but -i2psam is not provided</source>
<context-group purpose="location"><context context-type="linenumber">129</context></context-group>
</trans-unit>
- <trans-unit id="_msg1056">
+ <trans-unit id="_msg1058">
<source xml:space="preserve">The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet&apos;s UTXOs</source>
<context-group purpose="location"><context context-type="linenumber">158</context></context-group>
</trans-unit>
- <trans-unit id="_msg1057">
+ <trans-unit id="_msg1059">
<source xml:space="preserve">The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
<context-group purpose="location"><context context-type="linenumber">161</context></context-group>
</trans-unit>
- <trans-unit id="_msg1058">
+ <trans-unit id="_msg1060">
<source xml:space="preserve">Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
<context-group purpose="location"><context context-type="linenumber">185</context></context-group>
</trans-unit>
- <trans-unit id="_msg1059">
+ <trans-unit id="_msg1061">
<source xml:space="preserve">UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
<context-group purpose="location"><context context-type="linenumber">188</context></context-group>
</trans-unit>
- <trans-unit id="_msg1060">
+ <trans-unit id="_msg1062">
<source xml:space="preserve">Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
<context-group purpose="location"><context context-type="linenumber">194</context></context-group>
</trans-unit>
- <trans-unit id="_msg1061">
+ <trans-unit id="_msg1063">
<source xml:space="preserve">Unexpected legacy entry in descriptor wallet found. Loading wallet %s
The wallet might have been tampered with or created with malicious intent.
</source>
<context-group purpose="location"><context context-type="linenumber">197</context></context-group>
</trans-unit>
- <trans-unit id="_msg1062">
+ <trans-unit id="_msg1064">
<source xml:space="preserve">Unrecognized descriptor found. Loading wallet %s
The wallet might had been created on a newer version.
@@ -4845,551 +4855,583 @@ Please try running the latest software version.
</source>
<context-group purpose="location"><context context-type="linenumber">204</context></context-group>
</trans-unit>
- <trans-unit id="_msg1063">
+ <trans-unit id="_msg1065">
<source xml:space="preserve">
Unable to cleanup failed migration</source>
<context-group purpose="location"><context context-type="linenumber">238</context></context-group>
</trans-unit>
- <trans-unit id="_msg1064">
+ <trans-unit id="_msg1066">
<source xml:space="preserve">
Unable to restore backup of wallet.</source>
<context-group purpose="location"><context context-type="linenumber">241</context></context-group>
</trans-unit>
- <trans-unit id="_msg1065">
+ <trans-unit id="_msg1067">
<source xml:space="preserve">Block verification was interrupted</source>
<context-group purpose="location"><context context-type="linenumber">247</context></context-group>
</trans-unit>
- <trans-unit id="_msg1066">
+ <trans-unit id="_msg1068">
<source xml:space="preserve">Config setting for %s only applied on %s network when in [%s] section.</source>
<context-group purpose="location"><context context-type="linenumber">252</context></context-group>
</trans-unit>
- <trans-unit id="_msg1067">
+ <trans-unit id="_msg1069">
<source xml:space="preserve">Copyright (C) %i-%i</source>
<context-group purpose="location"><context context-type="linenumber">253</context></context-group>
</trans-unit>
- <trans-unit id="_msg1068">
+ <trans-unit id="_msg1070">
<source xml:space="preserve">Corrupted block database detected</source>
<context-group purpose="location"><context context-type="linenumber">254</context></context-group>
</trans-unit>
- <trans-unit id="_msg1069">
+ <trans-unit id="_msg1071">
<source xml:space="preserve">Could not find asmap file %s</source>
<context-group purpose="location"><context context-type="linenumber">255</context></context-group>
</trans-unit>
- <trans-unit id="_msg1070">
+ <trans-unit id="_msg1072">
<source xml:space="preserve">Could not parse asmap file %s</source>
<context-group purpose="location"><context context-type="linenumber">256</context></context-group>
</trans-unit>
- <trans-unit id="_msg1071">
+ <trans-unit id="_msg1073">
<source xml:space="preserve">Disk space is too low!</source>
<context-group purpose="location"><context context-type="linenumber">257</context></context-group>
</trans-unit>
- <trans-unit id="_msg1072">
+ <trans-unit id="_msg1074">
<source xml:space="preserve">Do you want to rebuild the block database now?</source>
<context-group purpose="location"><context context-type="linenumber">258</context></context-group>
</trans-unit>
- <trans-unit id="_msg1073">
+ <trans-unit id="_msg1075">
<source xml:space="preserve">Done loading</source>
<context-group purpose="location"><context context-type="linenumber">259</context></context-group>
</trans-unit>
- <trans-unit id="_msg1074">
+ <trans-unit id="_msg1076">
<source xml:space="preserve">Dump file %s does not exist.</source>
<context-group purpose="location"><context context-type="linenumber">260</context></context-group>
</trans-unit>
- <trans-unit id="_msg1075">
- <source xml:space="preserve">Error creating %s</source>
- <context-group purpose="location"><context context-type="linenumber">261</context></context-group>
- </trans-unit>
- <trans-unit id="_msg1076">
- <source xml:space="preserve">Error initializing block database</source>
- <context-group purpose="location"><context context-type="linenumber">262</context></context-group>
- </trans-unit>
<trans-unit id="_msg1077">
- <source xml:space="preserve">Error initializing wallet database environment %s!</source>
- <context-group purpose="location"><context context-type="linenumber">263</context></context-group>
+ <source xml:space="preserve">Error committing db txn for wallet transactions removal</source>
+ <context-group purpose="location"><context context-type="linenumber">261</context></context-group>
</trans-unit>
<trans-unit id="_msg1078">
- <source xml:space="preserve">Error loading %s</source>
- <context-group purpose="location"><context context-type="linenumber">264</context></context-group>
+ <source xml:space="preserve">Error creating %s</source>
+ <context-group purpose="location"><context context-type="linenumber">262</context></context-group>
</trans-unit>
<trans-unit id="_msg1079">
- <source xml:space="preserve">Error loading %s: Private keys can only be disabled during creation</source>
- <context-group purpose="location"><context context-type="linenumber">265</context></context-group>
+ <source xml:space="preserve">Error initializing block database</source>
+ <context-group purpose="location"><context context-type="linenumber">263</context></context-group>
</trans-unit>
<trans-unit id="_msg1080">
- <source xml:space="preserve">Error loading %s: Wallet corrupted</source>
- <context-group purpose="location"><context context-type="linenumber">266</context></context-group>
+ <source xml:space="preserve">Error initializing wallet database environment %s!</source>
+ <context-group purpose="location"><context context-type="linenumber">264</context></context-group>
</trans-unit>
<trans-unit id="_msg1081">
- <source xml:space="preserve">Error loading %s: Wallet requires newer version of %s</source>
- <context-group purpose="location"><context context-type="linenumber">267</context></context-group>
+ <source xml:space="preserve">Error loading %s</source>
+ <context-group purpose="location"><context context-type="linenumber">265</context></context-group>
</trans-unit>
<trans-unit id="_msg1082">
- <source xml:space="preserve">Error loading block database</source>
- <context-group purpose="location"><context context-type="linenumber">268</context></context-group>
+ <source xml:space="preserve">Error loading %s: Private keys can only be disabled during creation</source>
+ <context-group purpose="location"><context context-type="linenumber">266</context></context-group>
</trans-unit>
<trans-unit id="_msg1083">
- <source xml:space="preserve">Error opening block database</source>
- <context-group purpose="location"><context context-type="linenumber">269</context></context-group>
+ <source xml:space="preserve">Error loading %s: Wallet corrupted</source>
+ <context-group purpose="location"><context context-type="linenumber">267</context></context-group>
</trans-unit>
<trans-unit id="_msg1084">
- <source xml:space="preserve">Error reading configuration file: %s</source>
- <context-group purpose="location"><context context-type="linenumber">270</context></context-group>
+ <source xml:space="preserve">Error loading %s: Wallet requires newer version of %s</source>
+ <context-group purpose="location"><context context-type="linenumber">268</context></context-group>
</trans-unit>
<trans-unit id="_msg1085">
- <source xml:space="preserve">Error reading from database, shutting down.</source>
- <context-group purpose="location"><context context-type="linenumber">271</context></context-group>
+ <source xml:space="preserve">Error loading block database</source>
+ <context-group purpose="location"><context context-type="linenumber">269</context></context-group>
</trans-unit>
<trans-unit id="_msg1086">
- <source xml:space="preserve">Error reading next record from wallet database</source>
- <context-group purpose="location"><context context-type="linenumber">272</context></context-group>
+ <source xml:space="preserve">Error opening block database</source>
+ <context-group purpose="location"><context context-type="linenumber">270</context></context-group>
</trans-unit>
<trans-unit id="_msg1087">
- <source xml:space="preserve">Error: Cannot extract destination from the generated scriptpubkey</source>
- <context-group purpose="location"><context context-type="linenumber">273</context></context-group>
+ <source xml:space="preserve">Error reading configuration file: %s</source>
+ <context-group purpose="location"><context context-type="linenumber">271</context></context-group>
</trans-unit>
<trans-unit id="_msg1088">
- <source xml:space="preserve">Error: Could not add watchonly tx to watchonly wallet</source>
- <context-group purpose="location"><context context-type="linenumber">274</context></context-group>
+ <source xml:space="preserve">Error reading from database, shutting down.</source>
+ <context-group purpose="location"><context context-type="linenumber">272</context></context-group>
</trans-unit>
<trans-unit id="_msg1089">
- <source xml:space="preserve">Error: Could not delete watchonly transactions</source>
- <context-group purpose="location"><context context-type="linenumber">275</context></context-group>
+ <source xml:space="preserve">Error reading next record from wallet database</source>
+ <context-group purpose="location"><context context-type="linenumber">273</context></context-group>
</trans-unit>
<trans-unit id="_msg1090">
- <source xml:space="preserve">Error: Couldn&apos;t create cursor into database</source>
- <context-group purpose="location"><context context-type="linenumber">276</context></context-group>
+ <source xml:space="preserve">Error starting db txn for wallet transactions removal</source>
+ <context-group purpose="location"><context context-type="linenumber">274</context></context-group>
</trans-unit>
<trans-unit id="_msg1091">
- <source xml:space="preserve">Error: Disk space is low for %s</source>
- <context-group purpose="location"><context context-type="linenumber">277</context></context-group>
+ <source xml:space="preserve">Error: Cannot extract destination from the generated scriptpubkey</source>
+ <context-group purpose="location"><context context-type="linenumber">275</context></context-group>
</trans-unit>
<trans-unit id="_msg1092">
- <source xml:space="preserve">Error: Dumpfile checksum does not match. Computed %s, expected %s</source>
+ <source xml:space="preserve">Error: Couldn&apos;t create cursor into database</source>
<context-group purpose="location"><context context-type="linenumber">278</context></context-group>
</trans-unit>
<trans-unit id="_msg1093">
- <source xml:space="preserve">Error: Failed to create new watchonly wallet</source>
+ <source xml:space="preserve">Error: Disk space is low for %s</source>
<context-group purpose="location"><context context-type="linenumber">279</context></context-group>
</trans-unit>
<trans-unit id="_msg1094">
- <source xml:space="preserve">Error: Got key that was not hex: %s</source>
+ <source xml:space="preserve">Error: Dumpfile checksum does not match. Computed %s, expected %s</source>
<context-group purpose="location"><context context-type="linenumber">280</context></context-group>
</trans-unit>
<trans-unit id="_msg1095">
- <source xml:space="preserve">Error: Got value that was not hex: %s</source>
+ <source xml:space="preserve">Error: Failed to create new watchonly wallet</source>
<context-group purpose="location"><context context-type="linenumber">281</context></context-group>
</trans-unit>
<trans-unit id="_msg1096">
- <source xml:space="preserve">Error: Keypool ran out, please call keypoolrefill first</source>
+ <source xml:space="preserve">Error: Got key that was not hex: %s</source>
<context-group purpose="location"><context context-type="linenumber">282</context></context-group>
</trans-unit>
<trans-unit id="_msg1097">
- <source xml:space="preserve">Error: Missing checksum</source>
+ <source xml:space="preserve">Error: Got value that was not hex: %s</source>
<context-group purpose="location"><context context-type="linenumber">283</context></context-group>
</trans-unit>
<trans-unit id="_msg1098">
- <source xml:space="preserve">Error: No %s addresses available.</source>
+ <source xml:space="preserve">Error: Keypool ran out, please call keypoolrefill first</source>
<context-group purpose="location"><context context-type="linenumber">284</context></context-group>
</trans-unit>
<trans-unit id="_msg1099">
- <source xml:space="preserve">Error: Not all watchonly txs could be deleted</source>
+ <source xml:space="preserve">Error: Missing checksum</source>
<context-group purpose="location"><context context-type="linenumber">285</context></context-group>
</trans-unit>
<trans-unit id="_msg1100">
- <source xml:space="preserve">Error: This wallet already uses SQLite</source>
+ <source xml:space="preserve">Error: No %s addresses available.</source>
<context-group purpose="location"><context context-type="linenumber">286</context></context-group>
</trans-unit>
<trans-unit id="_msg1101">
- <source xml:space="preserve">Error: This wallet is already a descriptor wallet</source>
+ <source xml:space="preserve">Error: This wallet already uses SQLite</source>
<context-group purpose="location"><context context-type="linenumber">287</context></context-group>
</trans-unit>
<trans-unit id="_msg1102">
- <source xml:space="preserve">Error: Unable to begin reading all records in the database</source>
+ <source xml:space="preserve">Error: This wallet is already a descriptor wallet</source>
<context-group purpose="location"><context context-type="linenumber">288</context></context-group>
</trans-unit>
<trans-unit id="_msg1103">
- <source xml:space="preserve">Error: Unable to make a backup of your wallet</source>
+ <source xml:space="preserve">Error: Unable to begin reading all records in the database</source>
<context-group purpose="location"><context context-type="linenumber">289</context></context-group>
</trans-unit>
<trans-unit id="_msg1104">
- <source xml:space="preserve">Error: Unable to parse version %u as a uint32_t</source>
+ <source xml:space="preserve">Error: Unable to make a backup of your wallet</source>
<context-group purpose="location"><context context-type="linenumber">290</context></context-group>
</trans-unit>
<trans-unit id="_msg1105">
- <source xml:space="preserve">Error: Unable to read all records in the database</source>
+ <source xml:space="preserve">Error: Unable to parse version %u as a uint32_t</source>
<context-group purpose="location"><context context-type="linenumber">291</context></context-group>
</trans-unit>
<trans-unit id="_msg1106">
- <source xml:space="preserve">Error: Unable to remove watchonly address book data</source>
+ <source xml:space="preserve">Error: Unable to read all records in the database</source>
<context-group purpose="location"><context context-type="linenumber">292</context></context-group>
</trans-unit>
<trans-unit id="_msg1107">
- <source xml:space="preserve">Error: Unable to write record to new wallet</source>
+ <source xml:space="preserve">Error: Unable to read wallet&apos;s best block locator record</source>
<context-group purpose="location"><context context-type="linenumber">293</context></context-group>
</trans-unit>
<trans-unit id="_msg1108">
- <source xml:space="preserve">Failed to listen on any port. Use -listen=0 if you want this.</source>
+ <source xml:space="preserve">Error: Unable to remove watchonly address book data</source>
<context-group purpose="location"><context context-type="linenumber">294</context></context-group>
</trans-unit>
<trans-unit id="_msg1109">
- <source xml:space="preserve">Failed to rescan the wallet during initialization</source>
+ <source xml:space="preserve">Error: Unable to write record to new wallet</source>
<context-group purpose="location"><context context-type="linenumber">295</context></context-group>
</trans-unit>
<trans-unit id="_msg1110">
- <source xml:space="preserve">Failed to start indexes, shutting down..</source>
+ <source xml:space="preserve">Error: Unable to write solvable wallet best block locator record</source>
<context-group purpose="location"><context context-type="linenumber">296</context></context-group>
</trans-unit>
<trans-unit id="_msg1111">
- <source xml:space="preserve">Failed to verify database</source>
+ <source xml:space="preserve">Error: Unable to write watchonly wallet best block locator record</source>
<context-group purpose="location"><context context-type="linenumber">297</context></context-group>
</trans-unit>
<trans-unit id="_msg1112">
- <source xml:space="preserve">Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
+ <source xml:space="preserve">Error: address book copy failed for wallet %s</source>
<context-group purpose="location"><context context-type="linenumber">298</context></context-group>
</trans-unit>
<trans-unit id="_msg1113">
- <source xml:space="preserve">Ignoring duplicate -wallet %s.</source>
+ <source xml:space="preserve">Error: database transaction cannot be executed for wallet %s</source>
<context-group purpose="location"><context context-type="linenumber">299</context></context-group>
</trans-unit>
<trans-unit id="_msg1114">
- <source xml:space="preserve">Importing…</source>
+ <source xml:space="preserve">Failed to listen on any port. Use -listen=0 if you want this.</source>
<context-group purpose="location"><context context-type="linenumber">300</context></context-group>
</trans-unit>
<trans-unit id="_msg1115">
- <source xml:space="preserve">Incorrect or no genesis block found. Wrong datadir for network?</source>
+ <source xml:space="preserve">Failed to rescan the wallet during initialization</source>
<context-group purpose="location"><context context-type="linenumber">301</context></context-group>
</trans-unit>
<trans-unit id="_msg1116">
- <source xml:space="preserve">Initialization sanity check failed. %s is shutting down.</source>
+ <source xml:space="preserve">Failed to start indexes, shutting down..</source>
<context-group purpose="location"><context context-type="linenumber">302</context></context-group>
</trans-unit>
<trans-unit id="_msg1117">
- <source xml:space="preserve">Input not found or already spent</source>
+ <source xml:space="preserve">Failed to verify database</source>
<context-group purpose="location"><context context-type="linenumber">303</context></context-group>
</trans-unit>
<trans-unit id="_msg1118">
- <source xml:space="preserve">Insufficient dbcache for block verification</source>
+ <source xml:space="preserve">Failure removing transaction: %s</source>
<context-group purpose="location"><context context-type="linenumber">304</context></context-group>
</trans-unit>
<trans-unit id="_msg1119">
- <source xml:space="preserve">Insufficient funds</source>
+ <source xml:space="preserve">Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
<context-group purpose="location"><context context-type="linenumber">305</context></context-group>
</trans-unit>
<trans-unit id="_msg1120">
- <source xml:space="preserve">Invalid -i2psam address or hostname: &apos;%s&apos;</source>
+ <source xml:space="preserve">Ignoring duplicate -wallet %s.</source>
<context-group purpose="location"><context context-type="linenumber">306</context></context-group>
</trans-unit>
<trans-unit id="_msg1121">
- <source xml:space="preserve">Invalid -onion address or hostname: &apos;%s&apos;</source>
+ <source xml:space="preserve">Importing…</source>
<context-group purpose="location"><context context-type="linenumber">307</context></context-group>
</trans-unit>
<trans-unit id="_msg1122">
- <source xml:space="preserve">Invalid -proxy address or hostname: &apos;%s&apos;</source>
+ <source xml:space="preserve">Incorrect or no genesis block found. Wrong datadir for network?</source>
<context-group purpose="location"><context context-type="linenumber">308</context></context-group>
</trans-unit>
<trans-unit id="_msg1123">
- <source xml:space="preserve">Invalid P2P permission: &apos;%s&apos;</source>
+ <source xml:space="preserve">Initialization sanity check failed. %s is shutting down.</source>
<context-group purpose="location"><context context-type="linenumber">309</context></context-group>
</trans-unit>
<trans-unit id="_msg1124">
- <source xml:space="preserve">Invalid amount for %s=&lt;amount&gt;: &apos;%s&apos; (must be at least %s)</source>
+ <source xml:space="preserve">Input not found or already spent</source>
<context-group purpose="location"><context context-type="linenumber">310</context></context-group>
</trans-unit>
<trans-unit id="_msg1125">
- <source xml:space="preserve">Invalid amount for %s=&lt;amount&gt;: &apos;%s&apos;</source>
+ <source xml:space="preserve">Insufficient dbcache for block verification</source>
<context-group purpose="location"><context context-type="linenumber">311</context></context-group>
</trans-unit>
<trans-unit id="_msg1126">
- <source xml:space="preserve">Invalid amount for -%s=&lt;amount&gt;: &apos;%s&apos;</source>
+ <source xml:space="preserve">Insufficient funds</source>
<context-group purpose="location"><context context-type="linenumber">312</context></context-group>
</trans-unit>
<trans-unit id="_msg1127">
- <source xml:space="preserve">Invalid netmask specified in -whitelist: &apos;%s&apos;</source>
+ <source xml:space="preserve">Invalid -i2psam address or hostname: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">313</context></context-group>
</trans-unit>
<trans-unit id="_msg1128">
- <source xml:space="preserve">Invalid port specified in %s: &apos;%s&apos;</source>
+ <source xml:space="preserve">Invalid -onion address or hostname: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">314</context></context-group>
</trans-unit>
<trans-unit id="_msg1129">
- <source xml:space="preserve">Invalid pre-selected input %s</source>
+ <source xml:space="preserve">Invalid -proxy address or hostname: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">315</context></context-group>
</trans-unit>
<trans-unit id="_msg1130">
- <source xml:space="preserve">Listening for incoming connections failed (listen returned error %s)</source>
+ <source xml:space="preserve">Invalid P2P permission: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">316</context></context-group>
</trans-unit>
<trans-unit id="_msg1131">
- <source xml:space="preserve">Loading P2P addresses…</source>
+ <source xml:space="preserve">Invalid amount for %s=&lt;amount&gt;: &apos;%s&apos; (must be at least %s)</source>
<context-group purpose="location"><context context-type="linenumber">317</context></context-group>
</trans-unit>
<trans-unit id="_msg1132">
- <source xml:space="preserve">Loading banlist…</source>
+ <source xml:space="preserve">Invalid amount for %s=&lt;amount&gt;: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">318</context></context-group>
</trans-unit>
<trans-unit id="_msg1133">
- <source xml:space="preserve">Loading block index…</source>
+ <source xml:space="preserve">Invalid amount for -%s=&lt;amount&gt;: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">319</context></context-group>
</trans-unit>
<trans-unit id="_msg1134">
- <source xml:space="preserve">Loading wallet…</source>
+ <source xml:space="preserve">Invalid netmask specified in -whitelist: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">320</context></context-group>
</trans-unit>
<trans-unit id="_msg1135">
- <source xml:space="preserve">Missing amount</source>
+ <source xml:space="preserve">Invalid port specified in %s: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">321</context></context-group>
</trans-unit>
<trans-unit id="_msg1136">
- <source xml:space="preserve">Missing solving data for estimating transaction size</source>
+ <source xml:space="preserve">Invalid pre-selected input %s</source>
<context-group purpose="location"><context context-type="linenumber">322</context></context-group>
</trans-unit>
<trans-unit id="_msg1137">
- <source xml:space="preserve">Need to specify a port with -whitebind: &apos;%s&apos;</source>
+ <source xml:space="preserve">Listening for incoming connections failed (listen returned error %s)</source>
<context-group purpose="location"><context context-type="linenumber">323</context></context-group>
</trans-unit>
<trans-unit id="_msg1138">
- <source xml:space="preserve">No addresses available</source>
+ <source xml:space="preserve">Loading P2P addresses…</source>
<context-group purpose="location"><context context-type="linenumber">324</context></context-group>
</trans-unit>
<trans-unit id="_msg1139">
- <source xml:space="preserve">Not enough file descriptors available.</source>
+ <source xml:space="preserve">Loading banlist…</source>
<context-group purpose="location"><context context-type="linenumber">325</context></context-group>
</trans-unit>
<trans-unit id="_msg1140">
- <source xml:space="preserve">Not found pre-selected input %s</source>
+ <source xml:space="preserve">Loading block index…</source>
<context-group purpose="location"><context context-type="linenumber">326</context></context-group>
</trans-unit>
<trans-unit id="_msg1141">
- <source xml:space="preserve">Not solvable pre-selected input %s</source>
+ <source xml:space="preserve">Loading wallet…</source>
<context-group purpose="location"><context context-type="linenumber">327</context></context-group>
</trans-unit>
<trans-unit id="_msg1142">
- <source xml:space="preserve">Prune cannot be configured with a negative value.</source>
+ <source xml:space="preserve">Missing amount</source>
<context-group purpose="location"><context context-type="linenumber">328</context></context-group>
</trans-unit>
<trans-unit id="_msg1143">
- <source xml:space="preserve">Prune mode is incompatible with -txindex.</source>
+ <source xml:space="preserve">Missing solving data for estimating transaction size</source>
<context-group purpose="location"><context context-type="linenumber">329</context></context-group>
</trans-unit>
<trans-unit id="_msg1144">
- <source xml:space="preserve">Pruning blockstore…</source>
+ <source xml:space="preserve">Need to specify a port with -whitebind: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">330</context></context-group>
</trans-unit>
<trans-unit id="_msg1145">
- <source xml:space="preserve">Reducing -maxconnections from %d to %d, because of system limitations.</source>
+ <source xml:space="preserve">No addresses available</source>
<context-group purpose="location"><context context-type="linenumber">331</context></context-group>
</trans-unit>
<trans-unit id="_msg1146">
- <source xml:space="preserve">Replaying blocks…</source>
+ <source xml:space="preserve">Not enough file descriptors available.</source>
<context-group purpose="location"><context context-type="linenumber">332</context></context-group>
</trans-unit>
<trans-unit id="_msg1147">
- <source xml:space="preserve">Rescanning…</source>
+ <source xml:space="preserve">Not found pre-selected input %s</source>
<context-group purpose="location"><context context-type="linenumber">333</context></context-group>
</trans-unit>
<trans-unit id="_msg1148">
- <source xml:space="preserve">SQLiteDatabase: Failed to execute statement to verify database: %s</source>
+ <source xml:space="preserve">Not solvable pre-selected input %s</source>
<context-group purpose="location"><context context-type="linenumber">334</context></context-group>
</trans-unit>
<trans-unit id="_msg1149">
- <source xml:space="preserve">SQLiteDatabase: Failed to prepare statement to verify database: %s</source>
+ <source xml:space="preserve">Prune cannot be configured with a negative value.</source>
<context-group purpose="location"><context context-type="linenumber">335</context></context-group>
</trans-unit>
<trans-unit id="_msg1150">
- <source xml:space="preserve">SQLiteDatabase: Failed to read database verification error: %s</source>
+ <source xml:space="preserve">Prune mode is incompatible with -txindex.</source>
<context-group purpose="location"><context context-type="linenumber">336</context></context-group>
</trans-unit>
<trans-unit id="_msg1151">
- <source xml:space="preserve">SQLiteDatabase: Unexpected application id. Expected %u, got %u</source>
+ <source xml:space="preserve">Pruning blockstore…</source>
<context-group purpose="location"><context context-type="linenumber">337</context></context-group>
</trans-unit>
<trans-unit id="_msg1152">
- <source xml:space="preserve">Section [%s] is not recognized.</source>
+ <source xml:space="preserve">Reducing -maxconnections from %d to %d, because of system limitations.</source>
<context-group purpose="location"><context context-type="linenumber">338</context></context-group>
</trans-unit>
<trans-unit id="_msg1153">
- <source xml:space="preserve">Signing transaction failed</source>
- <context-group purpose="location"><context context-type="linenumber">341</context></context-group>
+ <source xml:space="preserve">Replaying blocks…</source>
+ <context-group purpose="location"><context context-type="linenumber">339</context></context-group>
</trans-unit>
<trans-unit id="_msg1154">
- <source xml:space="preserve">Specified -walletdir &quot;%s&quot; does not exist</source>
- <context-group purpose="location"><context context-type="linenumber">342</context></context-group>
+ <source xml:space="preserve">Rescanning…</source>
+ <context-group purpose="location"><context context-type="linenumber">340</context></context-group>
</trans-unit>
<trans-unit id="_msg1155">
- <source xml:space="preserve">Specified -walletdir &quot;%s&quot; is a relative path</source>
- <context-group purpose="location"><context context-type="linenumber">343</context></context-group>
+ <source xml:space="preserve">SQLiteDatabase: Failed to execute statement to verify database: %s</source>
+ <context-group purpose="location"><context context-type="linenumber">341</context></context-group>
</trans-unit>
<trans-unit id="_msg1156">
- <source xml:space="preserve">Specified -walletdir &quot;%s&quot; is not a directory</source>
- <context-group purpose="location"><context context-type="linenumber">344</context></context-group>
+ <source xml:space="preserve">SQLiteDatabase: Failed to prepare statement to verify database: %s</source>
+ <context-group purpose="location"><context context-type="linenumber">342</context></context-group>
</trans-unit>
<trans-unit id="_msg1157">
- <source xml:space="preserve">Specified blocks directory &quot;%s&quot; does not exist.</source>
- <context-group purpose="location"><context context-type="linenumber">345</context></context-group>
+ <source xml:space="preserve">SQLiteDatabase: Failed to read database verification error: %s</source>
+ <context-group purpose="location"><context context-type="linenumber">343</context></context-group>
</trans-unit>
<trans-unit id="_msg1158">
- <source xml:space="preserve">Specified data directory &quot;%s&quot; does not exist.</source>
- <context-group purpose="location"><context context-type="linenumber">346</context></context-group>
+ <source xml:space="preserve">SQLiteDatabase: Unexpected application id. Expected %u, got %u</source>
+ <context-group purpose="location"><context context-type="linenumber">344</context></context-group>
</trans-unit>
<trans-unit id="_msg1159">
- <source xml:space="preserve">Starting network threads…</source>
- <context-group purpose="location"><context context-type="linenumber">347</context></context-group>
+ <source xml:space="preserve">Section [%s] is not recognized.</source>
+ <context-group purpose="location"><context context-type="linenumber">345</context></context-group>
</trans-unit>
<trans-unit id="_msg1160">
- <source xml:space="preserve">The source code is available from %s.</source>
+ <source xml:space="preserve">Signing transaction failed</source>
<context-group purpose="location"><context context-type="linenumber">348</context></context-group>
</trans-unit>
<trans-unit id="_msg1161">
- <source xml:space="preserve">The specified config file %s does not exist</source>
+ <source xml:space="preserve">Specified -walletdir &quot;%s&quot; does not exist</source>
<context-group purpose="location"><context context-type="linenumber">349</context></context-group>
</trans-unit>
<trans-unit id="_msg1162">
- <source xml:space="preserve">The transaction amount is too small to pay the fee</source>
+ <source xml:space="preserve">Specified -walletdir &quot;%s&quot; is a relative path</source>
<context-group purpose="location"><context context-type="linenumber">350</context></context-group>
</trans-unit>
<trans-unit id="_msg1163">
- <source xml:space="preserve">The wallet will avoid paying less than the minimum relay fee.</source>
+ <source xml:space="preserve">Specified -walletdir &quot;%s&quot; is not a directory</source>
<context-group purpose="location"><context context-type="linenumber">351</context></context-group>
</trans-unit>
<trans-unit id="_msg1164">
- <source xml:space="preserve">This is experimental software.</source>
+ <source xml:space="preserve">Specified blocks directory &quot;%s&quot; does not exist.</source>
<context-group purpose="location"><context context-type="linenumber">352</context></context-group>
</trans-unit>
<trans-unit id="_msg1165">
- <source xml:space="preserve">This is the minimum transaction fee you pay on every transaction.</source>
+ <source xml:space="preserve">Specified data directory &quot;%s&quot; does not exist.</source>
<context-group purpose="location"><context context-type="linenumber">353</context></context-group>
</trans-unit>
<trans-unit id="_msg1166">
- <source xml:space="preserve">This is the transaction fee you will pay if you send a transaction.</source>
+ <source xml:space="preserve">Starting network threads…</source>
<context-group purpose="location"><context context-type="linenumber">354</context></context-group>
</trans-unit>
<trans-unit id="_msg1167">
- <source xml:space="preserve">Transaction amount too small</source>
+ <source xml:space="preserve">The source code is available from %s.</source>
<context-group purpose="location"><context context-type="linenumber">355</context></context-group>
</trans-unit>
<trans-unit id="_msg1168">
- <source xml:space="preserve">Transaction amounts must not be negative</source>
+ <source xml:space="preserve">The specified config file %s does not exist</source>
<context-group purpose="location"><context context-type="linenumber">356</context></context-group>
</trans-unit>
<trans-unit id="_msg1169">
- <source xml:space="preserve">Transaction change output index out of range</source>
+ <source xml:space="preserve">The transaction amount is too small to pay the fee</source>
<context-group purpose="location"><context context-type="linenumber">357</context></context-group>
</trans-unit>
<trans-unit id="_msg1170">
- <source xml:space="preserve">Transaction has too long of a mempool chain</source>
+ <source xml:space="preserve">The wallet will avoid paying less than the minimum relay fee.</source>
<context-group purpose="location"><context context-type="linenumber">358</context></context-group>
</trans-unit>
<trans-unit id="_msg1171">
- <source xml:space="preserve">Transaction must have at least one recipient</source>
+ <source xml:space="preserve">This is experimental software.</source>
<context-group purpose="location"><context context-type="linenumber">359</context></context-group>
</trans-unit>
<trans-unit id="_msg1172">
- <source xml:space="preserve">Transaction needs a change address, but we can&apos;t generate it.</source>
+ <source xml:space="preserve">This is the minimum transaction fee you pay on every transaction.</source>
<context-group purpose="location"><context context-type="linenumber">360</context></context-group>
</trans-unit>
<trans-unit id="_msg1173">
- <source xml:space="preserve">Transaction too large</source>
+ <source xml:space="preserve">This is the transaction fee you will pay if you send a transaction.</source>
<context-group purpose="location"><context context-type="linenumber">361</context></context-group>
</trans-unit>
<trans-unit id="_msg1174">
- <source xml:space="preserve">Unable to allocate memory for -maxsigcachesize: &apos;%s&apos; MiB</source>
+ <source xml:space="preserve">Transaction %s does not belong to this wallet</source>
<context-group purpose="location"><context context-type="linenumber">362</context></context-group>
</trans-unit>
<trans-unit id="_msg1175">
- <source xml:space="preserve">Unable to bind to %s on this computer (bind returned error %s)</source>
+ <source xml:space="preserve">Transaction amount too small</source>
<context-group purpose="location"><context context-type="linenumber">363</context></context-group>
</trans-unit>
<trans-unit id="_msg1176">
- <source xml:space="preserve">Unable to bind to %s on this computer. %s is probably already running.</source>
+ <source xml:space="preserve">Transaction amounts must not be negative</source>
<context-group purpose="location"><context context-type="linenumber">364</context></context-group>
</trans-unit>
<trans-unit id="_msg1177">
- <source xml:space="preserve">Unable to create the PID file &apos;%s&apos;: %s</source>
+ <source xml:space="preserve">Transaction change output index out of range</source>
<context-group purpose="location"><context context-type="linenumber">365</context></context-group>
</trans-unit>
<trans-unit id="_msg1178">
- <source xml:space="preserve">Unable to find UTXO for external input</source>
+ <source xml:space="preserve">Transaction must have at least one recipient</source>
<context-group purpose="location"><context context-type="linenumber">366</context></context-group>
</trans-unit>
<trans-unit id="_msg1179">
- <source xml:space="preserve">Unable to generate initial keys</source>
+ <source xml:space="preserve">Transaction needs a change address, but we can&apos;t generate it.</source>
<context-group purpose="location"><context context-type="linenumber">367</context></context-group>
</trans-unit>
<trans-unit id="_msg1180">
- <source xml:space="preserve">Unable to generate keys</source>
+ <source xml:space="preserve">Transaction too large</source>
<context-group purpose="location"><context context-type="linenumber">368</context></context-group>
</trans-unit>
<trans-unit id="_msg1181">
- <source xml:space="preserve">Unable to open %s for writing</source>
+ <source xml:space="preserve">Unable to allocate memory for -maxsigcachesize: &apos;%s&apos; MiB</source>
<context-group purpose="location"><context context-type="linenumber">369</context></context-group>
</trans-unit>
<trans-unit id="_msg1182">
- <source xml:space="preserve">Unable to parse -maxuploadtarget: &apos;%s&apos;</source>
+ <source xml:space="preserve">Unable to bind to %s on this computer (bind returned error %s)</source>
<context-group purpose="location"><context context-type="linenumber">370</context></context-group>
</trans-unit>
<trans-unit id="_msg1183">
- <source xml:space="preserve">Unable to start HTTP server. See debug log for details.</source>
+ <source xml:space="preserve">Unable to bind to %s on this computer. %s is probably already running.</source>
<context-group purpose="location"><context context-type="linenumber">371</context></context-group>
</trans-unit>
<trans-unit id="_msg1184">
- <source xml:space="preserve">Unable to unload the wallet before migrating</source>
+ <source xml:space="preserve">Unable to create the PID file &apos;%s&apos;: %s</source>
<context-group purpose="location"><context context-type="linenumber">372</context></context-group>
</trans-unit>
<trans-unit id="_msg1185">
- <source xml:space="preserve">Unknown -blockfilterindex value %s.</source>
+ <source xml:space="preserve">Unable to find UTXO for external input</source>
<context-group purpose="location"><context context-type="linenumber">373</context></context-group>
</trans-unit>
<trans-unit id="_msg1186">
- <source xml:space="preserve">Unknown address type &apos;%s&apos;</source>
+ <source xml:space="preserve">Unable to generate initial keys</source>
<context-group purpose="location"><context context-type="linenumber">374</context></context-group>
</trans-unit>
<trans-unit id="_msg1187">
- <source xml:space="preserve">Unknown change type &apos;%s&apos;</source>
+ <source xml:space="preserve">Unable to generate keys</source>
<context-group purpose="location"><context context-type="linenumber">375</context></context-group>
</trans-unit>
<trans-unit id="_msg1188">
- <source xml:space="preserve">Unknown network specified in -onlynet: &apos;%s&apos;</source>
+ <source xml:space="preserve">Unable to open %s for writing</source>
<context-group purpose="location"><context context-type="linenumber">376</context></context-group>
</trans-unit>
<trans-unit id="_msg1189">
- <source xml:space="preserve">Unknown new rules activated (versionbit %i)</source>
+ <source xml:space="preserve">Unable to parse -maxuploadtarget: &apos;%s&apos;</source>
<context-group purpose="location"><context context-type="linenumber">377</context></context-group>
</trans-unit>
<trans-unit id="_msg1190">
- <source xml:space="preserve">Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <source xml:space="preserve">Unable to start HTTP server. See debug log for details.</source>
<context-group purpose="location"><context context-type="linenumber">378</context></context-group>
</trans-unit>
<trans-unit id="_msg1191">
- <source xml:space="preserve">acceptstalefeeestimates is not supported on %s chain.</source>
- <context-group purpose="location"><context context-type="linenumber">384</context></context-group>
+ <source xml:space="preserve">Unable to unload the wallet before migrating</source>
+ <context-group purpose="location"><context context-type="linenumber">379</context></context-group>
</trans-unit>
<trans-unit id="_msg1192">
- <source xml:space="preserve">Unsupported logging category %s=%s.</source>
- <context-group purpose="location"><context context-type="linenumber">379</context></context-group>
+ <source xml:space="preserve">Unknown -blockfilterindex value %s.</source>
+ <context-group purpose="location"><context context-type="linenumber">380</context></context-group>
</trans-unit>
<trans-unit id="_msg1193">
- <source xml:space="preserve">User Agent comment (%s) contains unsafe characters.</source>
- <context-group purpose="location"><context context-type="linenumber">380</context></context-group>
+ <source xml:space="preserve">Unknown address type &apos;%s&apos;</source>
+ <context-group purpose="location"><context context-type="linenumber">381</context></context-group>
</trans-unit>
<trans-unit id="_msg1194">
- <source xml:space="preserve">Verifying blocks…</source>
- <context-group purpose="location"><context context-type="linenumber">381</context></context-group>
+ <source xml:space="preserve">Unknown change type &apos;%s&apos;</source>
+ <context-group purpose="location"><context context-type="linenumber">382</context></context-group>
</trans-unit>
<trans-unit id="_msg1195">
- <source xml:space="preserve">Verifying wallet(s)…</source>
- <context-group purpose="location"><context context-type="linenumber">382</context></context-group>
+ <source xml:space="preserve">Unknown network specified in -onlynet: &apos;%s&apos;</source>
+ <context-group purpose="location"><context context-type="linenumber">383</context></context-group>
</trans-unit>
<trans-unit id="_msg1196">
- <source xml:space="preserve">Wallet needed to be rewritten: restart %s to complete</source>
- <context-group purpose="location"><context context-type="linenumber">383</context></context-group>
+ <source xml:space="preserve">Unknown new rules activated (versionbit %i)</source>
+ <context-group purpose="location"><context context-type="linenumber">384</context></context-group>
</trans-unit>
<trans-unit id="_msg1197">
- <source xml:space="preserve">Settings file could not be read</source>
- <context-group purpose="location"><context context-type="linenumber">339</context></context-group>
+ <source xml:space="preserve">Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <context-group purpose="location"><context context-type="linenumber">385</context></context-group>
</trans-unit>
<trans-unit id="_msg1198">
+ <source xml:space="preserve">Wallet file creation failed: %s</source>
+ <context-group purpose="location"><context context-type="linenumber">390</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1199">
+ <source xml:space="preserve">acceptstalefeeestimates is not supported on %s chain.</source>
+ <context-group purpose="location"><context context-type="linenumber">392</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1200">
+ <source xml:space="preserve">Unsupported logging category %s=%s.</source>
+ <context-group purpose="location"><context context-type="linenumber">386</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1201">
+ <source xml:space="preserve">Error: Could not add watchonly tx %s to watchonly wallet</source>
+ <context-group purpose="location"><context context-type="linenumber">276</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1202">
+ <source xml:space="preserve">Error: Could not delete watchonly transactions. </source>
+ <context-group purpose="location"><context context-type="linenumber">277</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1203">
+ <source xml:space="preserve">User Agent comment (%s) contains unsafe characters.</source>
+ <context-group purpose="location"><context context-type="linenumber">387</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1204">
+ <source xml:space="preserve">Verifying blocks…</source>
+ <context-group purpose="location"><context context-type="linenumber">388</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1205">
+ <source xml:space="preserve">Verifying wallet(s)…</source>
+ <context-group purpose="location"><context context-type="linenumber">389</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1206">
+ <source xml:space="preserve">Wallet needed to be rewritten: restart %s to complete</source>
+ <context-group purpose="location"><context context-type="linenumber">391</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1207">
+ <source xml:space="preserve">Settings file could not be read</source>
+ <context-group purpose="location"><context context-type="linenumber">346</context></context-group>
+ </trans-unit>
+ <trans-unit id="_msg1208">
<source xml:space="preserve">Settings file could not be written</source>
- <context-group purpose="location"><context context-type="linenumber">340</context></context-group>
+ <context-group purpose="location"><context context-type="linenumber">347</context></context-group>
</trans-unit>
</group>
</body></file>
diff --git a/src/qt/locale/bitcoin_eo.ts b/src/qt/locale/bitcoin_eo.ts
index 034f435b86..3b44647095 100644
--- a/src/qt/locale/bitcoin_eo.ts
+++ b/src/qt/locale/bitcoin_eo.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Elekti</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Sendaj adresoj</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Ricevaj adresoj</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Jen viaj Bitmon-adresoj por sendi pagojn. Zorge kontrolu la sumon kaj la alsendan adreson antaŭ ol sendi.</translation>
</message>
@@ -601,10 +593,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Krompago:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Post krompago:</translation>
</message>
@@ -669,10 +657,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopii bajtojn</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopii polvon</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopii restmonon</translation>
</message>
@@ -681,14 +665,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 ŝlosita)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">jes</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ne</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(neniu etikedo)</translation>
</message>
@@ -1164,6 +1140,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Fermi</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">propra adreso</translation>
+ </message>
+ <message>
<source>Total Amount</source>
<translation type="unfinished">Totala Sumo</translation>
</message>
@@ -1534,10 +1514,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Malplenigi ĉiujn kampojn de la formularo.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>Clear &amp;All</source>
<translation type="unfinished">&amp;Forigi Ĉion</translation>
</message>
@@ -1574,10 +1550,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopii bajtojn</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopii polvon</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopii restmonon</translation>
</message>
@@ -1956,10 +1928,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Sendita al</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pago al vi mem</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minita</translation>
</message>
@@ -2023,10 +1991,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Sendita al</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Al vi mem</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minita</translation>
</message>
diff --git a/src/qt/locale/bitcoin_es.ts b/src/qt/locale/bitcoin_es.ts
index 52a4c6adcf..001906ba25 100644
--- a/src/qt/locale/bitcoin_es.ts
+++ b/src/qt/locale/bitcoin_es.ts
@@ -3,7 +3,7 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">Pulsación secundaria para editar la dirección o etiqueta</translation>
+ <translation type="unfinished">Pulse con el botón secundario para editar la dirección o etiqueta</translation>
</message>
<message>
<source>Create a new address</source>
@@ -27,7 +27,7 @@
</message>
<message>
<source>Delete the currently selected address from the list</source>
- <translation type="unfinished">Eliminar de la lista la dirección actualmente seleccionada</translation>
+ <translation type="unfinished">Eliminar la dirección del listado actualmente seleccionada</translation>
</message>
<message>
<source>Enter address or label to search</source>
@@ -58,22 +58,14 @@
<translation type="unfinished">&amp;Elegir</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Direcciones de envío</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Direcciones de recepción</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
- <translation type="unfinished">Estas son tus direcciones Bitcoin para enviar pagos. Comprueba siempre el importe y la dirección de recepción antes de transferir monedas.</translation>
+ <translation type="unfinished">Esta es tus dirección Bitcoin para enviar pagos. Comprueba siempre el importe y la dirección de recepción antes de hacer una transferencia de monedas.</translation>
</message>
<message>
<source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
Signing is only possible with addresses of the type 'legacy'.</source>
- <translation type="unfinished">Estas son tus direcciones Bitcoin para la recepción de pagos. Utilice el botón «Crear una nueva dirección para recepción» en la pestaña «Recibir» para crear direcciones nuevas.
-Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
+ <translation type="unfinished">Estas son tus direcciones Bitcoin para recibir pagos. Utilice el botón «Crear una nueva dirección para recepción» en la pestaña «Recibir»
+La firma sólo es posible con direcciones del tipo 'legacy'.</translation>
</message>
<message>
<source>&amp;Copy Address</source>
@@ -89,7 +81,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Export Address List</source>
- <translation type="unfinished">Exportar listado de direcciones</translation>
+ <translation type="unfinished">Exportar Lista de Direcciones</translation>
</message>
<message>
<source>Comma separated file</source>
@@ -99,7 +91,11 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<message>
<source>There was an error trying to save the address list to %1. Please try again.</source>
<extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
- <translation type="unfinished">Hubo un error al intentar guardar el listado de direcciones a %1. Por favor, inténtalo de nuevo.</translation>
+ <translation type="unfinished">Hubo un error al intentar guardar la lista de direcciones %1. Por favor, inténtalo nuevamente.</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Direcciones de recepción - %1</translation>
</message>
<message>
<source>Exporting Failed</source>
@@ -185,11 +181,11 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
- <translation type="unfinished">Recuerda que cifrar tu monedero no garantiza la protección de tus bitcoins si tu ordenador es infectado con malware.</translation>
+ <translation type="unfinished">Recuerda que cifrar tu monedero no garantiza la protección de tus bitcoin si tu equipo está infectado con malware.</translation>
</message>
<message>
<source>Wallet to be encrypted</source>
- <translation type="unfinished">Monedero a cifrar</translation>
+ <translation type="unfinished">Monedero a ser cifrado</translation>
</message>
<message>
<source>Your wallet is about to be encrypted. </source>
@@ -201,7 +197,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
- <translation type="unfinished">IMPORTANTE: Cualquier respaldo que hayas hecho del archivo de tu monedero debe ser reemplazada por el archivo cifrado del monedero recién generado. Por razones de seguridad, los respaldos anteriores del archivo del monedero sin cifrar serán inútiles cuando empieces a usar el nuevo monedero cifrado.</translation>
+ <translation type="unfinished">IMPORTANTE: Cualquier respaldo que hayas hecho del archivo de tu monedero debe ser reemplazada por el archivo cifrado del monedero recién generado. Por razones de seguridad, los respaldos anteriores del archivo monedero sin cifrar serán inútiles cuando empieces a usar el monedero cifrado nuevo.</translation>
</message>
<message>
<source>Wallet encryption failed</source>
@@ -225,11 +221,11 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
- <translation type="unfinished">La contraseña ingresada para el descifrado de la billetera es incorrecta. Contiene un carácter nulo (es decir, un byte cero). Si la frase de contraseña se configuró con una versión de este software anterior a la 25.0, vuelva a intentarlo solo con los caracteres hasta el primer carácter nulo, -- pero sin incluirlo-- . Si esto tiene éxito, establezca una nueva contraseña para evitar este problema en el futuro.</translation>
+ <translation type="unfinished">La contraseña ingresada para el descifrado del monedero es incorrecta. Contiene un carácter nulo (es decir, un byte cero). Si la frase de contraseña se configuró con una versión de este software anterior a la 25.0, vuelva a intentarlo solo con los caracteres hasta el primer carácter nulo, --pero sin incluirlo--. Si esto es correcto, establezca una contraseña nueva para evitar este problema en el futuro.</translation>
</message>
<message>
<source>Wallet passphrase was successfully changed.</source>
- <translation type="unfinished">La frase-contraseña de la billetera ha sido cambiada.</translation>
+ <translation type="unfinished">La frase-contraseña del monedero ha sido cambiada.</translation>
</message>
<message>
<source>Passphrase change failed</source>
@@ -237,7 +233,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
- <translation type="unfinished">La contraseña antigua ingresada para el descifrado de la billetera es incorrecta. Contiene un carácter nulo (es decir, un byte cero). Si la frase de contraseña se configuró con una versión de este software anterior a la 25.0, vuelva a intentarlo solo con los caracteres hasta el primer carácter nulo, -- pero sin incluirlo-- .</translation>
+ <translation type="unfinished">La contraseña antigua ingresada para el descifrado del monedero es incorrecta. Contiene un carácter nulo (es decir, un byte cero). Si la frase de contraseña se configuró con una versión de este software anterior a la 25.0, vuelva a intentarlo solo con los caracteres hasta el primer carácter nulo, --pero sin incluirlo--.</translation>
</message>
<message>
<source>Warning: The Caps Lock key is on!</source>
@@ -344,10 +340,6 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<source>None</source>
<translation type="unfinished">Ninguno</translation>
</message>
- <message>
- <source>N/A</source>
- <translation type="unfinished">N/D</translation>
- </message>
<message numerus="yes">
<source>%n second(s)</source>
<translation type="unfinished">
@@ -390,7 +382,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<message numerus="yes">
<source>%n year(s)</source>
<translation type="unfinished">
- <numerusform>%n años</numerusform>
+ <numerusform>%n año</numerusform>
<numerusform>%n años</numerusform>
</translation>
</message>
@@ -496,15 +488,15 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>&amp;Backup Wallet…</source>
- <translation type="unfinished">&amp;Respaldar monedero</translation>
+ <translation type="unfinished">&amp;Respaldar monedero…</translation>
</message>
<message>
<source>&amp;Change Passphrase…</source>
- <translation type="unfinished">&amp;Cambiar frase-contraseña...</translation>
+ <translation type="unfinished">&amp;Cambiar frase-contraseña…</translation>
</message>
<message>
<source>Sign &amp;message…</source>
- <translation type="unfinished">Firmar &amp;mensaje...</translation>
+ <translation type="unfinished">Firmar &amp;mensaje…</translation>
</message>
<message>
<source>Sign messages with your Bitcoin addresses to prove you own them</source>
@@ -512,7 +504,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>&amp;Verify message…</source>
- <translation type="unfinished">&amp;Verificar mensaje...</translation>
+ <translation type="unfinished">&amp;Verificar mensaje…</translation>
</message>
<message>
<source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
@@ -564,15 +556,15 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Indexing blocks on disk…</source>
- <translation type="unfinished">Indexando bloques en disco...</translation>
+ <translation type="unfinished">Indexando bloques en disco…</translation>
</message>
<message>
<source>Processing blocks on disk…</source>
- <translation type="unfinished">Procesando bloques en disco...</translation>
+ <translation type="unfinished">Procesando bloques en disco…</translation>
</message>
<message>
<source>Connecting to peers…</source>
- <translation type="unfinished">Conectando con parejas...</translation>
+ <translation type="unfinished">Conectando con parejas…</translation>
</message>
<message>
<source>Request payments (generates QR codes and bitcoin: URIs)</source>
@@ -603,7 +595,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Catching up…</source>
- <translation type="unfinished">Poniéndose al día...</translation>
+ <translation type="unfinished">Poniéndose al día…</translation>
</message>
<message>
<source>Last received block was generated %1 ago.</source>
@@ -631,7 +623,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Load PSBT from &amp;clipboard…</source>
- <translation type="unfinished">Cargar TBPF desde &amp;portapapeles...</translation>
+ <translation type="unfinished">Cargar PSBT desde &amp;portapapeles...</translation>
</message>
<message>
<source>Load Partially Signed Bitcoin Transaction from clipboard</source>
@@ -684,8 +676,16 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar una billetera</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">Muestra el mensaje %1 de ayuda para obtener un listado con las opciones posibles de la línea de instrucciones de Bitcoin.</translation>
+ <translation type="unfinished">Muestra el mensaje de ayuda %1 para obtener una lista con posibles opciones de línea de comandos de Bitcoin.</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -693,7 +693,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Mask the values in the Overview tab</source>
- <translation type="unfinished">Esconder los valores de la ventana de previsualización</translation>
+ <translation type="unfinished">Ocultar los valores de la ventana de previsualización</translation>
</message>
<message>
<source>default wallet</source>
@@ -711,7 +711,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<message>
<source>Load Wallet Backup</source>
<extracomment>The title for Restore Wallet File Windows</extracomment>
- <translation type="unfinished">Cargar respaldo del monedero</translation>
+ <translation type="unfinished">Cargar copia de seguridad del monedero</translation>
</message>
<message>
<source>Restore Wallet</source>
@@ -728,6 +728,10 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">&amp;Ventana</translation>
</message>
<message>
+ <source>Zoom</source>
+ <translation type="unfinished">Acercar</translation>
+ </message>
+ <message>
<source>Main Window</source>
<translation type="unfinished">Ventana principal</translation>
</message>
@@ -747,24 +751,24 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n conexión activa con la red de Bitcoin.</numerusform>
- <numerusform>%n conexiónes activas con la red de Bitcoin.</numerusform>
+ <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
</translation>
</message>
<message>
<source>Click for more actions.</source>
<extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
- <translation type="unfinished">Pulse para ver más acciones.</translation>
+ <translation type="unfinished">Haz clic para ver más acciones.</translation>
</message>
<message>
<source>Show Peers tab</source>
<extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
- <translation type="unfinished">Mostrar pestaña de parejas</translation>
+ <translation type="unfinished">Mostrar pestaña de pares</translation>
</message>
<message>
<source>Disable network activity</source>
<extracomment>A context menu item.</extracomment>
- <translation type="unfinished">Deshabilita la actividad de la red</translation>
+ <translation type="unfinished">Desactivar la actividad de la red</translation>
</message>
<message>
<source>Enable network activity</source>
@@ -776,6 +780,14 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">Presincronizando cabeceras (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Error al crear billetera</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">No se puede crear una nueva billetera, el software se compiló sin soporte sqlite (requerido para billeteras descriptivas)</translation>
+ </message>
+ <message>
<source>Warning: %1</source>
<translation type="unfinished">Advertencia: %1</translation>
</message>
@@ -874,12 +886,8 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">Comisión:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>After Fee:</source>
- <translation type="unfinished">Después de la comisión:</translation>
+ <translation type="unfinished">Tras la comisión:</translation>
</message>
<message>
<source>Change:</source>
@@ -943,7 +951,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>L&amp;ock unspent</source>
- <translation type="unfinished">Bl&amp;oquear no gastado</translation>
+ <translation type="unfinished">Bl&amp;oquear lo no gastado</translation>
</message>
<message>
<source>&amp;Unlock unspent</source>
@@ -966,10 +974,6 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar polvo</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -978,14 +982,6 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">sí</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta se vuelve roja si algún receptor recibe un importe inferior al umbral actual establecido para el polvo.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Puede variar en +/- %1 satoshi(s) por entrada.</translation>
</message>
@@ -1007,7 +1003,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<message>
<source>Create Wallet</source>
<extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
- <translation type="unfinished">Crear monedero</translation>
+ <translation type="unfinished">Crear Monedero</translation>
</message>
<message>
<source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -1016,7 +1012,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Create wallet failed</source>
- <translation type="unfinished">Fallo al crear monedero</translation>
+ <translation type="unfinished">Error al crear monedero</translation>
</message>
<message>
<source>Create wallet warning</source>
@@ -1045,6 +1041,57 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">¿Estás seguro de que deseas migrar el monedero &lt;i&gt;%1&lt;/i&gt; ?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migración de la billetera la convertirá en una o más billeteras basadas en descriptores. Será necesario realizar una nueva copia de seguridad de la billetera.
+Si esta billetera contiene scripts solo de lectura, se creará una nueva billetera que los contenga.
+Si esta billetera contiene scripts solucionables pero no de lectura, se creará una nueva billetera diferente que los contenga.
+
+El proceso de migración creará una copia de seguridad de la billetera antes de migrar. Este archivo de copia de seguridad se llamará &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak y se encontrará en el directorio de esta billetera. En el caso de una migración incorrecta, la copia de seguridad puede restaurarse con la funcionalidad "Restore Wallet" (Restaurar billetera).</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">La migración de la billetera "%1" se realizó correctamente.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solo de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solucionables pero no de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migración errónea</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migración correcta</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1056,17 +1103,17 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">Monedero predeterminado</translation>
+ <translation type="unfinished">monedero predeterminado</translation>
</message>
<message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Abrir Monedero</translation>
+ <translation type="unfinished">Abrir monedero</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
- <translation type="unfinished">Abriendo Monedero &lt;b&gt;%1&lt;/b&gt;...</translation>
+ <translation type="unfinished">Abriendo monedero &lt;b&gt;%1&lt;/b&gt;...</translation>
</message>
</context>
<context>
@@ -1127,8 +1174,16 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">Crear Monedero</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Estás a un paso de crear tu nueva billetera.</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Escribe un nombre y, si lo deseas, activa las opciones avanzadas.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">Nombre del Monedero</translation>
+ <translation type="unfinished">Nombre del monedero</translation>
</message>
<message>
<source>Wallet</source>
@@ -1152,7 +1207,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Disable Private Keys</source>
- <translation type="unfinished">Deshabilita las Llaves Privadas</translation>
+ <translation type="unfinished">Deshabilita las Claves Privadas</translation>
</message>
<message>
<source>Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time.</source>
@@ -1163,14 +1218,6 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">Crear monedero vacío</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Use descriptores para la gestión de scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Descriptor del monedero</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Utiliza un dispositivo de firma externo, como un monedero de hardware. Configura primero el script del firmante externo en las preferencias del monedero.</translation>
</message>
@@ -1183,10 +1230,6 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">Crear</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilado sin soporte de sqlite (requerido para billeteras descriptoras)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilado sin soporte de firma externa (necesario para la firma externa)</translation>
@@ -1204,11 +1247,11 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>The label associated with this address list entry</source>
- <translation type="unfinished">La etiqueta asociada con esta entrada en la libreta</translation>
+ <translation type="unfinished">La etiqueta asociada con este apunte en la libreta</translation>
</message>
<message>
<source>The address associated with this address list entry. This can only be modified for sending addresses.</source>
- <translation type="unfinished">La dirección asociada con esta entrada en la guía. Solo puede ser modificada para direcciones de envío.</translation>
+ <translation type="unfinished">La dirección asociada con este apunte en la guía. Solo puede ser modificada para direcciones de envío.</translation>
</message>
<message>
<source>&amp;Address</source>
@@ -1220,23 +1263,23 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Edit receiving address</source>
- <translation type="unfinished">Editar dirección de recivimiento</translation>
+ <translation type="unfinished">Editar dirección de recibimiento</translation>
</message>
<message>
<source>Edit sending address</source>
- <translation type="unfinished">Editar dirección de envio</translation>
+ <translation type="unfinished">Editar dirección de envío</translation>
</message>
<message>
<source>The entered address "%1" is not a valid Bitcoin address.</source>
- <translation type="unfinished">La dirección introducida "%1" no es una dirección Bitcoin válida.</translation>
+ <translation type="unfinished">La dirección introducida «%1» no es una dirección Bitcoin válida.</translation>
</message>
<message>
<source>Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address.</source>
- <translation type="unfinished">La dirección "%1" ya existe como dirección de recepción con la etiqueta "%2" y, por lo tanto, no se puede agregar como dirección de envío.</translation>
+ <translation type="unfinished">La dirección «%1» ya existe como dirección de recepción con la etiqueta «%2» y, por lo tanto, no se puede agregar como dirección de envío.</translation>
</message>
<message>
<source>The entered address "%1" is already in the address book with label "%2".</source>
- <translation type="unfinished">La dirección ingresada "%1" ya está en la libreta de direcciones con la etiqueta "%2".</translation>
+ <translation type="unfinished">La dirección ingresada «%1» ya está en la libreta de direcciones con la etiqueta «%2».</translation>
</message>
<message>
<source>Could not unlock wallet.</source>
@@ -1275,8 +1318,8 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<message numerus="yes">
<source>%n GB of space available</source>
<translation type="unfinished">
- <numerusform>%n GB de espacio disponible</numerusform>
- <numerusform>%n GB de espacio disponible</numerusform>
+ <numerusform>%n GB of space available</numerusform>
+ <numerusform>%n GB of space available</numerusform>
</translation>
</message>
<message numerus="yes">
@@ -1342,6 +1385,10 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<translation type="unfinished">Limitar el almacenamiento de cadena de bloques a</translation>
</message>
<message>
+ <source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
+ <translation type="unfinished">Revertir este parámetro requiere re-descargar la cadena de bloque completa. Es más rápido descargar primero la cadena completa y podarla después. Desactiva algunas características avanzadas.</translation>
+ </message>
+ <message>
<source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
<translation type="unfinished">La sincronización inicial está muy demandada, y puede exponer problemas del hardware con su equipo que tuvo anteriormente se colgó de forma inadvertida. Cada vez que ejecuta %1, continuará descargándose donde éste se detuvo.</translation>
</message>
@@ -1381,7 +1428,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<name>ShutdownWindow</name>
<message>
<source>%1 is shutting down…</source>
- <translation type="unfinished">%1 se está cerrando...</translation>
+ <translation type="unfinished">%1 se está apagando...</translation>
</message>
<message>
<source>Do not shut down the computer until this window disappears.</source>
@@ -1471,7 +1518,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Automatically start %1 after logging in to the system.</source>
- <translation type="unfinished">Iniciar automáticamente %1 después de iniciar sesión en el sistema.</translation>
+ <translation type="unfinished">Iniciar automáticamente %1 tras iniciar sesión en el sistema.</translation>
</message>
<message>
<source>&amp;Start %1 on system login</source>
@@ -1511,7 +1558,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Open the %1 configuration file from the working directory.</source>
- <translation type="unfinished">Abrir el archivo de configuración %1 en el directorio de trabajo.</translation>
+ <translation type="unfinished">Abrir el %1archivo de configuración en el directorio de trabajo.</translation>
</message>
<message>
<source>Open Configuration File</source>
@@ -1540,7 +1587,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
<message>
<source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
<extracomment>Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</extracomment>
- <translation type="unfinished">Tamaño máximo de la caché de la base de datos. Una caché más grande puede contribuir a una sincronización más rápida, después de lo cual el beneficio es menos pronunciado para la mayoría de los casos de uso. Disminuir el tamaño de la caché reducirá el uso de la memoria. La memoria de la piscina de memoria no utilizada se comparte para esta caché.</translation>
+ <translation type="unfinished">Tamaño máximo de la caché de la base de datos. Una caché más grande puede contribuir a una sincronización más rápida, después de lo cual el beneficio es menos pronunciado para la mayoría de los casos de uso. Disminuir el tamaño de la caché reducirá el uso de la memoria. La compartición de memoria no utilizada se comparte para esta caché.</translation>
</message>
<message>
<source>Set the number of script verification threads. Negative values correspond to the number of cores you want to leave free to the system.</source>
@@ -1603,7 +1650,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>External Signer (e.g. hardware wallet)</source>
- <translation type="unfinished">Dispositivo externo de firma (ej. billetera de hardware)</translation>
+ <translation type="unfinished">Dispositivo externo de firma (ej. monedero de hardware)</translation>
</message>
<message>
<source>&amp;External signer script path</source>
@@ -1611,7 +1658,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
- <translation type="unfinished">Abrir automáticamente el puerto del cliente Bitcoin en el router. Esta opción solo funciona cuando el router admite UPnP y está activado.</translation>
+ <translation type="unfinished">Abrir automáticamente el puerto del cliente Bitcoin en el enrutador. Esta opción solo funciona cuando el enrutado admite UPnP y está activado.</translation>
</message>
<message>
<source>Map port using &amp;UPnP</source>
@@ -1619,7 +1666,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
- <translation type="unfinished">Abre el puerto del cliente de Bitcoin en el router automáticamente. Esto solo funciona cuando el router soporta NAT-PMP y está activo. El puerto externo podría ser elegido al azar.</translation>
+ <translation type="unfinished">Abre el puerto del cliente de Bitcoin en el enrutado automáticamente. Esto solo funciona cuando el enrutado soporta NAT-PMP y está activo. El puerto externo podría ser elegido al azar.</translation>
</message>
<message>
<source>Map port using NA&amp;T-PMP</source>
@@ -1643,7 +1690,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Proxy &amp;IP:</source>
- <translation type="unfinished">&amp;IP proxy::</translation>
+ <translation type="unfinished">IP &amp;Proxy:</translation>
</message>
<message>
<source>&amp;Port:</source>
@@ -1683,7 +1730,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>&amp;Display</source>
- <translation type="unfinished">&amp;Mostrar</translation>
+ <translation type="unfinished">&amp;Representar</translation>
</message>
<message>
<source>User Interface &amp;language:</source>
@@ -1911,11 +1958,11 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Failed to load transaction: %1</source>
- <translation type="unfinished">Error en la carga de la transacción: %1</translation>
+ <translation type="unfinished">Error en la carga de transacción: %1</translation>
</message>
<message>
<source>Failed to sign transaction: %1</source>
- <translation type="unfinished">Error en la firma de la transacción: %1</translation>
+ <translation type="unfinished">Error en la firma de transacción: %1</translation>
</message>
<message>
<source>Cannot sign inputs while wallet is locked.</source>
@@ -1947,11 +1994,11 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>PSBT copied to clipboard.</source>
- <translation type="unfinished">TBPF copiado al portapapeles</translation>
+ <translation type="unfinished">PSBT copiado al portapapeles</translation>
</message>
<message>
<source>Save Transaction Data</source>
- <translation type="unfinished">Guardar datos de la transacción</translation>
+ <translation type="unfinished">Guardar la transacción de datos</translation>
</message>
<message>
<source>Partially Signed Transaction (Binary)</source>
@@ -1960,19 +2007,23 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>PSBT saved to disk.</source>
- <translation type="unfinished">TBPF guardado en disco.</translation>
+ <translation type="unfinished">PSBT guardado en disco.</translation>
</message>
<message>
<source> * Sends %1 to %2</source>
<translation type="unfinished">* Envia %1 a %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">mi dirección</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">No se ha podido calcular la comisión por transacción o la totalidad del importe de la transacción.</translation>
</message>
<message>
<source>Pays transaction fee: </source>
- <translation type="unfinished">Pagar comisión de transacción:</translation>
+ <translation type="unfinished">Pagar comisión por transacción:</translation>
</message>
<message>
<source>Total Amount</source>
@@ -2023,7 +2074,7 @@ Firmar solo es posible con direcciones del tipo «Heredadas».</translation>
</message>
<message>
<source>Cannot start bitcoin: click-to-pay handler</source>
- <translation type="unfinished">No se puede iniciar bitcoin: controlador clic-para-pagar</translation>
+ <translation type="unfinished">No se puede iniciar bitcoin: controlador pulsar-para-pagar</translation>
</message>
<message>
<source>URI handling</source>
@@ -2058,11 +2109,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Agente del usuario</translation>
</message>
<message>
- <source>Peer</source>
- <extracomment>Title of Peers Table column which contains a unique number used to identify a connection.</extracomment>
- <translation type="unfinished">Pareja</translation>
- </message>
- <message>
<source>Age</source>
<extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
<translation type="unfinished">Duración</translation>
@@ -2075,7 +2121,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<message>
<source>Sent</source>
<extracomment>Title of Peers Table column which indicates the total amount of network information we have sent to the peer.</extracomment>
- <translation type="unfinished">Enviado</translation>
+ <translation type="unfinished">Enviar</translation>
</message>
<message>
<source>Received</source>
@@ -2112,11 +2158,11 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<name>QRImageWidget</name>
<message>
<source>&amp;Save Image…</source>
- <translation type="unfinished">&amp;Guardar imagen...</translation>
+ <translation type="unfinished">&amp;Guardar imagen…</translation>
</message>
<message>
<source>&amp;Copy Image</source>
- <translation type="unfinished">&amp;Copiar Imagen</translation>
+ <translation type="unfinished">&amp;Copiar imagen</translation>
</message>
<message>
<source>Resulting URI too long, try to reduce the text for label / message.</source>
@@ -2143,10 +2189,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<context>
<name>RPCConsole</name>
<message>
- <source>N/A</source>
- <translation type="unfinished">N/D</translation>
- </message>
- <message>
<source>Client version</source>
<translation type="unfinished">Versión del cliente</translation>
</message>
@@ -2155,10 +2197,18 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">&amp;Información</translation>
</message>
<message>
+ <source>Datadir</source>
+ <translation type="unfinished">Directorio de datos</translation>
+ </message>
+ <message>
<source>To specify a non-default location of the data directory use the '%1' option.</source>
<translation type="unfinished">Para especificar una localización personalizada del directorio de datos, usa la opción «%1».</translation>
</message>
<message>
+ <source>Blocksdir</source>
+ <translation type="unfinished">Dirección de Bloque</translation>
+ </message>
+ <message>
<source>To specify a non-default location of the blocks directory use the '%1' option.</source>
<translation type="unfinished">Para especificar una localización personalizada del directorio de bloques, usa la opción «%1». </translation>
</message>
@@ -2184,7 +2234,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>Memory Pool</source>
- <translation type="unfinished">Piscina de memoria</translation>
+ <translation type="unfinished">Sondeo de memoria</translation>
</message>
<message>
<source>Current number of transactions</source>
@@ -2212,7 +2262,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>Sent</source>
- <translation type="unfinished">Enviado</translation>
+ <translation type="unfinished">Enviar</translation>
</message>
<message>
<source>&amp;Peers</source>
@@ -2220,11 +2270,27 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>Banned peers</source>
- <translation type="unfinished">Pares bloqueados</translation>
+ <translation type="unfinished">Parejas bloqueadas</translation>
</message>
<message>
<source>Select a peer to view detailed information.</source>
- <translation type="unfinished">Selecciona un par para ver la información detallada.</translation>
+ <translation type="unfinished">Selecciona una pareja para ver la información detallada.</translation>
+ </message>
+ <message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versión de la capa de transporte: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Cadena de identificación de la sesión BIP324 en formato hexadecimal, si existe.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">Identificador de sesión</translation>
</message>
<message>
<source>Version</source>
@@ -2236,7 +2302,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>Transaction Relay</source>
- <translation type="unfinished">Relay de Transacción</translation>
+ <translation type="unfinished">Posta de Transacción</translation>
</message>
<message>
<source>Starting Block</source>
@@ -2260,27 +2326,27 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>Mapped AS</source>
- <translation type="unfinished">SA Asignado</translation>
+ <translation type="unfinished"> Distribuido AS</translation>
</message>
<message>
<source>Whether we relay addresses to this peer.</source>
<extracomment>Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
- <translation type="unfinished">Si retransmitimos las direcciones a este par.</translation>
+ <translation type="unfinished">Si retransmitimos las direcciones a este peer.</translation>
</message>
<message>
<source>Address Relay</source>
<extracomment>Text title for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
- <translation type="unfinished">Transmisión de la dirección</translation>
+ <translation type="unfinished">Dirección de Transmisión </translation>
</message>
<message>
<source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
<extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
- <translation type="unfinished">El número total de direcciones recibidas desde este par que han sido procesadas (excluyendo las direcciones que han sido desestimadas debido a la limitación de velocidad).</translation>
+ <translation type="unfinished">El número total de direcciones recibidas desde esta pareja que han sido procesadas (excluyendo las direcciones que han sido desestimadas debido a la limitación de proporción).</translation>
</message>
<message>
<source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
<extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">El número total de direcciones recibidas desde este par que han sido desestimadas (no procesadas) debido a la limitación de velocidad.</translation>
+ <translation type="unfinished">El número total de direcciones recibidas desde esta pareja que han sido desestimadas (no procesadas) debido a la limitación de proporción.</translation>
</message>
<message>
<source>Addresses Processed</source>
@@ -2310,7 +2376,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>Decrease font size</source>
- <translation type="unfinished">Reducir el tamaño de la fuente</translation>
+ <translation type="unfinished">Reducir el tamaño de la tipografía</translation>
</message>
<message>
<source>Increase font size</source>
@@ -2322,7 +2388,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>The direction and type of peer connection: %1</source>
- <translation type="unfinished">La dirección y tipo de conexión del par: %1</translation>
+ <translation type="unfinished">La dirección y tipo de conexión de la pareja: %1</translation>
</message>
<message>
<source>Direction/Type</source>
@@ -2359,7 +2425,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<message>
<source>Elapsed time since a novel transaction accepted into our mempool was received from this peer.</source>
<extracomment>Tooltip text for the Last Transaction field in the peer details area.</extracomment>
- <translation type="unfinished">Tiempo transcurrido desde que se recibió de este par una nueva transacción aceptada en nuestra piscina de memoria.</translation>
+ <translation type="unfinished">Tiempo transcurrido desde que se recibió de esta pareja una nueva transacción aceptada en nuestra memoria compartida.</translation>
</message>
<message>
<source>Last Send</source>
@@ -2387,7 +2453,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>Time Offset</source>
- <translation type="unfinished">Desplazamiento de tiempo</translation>
+ <translation type="unfinished">Desplazamiento de hora</translation>
</message>
<message>
<source>Last block time</source>
@@ -2403,7 +2469,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>&amp;Network Traffic</source>
- <translation type="unfinished">&amp;Tráfico de Red</translation>
+ <translation type="unfinished">&amp;Tráfico de red</translation>
</message>
<message>
<source>Totals</source>
@@ -2428,7 +2494,7 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<message>
<source>Inbound: initiated by peer</source>
<extracomment>Explanatory text for an inbound peer connection.</extracomment>
- <translation type="unfinished">Entrante: iniciado por el par</translation>
+ <translation type="unfinished">Entrante: iniciado por la pareja</translation>
</message>
<message>
<source>Outbound Full Relay: default</source>
@@ -2456,16 +2522,31 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Búsqueda de direcciones de salida: de corta duración, para solicitar direcciones</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Detectando: el par puede ser v1 o v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simple sin cifrar</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte encriptado BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
- <translation type="unfinished">hemos seleccionado el par para la retransmisión de banda ancha</translation>
+ <translation type="unfinished">hemos seleccionado la pareja para la retransmisión por banda ancha</translation>
</message>
<message>
<source>the peer selected us for high bandwidth relay</source>
- <translation type="unfinished">El par nos ha seleccionado para transmisión de banda ancha</translation>
+ <translation type="unfinished">la pareja nos ha seleccionado para transmisión por banda ancha</translation>
</message>
<message>
<source>no high bandwidth relay selected</source>
- <translation type="unfinished">Ninguna transmisión de banda ancha seleccionada</translation>
+ <translation type="unfinished">ninguna transmisión de banda ancha seleccionada</translation>
</message>
<message>
<source>&amp;Copy address</source>
@@ -2495,11 +2576,11 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<message>
<source>&amp;Copy IP/Netmask</source>
<extracomment>Context menu action to copy the IP/Netmask of a banned peer. IP/Netmask is the combination of a peer's IP address and its Netmask. For IP address, see: https://en.wikipedia.org/wiki/IP_address.</extracomment>
- <translation type="unfinished">&amp;Copiar IP/Mascara de red</translation>
+ <translation type="unfinished">&amp;Copiar IP/Netmask</translation>
</message>
<message>
<source>&amp;Unban</source>
- <translation type="unfinished">&amp;Desbloquear</translation>
+ <translation type="unfinished">&amp;Permitir</translation>
</message>
<message>
<source>Network activity disabled</source>
@@ -2507,11 +2588,11 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
</message>
<message>
<source>Executing command without any wallet</source>
- <translation type="unfinished">Ejecutar comando sin monedero</translation>
+ <translation type="unfinished">Ejecutar instrucción sin ningún monedero</translation>
</message>
<message>
<source>Executing command using "%1" wallet</source>
- <translation type="unfinished">Ejecutar comando usando monedero «%1»</translation>
+ <translation type="unfinished">Ejecutar instrucción usando el monedero «%1»</translation>
</message>
<message>
<source>Welcome to the %1 RPC console.
@@ -2525,14 +2606,14 @@ For more information on using this console, type %6.
<translation type="unfinished">Bienvenido a la consola RPC
%1. Utiliza las flechas arriba y abajo para navegar por el historial, y %2 para borrar la pantalla.
Utiliza %3 y %4 para aumentar o disminuir el tamaño de la tipografía.
-Escribe %5 para ver un resumen de las órdenes disponibles. Para más información sobre cómo usar esta consola, escribe %6.
+Escribe %5 para ver un resumen de las instrucciones disponibles. Para más información sobre cómo usar esta consola, escribe %6.
%7 AVISO: Los estafadores han estado activos diciendo a los usuarios que escriban ordenes aquí, robando el contenido de sus monederos. No uses esta consola sin entender completamente las ramificaciones de una instrucción.%8</translation>
</message>
<message>
<source>Executing…</source>
<extracomment>A console message indicating an entered command is currently being executed.</extracomment>
- <translation type="unfinished">Ejecutando...</translation>
+ <translation type="unfinished">Ejecutando…</translation>
</message>
<message>
<source>(peer: %1)</source>
@@ -2552,11 +2633,11 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>From</source>
- <translation type="unfinished">Origen</translation>
+ <translation type="unfinished">Remite</translation>
</message>
<message>
<source>Ban for</source>
- <translation type="unfinished">Bloqueo para</translation>
+ <translation type="unfinished">Prohibido para</translation>
</message>
<message>
<source>Never</source>
@@ -2583,7 +2664,7 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source>
- <translation type="unfinished">Mensaje opcional para agregar a la solicitud de pago, el cual será mostrado cuando la solicitud esté abierta. Nota: El mensaje no se enviará con el pago a través de la red de Bitcoin.</translation>
+ <translation type="unfinished">Mensaje opcional para agregar a la solicitud de pago, el cual será mostrado cuando la solicitud esté abierta. Nota: el mensaje no se enviará con el pago a través de la red de Bitcoin.</translation>
</message>
<message>
<source>An optional label to associate with the new receiving address.</source>
@@ -2591,7 +2672,7 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
- <translation type="unfinished">Usa este formulario para solicitar un pago. Todos los campos son &lt;b&gt;opcionales&lt;/b&gt;.</translation>
+ <translation type="unfinished">Usa este formulario para solicitar un pago. Todos los campos son &lt;b&gt;opcional&lt;/b&gt;.</translation>
</message>
<message>
<source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
@@ -2611,7 +2692,7 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>Clear all fields of the form.</source>
- <translation type="unfinished">Purga todos los campos del formulario.</translation>
+ <translation type="unfinished">Vacía todos los campos del formulario.</translation>
</message>
<message>
<source>Clear</source>
@@ -2631,7 +2712,7 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>Remove the selected entries from the list</source>
- <translation type="unfinished">Eliminar las entradas seleccionadas de la lista</translation>
+ <translation type="unfinished">Eliminar los apuntes seleccionados del listado</translation>
</message>
<message>
<source>Remove</source>
@@ -2658,20 +2739,24 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
<translation type="unfinished">Copiar &amp;importe</translation>
</message>
<message>
+ <source>Base58 (Legacy)</source>
+ <translation type="unfinished">Base58 (Heredado)</translation>
+ </message>
+ <message>
<source>Not recommended due to higher fees and less protection against typos.</source>
<translation type="unfinished">No se recomienda debido a las altas comisiones y la poca protección contra errores tipográficos.</translation>
</message>
<message>
<source>Generates an address compatible with older wallets.</source>
- <translation type="unfinished">Genera una dirección compatible con billeteras más antiguas.</translation>
+ <translation type="unfinished">Genera una dirección compatible con monederos más antiguos.</translation>
</message>
<message>
<source>Generates a native segwit address (BIP-173). Some old wallets don't support it.</source>
- <translation type="unfinished">Genera una dirección segwit nativa (BIP-173). No es compatible con algunas billeteras antiguas.</translation>
+ <translation type="unfinished">Genera una dirección segwit nativa (BIP-173). No es compatible con algunos monederos antiguos.</translation>
</message>
<message>
<source>Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
- <translation type="unfinished">Bech32m (BIP-350) es una actualización de Bech32. La compatibilidad con la billetera todavía es limitada.</translation>
+ <translation type="unfinished">Bech32m (BIP-350) es una actualización de Bech32. La compatibilidad con el monedero todavía es limitada.</translation>
</message>
<message>
<source>Could not unlock wallet.</source>
@@ -2679,7 +2764,7 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>Could not generate new %1 address</source>
- <translation type="unfinished">No se ha podido generar una nueva dirección %1</translation>
+ <translation type="unfinished">No se ha podido generar una dirección %1 nueva</translation>
</message>
</context>
<context>
@@ -2726,7 +2811,7 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>&amp;Save Image…</source>
- <translation type="unfinished">&amp;Guardar imagen...</translation>
+ <translation type="unfinished">&amp;Guardar imagen…</translation>
</message>
<message>
<source>Payment information</source>
@@ -2800,7 +2885,7 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>After Fee:</source>
- <translation type="unfinished">Después de la comisión:</translation>
+ <translation type="unfinished">Tras la comisión:</translation>
</message>
<message>
<source>Change:</source>
@@ -2808,7 +2893,7 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source>
- <translation type="unfinished">Al activarse, si la dirección esta vacía o es inválida, las monedas serán enviadas a una nueva dirección generada.</translation>
+ <translation type="unfinished">Al activarse, si la dirección está vacía o no es válida, las monedas serán enviadas a una dirección generada nueva.</translation>
</message>
<message>
<source>Custom change address</source>
@@ -2852,19 +2937,15 @@ Escribe %5 para ver un resumen de las órdenes disponibles. Para más informaci
</message>
<message>
<source>Clear all fields of the form.</source>
- <translation type="unfinished">Purga todos los campos del formulario.</translation>
+ <translation type="unfinished">Vacía todos los campos del formulario.</translation>
</message>
<message>
<source>Inputs…</source>
- <translation type="unfinished">Entradas...</translation>
- </message>
- <message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
+ <translation type="unfinished">Entradas…</translation>
</message>
<message>
<source>Choose…</source>
- <translation type="unfinished">Elegir...</translation>
+ <translation type="unfinished">Elegir…</translation>
</message>
<message>
<source>Hide transaction fee settings</source>
@@ -2904,7 +2985,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Clear &amp;All</source>
- <translation type="unfinished">Purgar &amp;todo</translation>
+ <translation type="unfinished">Vaciar &amp;todo</translation>
</message>
<message>
<source>Balance:</source>
@@ -2932,17 +3013,13 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Copy after fee</source>
- <translation type="unfinished">Copiar después de la comisión</translation>
+ <translation type="unfinished">Copiar tras comisión</translation>
</message>
<message>
<source>Copy bytes</source>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar polvo</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -2974,11 +3051,11 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source> from wallet '%1'</source>
- <translation type="unfinished">desde monedero «%1»</translation>
+ <translation type="unfinished">desde monedero '%1'</translation>
</message>
<message>
<source>%1 to '%2'</source>
- <translation type="unfinished">%1 a «%2»</translation>
+ <translation type="unfinished">%1 a '%2'</translation>
</message>
<message>
<source>%1 to %2</source>
@@ -2986,11 +3063,11 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>To review recipient list click "Show Details…"</source>
- <translation type="unfinished">Para ver la lista de receptores haga clic en «Mostrar detalles...»</translation>
+ <translation type="unfinished">Para ver la lista de receptores pulse en "Mostrar detalles..."</translation>
</message>
<message>
<source>Sign failed</source>
- <translation type="unfinished">La firma falló</translation>
+ <translation type="unfinished">Firma errónea</translation>
</message>
<message>
<source>External signer not found</source>
@@ -3004,7 +3081,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Save Transaction Data</source>
- <translation type="unfinished">Guardar datos de la transacción</translation>
+ <translation type="unfinished">Guardar la transacción de datos</translation>
</message>
<message>
<source>Partially Signed Transaction (Binary)</source>
@@ -3026,7 +3103,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>You can increase the fee later (signals Replace-By-Fee, BIP-125).</source>
- <translation type="unfinished">Puede incrementar la comisión más tarde (use Replace-By-Fee, BIP-125).</translation>
+ <translation type="unfinished">Replace-By-FeePuede incrementar la comisión más tarde (señales de reemplazo por tarifa, BIP-125).</translation>
</message>
<message>
<source>Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
@@ -3054,7 +3131,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Not signalling Replace-By-Fee, BIP-125.</source>
- <translation type="unfinished">No usa Replace-By-Fee, BIP-125.</translation>
+ <translation type="unfinished">No indica Reemplazo por tarifa, BIP-125.</translation>
</message>
<message>
<source>Total Amount</source>
@@ -3119,7 +3196,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Warning: Invalid Bitcoin address</source>
- <translation type="unfinished">Alerta: Dirección de Bitcoin inválida</translation>
+ <translation type="unfinished">Alerta: Dirección de Bitcoin no válida</translation>
</message>
<message>
<source>Warning: Unknown change address</source>
@@ -3166,7 +3243,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Remove this entry</source>
- <translation type="unfinished">Quitar esta entrada</translation>
+ <translation type="unfinished">Quita este apunte</translation>
</message>
<message>
<source>The amount to send in the selected unit</source>
@@ -3178,7 +3255,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>S&amp;ubtract fee from amount</source>
- <translation type="unfinished">S&amp;ustraer comisión del importe.</translation>
+ <translation type="unfinished">S&amp;ustraer comisión del importe</translation>
</message>
<message>
<source>Use available balance</source>
@@ -3190,11 +3267,11 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Enter a label for this address to add it to the list of used addresses</source>
- <translation type="unfinished">Introduce una etiqueta para esta dirección para añadirla a la lista de direcciones utilizadas</translation>
+ <translation type="unfinished">Introduce una etiqueta para esta dirección para añadirla al listado de direcciones utilizadas</translation>
</message>
<message>
<source>A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network.</source>
- <translation type="unfinished">Mensaje que se agrgará al URI de Bitcoin, el cuál será almacenado con la transacción para su referencia. Nota: Este mensaje no será enviado a través de la red de Bitcoin.</translation>
+ <translation type="unfinished">Mensaje que se agregara al URI de Bitcoin, el cual será almacenado con la transacción para su referencia. Nota: este mensaje no será enviado a través de la red de Bitcoin.</translation>
</message>
</context>
<context>
@@ -3244,11 +3321,11 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Copy the current signature to the system clipboard</source>
- <translation type="unfinished">Copiar la firma actual al portapapeles del sistema</translation>
+ <translation type="unfinished">Copia la firma actual al portapapeles del sistema</translation>
</message>
<message>
<source>Sign the message to prove you own this Bitcoin address</source>
- <translation type="unfinished">Firmar un mensaje para demostrar que se posee una dirección Bitcoin</translation>
+ <translation type="unfinished">Firma un mensaje para demostrar que se posee una dirección Bitcoin</translation>
</message>
<message>
<source>Sign &amp;Message</source>
@@ -3256,11 +3333,11 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Reset all sign message fields</source>
- <translation type="unfinished">Limpiar todos los campos de la firma de mensaje</translation>
+ <translation type="unfinished">Vacía todos los campos de la firma de mensaje</translation>
</message>
<message>
<source>Clear &amp;All</source>
- <translation type="unfinished">Limpiar &amp;todo</translation>
+ <translation type="unfinished">Vaciar &amp;todo</translation>
</message>
<message>
<source>&amp;Verify Message</source>
@@ -3292,19 +3369,19 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Reset all verify message fields</source>
- <translation type="unfinished">Limpiar todos los campos de la verificación de mensaje</translation>
+ <translation type="unfinished">Vacía todos los campos de la verificación de mensaje</translation>
</message>
<message>
<source>Click "Sign Message" to generate signature</source>
- <translation type="unfinished">Haga clic en «Firmar mensaje» para generar la firma</translation>
+ <translation type="unfinished">Pulse «Firmar mensaje» para generar la firma</translation>
</message>
<message>
<source>The entered address is invalid.</source>
- <translation type="unfinished">La dirección introducida es inválida</translation>
+ <translation type="unfinished">La dirección introducida no es válida</translation>
</message>
<message>
<source>Please check the address and try again.</source>
- <translation type="unfinished">Por favor, revise la dirección e inténtelo nuevamente.</translation>
+ <translation type="unfinished">Revise la dirección e inténtelo nuevamente.</translation>
</message>
<message>
<source>The entered address does not refer to a key.</source>
@@ -3324,7 +3401,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Message signing failed.</source>
- <translation type="unfinished">Falló la firma del mensaje.</translation>
+ <translation type="unfinished">Error de firma del mensaje.</translation>
</message>
<message>
<source>Message signed.</source>
@@ -3344,7 +3421,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Message verification failed.</source>
- <translation type="unfinished">Falló la verificación del mensaje.</translation>
+ <translation type="unfinished">Verificación errónea del mensaje.</translation>
</message>
<message>
<source>Message verified.</source>
@@ -3372,12 +3449,12 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
<message>
<source>0/unconfirmed, in memory pool</source>
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
- <translation type="unfinished">0/sin confirmar, en la piscina de memoria</translation>
+ <translation type="unfinished">0/sin confirmar, en la memoria compartida</translation>
</message>
<message>
<source>0/unconfirmed, not in memory pool</source>
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
- <translation type="unfinished">0/sin confirmar, no en la piscina de memoria</translation>
+ <translation type="unfinished">0/sin confirmar, no en la memoria compartida</translation>
</message>
<message>
<source>abandoned</source>
@@ -3424,7 +3501,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>own address</source>
- <translation type="unfinished">dirección propia</translation>
+ <translation type="unfinished">mi dirección</translation>
</message>
<message>
<source>watch-only</source>
@@ -3596,10 +3673,6 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
<translation type="unfinished">Enviado a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pago a mi mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3608,10 +3681,6 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
<translation type="unfinished">Solo observación</translation>
</message>
<message>
- <source>(n/a)</source>
- <translation type="unfinished">(n/d)</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(sin etiqueta)</translation>
</message>
@@ -3675,10 +3744,6 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
<translation type="unfinished">Enviado a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3778,7 +3843,7 @@ Nota: Dado que la comisión se calcula por cada byte, una tasa de «100 satoshis
</message>
<message>
<source>Exporting Failed</source>
- <translation type="unfinished">Exportación errónea</translation>
+ <translation type="unfinished">Error al Exportar!</translation>
</message>
<message>
<source>There was an error trying to save the transaction history to %1.</source>
@@ -3813,7 +3878,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Create a new wallet</source>
- <translation type="unfinished">Crea un monedero nuevo</translation>
+ <translation type="unfinished">Crear monedero nuevo</translation>
</message>
<message>
<source>Unable to decode PSBT from clipboard (invalid base64)</source>
@@ -3829,11 +3894,11 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>PSBT file must be smaller than 100 MiB</source>
- <translation type="unfinished">El archivo TBPF debe ser más pequeño de 100 MiB</translation>
+ <translation type="unfinished">El archivo PSBT debe ser más pequeño de 100 MiB</translation>
</message>
<message>
<source>Unable to decode PSBT</source>
- <translation type="unfinished">No es posible descodificar TBPF</translation>
+ <translation type="unfinished">No es posible descodificar PSBT</translation>
</message>
</context>
<context>
@@ -3881,7 +3946,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>PSBT copied</source>
- <translation type="unfinished">TBPF copiada </translation>
+ <translation type="unfinished">PSBT copiado </translation>
</message>
<message>
<source>Copied to clipboard</source>
@@ -3890,7 +3955,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Can't sign transaction.</source>
- <translation type="unfinished">No se ha podido firmar la transacción.</translation>
+ <translation type="unfinished">No puede firmar la transacción.</translation>
</message>
<message>
<source>Could not commit transaction</source>
@@ -3898,11 +3963,11 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Can't display address</source>
- <translation type="unfinished">No se puede mostrar la dirección</translation>
+ <translation type="unfinished">No puede mostrar la dirección</translation>
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">Monedero predeterminado</translation>
+ <translation type="unfinished">monedero predeterminado</translation>
</message>
</context>
<context>
@@ -3913,11 +3978,11 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Export the data in the current tab to a file</source>
- <translation type="unfinished">Exportar a un archivo los datos de esta pestaña</translation>
+ <translation type="unfinished">Exportar los datos de la pestaña actual a un archivo</translation>
</message>
<message>
<source>Backup Wallet</source>
- <translation type="unfinished">Respaldar monedero</translation>
+ <translation type="unfinished">Respaldar Monedero</translation>
</message>
<message>
<source>Wallet Data</source>
@@ -3926,7 +3991,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Backup Failed</source>
- <translation type="unfinished">Respaldo erróneo</translation>
+ <translation type="unfinished">Respaldo Erróneo</translation>
</message>
<message>
<source>There was an error trying to save the wallet data to %1.</source>
@@ -3934,11 +3999,11 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Backup Successful</source>
- <translation type="unfinished">Se ha completado con éxito la copia de respaldo</translation>
+ <translation type="unfinished">Copia de respaldo correcta</translation>
</message>
<message>
<source>The wallet data was successfully saved to %1.</source>
- <translation type="unfinished">Los datos del monedero se han guardado con éxito en %1.</translation>
+ <translation type="unfinished">Los datos del monedero se han guardado correctamente en %1.</translation>
</message>
<message>
<source>Cancel</source>
@@ -3956,8 +4021,12 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
<translation type="unfinished">%s corrupto. Intenta utilizar la herramienta del monedero bitcoin-monedero para guardar o restaurar un respaldo.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea no válida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Comunique este incidente a %s, indicando cómo obtuvo la instantánea. Se dejó el estado de encadenamiento de la instantánea no válida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
- <translation type="unfinished">%ssolicitud para escuchar en el puerto%u. Este puerto se considera "malo" y, por lo tanto, es poco probable que alguna pareja se conecte a él. Consulte doc/p2p-bad-ports.md para obtener detalles y un listado completo.</translation>
+ <translation type="unfinished">%ssolicitud para escuchar en el puerto%u. Este puerto se considera «malo» y, por lo tanto, es poco probable que alguna pareja se conecte a él. Consulte doc/p2p-bad-ports.md para obtener detalles y un listado completo.</translation>
</message>
<message>
<source>Cannot downgrade wallet from version %i to version %i. Wallet version unchanged.</source>
@@ -3969,7 +4038,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Cannot upgrade a non HD split wallet from version %i to version %i without upgrading to support pre-split keypool. Please use version %i or no version specified.</source>
- <translation type="unfinished">No se puede actualizar un monedero no dividido en HD de la versión %i a la versión %i sin actualizar para admitir el grupo de claves pre-dividido. Por favor, use la versión %i o ninguna versión especificada.</translation>
+ <translation type="unfinished">No se puede actualizar un monedero no dividido en HD de la versión %i a la versión %i sin actualizar para admitir el grupo de claves pre-desglosado. Emplee la versión %i o ninguna versión especificada.</translation>
</message>
<message>
<source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
@@ -3981,23 +4050,19 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
- <translation type="unfinished">Error al cargar la billetera. La billetera requiere que se descarguen bloques, y el software actualmente no admite la carga de billeteras mientras los bloques se descargan fuera de orden cuando se usan instantáneas de assumeutxo. La billetera debería poder cargarse correctamente después de que la sincronización del nodo alcance la altura %s</translation>
- </message>
- <message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">¡Error leyendo %s!. Todas las claves se han leído correctamente, pero los datos de la transacción o el libro de direcciones pueden faltar o ser incorrectos.</translation>
+ <translation type="unfinished">Error al cargar el monedero. El monedero requiere que se descarguen bloques, y el software actualmente no admite la carga de monederos mientras los bloques se descargan desordenadamente cuando se usan instantáneas de assumeutxo. El monedero debería poder cargarse correctamente después de que la sincronización del nodo alcance la altura %s</translation>
</message>
<message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
- <translation type="unfinished">¡Error de lectura %s! Los datos de la transacción pueden faltar o ser incorrectos. Reescaneo del monedero.</translation>
+ <translation type="unfinished">¡Error de lectura %s! Los datos de la transacción pueden faltar o ser incorrectos. Re-analice el monedero.</translation>
</message>
<message>
<source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
- <translation type="unfinished">Error: el registro del formato del archivo de volcado es incorrecto. Se obtuvo «%s», del «formato» esperado.</translation>
+ <translation type="unfinished">Error: el formato del registro del archivo de volcado es incorrecto. Se obtuvo «%s», se esperaba «formato».</translation>
</message>
<message>
<source>Error: Dumpfile identifier record is incorrect. Got "%s", expected "%s".</source>
- <translation type="unfinished">Error: el registro del identificador del archivo de volcado es incorrecto. Se obtuvo «%s» se esperaba «%s».</translation>
+ <translation type="unfinished">Error: el registro del identificador del archivo de volcado es incorrecto. Se obtuvo «%s» pero se esperaba «%s».</translation>
</message>
<message>
<source>Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
@@ -4009,15 +4074,15 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
- <translation type="unfinished">Error: no se pueden producir descriptores para esta billetera Legacy. Asegúrese de proporcionar la contraseña de la billetera si está encriptada.</translation>
+ <translation type="unfinished">Error: no se pueden producir descriptores para este monedero Legacy. Asegúrese de proporcionar la contraseña del monedero si está cifrado.</translation>
</message>
<message>
<source>File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
- <translation type="unfinished">El archivo %s ya existe. Si está seguro de que esto es lo que quiere, muévalo de lugar primero.</translation>
+ <translation type="unfinished">El archivo %s ya existe. Si está seguro que esto es lo que quiere, muévalo primero fuera del lugar.</translation>
</message>
<message>
<source>Invalid or corrupt peers.dat (%s). If you believe this is a bug, please report it to %s. As a workaround, you can move the file (%s) out of the way (rename, move, or delete) to have a new one created on the next start.</source>
- <translation type="unfinished">Archivo peers.dat inválido o corrupto (%s). Si cree que se trata de un error, infórmelo a %s. Como alternativa, puedes mover el archivo (%s) (renombrarlo, moverlo o eliminarlo) para que se cree uno nuevo en el siguiente inicio.</translation>
+ <translation type="unfinished">Archivo peers.dat no válido o corrupto (%s). Si cree que se trata de un error, infórmelo a %s. Como alternativa, puede mover el archivo (%s) (renombrarlo, moverlo o eliminarlo) para que se cree uno nuevo al siguiente inicio.</translation>
</message>
<message>
<source>More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
@@ -4037,7 +4102,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
- <translation type="unfinished">¡Por favor, compruebe si la fecha y hora en su computadora son correctas! Si su reloj está mal, %s no trabajará correctamente.</translation>
+ <translation type="unfinished">¡Por favor, compruebe si la fecha y hora en su equipo son correctas! Si su reloj está mal, %s no funcionará correctamente.</translation>
</message>
<message>
<source>Please contribute if you find %s useful. Visit %s for further information about the software.</source>
@@ -4049,23 +4114,23 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
- <translation type="unfinished">El modo poda no es compatible con -reindex-chainstate. Haz uso de un -reindex completo en su lugar.</translation>
+ <translation type="unfinished">El modo poda no es compatible con -reindex-chainstate. Haga uso de un -reindex completo en su lugar.</translation>
</message>
<message>
<source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
<translation type="unfinished">Poda: la última sincronización del monedero sobrepasa los datos podados. Necesita reindexar con -reindex (o descargar la cadena de bloques de nuevo en el caso de un nodo podado)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Error de renombrado de «%s» → «%s». Debería resolver esto manualmente moviendo o borrando el directorio %s de la instantánea no válida, en otro caso encontrará el mismo error de nuevo en el arranque siguiente.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: versión del esquema de la monedero sqlite desconocido %d. Sólo version %d se admite</translation>
</message>
<message>
<source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
- <translation type="unfinished">La base de datos de bloques contiene un bloque que parece ser del futuro. Esto puede ser porque la fecha y hora de su ordenador están mal ajustados. Reconstruya la base de datos de bloques solo si está seguro de que la fecha y hora de su ordenador están ajustadas correctamente.</translation>
- </message>
- <message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">El índice de bloque db contiene un «txindex» heredado. Para borrar el espacio de disco ocupado, ejecute un -reindex completo, de lo contrario ignore este error. Este mensaje de error no se volverá a mostrar.</translation>
+ <translation type="unfinished">La base de datos de bloques contiene un bloque que parece ser del futuro. Esto puede ser porque la fecha y hora de su equipo están mal ajustados. Reconstruya la base de datos de bloques solo si está seguro de que la fecha y hora de su equipo están ajustadas correctamente.</translation>
</message>
<message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
@@ -4104,6 +4169,10 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
<translation type="unfinished">Formato de monedero desconocido «%s» proporcionado. Por favor, proporcione uno de «bdb» o «sqlite».</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nivel de boletín del acceso especificado en categoría no mantenida en %1$s=%2$s. Se esperaba %1$s=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %3$s. Niveles de boletín válidos: %4 $s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Formato de la base de datos chainstate encontrado. Por favor reinicia con -reindex-chainstate. Esto reconstruirá la base de datos chainstate.</translation>
</message>
@@ -4112,16 +4181,20 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
<translation type="unfinished">Monedero creado satisfactoriamente. El tipo de monedero «Heredado» está descontinuado y la asistencia para crear y abrir monederos «heredada» será eliminada en el futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Monedero correctamente cargado. El tipo de billetero heredado está siendo obsoleto y mantenimiento para creación de monederos heredados serán eliminados en el futuro. Los monederos heredados pueden ser migrados a un descriptor de monedero con migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Aviso: el formato del monedero del archivo de volcado «%s» no coincide con el formato especificado en la línea de comandos «%s».</translation>
</message>
<message>
<source>Warning: Private keys detected in wallet {%s} with disabled private keys</source>
- <translation type="unfinished">Advertencia: Claves privadas detectadas en el monedero {%s} con clave privada deshabilitada</translation>
+ <translation type="unfinished">Advertencia: Claves privadas detectadas en el monedero {%s} con claves privadas deshabilitadas</translation>
</message>
<message>
<source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source>
- <translation type="unfinished">Advertencia: ¡No parecemos concordar del todo con nuestros pares! Puede que necesite actualizarse, o puede que otros nodos necesiten actualizarse.</translation>
+ <translation type="unfinished">Advertencia: ¡No parecemos concordar del todo con nuestras parejas! Puede que necesite actualizarse, o puede que otros nodos necesiten actualizarse.</translation>
</message>
<message>
<source>Witness data for blocks after height %d requires validation. Please restart with -reindex.</source>
@@ -4133,7 +4206,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>%s is set very high!</source>
- <translation type="unfinished">¡%s esta configurado muy alto!</translation>
+ <translation type="unfinished">¡%s está configurado muy alto!</translation>
</message>
<message>
<source>-maxmempool must be at least %d MB</source>
@@ -4141,11 +4214,11 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>A fatal internal error occurred, see debug.log for details</source>
- <translation type="unfinished">Ha ocurrido un error interno grave. Consulta debug.log para más detalles.</translation>
+ <translation type="unfinished">Ha ocurrido un error interno grave. Consulte debug.log para más detalles.</translation>
</message>
<message>
<source>Cannot resolve -%s address: '%s'</source>
- <translation type="unfinished">No se puede resolver -%s dirección: «%s»</translation>
+ <translation type="unfinished">No se puede resolver -%s dirección: '%s'</translation>
</message>
<message>
<source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
@@ -4157,39 +4230,23 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Cannot write to data directory '%s'; check permissions.</source>
- <translation type="unfinished">No es posible escribir en el directorio «%s»; comprueba permisos.</translation>
- </message>
- <message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La actualización -txindex iniciada por una versión anterior no puede completarse. Reinicie con la versión anterior o ejecute un -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea inválida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Reporta este incidente a %s, indicando cómo obtuviste la instantánea. Se dejó el estado de cadena de la instantánea inválida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
+ <translation type="unfinished">No es posible escribir datos en el directorio '%s'; comprueba permisos.</translation>
</message>
<message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">La configuración de %s es demasiado alta. Las comisiones tan grandes se podrían pagar en una sola transacción.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -blockfilterindex. Por favor, desactiva temporalmente blockfilterindex cuando uses -reindex-chainstate, o sustituye -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -coinstatsindex. Por favor, desactiva temporalmente coinstatsindex cuando uses -reindex-chainstate, o sustituye -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -txindex. Por favor, desactiva temporalmente txindex cuando uses -reindex-chainstate, o sustituye -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
- <translation type="unfinished">No se puede proporcionar conexiones específicas y hacer que addrman encuentre conexiones salientes al mismo tiempo.</translation>
+ <translation type="unfinished">No se puede proporcionar conexiones específicas y hacer que addrman encuentre conexiones salientes a la vez.</translation>
</message>
<message>
<source>Error loading %s: External signer wallet being loaded without external signer support compiled</source>
- <translation type="unfinished">Error de carga %s : Se está cargando el monedero del firmante externo sin que se haya compilado el soporte del firmante externo</translation>
+ <translation type="unfinished">Error de carga %s: se está cargando el monedero del firmante externo sin que se haya compilado el soporte del firmante externo</translation>
+ </message>
+ <message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Error leyendo %s! Todas las teclas leídas correctamente, pero los datos de transacción o metadatos de dirección puedan estar ausentes o sean incorrectos.</translation>
</message>
<message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
@@ -4204,20 +4261,24 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
<translation type="unfinished">Error: La transacción %s del monedero no se puede identificar como perteneciente a monederos migrados</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">No se pudo calcular la comisión de incremento porque las UTXO sin confirmar dependen de un grupo enorme de transacciones no confirmadas.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
- <translation type="unfinished">No se ha podido cambiar el nombre del archivo peers.dat . Por favor, muévalo o elimínelo e inténtelo de nuevo.</translation>
+ <translation type="unfinished">No se ha podido cambiar el nombre del archivo peers.dat. Por favor, muévalo o elimínelo e inténtelo de nuevo.</translation>
</message>
<message>
<source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
- <translation type="unfinished">Error al calcular la comisión. La opción "fallbackfee" está desactivada. Espera algunos bloques o activa %s.</translation>
+ <translation type="unfinished">Error al calcular la comisión. La opción «fallbackfee» está desactivada. Espera algunos bloques o activa %s.</translation>
</message>
<message>
<source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
- <translation type="unfinished">Opciones incompatibles: -dnsseed=1 se especificó explicitamente, pero -onlynet impide conexiones a IPv4/IPv6</translation>
+ <translation type="unfinished">Opciones incompatibles: -dnsseed=1 se especificó explícitamente, pero -onlynet impide conexiones a IPv4/IPv6</translation>
</message>
<message>
<source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
- <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: «%s» (debe ser al menos la comisión mínima de retransmisión de %s para evitar transacciones atascadas)</translation>
+ <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: '%s' (debe ser al menos la comisión mínima de retransmisión de %s para evitar transacciones atascadas)</translation>
</message>
<message>
<source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
@@ -4237,7 +4298,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet's UTXOs</source>
- <translation type="unfinished">El tamaño de las entradas supera el peso máximo. Intente enviar una cantidad menor o consolidar manualmente los UTXO de su billetera</translation>
+ <translation type="unfinished">El tamaño de las entradas supera el peso máximo. Intente enviar una cantidad menor o consolidar manualmente los UTXO de su monedero</translation>
</message>
<message>
<source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
@@ -4245,7 +4306,7 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
- <translation type="unfinished">La transacción requiere un destino de valor distinto de 0, una tasa de comisión distinta de 0, o una entrada preseleccionada</translation>
+ <translation type="unfinished">La transacción requiere un destino de valor distinto de -0, una tasa de comisión distinta de -0, o una entrada preseleccionada</translation>
</message>
<message>
<source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
@@ -4253,16 +4314,16 @@ Vaya a Archivo&gt; Abrir monedero para cargar un monedero.
</message>
<message>
<source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
- <translation type="unfinished">Las UTXO sin confirmar están disponibles, pero si se gastan, se crea una cadena de transacciones que rechazará el pool de memoria.</translation>
+ <translation type="unfinished">Las UTXO sin confirmar están disponibles, pero si se gastan, se crea una cadena de transacciones que rechazará la compartición de memoria.</translation>
</message>
<message>
<source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
The wallet might have been tampered with or created with malicious intent.
</source>
- <translation type="unfinished">Se encontró una entrada heredada inesperada en la billetera del descriptor. Cargando billetera%s
+ <translation type="unfinished">Se encontró una entrada heredada inesperada en la billetera del descriptor. Cargando monedero%s
-Es posible que la billetera haya sido manipulada o creada con malas intenciones.
+Es posible que el monedero haya sido manipulado o creado con malas intenciones.
</translation>
</message>
<message>
@@ -4274,32 +4335,28 @@ Please try running the latest software version.
<translation type="unfinished">Se encontró un descriptor desconocido. Cargando monedero %s
El monedero puede haber sido creado con una versión más nueva.
-Por favor intenta ejecutar la ultima versión del software.
+Por favor intenta ejecutar la última versión del software.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Categoría especifica de nivel de registro no soportada -loglevel=%s. Se espera -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %s. Niveles de registro válidos: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
-No es posible limpiar la migración fallida</translation>
+No es posible vaciar la migración errónea</translation>
</message>
<message>
<source>
Unable to restore backup of wallet.</source>
<translation type="unfinished">
-No es posible restaurar la copia de seguridad del monedero.</translation>
+No es posible restaurar el respaldo del monedero.</translation>
</message>
<message>
<source>Block verification was interrupted</source>
- <translation type="unfinished">Se interrumpió la verificación de bloques</translation>
+ <translation type="unfinished">La verificación del bloque fue interrumpida</translation>
</message>
<message>
<source>Config setting for %s only applied on %s network when in [%s] section.</source>
- <translation type="unfinished">Los ajustes de configuración para %s solo aplicados en la red %s cuando se encuentra en la sección [%s].</translation>
+ <translation type="unfinished">Los ajustes de configuración para %s solo aplicados en la red %s cuando se encuentra en la sección [%s].</translation>
</message>
<message>
<source>Copyright (C) %i-%i</source>
@@ -4327,15 +4384,15 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Done loading</source>
- <translation type="unfinished">Carga completa</translation>
+ <translation type="unfinished">Carga completada</translation>
</message>
<message>
<source>Dump file %s does not exist.</source>
- <translation type="unfinished">El archivo de volcado %s no existe</translation>
+ <translation type="unfinished">El archivo de volcado %s no existe.</translation>
</message>
<message>
<source>Error creating %s</source>
- <translation type="unfinished">Error creando %s</translation>
+ <translation type="unfinished">Error al crear %s</translation>
</message>
<message>
<source>Error initializing block database</source>
@@ -4363,11 +4420,11 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Error loading block database</source>
- <translation type="unfinished">Error cargando base de datos de bloques</translation>
+ <translation type="unfinished">Error cargando bloque de la base de datos</translation>
</message>
<message>
<source>Error opening block database</source>
- <translation type="unfinished">Error al abrir base de datos de bloques.</translation>
+ <translation type="unfinished">Error al abrir bloque de la base de datos</translation>
</message>
<message>
<source>Error reading configuration file: %s</source>
@@ -4419,7 +4476,7 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Error: Keypool ran out, please call keypoolrefill first</source>
- <translation type="unfinished">Error: Keypool se ha agotado, por favor, invoca «keypoolrefill» primero</translation>
+ <translation type="unfinished">Error: Keypool se ha agotado, por favor, invoque keypoolrefill primero</translation>
</message>
<message>
<source>Error: Missing checksum</source>
@@ -4447,7 +4504,7 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Error: Unable to make a backup of your wallet</source>
- <translation type="unfinished">Error: No es posible realizar la copia de seguridad de tu monedero</translation>
+ <translation type="unfinished">Error: No es posible realizar el respaldo de tu monedero</translation>
</message>
<message>
<source>Error: Unable to parse version %u as a uint32_t</source>
@@ -4471,7 +4528,11 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Failed to rescan the wallet during initialization</source>
- <translation type="unfinished">Fallo al volver a escanear el monedero durante el inicio</translation>
+ <translation type="unfinished">Error al volver a analizar el monedero durante el inicio</translation>
+ </message>
+ <message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Error al iniciar indizados, se apaga...</translation>
</message>
<message>
<source>Failed to verify database</source>
@@ -4479,7 +4540,7 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
- <translation type="unfinished">La tasa de comisión (%s) es menor que la tasa mínima de comisión (%s)</translation>
+ <translation type="unfinished">La proporción de comisión (%s) es menor que la proporción mínima de comisión (%s)</translation>
</message>
<message>
<source>Ignoring duplicate -wallet %s.</source>
@@ -4511,35 +4572,35 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Invalid -i2psam address or hostname: '%s'</source>
- <translation type="unfinished">Dirección de -i2psam o dominio «%s» no válido</translation>
+ <translation type="unfinished">Dirección de -i2psam o dominio '%s' no válido</translation>
</message>
<message>
<source>Invalid -onion address or hostname: '%s'</source>
- <translation type="unfinished">Dirección -onion o nombre hospedado: «%s» no válido</translation>
+ <translation type="unfinished">Dirección -onion o nombre hospedado: '%s' no válido</translation>
</message>
<message>
<source>Invalid -proxy address or hostname: '%s'</source>
- <translation type="unfinished">Dirección -proxy o nombre hospedado: «%s» no válido</translation>
+ <translation type="unfinished">Dirección -proxy o nombre hospedado: '%s' no válido</translation>
</message>
<message>
<source>Invalid P2P permission: '%s'</source>
- <translation type="unfinished">Permiso P2P: «%s» inválido</translation>
+ <translation type="unfinished">Permiso P2P: '%s' inválido</translation>
</message>
<message>
<source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least %s)</source>
- <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: "%s" (debe ser por lo menos %s)</translation>
+ <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: '%s' (debe ser por lo menos %s)</translation>
</message>
<message>
<source>Invalid amount for %s=&lt;amount&gt;: '%s'</source>
- <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: "%s"</translation>
+ <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: '%s'</translation>
</message>
<message>
<source>Invalid amount for -%s=&lt;amount&gt;: '%s'</source>
- <translation type="unfinished">Importe para -%s=&lt;amount&gt;: «%s» inválido</translation>
+ <translation type="unfinished">Importe para -%s=&lt;amount&gt;: '%s' inválido</translation>
</message>
<message>
<source>Invalid netmask specified in -whitelist: '%s'</source>
- <translation type="unfinished">Máscara de red especificada en -whitelist: «%s» inválida</translation>
+ <translation type="unfinished">Máscara de red especificada en -whitelist: '%s' inválida</translation>
</message>
<message>
<source>Invalid port specified in %s: '%s'</source>
@@ -4579,7 +4640,7 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Need to specify a port with -whitebind: '%s'</source>
- <translation type="unfinished">Necesita especificar un puerto con -whitebind: «%s»</translation>
+ <translation type="unfinished">Necesita especificar un puerto con -whitebind: '%s'</translation>
</message>
<message>
<source>No addresses available</source>
@@ -4647,23 +4708,23 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Specified -walletdir "%s" does not exist</source>
- <translation type="unfinished">No existe -walletdir «%s» especificada</translation>
+ <translation type="unfinished">No existe -walletdir "%s" especificada</translation>
</message>
<message>
<source>Specified -walletdir "%s" is a relative path</source>
- <translation type="unfinished">Ruta relativa para -walletdir «%s» especificada</translation>
+ <translation type="unfinished">Ruta relativa para -walletdir "%s" especificada</translation>
</message>
<message>
<source>Specified -walletdir "%s" is not a directory</source>
- <translation type="unfinished">No existe directorio para -walletdir «%s» especificada</translation>
+ <translation type="unfinished">No existe directorio para -walletdir "%s" especificada</translation>
</message>
<message>
<source>Specified blocks directory "%s" does not exist.</source>
- <translation type="unfinished">No existe directorio de bloques «%s» especificado.</translation>
+ <translation type="unfinished">No existe directorio de bloques "%s" especificado.</translation>
</message>
<message>
<source>Specified data directory "%s" does not exist.</source>
- <translation type="unfinished">El directorio de datos especificado "%s" no existe.</translation>
+ <translation type="unfinished">El directorio de datos especificado «%s» no existe.</translation>
</message>
<message>
<source>Starting network threads…</source>
@@ -4711,7 +4772,7 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Transaction has too long of a mempool chain</source>
- <translation type="unfinished">La transacción lleva largo tiempo en la piscina de memoria</translation>
+ <translation type="unfinished">La transacción lleva largo tiempo en la memoria compartida</translation>
</message>
<message>
<source>Transaction must have at least one recipient</source>
@@ -4727,7 +4788,7 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
- <translation type="unfinished">No se ha podido reservar memoria para -maxsigcachesize: «%s» MiB</translation>
+ <translation type="unfinished">No se ha podido reservar memoria para -maxsigcachesize: '%s' MiB</translation>
</message>
<message>
<source>Unable to bind to %s on this computer (bind returned error %s)</source>
@@ -4739,7 +4800,7 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Unable to create the PID file '%s': %s</source>
- <translation type="unfinished">No es posible crear el fichero PID «%s»: %s</translation>
+ <translation type="unfinished">No es posible crear el fichero PID '%s': %s</translation>
</message>
<message>
<source>Unable to find UTXO for external input</source>
@@ -4759,7 +4820,7 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Unable to parse -maxuploadtarget: '%s'</source>
- <translation type="unfinished">No se ha podido analizar -maxuploadtarget: «%s»</translation>
+ <translation type="unfinished">No se ha podido analizar -maxuploadtarget: '%s'</translation>
</message>
<message>
<source>Unable to start HTTP server. See debug log for details.</source>
@@ -4775,23 +4836,27 @@ No es posible restaurar la copia de seguridad del monedero.</translation>
</message>
<message>
<source>Unknown address type '%s'</source>
- <translation type="unfinished">Tipo de dirección «%s» desconocida</translation>
+ <translation type="unfinished">Tipo de dirección '%s' desconocida</translation>
</message>
<message>
<source>Unknown change type '%s'</source>
- <translation type="unfinished">Tipo de cambio «%s» desconocido</translation>
+ <translation type="unfinished">Tipo de cambio '%s' desconocido</translation>
</message>
<message>
<source>Unknown network specified in -onlynet: '%s'</source>
- <translation type="unfinished">Red especificada en -onlynet: «%s» desconocida</translation>
+ <translation type="unfinished">Red especificada en -onlynet: '%s' desconocida</translation>
</message>
<message>
<source>Unknown new rules activated (versionbit %i)</source>
<translation type="unfinished">Nuevas reglas desconocidas activadas (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Nivel de registro de depuración global -loglevel=%s no mantenido. Valores válidos: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nivel de acceso global %s = %s no mantenido. Los valores válidos son: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates no está mantenido en el encadenamiento %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_es_CL.ts b/src/qt/locale/bitcoin_es_CL.ts
index c6d31533bd..e409cee992 100644
--- a/src/qt/locale/bitcoin_es_CL.ts
+++ b/src/qt/locale/bitcoin_es_CL.ts
@@ -6,18 +6,10 @@
<translation type="unfinished">Click derecho para editar la dirección o etiqueta</translation>
</message>
<message>
- <source>Create a new address</source>
- <translation type="unfinished">Crear una nueva dirección</translation>
- </message>
- <message>
<source>&amp;New</source>
<translation type="unfinished">&amp;Nuevo</translation>
</message>
<message>
- <source>Copy the currently selected address to the system clipboard</source>
- <translation type="unfinished">Copiar la dirección actualmente seleccionada al sistema de portapapeles</translation>
- </message>
- <message>
<source>&amp;Copy</source>
<translation type="unfinished">&amp;Copiar</translation>
</message>
@@ -42,10 +34,6 @@
<translation type="unfinished">&amp;Exportar</translation>
</message>
<message>
- <source>&amp;Delete</source>
- <translation type="unfinished">&amp;Borrar</translation>
- </message>
- <message>
<source>Choose the address to send coins to</source>
<translation type="unfinished">Elija la dirección para enviar las monedas</translation>
</message>
@@ -58,14 +46,6 @@
<translation type="unfinished">Escoger</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Enviando dirección</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Recibiendo dirección</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estas son sus direcciones de Bitcoin para enviar pagos. Siempre verifique el monto y la dirección de recepción antes de enviar monedas.</translation>
</message>
@@ -102,6 +82,11 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Se produjo un error al intentar guardar la lista de direcciones en %1. Inténtalo de nuevo.</translation>
</message>
<message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Recepción de direcciones - %1
+</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Exportación fallida</translation>
</message>
@@ -663,6 +648,14 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar una billetera</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Muestre el mensaje de ayuda %1 para obtener una lista con posibles opciones de línea de comandos de Bitcoin</translation>
</message>
@@ -671,12 +664,16 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">&amp;Ocultar valores</translation>
</message>
<message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Ocultar los valores en la pestaña de vista general</translation>
+ </message>
+ <message>
<source>default wallet</source>
<translation type="unfinished">billetera predeterminada</translation>
</message>
<message>
<source>No wallets available</source>
- <translation type="unfinished">No hay carteras disponibles</translation>
+ <translation type="unfinished">Monederos no disponibles</translation>
</message>
<message>
<source>Wallet Data</source>
@@ -751,6 +748,14 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Presincronizando encabezados (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Error al crear billetera</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">No se puede crear una nueva billetera, el software se compiló sin soporte sqlite (requerido para billeteras descriptivas)</translation>
+ </message>
+ <message>
<source>Warning: %1</source>
<translation type="unfinished">Advertencia: %1</translation>
</message>
@@ -849,10 +854,6 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Comisión:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Después de comisión:</translation>
</message>
@@ -941,10 +942,6 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar polvo</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -953,14 +950,6 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">si</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Está etiqueta se vuelve roja si algún receptor recibe una cantidad inferior al límite actual establecido para el polvo.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Puede variar +/- %1 satoshi (s) por entrada.</translation>
</message>
@@ -1020,6 +1009,57 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Estas seguro de wue deseas migrar la billetera 1 %1 1 ?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migración de la billetera la convertirá en una o más billeteras basadas en descriptores. Será necesario realizar una nueva copia de seguridad de la billetera.
+Si esta billetera contiene scripts solo de lectura, se creará una nueva billetera que los contenga.
+Si esta billetera contiene scripts solucionables pero no de lectura, se creará una nueva billetera diferente que los contenga.
+
+El proceso de migración creará una copia de seguridad de la billetera antes de migrar. Este archivo de copia de seguridad se llamará &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak y se encontrará en el directorio de esta billetera. En el caso de una migración incorrecta, la copia de seguridad puede restaurarse con la funcionalidad "Restore Wallet" (Restaurar billetera).</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">La migración de la billetera "%1" se realizó correctamente.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solo de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solucionables pero no de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migración errónea</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migración correcta</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet warning</source>
@@ -1084,7 +1124,7 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
</message>
<message>
<source>Close all wallets</source>
- <translation type="unfinished">Cerrar todas las billeteras</translation>
+ <translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
<source>Are you sure you wish to close all wallets?</source>
@@ -1098,8 +1138,16 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Crear Billetera</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Estás a un paso de crear tu nueva billetera.</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Escribe un nombre y, si lo deseas, activa las opciones avanzadas.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">Nombre de la billetera </translation>
+ <translation type="unfinished">Nombre del monedero</translation>
</message>
<message>
<source>Wallet</source>
@@ -1110,10 +1158,6 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Encriptar la billetera. La billetera será encriptada con una contraseña de tu elección.</translation>
</message>
<message>
- <source>Advanced Options</source>
- <translation type="unfinished">Opciones Avanzadas</translation>
- </message>
- <message>
<source>Disable Private Keys</source>
<translation type="unfinished">Desactivar las claves privadas</translation>
</message>
@@ -1126,10 +1170,6 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Crear billetera vacía</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Use descriptores para la gestión de scriptPubKey</translation>
- </message>
- <message>
<source>External signer</source>
<translation type="unfinished">Firmante externo</translation>
</message>
@@ -1138,10 +1178,6 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Crear</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilado sin soporte de sqlite (requerido para billeteras descriptoras)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilado sin soporte de firma externa (necesario para la firma externa)</translation>
@@ -1898,6 +1934,10 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">* Envía %1 a %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">dirección personal</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">No se puede calcular la comisión o el importe total de la transacción.</translation>
</message>
@@ -2130,10 +2170,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Monedero:</translation>
</message>
<message>
- <source>(none)</source>
- <translation type="unfinished">(ninguno)</translation>
- </message>
- <message>
<source>&amp;Reset</source>
<translation type="unfinished">Reiniciar</translation>
</message>
@@ -2158,6 +2194,22 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Seleccione un par para ver información detallada.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versión de la capa de transporte: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Cadena de identificación de la sesión BIP324 en formato hexadecimal, si existe.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">Identificador de sesión</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">Versión</translation>
</message>
@@ -2379,6 +2431,21 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Recuperación de dirección saliente: de corta duración, para solicitar direcciones</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Detectando: el par puede ser v1 o v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simple sin cifrar</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte encriptado BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">Seleccionamos el par para la retransmisión de banda ancha</translation>
</message>
@@ -2774,10 +2841,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Entradas...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Elegir...</translation>
</message>
@@ -2846,10 +2909,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar polvo</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -3482,10 +3541,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviado a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pago a ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3557,10 +3612,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviado a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3834,6 +3885,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">%s corrupto. Intenta utilizar la herramienta de la billetera de bitcoin para rescatar o restaurar una copia de seguridad.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea no válida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Comunique este incidente a %s, indicando cómo obtuvo la instantánea. Se dejó el estado de encadenamiento de la instantánea no válida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s solicitud para escuchar en el puerto%u. Este puerto se considera "malo" y, por lo tanto, es poco probable que algún par se conecte a él. Consulta doc/p2p-bad-ports.md para obtener detalles y una lista completa.</translation>
</message>
@@ -3862,10 +3917,6 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error al cargar la billetera. Esta requiere que se descarguen bloques, y el software actualmente no admite la carga de billeteras mientras los bloques se descargan fuera de orden, cuando se usan instantáneas de assumeutxo. La billetera debería poder cargarse correctamente después de que la sincronización del nodo alcance la altura %s.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">¡Error al leer %s! Todas las claves se leyeron correctamente, pero es probable que falten los datos de la transacción o la libreta de direcciones, o que sean incorrectos.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">¡Error al leer %s! Es probable que falten los datos de la transacción o que sean incorrectos. Reescaneando billetera.</translation>
</message>
@@ -3934,6 +3985,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Poda: la última sincronización de la billetera sobrepasa los datos podados. Tienes que ejecutar -reindex (descarga toda la cadena de bloques de nuevo en caso de tener un nodo podado)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Error de renombrado de «%s» → «%s». Debería resolver esto manualmente moviendo o borrando el directorio %s de la instantánea no válida, en otro caso encontrará el mismo error de nuevo en el arranque siguiente.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: versión desconocida del esquema de la billetera sqlite %d. Solo se admite la versión %d.</translation>
</message>
@@ -3942,10 +3997,6 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">La base de datos de bloques contiene un bloque que parece ser del futuro. Es posible que se deba a que la fecha y hora de la computadora están mal configuradas. Reconstruye la base de datos de bloques solo si tienes la certeza de que la fecha y hora de la computadora son correctas.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">La base de datos del índice de bloques contiene un "txindex" heredado. Para borrar el espacio de disco ocupado, ejecute un -reindex completo; de lo contrario, ignore este error. Este mensaje de error no se volverá a mostrar.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">El monto de la transacción es demasiado pequeño para enviarlo después de deducir la comisión</translation>
</message>
@@ -3982,6 +4033,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Se proporcionó un formato de archivo de billetera desconocido "%s". Proporciona uno entre "bdb" o "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nivel de boletín del acceso especificado en categoría no mantenida en %1$s=%2$s. Se esperaba %1$s=1:2. Categorías válidas: %3$s. Niveles de boletín válidos: %4 $s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">El formato de la base de datos chainstate es incompatible. Reinicia con -reindex-chainstate para reconstruir la base de datos chainstate.</translation>
</message>
@@ -3990,6 +4045,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">La billetera se creó correctamente. El tipo de billetera "legacy" se está descontinuando, por lo que la asistencia para crear y abrir estas billeteras se eliminará en el futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Monedero correctamente cargado. El tipo de billetero heredado está siendo obsoleto y mantenimiento para creación de monederos heredados serán eliminados en el futuro. Los monederos heredados pueden ser migrados a un descriptor de monedero con migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Advertencia: el formato de la billetera del archivo de volcado "%s" no coincide con el formato especificado en la línea de comandos "%s".</translation>
</message>
@@ -4038,30 +4097,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">No se puede escribir en el directorio de datos "%s"; comprueba los permisos.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La actualización -txindex iniciada por una versión anterior no puede completarse. Reinicia con la versión anterior o ejecuta un -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea inválida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Reporta este incidente a %s, indicando cómo obtuviste la instantánea. Se dejó el estado de cadena de la instantánea inválida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">La configuración de %s es demasiado alta. Las comisiones tan grandes se podrían pagar en una sola transacción.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -blockfilterindex. Desactiva temporalmente blockfilterindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -coinstatsindex. Desactiva temporalmente coinstatsindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -txindex. Desactiva temporalmente txindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">No se pueden proporcionar conexiones específicas y hacer que addrman encuentre conexiones salientes al mismo tiempo.</translation>
</message>
@@ -4070,6 +4109,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error al cargar %s: Se está cargando la billetera firmante externa sin que se haya compilado la compatibilidad del firmante externo</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Error leyendo %s. Todas las teclas leídas correctamente, pero los datos de transacción o metadatos de dirección puedan ser ausentes o incorrectos.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Error: No se puede identificar si los datos de la libreta de direcciones en la billetera pertenecen a billeteras migradas</translation>
</message>
@@ -4082,6 +4125,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error: No se puede identificar si la transacción %s en la billetera pertenece a billeteras migradas</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">No se pudo calcular la comisión de incremento porque las UTXO sin confirmar dependen de un grupo enorme de transacciones no confirmadas.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">No se pudo cambiar el nombre del archivo peers.dat inválido. Muévelo o elimínalo, e intenta de nuevo.</translation>
</message>
@@ -4156,10 +4203,6 @@ Intenta ejecutar la última versión del software.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">La categoría especifica de nivel de registro no es compatible: -loglevel=%s. Se espera -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %s. Niveles de registro válidos: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4344,6 +4387,10 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Fallo al rescanear la billetera durante la inicialización</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Es erróneo al iniciar indizados, se apaga...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Fallo al verificar la base de datos</translation>
</message>
@@ -4660,8 +4707,12 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Se desconocen las nuevas reglas activadas (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">El nivel de registro de depuración global -loglevel=%s no es compatible. Valores válidos: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nivel de acceso global %s = %s no mantenido. Los valores válidos son: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates no está mantenido en el encadenamiento %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_es_CO.ts b/src/qt/locale/bitcoin_es_CO.ts
index 8a231de000..feec32bd77 100644
--- a/src/qt/locale/bitcoin_es_CO.ts
+++ b/src/qt/locale/bitcoin_es_CO.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Seleccionar</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Direcciones de envío</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Direcciones de recepción</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estas son tus direcciones de Bitcoin para enviar pagos. Revisa siempre el importe y la dirección de recepción antes de enviar monedas.</translation>
</message>
@@ -102,6 +94,14 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">Ocurrió un error al intentar guardar la lista de direcciones en %1. Inténtalo de nuevo.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Direcciones de envío - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Direcciones de recepción - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Error al exportar</translation>
</message>
@@ -406,7 +406,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Browse transaction history</source>
- <translation type="unfinished">Explora el historial de transacciónes</translation>
+ <translation type="unfinished">Explora el historial de transacciones</translation>
</message>
<message>
<source>E&amp;xit</source>
@@ -418,7 +418,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>&amp;About %1</source>
- <translation type="unfinished">S&amp;obre %1</translation>
+ <translation type="unfinished">&amp;Acerca de %1</translation>
</message>
<message>
<source>Show information about %1</source>
@@ -426,7 +426,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>About &amp;Qt</source>
- <translation type="unfinished">Acerca de</translation>
+ <translation type="unfinished">Acerca de &amp;Qt</translation>
</message>
<message>
<source>Show information about Qt</source>
@@ -451,7 +451,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<message>
<source>Network activity disabled.</source>
<extracomment>A substring of the tooltip.</extracomment>
- <translation type="unfinished">Actividad de red deshabilitada</translation>
+ <translation type="unfinished">Actividad de red deshabilitada.</translation>
</message>
<message>
<source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
@@ -459,15 +459,15 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Send coins to a Bitcoin address</source>
- <translation type="unfinished">Enviar monedas a una dirección bitcoin</translation>
+ <translation type="unfinished">Enviar monedas a una dirección de Bitcoin</translation>
</message>
<message>
<source>Backup wallet to another location</source>
- <translation type="unfinished">Respaldar billetera en otra ubicación</translation>
+ <translation type="unfinished">Realizar copia de seguridad de la billetera en otra ubicación</translation>
</message>
<message>
<source>Change the passphrase used for wallet encryption</source>
- <translation type="unfinished">Cambiar la contraseña utilizada para la codificación de la billetera</translation>
+ <translation type="unfinished">Cambiar la frase de contraseña utilizada para encriptar la billetera</translation>
</message>
<message>
<source>&amp;Send</source>
@@ -483,11 +483,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Encrypt the private keys that belong to your wallet</source>
- <translation type="unfinished">Cifrar las claves privadas de su monedero</translation>
+ <translation type="unfinished">Encriptar las claves privadas que pertenecen a la billetera</translation>
</message>
<message>
<source>&amp;Backup Wallet…</source>
- <translation type="unfinished">&amp;Realizar copia de seguridad de la billetera</translation>
+ <translation type="unfinished">&amp;Realizar copia de seguridad de la billetera...</translation>
</message>
<message>
<source>&amp;Change Passphrase…</source>
@@ -499,7 +499,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Sign messages with your Bitcoin addresses to prove you own them</source>
- <translation type="unfinished">Firmar un mensaje para provar que usted es dueño de esta dirección</translation>
+ <translation type="unfinished">Firmar mensajes con tus direcciones de Bitcoin para demostrar que te pertenecen</translation>
</message>
<message>
<source>&amp;Verify message…</source>
@@ -507,7 +507,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
- <translation type="unfinished">Verificar mensajes comprobando que están firmados con direcciones Bitcoin concretas</translation>
+ <translation type="unfinished">Verificar mensajes para asegurarte de que estén firmados con direcciones de Bitcoin concretas</translation>
</message>
<message>
<source>&amp;Load PSBT from file…</source>
@@ -519,11 +519,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Close Wallet…</source>
- <translation type="unfinished">Cerrar Billetera...</translation>
+ <translation type="unfinished">Cerrar billetera...</translation>
</message>
<message>
<source>Create Wallet…</source>
- <translation type="unfinished">Crear Billetera...</translation>
+ <translation type="unfinished">Crear billetera...</translation>
</message>
<message>
<source>Close All Wallets…</source>
@@ -567,19 +567,19 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Request payments (generates QR codes and bitcoin: URIs)</source>
- <translation type="unfinished">Pide pagos (genera codigos QR and bitcoin: URls)</translation>
+ <translation type="unfinished">Solicitar pagos (genera códigos QR y URI de tipo "bitcoin:")</translation>
</message>
<message>
<source>Show the list of used sending addresses and labels</source>
- <translation type="unfinished">Mostrar la lista de direcciones de envío y etiquetas</translation>
+ <translation type="unfinished">Mostrar la lista de etiquetas y direcciones de envío usadas</translation>
</message>
<message>
<source>Show the list of used receiving addresses and labels</source>
- <translation type="unfinished">Mostrar la lista de direcciones de recepción y etiquetas</translation>
+ <translation type="unfinished">Mostrar la lista de etiquetas y direcciones de recepción usadas</translation>
</message>
<message>
<source>&amp;Command-line options</source>
- <translation type="unfinished">&amp;Opciones de linea de comando</translation>
+ <translation type="unfinished">&amp;Opciones de línea de comando</translation>
</message>
<message numerus="yes">
<source>Processed %n block(s) of transaction history.</source>
@@ -598,7 +598,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Last received block was generated %1 ago.</source>
- <translation type="unfinished">El último bloque recibido fue generado hace %1</translation>
+ <translation type="unfinished">El último bloque recibido se generó hace %1.</translation>
</message>
<message>
<source>Transactions after this will not yet be visible.</source>
@@ -606,7 +606,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Warning</source>
- <translation type="unfinished">Atención</translation>
+ <translation type="unfinished">Advertencia</translation>
</message>
<message>
<source>Information</source>
@@ -626,7 +626,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Load Partially Signed Bitcoin Transaction from clipboard</source>
- <translation type="unfinished">Cargar una transacción de Bitcoin parcialmente firmada desde el Portapapeles</translation>
+ <translation type="unfinished">Cargar una transacción de Bitcoin parcialmente firmada desde el portapapeles</translation>
</message>
<message>
<source>Node window</source>
@@ -642,11 +642,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>&amp;Receiving addresses</source>
- <translation type="unfinished">&amp;Direcciones de entrega</translation>
+ <translation type="unfinished">&amp;Direcciones de destino</translation>
</message>
<message>
<source>Open a bitcoin: URI</source>
- <translation type="unfinished">Abrir un bitcoin: URI</translation>
+ <translation type="unfinished">Abrir un URI de tipo "bitcoin:"</translation>
</message>
<message>
<source>Open Wallet</source>
@@ -675,14 +675,26 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">Cerrar todas las billeteras</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar una billetera</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">Mostrar el mensaje de ayuda %1 para obtener una lista de los posibles comandos de Bitcoin</translation>
+ <translation type="unfinished">Mostrar el mensaje de ayuda %1 para obtener una lista de las posibles opciones de línea de comandos de Bitcoin</translation>
</message>
<message>
<source>&amp;Mask values</source>
<translation type="unfinished">&amp;Ocultar valores</translation>
</message>
<message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Ocultar los valores en la pestaña de vista general</translation>
+ </message>
+ <message>
<source>default wallet</source>
<translation type="unfinished">billetera predeterminada</translation>
</message>
@@ -708,7 +720,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<message>
<source>Wallet Name</source>
<extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
- <translation type="unfinished">Nombre de la billetera </translation>
+ <translation type="unfinished">Nombre de la billetera</translation>
</message>
<message>
<source>&amp;Window</source>
@@ -767,6 +779,14 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">Presincronizando encabezados (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Error al crear billetera</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">No se puede crear una nueva billetera, el software se compiló sin soporte de sqlite (requerido para billeteras descriptivas)</translation>
+ </message>
+ <message>
<source>Warning: %1</source>
<translation type="unfinished">Advertencia: %1</translation>
</message>
@@ -865,10 +885,6 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">Comisión:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Remanente:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Después de la comisión:</translation>
</message>
@@ -957,10 +973,6 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar remanente</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -969,14 +981,6 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">sí</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta se pone roja si algún destinatario recibe un importe menor que el actual límite del remanente.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Puede variar +/- %1 satoshi(s) por entrada.</translation>
</message>
@@ -1027,19 +1031,74 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<message>
<source>Load Wallets</source>
<extracomment>Title of progress window which is displayed when wallets are being loaded.</extracomment>
- <translation type="unfinished">Cargar monederos</translation>
+ <translation type="unfinished">Cargar billeteras</translation>
</message>
<message>
<source>Loading wallets…</source>
<extracomment>Descriptive text of the load wallets progress window which indicates to the user that wallets are currently being loaded.</extracomment>
- <translation type="unfinished">Cargando monederos...</translation>
+ <translation type="unfinished">Cargando billeteras...</translation>
+ </message>
+</context>
+<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">¿Seguro deseas migrar la billetera &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migración de la billetera la convertirá en una o más billeteras basadas en descriptores. Será necesario realizar una nueva copia de seguridad de la billetera.
+Si esta billetera contiene scripts solo de lectura, se creará una nueva billetera que los contenga.
+Si esta billetera contiene scripts solucionables pero no de lectura, se creará una nueva billetera diferente que los contenga.
+
+El proceso de migración creará una copia de seguridad de la billetera antes de proceder. Este archivo de copia de seguridad se llamará &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak y se encontrará en el directorio de esta billetera. En caso de que la migración falle, se puede restaurar la copia de seguridad con la funcionalidad "Restore Wallet" (Restaurar billetera).</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">La migración de la billetera "%1" se realizó correctamente.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solo de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solucionables pero no de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migración errónea</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migración correcta</translation>
</message>
</context>
<context>
<name>OpenWalletActivity</name>
<message>
+ <source>Open wallet failed</source>
+ <translation type="unfinished">Fallo al abrir billetera</translation>
+ </message>
+ <message>
<source>Open wallet warning</source>
- <translation type="unfinished">Advertencia sobre crear monedero</translation>
+ <translation type="unfinished">Advertencia al abrir billetera</translation>
</message>
<message>
<source>default wallet</source>
@@ -1053,7 +1112,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
- <translation type="unfinished">Abriendo Monedero &lt;b&gt;%1&lt;/b&gt;...</translation>
+ <translation type="unfinished">Abriendo billetera &lt;b&gt;%1&lt;/b&gt;...</translation>
</message>
</context>
<context>
@@ -1092,11 +1151,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
- <translation type="unfinished">¿Estás seguro de que deseas cerrar el monedero &lt;i&gt;%1&lt;/i&gt;?</translation>
+ <translation type="unfinished">¿Seguro deseas cerrar la billetera &lt;i&gt;%1&lt;/i&gt;?</translation>
</message>
<message>
<source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
- <translation type="unfinished">Cerrar el monedero durante demasiado tiempo puede causar la resincronización de toda la cadena si la poda es habilitada.</translation>
+ <translation type="unfinished">Cerrar la billetera durante demasiado tiempo puede causar la resincronización de toda la cadena si el podado está habilitado.</translation>
</message>
<message>
<source>Close all wallets</source>
@@ -1104,14 +1163,22 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Are you sure you wish to close all wallets?</source>
- <translation type="unfinished">¿Está seguro de que desea cerrar todas las billeteras?</translation>
+ <translation type="unfinished">¿Seguro quieres cerrar todas las billeteras?</translation>
</message>
</context>
<context>
<name>CreateWalletDialog</name>
<message>
<source>Create Wallet</source>
- <translation type="unfinished">Crear Billetera</translation>
+ <translation type="unfinished">Crear billetera</translation>
+ </message>
+ <message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Estás a un paso de crear tu nueva billetera.</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Escribe un nombre y, si quieres, activa las opciones avanzadas.</translation>
</message>
<message>
<source>Wallet Name</source>
@@ -1119,15 +1186,15 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Wallet</source>
- <translation type="unfinished">Cartera</translation>
+ <translation type="unfinished">Billetera</translation>
</message>
<message>
<source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
- <translation type="unfinished">Encriptar la billetera. La billetera será encriptada con una contraseña de tu elección.</translation>
+ <translation type="unfinished">Encriptar la billetera. La billetera se encriptará con una frase de contraseña de tu elección.</translation>
</message>
<message>
<source>Encrypt Wallet</source>
- <translation type="unfinished">Encriptar la billetera</translation>
+ <translation type="unfinished">Encriptar billetera</translation>
</message>
<message>
<source>Advanced Options</source>
@@ -1135,7 +1202,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets.</source>
- <translation type="unfinished">Desactivar las claves privadas para esta billetera. Las billeteras con claves privadas desactivadas no tendrán claves privadas y no podrán tener ninguna semilla HD o claves privadas importadas. Esto es ideal para billeteras de solo lectura.</translation>
+ <translation type="unfinished">Desactivar las claves privadas para esta billetera. Las billeteras con claves privadas desactivadas no tendrán claves privadas y no podrán tener ninguna semilla HD ni claves privadas importadas. Esto es ideal para billeteras de solo lectura.</translation>
</message>
<message>
<source>Disable Private Keys</source>
@@ -1143,19 +1210,15 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time.</source>
- <translation type="unfinished">Crea una billetera en blanco. Las billeteras en blanco inicialmente no tienen llaves privadas o texto. Las llaves privadas y las direcciones pueden ser importadas, o se puede establecer una semilla HD, más tarde.</translation>
+ <translation type="unfinished">Crea una billetera en blanco. Las billeteras en blanco inicialmente no tienen llaves privadas ni scripts. Las llaves privadas y las direcciones pueden ser importadas o se puede establecer una semilla HD más tarde.</translation>
</message>
<message>
<source>Make Blank Wallet</source>
- <translation type="unfinished">Crear billetera vacía</translation>
+ <translation type="unfinished">Crear billetera en blanco</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Use descriptores para la gestión de scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Descriptor de la billetera</translation>
+ <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
+ <translation type="unfinished">Usa un dispositivo de firma externo, por ejemplo, una billetera de hardware. Configura primero el script del firmante externo en las preferencias de la billetera.</translation>
</message>
<message>
<source>External signer</source>
@@ -1166,13 +1229,9 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">Crear</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilado sin soporte de sqlite (requerido para billeteras descriptoras)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">Compilado sin soporte de firma externa (necesario para la firma externa)</translation>
+ <translation type="unfinished">Compilado sin soporte de firma externa (requerido para la firma externa)</translation>
</message>
</context>
<context>
@@ -1187,11 +1246,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>The label associated with this address list entry</source>
- <translation type="unfinished">La etiqueta asociada con esta entrada de la lista de direcciones</translation>
+ <translation type="unfinished">La etiqueta asociada con esta entrada en la lista de direcciones</translation>
</message>
<message>
<source>The address associated with this address list entry. This can only be modified for sending addresses.</source>
- <translation type="unfinished">La dirección asociada con esta entrada en la libreta de direcciones. Solo puede ser modificada para direcciones de envío.</translation>
+ <translation type="unfinished">La dirección asociada con esta entrada en la lista de direcciones. Solo se puede modificar para las direcciones de envío.</translation>
</message>
<message>
<source>&amp;Address</source>
@@ -1199,7 +1258,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>New sending address</source>
- <translation type="unfinished">Nueva dirección para enviar</translation>
+ <translation type="unfinished">Nueva dirección de envío</translation>
</message>
<message>
<source>Edit receiving address</source>
@@ -1207,11 +1266,19 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Edit sending address</source>
- <translation type="unfinished">Editar dirección de envio</translation>
+ <translation type="unfinished">Editar dirección de envío</translation>
</message>
<message>
<source>The entered address "%1" is not a valid Bitcoin address.</source>
- <translation type="unfinished">La dirección introducida "%1" no es una dirección Bitcoin valida.</translation>
+ <translation type="unfinished">La dirección ingresada "%1" no es una dirección de Bitcoin válida.</translation>
+ </message>
+ <message>
+ <source>Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address.</source>
+ <translation type="unfinished">La dirección "%1" ya existe como dirección de recepción con la etiqueta "%2" y, por lo tanto, no se puede agregar como dirección de envío.</translation>
+ </message>
+ <message>
+ <source>The entered address "%1" is already in the address book with label "%2".</source>
+ <translation type="unfinished">La dirección ingresada "%1" ya está en la libreta de direcciones con la etiqueta "%2".</translation>
</message>
<message>
<source>Could not unlock wallet.</source>
@@ -1219,18 +1286,18 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>New key generation failed.</source>
- <translation type="unfinished">La generación de nueva clave falló.</translation>
+ <translation type="unfinished">Error al generar clave nueva.</translation>
</message>
</context>
<context>
<name>FreespaceChecker</name>
<message>
<source>A new data directory will be created.</source>
- <translation type="unfinished">Un nuevo directorio de datos será creado.</translation>
+ <translation type="unfinished">Se creará un nuevo directorio de datos.</translation>
</message>
<message>
<source>name</source>
- <translation type="unfinished">Nombre</translation>
+ <translation type="unfinished">nombre</translation>
</message>
<message>
<source>Directory already exists. Add %1 if you intend to create a new directory here.</source>
@@ -1242,7 +1309,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Cannot create data directory here.</source>
- <translation type="unfinished">Es imposible crear la carpeta de datos aquí.</translation>
+ <translation type="unfinished">No se puede crear un directorio de datos aquí.</translation>
</message>
</context>
<context>
@@ -1274,11 +1341,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
- <translation type="unfinished">Al menos %1 GB de información será almacenado en este directorio, y seguirá creciendo a través del tiempo.</translation>
+ <translation type="unfinished">Se almacenará al menos %1 GB de información en este directorio, que aumentará con el tiempo.</translation>
</message>
<message>
<source>Approximately %1 GB of data will be stored in this directory.</source>
- <translation type="unfinished">Aproximadamente %1 GB de información será almacenado en este directorio.</translation>
+ <translation type="unfinished">Se almacenará aproximadamente %1 GB de información en este directorio.</translation>
</message>
<message numerus="yes">
<source>(sufficient to restore backups %n day(s) old)</source>
@@ -1290,39 +1357,39 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>%1 will download and store a copy of the Bitcoin block chain.</source>
- <translation type="unfinished">%1 descargará y almacenará una copia del blockchain de Bitcoin.</translation>
+ <translation type="unfinished">%1 descargará y almacenará una copia de la cadena de bloques de Bitcoin.</translation>
</message>
<message>
<source>The wallet will also be stored in this directory.</source>
- <translation type="unfinished">El monedero también será almacenado en este directorio.</translation>
+ <translation type="unfinished">La billetera también se almacenará en este directorio.</translation>
</message>
<message>
<source>Error: Specified data directory "%1" cannot be created.</source>
- <translation type="unfinished">Error: El directorio de datos especificado "%1" no pudo ser creado.</translation>
+ <translation type="unfinished">Error: No se puede crear el directorio de datos especificado "%1" .</translation>
</message>
<message>
<source>Welcome</source>
- <translation type="unfinished">bienvenido</translation>
+ <translation type="unfinished">Te damos la bienvenida</translation>
</message>
<message>
<source>Welcome to %1.</source>
- <translation type="unfinished">Bienvenido a %1.</translation>
+ <translation type="unfinished">Te damos la bienvenida a %1.</translation>
</message>
<message>
<source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
- <translation type="unfinished">Al ser la primera vez que se ejecuta el programa, puede elegir donde %1 almacenará sus datos.</translation>
+ <translation type="unfinished">Como es la primera vez que se ejecuta el programa, puedes elegir dónde %1 almacenará los datos.</translation>
</message>
<message>
<source>Limit block chain storage to</source>
- <translation type="unfinished">Limitar el almacenamiento de cadena de bloques a</translation>
+ <translation type="unfinished">Limitar el almacenamiento de la cadena de bloques a</translation>
</message>
<message>
<source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
- <translation type="unfinished">Revertir esta configuración requiere descargar la blockchain completa nuevamente. Es más rápido descargar la cadena completa y podarla después. Desactiva algunas funciones avanzadas.</translation>
+ <translation type="unfinished">Para revertir esta configuración, se debe descargar de nuevo la cadena de bloques completa. Es más rápido descargar la cadena completa y podarla después. Desactiva algunas funciones avanzadas.</translation>
</message>
<message>
<source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
- <translation type="unfinished">El primer proceso de sincronización consume muchos recursos, y es posible que puedan ocurrir problemas de hardware que anteriormente no hayas notado. Cada vez que ejecutes %1 automáticamente se reiniciará el proceso de sincronización desde el punto que lo dejaste anteriormente.</translation>
+ <translation type="unfinished">La sincronización inicial consume muchos recursos y es posible que exponga problemas de hardware en la computadora que anteriormente pasaron desapercibidos. Cada vez que ejecutes %1, seguirá descargando desde el punto en el que quedó.</translation>
</message>
<message>
<source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
@@ -1330,7 +1397,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
- <translation type="unfinished">Si elegiste la opción de limitar el tamaño del blockchain (pruning), de igual manera será descargada y procesada la información histórica, pero será eliminada al finalizar este proceso para disminuir el uso del disco duro.</translation>
+ <translation type="unfinished">Si elegiste la opción de limitar el almacenamiento de la cadena de bloques (podado), los datos históricos se deben descargar y procesar de igual manera, pero se eliminarán después para disminuir el uso del disco.</translation>
</message>
<message>
<source>Use the default data directory</source>
@@ -1338,7 +1405,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Use a custom data directory:</source>
- <translation type="unfinished">usar un directorio de datos personalizado:</translation>
+ <translation type="unfinished">Usar un directorio de datos personalizado:</translation>
</message>
</context>
<context>
@@ -1349,18 +1416,22 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>About %1</source>
- <translation type="unfinished">Sobre %1</translation>
+ <translation type="unfinished">Acerca de %1</translation>
</message>
<message>
<source>Command-line options</source>
- <translation type="unfinished">opciones de linea de comando</translation>
+ <translation type="unfinished">Opciones de línea de comando</translation>
</message>
</context>
<context>
<name>ShutdownWindow</name>
<message>
+ <source>%1 is shutting down…</source>
+ <translation type="unfinished">%1 se está cerrando...</translation>
+ </message>
+ <message>
<source>Do not shut down the computer until this window disappears.</source>
- <translation type="unfinished">No apague el equipo hasta que desaparezca esta ventana.</translation>
+ <translation type="unfinished">No apagues el equipo hasta que desaparezca esta ventana.</translation>
</message>
</context>
<context>
@@ -1371,11 +1442,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
- <translation type="unfinished">Las transacciones recientes aún no pueden ser visibles, y por lo tanto el saldo de su monedero podría ser incorrecto. Esta información será correcta cuando su monedero haya terminado de sincronizarse con la red de bitcoin, como se detalla abajo.</translation>
+ <translation type="unfinished">Es posible que las transacciones recientes aún no sean visibles y, por lo tanto, el saldo de la billetera podría ser incorrecto. Esta información será correcta una vez que la billetera haya terminado de sincronizarse con la red de Bitcoin, como se detalla abajo.</translation>
</message>
<message>
<source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
- <translation type="unfinished">La red no aceptará el intentar gastar bitcoins que están afectados por transacciones aún no mostradas.</translation>
+ <translation type="unfinished">La red no aceptará si se intenta gastar bitcoins afectados por las transacciones que aún no se muestran.</translation>
</message>
<message>
<source>Number of blocks left</source>
@@ -1386,6 +1457,10 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">Desconocido...</translation>
</message>
<message>
+ <source>calculating…</source>
+ <translation type="unfinished">calculando...</translation>
+ </message>
+ <message>
<source>Last block time</source>
<translation type="unfinished">Hora del último bloque</translation>
</message>
@@ -1407,11 +1482,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
- <translation type="unfinished">%1 está actualmente sincronizándose. Descargará cabeceras y bloques de nodos semejantes y los validará hasta alcanzar la cabeza de la cadena de bloques.</translation>
+ <translation type="unfinished">%1 se está sincronizando actualmente. Descargará encabezados y bloques de pares, y los validará hasta alcanzar el extremo de la cadena de bloques.</translation>
</message>
<message>
<source>Unknown. Syncing Headers (%1, %2%)…</source>
- <translation type="unfinished">Desconocido. Sincronizando cabeceras (%1, %2%)…</translation>
+ <translation type="unfinished">Desconocido. Sincronizando encabezados (%1, %2%)…</translation>
</message>
<message>
<source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
@@ -1470,11 +1545,11 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source>
- <translation type="unfinished">Muestra si el proxy SOCKS5 por defecto se utiliza para conectarse a pares a través de este tipo de red.</translation>
+ <translation type="unfinished">Muestra si el proxy SOCKS5 por defecto suministrado se utiliza para llegar a los pares a través de este tipo de red.</translation>
</message>
<message>
<source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source>
- <translation type="unfinished">Minimizar en vez de salir de la aplicación cuando la ventana está cerrada. Cuando se activa esta opción, la aplicación sólo se cerrará después de seleccionar Salir en el menú.</translation>
+ <translation type="unfinished">Minimizar en vez de salir de la aplicación cuando la ventana está cerrada. Cuando se activa esta opción, la aplicación solo se cerrará después de seleccionar "Salir" en el menú.</translation>
</message>
<message>
<source>Options set in this dialog are overridden by the command line:</source>
@@ -1711,7 +1786,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">Compilado sin soporte de firma externa (necesario para la firma externa)</translation>
+ <translation type="unfinished">Compilado sin soporte de firma externa (requerido para la firma externa)</translation>
</message>
<message>
<source>default</source>
@@ -1765,7 +1840,7 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
</message>
<message>
<source>This change would require a client restart.</source>
- <translation type="unfinished">Estos cambios requieren el reinicio del cliente.</translation>
+ <translation type="unfinished">Estos cambios requieren reiniciar el cliente.</translation>
</message>
<message>
<source>The supplied proxy address is invalid.</source>
@@ -1938,6 +2013,10 @@ Solo es posible firmar con direcciones de tipo legacy.</translation>
<translation type="unfinished">* Envía %1 a %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">dirección propia</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">No se puede calcular la comisión o el importe total de la transacción.</translation>
</message>
@@ -2126,12 +2205,16 @@ Si recibes este error, debes solicitar al comerciante que te proporcione un URI
<translation type="unfinished">&amp;Información</translation>
</message>
<message>
+ <source>Datadir</source>
+ <translation type="unfinished">Directorio de datos</translation>
+ </message>
+ <message>
<source>To specify a non-default location of the data directory use the '%1' option.</source>
<translation type="unfinished">Para especificar una ubicación no predeterminada del directorio de datos, usa la opción "%1".</translation>
</message>
<message>
<source>Blocksdir</source>
- <translation type="unfinished">Bloques dir</translation>
+ <translation type="unfinished">Directorio de bloques</translation>
</message>
<message>
<source>To specify a non-default location of the blocks directory use the '%1' option.</source>
@@ -2163,11 +2246,11 @@ Si recibes este error, debes solicitar al comerciante que te proporcione un URI
</message>
<message>
<source>Current number of transactions</source>
- <translation type="unfinished">Numero total de transacciones</translation>
+ <translation type="unfinished">Número total de transacciones</translation>
</message>
<message>
<source>Memory usage</source>
- <translation type="unfinished">Memoria utilizada</translation>
+ <translation type="unfinished">Uso de memoria</translation>
</message>
<message>
<source>Wallet: </source>
@@ -2175,11 +2258,11 @@ Si recibes este error, debes solicitar al comerciante que te proporcione un URI
</message>
<message>
<source>(none)</source>
- <translation type="unfinished">(ninguno)</translation>
+ <translation type="unfinished">(ninguna)</translation>
</message>
<message>
<source>&amp;Reset</source>
- <translation type="unfinished">&amp;Reestablecer</translation>
+ <translation type="unfinished">&amp;Restablecer</translation>
</message>
<message>
<source>Received</source>
@@ -2202,6 +2285,22 @@ Si recibes este error, debes solicitar al comerciante que te proporcione un URI
<translation type="unfinished">Selecciona un par para ver la información detallada.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versión de la capa de transporte: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Cadena de identificación de la sesión BIP324 en formato hexadecimal, si existe.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">Identificación de la sesión</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">Versión</translation>
</message>
@@ -2321,7 +2420,7 @@ Si recibes este error, debes solicitar al comerciante que te proporcione un URI
</message>
<message>
<source>Connection Time</source>
- <translation type="unfinished">Duración de la conexión</translation>
+ <translation type="unfinished">Tiempo de conexión</translation>
</message>
<message>
<source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
@@ -2431,6 +2530,21 @@ Si recibes este error, debes solicitar al comerciante que te proporcione un URI
<translation type="unfinished">Recuperación de dirección saliente: de corta duración, para solicitar direcciones</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">detectando: el par puede ser v1 o v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simple sin encriptar</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte encriptado BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">Seleccionamos el par para la retransmisión de banda ancha</translation>
</message>
@@ -2563,7 +2677,7 @@ Para obtener más información sobre cómo usar esta consola, escribe %6.
</message>
<message>
<source>An optional label to associate with the new receiving address.</source>
- <translation type="unfinished">Una etiqueta opcional para asociar con la nueva dirección de recepción</translation>
+ <translation type="unfinished">Una etiqueta opcional para asociar con la nueva dirección de recepción.</translation>
</message>
<message>
<source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
@@ -2756,7 +2870,7 @@ Para obtener más información sobre cómo usar esta consola, escribe %6.
</message>
<message>
<source>automatically selected</source>
- <translation type="unfinished">Seleccionado automaticamente</translation>
+ <translation type="unfinished">seleccionado automáticamente</translation>
</message>
<message>
<source>Insufficient funds!</source>
@@ -2820,7 +2934,7 @@ Para obtener más información sobre cómo usar esta consola, escribe %6.
</message>
<message>
<source>Send to multiple recipients at once</source>
- <translation type="unfinished">Enviar a múltiples destinatarios</translation>
+ <translation type="unfinished">Enviar a múltiples destinatarios a la vez</translation>
</message>
<message>
<source>Add &amp;Recipient</source>
@@ -2835,10 +2949,6 @@ Para obtener más información sobre cómo usar esta consola, escribe %6.
<translation type="unfinished">Entradas...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Remanente:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Elegir...</translation>
</message>
@@ -2915,10 +3025,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar remanente</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -2950,7 +3056,7 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
</message>
<message>
<source> from wallet '%1'</source>
- <translation type="unfinished">desde la billetera '%1'</translation>
+ <translation type="unfinished">desde la billetera "%1"</translation>
</message>
<message>
<source>%1 to '%2'</source>
@@ -3276,7 +3382,7 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
</message>
<message>
<source>The entered address is invalid.</source>
- <translation type="unfinished">La dirección ingresada es inválida</translation>
+ <translation type="unfinished">La dirección ingresada es inválida.</translation>
</message>
<message>
<source>Please check the address and try again.</source>
@@ -3300,7 +3406,7 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
</message>
<message>
<source>Message signing failed.</source>
- <translation type="unfinished">Falló la firma del mensaje.</translation>
+ <translation type="unfinished">Error al firmar el mensaje.</translation>
</message>
<message>
<source>Message signed.</source>
@@ -3572,10 +3678,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviada a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pago a ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minada</translation>
</message>
@@ -3651,10 +3753,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviada a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minada</translation>
</message>
@@ -3936,6 +4034,10 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">%s dañado. Trata de usar la herramienta de la billetera de Bitcoin para rescatar o restaurar una copia de seguridad.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea inválida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Reporta este incidente a %s, indicando cómo obtuviste la instantánea. Se dejó el estado de cadena de la instantánea inválida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s solicitud para escuchar en el puerto%u. Este puerto se considera "malo" y, por lo tanto, es poco probable que algún par se conecte a él. Consulta doc/p2p-bad-ports.md para obtener detalles y una lista completa.</translation>
</message>
@@ -3964,10 +4066,6 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">Error al cargar la billetera. Esta requiere que se descarguen bloques, y el software actualmente no admite la carga de billeteras mientras los bloques se descargan fuera de orden, cuando se usan instantáneas de assumeutxo. La billetera debería poder cargarse correctamente después de que la sincronización del nodo alcance la altura %s.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">¡Error al leer %s! Todas las claves se leyeron correctamente, pero es probable que falten los datos de la transacción o la libreta de direcciones, o que sean incorrectos.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">¡Error al leer %s! Es probable que falten los datos de la transacción o que sean incorrectos. Rescaneando billetera.</translation>
</message>
@@ -4036,6 +4134,10 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">Poda: la última sincronización de la billetera sobrepasa los datos podados. Tienes que ejecutar -reindex (descarga toda la cadena de bloques de nuevo en caso de tener un nodo podado)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Error al cambiar el nombre de "%s" a "%s". Para resolverlo, mueve o elimina manualmente el directorio %s de la instantánea no válida. De lo contrario, encontrarás el mismo error de nuevo en el siguiente inicio.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: versión desconocida del esquema de la billetera sqlite %d. Solo se admite la versión %d.</translation>
</message>
@@ -4044,10 +4146,6 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">La base de datos de bloques contiene un bloque que parece ser del futuro. Es posible que se deba a que la fecha y hora de la computadora están mal configuradas. Reconstruye la base de datos de bloques solo si tienes la certeza de que la fecha y hora de la computadora son correctas.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">La base de datos del índice de bloques contiene un "txindex" de tipo legacy. Para borrar el espacio de disco ocupado, ejecuta un -reindex completo; de lo contrario, ignora este error. Este mensaje de error no se volverá a mostrar.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">El importe de la transacción es demasiado pequeño para enviarlo después de deducir la comisión</translation>
</message>
@@ -4084,6 +4182,10 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">Se proporcionó un formato de archivo de billetera desconocido "%s". Proporciona uno entre "bdb" o "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">El nivel de registro de la categoría específica no es compatible: %1$s=%2$s. Se esperaba %1$s=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %3$s. Niveles de registro válidos: %4 $s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">El formato de la base de datos chainstate es incompatible. Reinicia con -reindex-chainstate para reconstruir la base de datos chainstate.</translation>
</message>
@@ -4092,6 +4194,10 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">La billetera se creó correctamente. El tipo de billetera "legacy" se está descontinuando, por lo que la asistencia para crear y abrir estas billeteras se eliminará en el futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">La billetera se creó correctamente. El tipo de billetera "legacy" se está descontinuando, por lo que la asistencia para crear y abrir estas billeteras se eliminará en el futuro. Las billeteras "legacy" se pueden migrar a una billetera basada en descriptores con "migratewallet".</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Advertencia: El formato de la billetera del archivo de volcado "%s" no coincide con el formato especificado en la línea de comandos "%s".</translation>
</message>
@@ -4140,30 +4246,10 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">No se puede escribir en el directorio de datos "%s"; comprueba los permisos.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La actualización -txindex iniciada por una versión anterior no puede completarse. Reinicia con la versión anterior o ejecuta un -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea inválida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Reporta este incidente a %s, indicando cómo obtuviste la instantánea. Se dejó el estado de cadena de la instantánea inválida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">El valor establecido para %s es demasiado alto. Las comisiones tan grandes se podrían pagar en una sola transacción.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -blockfilterindex. Desactiva temporalmente blockfilterindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -coinstatsindex. Desactiva temporalmente coinstatsindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -txindex. Desactiva temporalmente txindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">No se pueden proporcionar conexiones específicas y hacer que addrman encuentre conexiones salientes al mismo tiempo.</translation>
</message>
@@ -4172,6 +4258,10 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">Error al cargar %s: Se está cargando la billetera firmante externa sin que se haya compilado la compatibilidad del firmante externo</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Error al leer %s. Todas las claves se leyeron correctamente, pero es probable que falten los datos de la transacción o metadatos de direcciones, o bien que sean incorrectos.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Error: No se puede identificar si los datos de la libreta de direcciones en la billetera pertenecen a billeteras migradas</translation>
</message>
@@ -4184,6 +4274,10 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
<translation type="unfinished">Error: No se puede identificar si la transacción %s en la billetera pertenece a billeteras migradas</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">No se pudo calcular la comisión de incremento porque las UTXO sin confirmar dependen de un grupo enorme de transacciones no confirmadas.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">No se pudo cambiar el nombre del archivo peers.dat inválido. Muévelo o elimínalo, e intenta de nuevo.</translation>
</message>
@@ -4225,7 +4319,7 @@ Ir a "Archivo &gt; Abrir billetera" para cargar una.
</message>
<message>
<source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
- <translation type="unfinished">La transacción requiere un destino de valor distinto de cero, una tasa de comisión distinta de cero, o una entrada preseleccionada.</translation>
+ <translation type="unfinished">La transacción requiere un destino de valor distinto de 0, una tasa de comisión distinta de 0, o una entrada preseleccionada.</translation>
</message>
<message>
<source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
@@ -4258,10 +4352,6 @@ Intenta ejecutar la última versión del software.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">La categoría especifica de nivel de registro no es compatible: -loglevel=%s. Se espera -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %s. Niveles de registro válidos: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4450,6 +4540,10 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Fallo al rescanear la billetera durante la inicialización</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Error al iniciar índices, cerrando...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Fallo al verificar la base de datos</translation>
</message>
@@ -4479,7 +4573,7 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
</message>
<message>
<source>Insufficient dbcache for block verification</source>
- <translation type="unfinished">dbcache insuficiente para la verificación de bloques</translation>
+ <translation type="unfinished">Dbcache insuficiente para la verificación de bloques</translation>
</message>
<message>
<source>Insufficient funds</source>
@@ -4766,8 +4860,12 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Se desconocen las nuevas reglas activadas (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">El nivel de registro global -loglevel=%s no es compatible. Valores válidos: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">El nivel de registro global %s=%s no es compatible. Valores válidos: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates no se admite en la cadena %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_es_DO.ts b/src/qt/locale/bitcoin_es_DO.ts
index c70dfaa321..d77efacee1 100644
--- a/src/qt/locale/bitcoin_es_DO.ts
+++ b/src/qt/locale/bitcoin_es_DO.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Escoger</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Envío de direcciones</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Direcciones de recepción</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estas son tus direcciones Bitcoin para realizar pagos. Verifica siempre el monto y la dirección de recepción antes de enviar monedas. </translation>
</message>
@@ -101,6 +93,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Tuvimos un problema al guardar la dirección en la lista %1. Intenta de Nuevo.</translation>
</message>
<message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Recepción de direcciones - %1
+</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Error al exportar</translation>
</message>
@@ -626,16 +623,28 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar una billetera</translation>
+ </message>
+ <message>
<source>&amp;Mask values</source>
<translation type="unfinished">&amp;Ocultar valores</translation>
</message>
<message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Ocultar los valores en la pestaña de vista general</translation>
+ </message>
+ <message>
<source>default wallet</source>
<translation type="unfinished">billetera por defecto</translation>
</message>
<message>
<source>No wallets available</source>
- <translation type="unfinished">No hay carteras disponibles</translation>
+ <translation type="unfinished">Monederos no disponibles</translation>
</message>
<message>
<source>Wallet Data</source>
@@ -662,10 +671,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">&amp;Ventana</translation>
</message>
<message>
- <source>Main Window</source>
- <translation type="unfinished">Ventana principal</translation>
- </message>
- <message>
<source>%1 client</source>
<translation type="unfinished">%1 cliente</translation>
</message>
@@ -710,6 +715,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Presincronizando encabezados (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Error al crear billetera</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">No se puede crear una nueva billetera, el software se compiló sin soporte sqlite (requerido para billeteras descriptivas)</translation>
+ </message>
+ <message>
<source>Warning: %1</source>
<translation type="unfinished">Advertencia: %1</translation>
</message>
@@ -808,10 +821,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Comisión:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Después de tasas:</translation>
</message>
@@ -908,14 +917,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">si</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta se vuelve roja si algún receptor recibe un importe inferior al umbral actual establecido para el polvo.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Puede variar en +/- %1 satoshi(s) por entrada.</translation>
</message>
@@ -935,11 +936,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>CreateWalletActivity</name>
<message>
- <source>Create Wallet</source>
- <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
- <translation type="unfinished">Crear billetera</translation>
- </message>
- <message>
<source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the create wallet progress window which indicates to the user which wallet is currently being created.</extracomment>
<translation type="unfinished">Creando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
@@ -975,6 +971,57 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Estas seguro de wue deseas migrar la billetera 1 %1 1 ?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migración de la billetera la convertirá en una o más billeteras basadas en descriptores. Será necesario realizar una nueva copia de seguridad de la billetera.
+Si esta billetera contiene scripts solo de lectura, se creará una nueva billetera que los contenga.
+Si esta billetera contiene scripts solucionables pero no de lectura, se creará una nueva billetera diferente que los contenga.
+
+El proceso de migración creará una copia de seguridad de la billetera antes de migrar. Este archivo de copia de seguridad se llamará &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak y se encontrará en el directorio de esta billetera. En el caso de una migración incorrecta, la copia de seguridad puede restaurarse con la funcionalidad "Restore Wallet" (Restaurar billetera).</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">La migración de la billetera "%1" se realizó correctamente.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solo de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solucionables pero no de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migración errónea</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migración correcta</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet warning</source>
@@ -987,7 +1034,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Abrir billetera</translation>
+ <translation type="unfinished">Abrir monedero</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -1026,10 +1073,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>WalletController</name>
<message>
- <source>Close wallet</source>
- <translation type="unfinished">Cerrar cartera</translation>
- </message>
- <message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
<translation type="unfinished">¿Estás seguro de que deseas cerrar el monedero &lt;i&gt;%1&lt;/i&gt;?</translation>
</message>
@@ -1039,7 +1082,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Close all wallets</source>
- <translation type="unfinished">Cerrar todas las billeteras</translation>
+ <translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
<source>Are you sure you wish to close all wallets?</source>
@@ -1049,8 +1092,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>CreateWalletDialog</name>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Estás a un paso de crear tu nueva billetera.</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Escribe un nombre y, si lo deseas, activa las opciones avanzadas.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">Nombre de la billetera </translation>
+ <translation type="unfinished">Nombre del monedero</translation>
</message>
<message>
<source>Wallet</source>
@@ -1061,10 +1112,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Encriptar la billetera. La billetera será encriptada con una contraseña de tu elección.</translation>
</message>
<message>
- <source>Advanced Options</source>
- <translation type="unfinished">Opciones Avanzadas</translation>
- </message>
- <message>
<source>Disable Private Keys</source>
<translation type="unfinished">Desactivar las claves privadas</translation>
</message>
@@ -1077,10 +1124,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Crear billetera vacía</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Use descriptores para la gestión de scriptPubKey</translation>
- </message>
- <message>
<source>External signer</source>
<translation type="unfinished">Firmante externo</translation>
</message>
@@ -1089,10 +1132,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Crear</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilado sin soporte de sqlite (requerido para billeteras descriptoras)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilado sin soporte de firma externa (necesario para la firma externa)</translation>
@@ -1294,10 +1333,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Incremento del progreso por hora</translation>
</message>
<message>
- <source>Estimated time left until synced</source>
- <translation type="unfinished">Tiempo estimado antes de sincronizar</translation>
- </message>
- <message>
<source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
<translation type="unfinished">%1 está actualmente sincronizándose. Descargará cabeceras y bloques de nodos semejantes y los validará hasta alcanzar la cabeza de la cadena de bloques.</translation>
</message>
@@ -1469,10 +1504,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Asignar puerto usando NA&amp;T-PMP</translation>
</message>
<message>
- <source>Accept connections from outside.</source>
- <translation type="unfinished">Acepta conexiones desde afuera.</translation>
- </message>
- <message>
<source>Allow incomin&amp;g connections</source>
<translation type="unfinished">Permitir conexiones entrantes</translation>
</message>
@@ -1802,6 +1833,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">* Envía %1 a %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">dirección propia</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">No se puede calcular la comisión o el importe total de la transacción.</translation>
</message>
@@ -2021,10 +2056,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Monedero:</translation>
</message>
<message>
- <source>(none)</source>
- <translation type="unfinished">(ninguno)</translation>
- </message>
- <message>
<source>&amp;Reset</source>
<translation type="unfinished">&amp;Reestablecer</translation>
</message>
@@ -2049,6 +2080,22 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Selecciona un par para ver la información detallada.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versión de la capa de transporte: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Cadena de identificación de la sesión BIP324 en formato hexadecimal, si existe.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">Identificador de sesión</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Si retransmitimos las transacciones a este par.</translation>
</message>
@@ -2155,10 +2202,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Banda ancha</translation>
</message>
<message>
- <source>Connection Time</source>
- <translation type="unfinished">Tiempo de conexión</translation>
- </message>
- <message>
<source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
<translation type="unfinished">Tiempo transcurrido desde que se recibió de este par un nuevo bloque que superó las comprobaciones de validez iniciales.</translation>
</message>
@@ -2258,6 +2301,21 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Recuperación de dirección saliente: de corta duración, para solicitar direcciones</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Detectando: el par puede ser v1 o v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simple sin cifrar</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte encriptado BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">Seleccionamos el par para la retransmisión de banda ancha</translation>
</message>
@@ -2625,10 +2683,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Entradas...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Elegir...</translation>
</message>
@@ -3292,10 +3346,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviado a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pago propio</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3367,10 +3417,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviado a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A usted mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3628,6 +3674,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">%s corrupto. Intenta utilizar la herramienta de la billetera de bitcoin para rescatar o restaurar una copia de seguridad.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea no válida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Comunique este incidente a %s, indicando cómo obtuvo la instantánea. Se dejó el estado de encadenamiento de la instantánea no válida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s solicitud para escuchar en el puerto%u. Este puerto se considera "malo" y, por lo tanto, es poco probable que algún par se conecte a él. Consulta doc/p2p-bad-ports.md para obtener detalles y una lista completa.</translation>
</message>
@@ -3652,10 +3702,6 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error al cargar la billetera. Esta requiere que se descarguen bloques, y el software actualmente no admite la carga de billeteras mientras los bloques se descargan fuera de orden, cuando se usan instantáneas de assumeutxo. La billetera debería poder cargarse correctamente después de que la sincronización del nodo alcance la altura %s.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">¡Error al leer %s! Todas las claves se leyeron correctamente, pero es probable que falten los datos de la transacción o la libreta de direcciones, o que sean incorrectos.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">¡Error al leer %s! Es probable que falten los datos de la transacción o que sean incorrectos. Reescaneando billetera.</translation>
</message>
@@ -3720,6 +3766,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Poda: la última sincronización de la billetera sobrepasa los datos podados. Tienes que ejecutar -reindex (descarga toda la cadena de bloques de nuevo en caso de tener un nodo podado)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Error de renombrado de «%s» → «%s». Debería resolver esto manualmente moviendo o borrando el directorio %s de la instantánea no válida, en otro caso encontrará el mismo error de nuevo en el arranque siguiente.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: versión desconocida del esquema de la billetera sqlite %d. Solo se admite la versión %d.</translation>
</message>
@@ -3728,10 +3778,6 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">La base de datos de bloques contiene un bloque que parece ser del futuro. Es posible que se deba a que la fecha y hora de la computadora están mal configuradas. Reconstruye la base de datos de bloques solo si tienes la certeza de que la fecha y hora de la computadora son correctas.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">La base de datos del índice de bloques contiene un "txindex" heredado. Para borrar el espacio de disco ocupado, ejecute un -reindex completo; de lo contrario, ignore este error. Este mensaje de error no se volverá a mostrar.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">El monto de la transacción es demasiado pequeño para enviarlo después de deducir la comisión</translation>
</message>
@@ -3768,6 +3814,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Se proporcionó un formato de archivo de billetera desconocido "%s". Proporciona uno entre "bdb" o "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nivel de boletín del acceso especificado en categoría no mantenida en %1$s=%2$s. Se esperaba %1$s=1:2. Categorías válidas: %3$s. Niveles de boletín válidos: %4 $s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">El formato de la base de datos chainstate es incompatible. Reinicia con -reindex-chainstate para reconstruir la base de datos chainstate.</translation>
</message>
@@ -3776,6 +3826,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">La billetera se creó correctamente. El tipo de billetera "legacy" se está descontinuando, por lo que la asistencia para crear y abrir estas billeteras se eliminará en el futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Monedero correctamente cargado. El tipo de billetero heredado está siendo obsoleto y mantenimiento para creación de monederos heredados serán eliminados en el futuro. Los monederos heredados pueden ser migrados a un descriptor de monedero con migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Advertencia: el formato de la billetera del archivo de volcado "%s" no coincide con el formato especificado en la línea de comandos "%s".</translation>
</message>
@@ -3824,30 +3878,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">No se puede escribir en el directorio de datos "%s"; comprueba los permisos.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La actualización -txindex iniciada por una versión anterior no puede completarse. Reinicia con la versión anterior o ejecuta un -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea inválida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Reporta este incidente a %s, indicando cómo obtuviste la instantánea. Se dejó el estado de cadena de la instantánea inválida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">La configuración de %s es demasiado alta. Las comisiones tan grandes se podrían pagar en una sola transacción.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -blockfilterindex. Desactiva temporalmente blockfilterindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -coinstatsindex. Desactiva temporalmente coinstatsindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -txindex. Desactiva temporalmente txindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">No se pueden proporcionar conexiones específicas y hacer que addrman encuentre conexiones salientes al mismo tiempo.</translation>
</message>
@@ -3856,6 +3890,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error al cargar %s: Se está cargando la billetera firmante externa sin que se haya compilado la compatibilidad del firmante externo</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Error leyendo %s. Todas las teclas leídas correctamente, pero los datos de transacción o metadatos de dirección puedan ser ausentes o incorrectos.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Error: No se puede identificar si los datos de la libreta de direcciones en la billetera pertenecen a billeteras migradas</translation>
</message>
@@ -3868,6 +3906,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error: No se puede identificar si la transacción %s en la billetera pertenece a billeteras migradas</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">No se pudo calcular la comisión de incremento porque las UTXO sin confirmar dependen de un grupo enorme de transacciones no confirmadas.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">No se pudo cambiar el nombre del archivo peers.dat inválido. Muévelo o elimínalo, e intenta de nuevo.</translation>
</message>
@@ -3942,10 +3984,6 @@ Intenta ejecutar la última versión del software.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">La categoría especifica de nivel de registro no es compatible: -loglevel=%s. Se espera -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %s. Niveles de registro válidos: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4126,6 +4164,10 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Fallo al rescanear la billetera durante la inicialización</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Es erróneo al iniciar indizados, se apaga...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Fallo al verificar la base de datos</translation>
</message>
@@ -4314,10 +4356,6 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">El monto de la transacción es demasiado pequeño para pagar la comisión</translation>
</message>
<message>
- <source>This is experimental software.</source>
- <translation type="unfinished">Este es un software experimental.</translation>
- </message>
- <message>
<source>This is the minimum transaction fee you pay on every transaction.</source>
<translation type="unfinished">Esta es la tarifa mínima a pagar en cada transacción.</translation>
</message>
@@ -4414,8 +4452,12 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Se desconocen las nuevas reglas activadas (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">El nivel de registro de depuración global -loglevel=%s no es compatible. Valores válidos: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nivel de acceso global %s = %s no mantenido. Los valores válidos son: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates no está mantenido en el encadenamiento %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_es_MX.ts b/src/qt/locale/bitcoin_es_MX.ts
index 63e21937a0..f46d77e8d3 100644
--- a/src/qt/locale/bitcoin_es_MX.ts
+++ b/src/qt/locale/bitcoin_es_MX.ts
@@ -2,261 +2,75 @@
<context>
<name>AddressBookPage</name>
<message>
- <source>Right-click to edit address or label</source>
- <translation type="unfinished">Hacer clic derecho para editar la dirección o etiqueta</translation>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Enviando direcciones- %1</translation>
</message>
<message>
- <source>&amp;New</source>
- <translation type="unfinished">&amp;Nuevoa</translation>
- </message>
- <message>
- <source>C&amp;lose</source>
- <translation type="unfinished">&amp;Cerrar</translation>
- </message>
- <message>
- <source>Enter address or label to search</source>
- <translation type="unfinished">Ingresar una dirección o etiqueta para buscar</translation>
- </message>
- <message>
- <source>Choose the address to send coins to</source>
- <translation type="unfinished">Elige la dirección para enviar monedas a</translation>
- </message>
- <message>
- <source>Choose the address to receive coins with</source>
- <translation type="unfinished">Elige la dirección con la que se recibirán monedas</translation>
- </message>
- <message>
- <source>C&amp;hoose</source>
- <translation type="unfinished">&amp;Seleccionar</translation>
- </message>
- <message>
- <source>Sending addresses</source>
- <translation type="unfinished">Direcciones de envío</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Direcciones de recepción</translation>
- </message>
- <message>
- <source>Comma separated file</source>
- <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">Archivo separado por comas</translation>
- </message>
- </context>
-<context>
- <name>AskPassphraseDialog</name>
- <message>
- <source>Encrypt wallet</source>
- <translation type="unfinished">Encriptar billetera</translation>
- </message>
- <message>
- <source>Confirm wallet encryption</source>
- <translation type="unfinished">Confirmar el encriptado de la billetera</translation>
- </message>
- <message>
- <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
- <translation type="unfinished">Advertencia: Si encriptas la billetera y pierdes tu frase de contraseña, ¡&lt;b&gt;PERDERÁS TODOS TUS BITCOINS&lt;/b&gt;!</translation>
- </message>
- <message>
- <source>Are you sure you wish to encrypt your wallet?</source>
- <translation type="unfinished">¿Seguro quieres encriptar la billetera?</translation>
- </message>
- <message>
- <source>Wallet encrypted</source>
- <translation type="unfinished">Billetera encriptada</translation>
- </message>
- <message>
- <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
- <translation type="unfinished">Recuerda que encriptar tu billetera no garantiza la protección total contra el robo de tus bitcoins si la computadora está infectada con malware.</translation>
- </message>
- <message>
- <source>Wallet to be encrypted</source>
- <translation type="unfinished">Billetera para encriptar</translation>
- </message>
- <message>
- <source>Your wallet is about to be encrypted. </source>
- <translation type="unfinished">Tu billetera está a punto de encriptarse.</translation>
- </message>
- <message>
- <source>Your wallet is now encrypted. </source>
- <translation type="unfinished">Tu billetera ahora está encriptada.</translation>
- </message>
- <message>
- <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
- <translation type="unfinished">IMPORTANTE: Cualquier copia de seguridad anterior que hayas hecho del archivo de la billetera se deberá reemplazar por el nuevo archivo encriptado que generaste. Por motivos de seguridad, las copias de seguridad realizadas anteriormente quedarán obsoletas en cuanto empieces a usar la nueva billetera encriptada.</translation>
- </message>
- <message>
- <source>Wallet encryption failed</source>
- <translation type="unfinished">Falló el encriptado de la billetera</translation>
- </message>
- <message>
- <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
- <translation type="unfinished">El encriptado de la billetera falló debido a un error interno. La billetera no se encriptó.</translation>
- </message>
- <message>
- <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
- <translation type="unfinished">La frase de contraseña ingresada para el descifrado de la billetera es incorrecta. Contiene un carácter nulo (es decir, un byte cero). Si la frase de contraseña se configuró con una versión de este software anterior a la 25.0, vuelve a intentarlo solo con los caracteres hasta el primer carácter nulo, pero sin incluirlo . Si esto tiene éxito, establece una nueva frase de contraseña para evitar este problema en el futuro.</translation>
- </message>
- <message>
- <source>Wallet passphrase was successfully changed.</source>
- <translation type="unfinished">La contraseña de la cartera ha sido exitosamente cambiada.</translation>
- </message>
- <message>
- <source>Passphrase change failed</source>
- <translation type="unfinished">Error al cambiar la frase de contraseña</translation>
- </message>
- <message>
- <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
- <translation type="unfinished">La frase de contraseña que se ingresó para descifrar la billetera es incorrecta. Contiene un carácter nulo (es decir, un byte cero). Si la frase de contraseña se configuró con una versión de este software anterior a la 25.0, vuelve a intentarlo solo con los caracteres hasta el primer carácter nulo, pero sin incluirlo.</translation>
- </message>
- </context>
-<context>
- <name>BitcoinApplication</name>
- <message>
- <source>Settings file %1 might be corrupt or invalid.</source>
- <translation type="unfinished">El archivo de configuración %1 puede estar corrupto o no ser válido.</translation>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Recepción de direcciones - %1</translation>
</message>
</context>
<context>
<name>QObject</name>
- <message>
- <source>Do you want to reset settings to default values, or to abort without making changes?</source>
- <extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
- <translation type="unfinished">¿Deseas restablecer los valores a la configuración predeterminada o abortar sin realizar los cambios?</translation>
- </message>
- <message>
- <source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
- <extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
- <translation type="unfinished">Un error fatal ha ocurrido. Comprueba que el archivo de configuración soporta escritura, o intenta ejecutar de nuevo el programa con -nosettings</translation>
- </message>
- <message>
- <source>Amount</source>
- <translation type="unfinished">Importe</translation>
- </message>
- <message>
- <source>Block Relay</source>
- <extracomment>Peer connection type that relays network information about blocks and not transactions or addresses.</extracomment>
- <translation type="unfinished">Retransmisión de bloques</translation>
- </message>
<message numerus="yes">
<source>%n second(s)</source>
<translation type="unfinished">
- <numerusform>%n segundo</numerusform>
- <numerusform>%n segundos</numerusform>
+ <numerusform>%n second(s)</numerusform>
+ <numerusform>%n second(s)</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n minute(s)</source>
<translation type="unfinished">
- <numerusform>%n minuto</numerusform>
- <numerusform>%n minutos</numerusform>
+ <numerusform>%n minute(s)</numerusform>
+ <numerusform>%n minute(s)</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n hour(s)</source>
<translation type="unfinished">
- <numerusform>%n hora</numerusform>
- <numerusform>%n horas</numerusform>
+ <numerusform>%n hour(s)</numerusform>
+ <numerusform>%n hour(s)</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n day(s)</source>
<translation type="unfinished">
- <numerusform>%n día</numerusform>
- <numerusform>%n días</numerusform>
+ <numerusform>%n day(s)</numerusform>
+ <numerusform>%n day(s)</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n week(s)</source>
<translation type="unfinished">
- <numerusform>%n semana</numerusform>
- <numerusform>%n semanas</numerusform>
+ <numerusform>%n week(s)</numerusform>
+ <numerusform>%n week(s)</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n year(s)</source>
<translation type="unfinished">
- <numerusform>%n año</numerusform>
- <numerusform>%n años</numerusform>
+ <numerusform>%n year(s)</numerusform>
+ <numerusform>%n year(s)</numerusform>
</translation>
</message>
</context>
<context>
<name>BitcoinGUI</name>
- <message>
- <source>&amp;Minimize</source>
- <translation type="unfinished">&amp;Minimizar</translation>
- </message>
- <message>
- <source>Connecting to peers…</source>
- <translation type="unfinished">Conectando a pares...</translation>
- </message>
- <message>
- <source>Request payments (generates QR codes and bitcoin: URIs)</source>
- <translation type="unfinished"> 
-Solicitar pagos (genera códigos QR y bitcoin: URI)
- </translation>
- </message>
- <message>
- <source>Show the list of used sending addresses and labels</source>
- <translation type="unfinished">Mostrar la lista de direcciones y etiquetas de envío usadas</translation>
- </message>
- <message>
- <source>Show the list of used receiving addresses and labels</source>
- <translation type="unfinished">Mostrar la lista de direcciones y etiquetas de recepción usadas</translation>
- </message>
- <message>
- <source>&amp;Command-line options</source>
- <translation type="unfinished">opciones de la &amp;Linea de comandos</translation>
- </message>
<message numerus="yes">
<source>Processed %n block(s) of transaction history.</source>
<translation type="unfinished">
- <numerusform>%n bloque procesado del historial de transacciones.</numerusform>
- <numerusform>%n bloques procesados del historial de transacciones.</numerusform>
+ <numerusform>Processed %n block(s) of transaction history.</numerusform>
+ <numerusform>Processed %n block(s) of transaction history.</numerusform>
</translation>
</message>
<message>
- <source>Catching up…</source>
- <translation type="unfinished">Poniéndose al día...</translation>
- </message>
- <message>
- <source>Transactions after this will not yet be visible.</source>
- <translation type="unfinished">Las transacciones después de esto todavía no serán visibles.</translation>
- </message>
- <message>
- <source>Warning</source>
- <translation type="unfinished">Aviso</translation>
- </message>
- <message>
- <source>Information</source>
- <translation type="unfinished">Información </translation>
- </message>
- <message>
- <source>Up to date</source>
- <translation type="unfinished">Actualizado al dia </translation>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
</message>
<message>
- <source>Load PSBT from &amp;clipboard…</source>
- <translation type="unfinished">Cargar PSBT desde el &amp;portapapeles...</translation>
- </message>
- <message>
- <source>Restore Wallet…</source>
- <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
- <translation type="unfinished">Restaurar billetera…</translation>
- </message>
- <message>
- <source>Restore a wallet from a backup file</source>
- <extracomment>Status tip for Restore Wallet menu item</extracomment>
- <translation type="unfinished">Restaurar una billetera desde un archivo de copia de seguridad</translation>
- </message>
- <message>
- <source>default wallet</source>
- <translation type="unfinished">cartera predeterminada</translation>
- </message>
- <message>
- <source>No wallets available</source>
- <translation type="unfinished">No hay carteras disponibles</translation>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar una billetera</translation>
</message>
<message>
<source>Load Wallet Backup</source>
@@ -289,18 +103,62 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Presincronizando encabezados (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Error al crear billetera</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">No se puede crear una nueva billetera, el software se compiló sin soporte sqlite (requerido para billeteras descriptivas)</translation>
+ </message>
+ <message>
+ <source>Warning: %1</source>
+ <translation type="unfinished">Advertencia: %1</translation>
+ </message>
+ <message>
+ <source>Date: %1
+</source>
+ <translation type="unfinished">Fecha: %1
+</translation>
+ </message>
+ <message>
<source>Amount: %1
</source>
<translation type="unfinished">Importe: %1
</translation>
</message>
<message>
+ <source>Wallet: %1
+</source>
+ <translation type="unfinished">Billetera: %1
+</translation>
+ </message>
+ <message>
+ <source>Type: %1
+</source>
+ <translation type="unfinished">Tipo: %1
+</translation>
+ </message>
+ <message>
+ <source>Label: %1
+</source>
+ <translation type="unfinished">Etiqueta: %1
+</translation>
+ </message>
+ <message>
<source>Address: %1
</source>
<translation type="unfinished">Dirección: %1
</translation>
</message>
<message>
+ <source>Sent transaction</source>
+ <translation type="unfinished">Transacción enviada</translation>
+ </message>
+ <message>
+ <source>Incoming transaction</source>
+ <translation type="unfinished">Transacción recibida</translation>
+ </message>
+ <message>
<source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
<translation type="unfinished">Clave privada &lt;b&gt;deshabilitada&lt;/b&gt;</translation>
</message>
@@ -320,6 +178,10 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Selección de monedas</translation>
</message>
<message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Cantidad:</translation>
+ </message>
+ <message>
<source>Amount:</source>
<translation type="unfinished">Importe:</translation>
</message>
@@ -327,110 +189,67 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<source>Fee:</source>
<translation type="unfinished">Comisión:</translation>
</message>
- <message>
- <source>Dust:</source>
- <translation type="unfinished">Remanente:</translation>
- </message>
- <message>
- <source>After Fee:</source>
- <translation type="unfinished">Después de la comisión:</translation>
- </message>
- <message>
- <source>Amount</source>
- <translation type="unfinished">Importe</translation>
- </message>
- <message>
- <source>Confirmed</source>
- <translation type="unfinished">Confirmada</translation>
- </message>
- <message>
- <source>Copy amount</source>
- <translation type="unfinished">Copiar importe</translation>
- </message>
- <message>
- <source>Copy &amp;amount</source>
- <translation type="unfinished">Copiar &amp;importe</translation>
- </message>
- <message>
- <source>Copy transaction &amp;ID and output index</source>
- <translation type="unfinished">Copiar &amp;identificador de transacción e índice de salidas</translation>
- </message>
- <message>
- <source>L&amp;ock unspent</source>
- <translation type="unfinished">&amp;Bloquear importe no gastado</translation>
- </message>
- <message>
- <source>yes</source>
- <translation type="unfinished">sí</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta se pone roja si algún destinatario recibe un importe menor que el actual limite del remanente monetario.</translation>
- </message>
</context>
<context>
- <name>CreateWalletActivity</name>
+ <name>MigrateWalletActivity</name>
<message>
- <source>Create Wallet</source>
- <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
- <translation type="unfinished">Crear billetera</translation>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
</message>
<message>
- <source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
- <extracomment>Descriptive text of the create wallet progress window which indicates to the user which wallet is currently being created.</extracomment>
- <translation type="unfinished">Creando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</translation>
</message>
<message>
- <source>Too many external signers found</source>
- <translation type="unfinished">Se encontraron demasiados firmantes externos</translation>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migración de la billetera la convertirá en una o más billeteras basadas en descriptores. Será necesario realizar una nueva copia de seguridad de la billetera.
+Si esta billetera contiene scripts solo de lectura, se creará una nueva billetera que los contenga.
+Si esta billetera contiene scripts solucionables pero no de lectura, se creará una nueva billetera diferente que los contenga.
+
+El proceso de migración creará una copia de seguridad de la billetera antes de migrar. Este archivo de copia de seguridad se llamará &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak y se encontrará en el directorio de esta billetera. En el caso de una migración incorrecta, la copia de seguridad puede restaurarse con la funcionalidad "Restore Wallet" (Restaurar billetera).</translation>
</message>
-</context>
-<context>
- <name>LoadWalletsActivity</name>
<message>
- <source>Load Wallets</source>
- <extracomment>Title of progress window which is displayed when wallets are being loaded.</extracomment>
- <translation type="unfinished">Cargar monederos</translation>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
</message>
<message>
- <source>Loading wallets…</source>
- <extracomment>Descriptive text of the load wallets progress window which indicates to the user that wallets are currently being loaded.</extracomment>
- <translation type="unfinished">Cargando monederos...</translation>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
</message>
-</context>
-<context>
- <name>RestoreWalletActivity</name>
<message>
- <source>Restore Wallet</source>
- <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
- <translation type="unfinished">Restaurar billetera</translation>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">La migración de la billetera "%1" se realizó correctamente.</translation>
</message>
<message>
- <source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
- <extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
- <translation type="unfinished">Restaurando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solo de lectura se migraron a una nueva billetera llamada "%1".</translation>
</message>
<message>
- <source>Restore wallet failed</source>
- <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
- <translation type="unfinished">Error al restaurar la billetera</translation>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solucionables pero no de lectura se migraron a una nueva billetera llamada "%1".</translation>
</message>
<message>
- <source>Restore wallet warning</source>
- <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
- <translation type="unfinished">Advertencia al restaurar billetera</translation>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migración errónea</translation>
</message>
<message>
- <source>Restore wallet message</source>
- <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
- <translation type="unfinished">Mensaje al restaurar billetera</translation>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migración correcta</translation>
</message>
</context>
<context>
- <name>WalletController</name>
+ <name>CreateWalletDialog</name>
<message>
- <source>Close wallet</source>
- <translation type="unfinished">Cerrar cartera</translation>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Estás a un paso de crear tu nueva billetera.</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Escribe un nombre y, si lo deseas, activa las opciones avanzadas.</translation>
</message>
</context>
<context>
@@ -438,8 +257,8 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<message numerus="yes">
<source>%n GB of space available</source>
<translation type="unfinished">
- <numerusform>%n GB de espacio disponible</numerusform>
- <numerusform>%n GB de espacio disponible</numerusform>
+ <numerusform>%n GB of space available</numerusform>
+ <numerusform>%n GB of space available</numerusform>
</translation>
</message>
<message numerus="yes">
@@ -456,1094 +275,74 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<numerusform>(%n GB needed for full chain)</numerusform>
</translation>
</message>
- <message>
- <source>Choose data directory</source>
- <translation type="unfinished">Elegir directorio de datos</translation>
- </message>
<message numerus="yes">
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
<translation type="unfinished">
- <numerusform>(suficiente para restaurar copias de seguridad de %n día de antigüedad)</numerusform>
- <numerusform>(suficiente para restaurar copias de seguridad de %n días de antigüedad)</numerusform>
+ <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
+ <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
</translation>
</message>
- <message>
- <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
- <translation type="unfinished">Al hacer clic en OK, %1 iniciará el proceso de descarga y procesará la cadena de bloques %4 completa (%2 GB), empezando con la transacción más antigua en %3 cuando %4 se ejecutó inicialmente.</translation>
- </message>
- </context>
-<context>
- <name>ModalOverlay</name>
- <message>
- <source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
- <translation type="unfinished">Desconocido. Presincronizando encabezados (%1, %2%)…</translation>
- </message>
-</context>
-<context>
- <name>OpenURIDialog</name>
- <message>
- <source>Paste address from clipboard</source>
- <extracomment>Tooltip text for button that allows you to paste an address that is in your clipboard.</extracomment>
- <translation type="unfinished">Pegar dirección desde el portapapeles</translation>
- </message>
-</context>
-<context>
- <name>OptionsDialog</name>
- <message>
- <source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
- <translation type="unfinished">Al activar el modo de podado, se reduce considerablemente el espacio de disco necesario para almacenar las transacciones. Todos los bloques aún se validan completamente. Para revertir esta opción, se requiere descargar de nuevo toda la cadena de bloques.</translation>
- </message>
- <message>
- <source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
- <translation type="unfinished">Ruta completa a un script compatible con %1 (p. ej., C:\Descargas\hwi.exe o /Usuarios/Tú/Descargas/hwi.py). Advertencia: ¡El malware podría robarte tus monedas!</translation>
- </message>
- <message>
- <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source>
- <translation type="unfinished">Minimice en lugar de salir de la aplicación cuando la ventana esté cerrada. Cuando esta opción está habilitada, la aplicación se cerrará solo después de seleccionar Salir en el menú.</translation>
- </message>
- <message>
- <source>Options set in this dialog are overridden by the command line:</source>
- <translation type="unfinished">Las opciones establecidas en este diálogo serán anuladas por la línea de comandos:</translation>
- </message>
- <message>
- <source>Open Configuration File</source>
- <translation type="unfinished">Abrir archivo de configuración</translation>
- </message>
- <message>
- <source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
- <extracomment>Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</extracomment>
- <translation type="unfinished">Tamaño máximo de la caché de la base de datos. Una caché más grande puede contribuir a una sincronización más rápida, después de lo cual el beneficio es menos pronunciado para la mayoría de los casos de uso. Disminuir el tamaño de la caché reducirá el uso de la memoria. La memoria mempool no utilizada se comparte para esta caché.</translation>
- </message>
- <message>
- <source>Set the number of script verification threads. Negative values correspond to the number of cores you want to leave free to the system.</source>
- <extracomment>Tooltip text for Options window setting that sets the number of script verification threads. Explains that negative values mean to leave these many cores free to the system.</extracomment>
- <translation type="unfinished">Establezca el número de hilos de verificación de scripts. Los valores negativos corresponden al número de núcleos que se desea dejar libres al sistema.</translation>
- </message>
- <message>
- <source>This allows you or a third party tool to communicate with the node through command-line and JSON-RPC commands.</source>
- <extracomment>Tooltip text for Options window setting that enables the RPC server.</extracomment>
- <translation type="unfinished">Esto le permite a usted o a una herramienta de terceros comunicarse con el nodo a través de la línea de comandos y los comandos JSON-RPC.</translation>
- </message>
- <message>
- <source>Enable R&amp;PC server</source>
- <extracomment>An Options window setting to enable the RPC server.</extracomment>
- <translation type="unfinished">Activar servidor R&amp;PC</translation>
- </message>
- <message>
- <source>W&amp;allet</source>
- <translation type="unfinished">&amp;Billetera</translation>
- </message>
- <message>
- <source>Whether to set subtract fee from amount as default or not.</source>
- <extracomment>Tooltip text for Options window setting that sets subtracting the fee from a sending amount as default.</extracomment>
- <translation type="unfinished">Si se resta la comisión del importe por defecto o no.</translation>
- </message>
- <message>
- <source>Subtract &amp;fee from amount by default</source>
- <extracomment>An Options window setting to set subtracting the fee from a sending amount as default.</extracomment>
- <translation type="unfinished">Restar &amp;comisión del importe por defecto</translation>
- </message>
- <message>
- <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
- <translation type="unfinished">Si deshabilitas el gasto del cambio sin confirmar, no se puede usar el cambio de una transacción hasta que esta tenga al menos una confirmación. Esto también afecta cómo se calcula el saldo.</translation>
- </message>
- <message>
- <source>&amp;Spend unconfirmed change</source>
- <translation type="unfinished">&amp;Gastar cambio sin confirmar</translation>
- </message>
- <message>
- <source>Enable &amp;PSBT controls</source>
- <extracomment>An options window setting to enable PSBT controls.</extracomment>
- <translation type="unfinished">Activar controles de &amp;PSBT</translation>
- </message>
- <message>
- <source>Whether to show PSBT controls.</source>
- <extracomment>Tooltip text for options window setting that enables PSBT controls.</extracomment>
- <translation type="unfinished">Si se muestran los controles de PSBT.</translation>
- </message>
- <message>
- <source>External Signer (e.g. hardware wallet)</source>
- <translation type="unfinished">Firmante externo (p. ej., billetera de hardware)</translation>
- </message>
- <message>
- <source>&amp;External signer script path</source>
- <translation type="unfinished">&amp;Ruta al script del firmante externo</translation>
- </message>
- <message>
- <source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
- <translation type="unfinished">Abrir automáticamente el puerto del cliente de Bitcoin en el router. Esto solo funciona cuando el router es compatible con NAT-PMP y está activo. El puerto externo podría ser aleatorio</translation>
- </message>
- <message>
- <source>Map port using NA&amp;T-PMP</source>
- <translation type="unfinished">Asignar puerto usando NA&amp;T-PMP</translation>
- </message>
- <message>
- <source>User Interface &amp;language:</source>
- <translation type="unfinished">&amp;Lenguaje de la interfaz de usuario:</translation>
- </message>
- <message>
- <source>Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
- <translation type="unfinished">Las URL de terceros (por ejemplo, un explorador de bloques) que aparecen en la pestaña de transacciones como elementos del menú contextual. El hash de la transacción remplaza el valor %s en la URL. Varias URL se separan con una barra vertical (|).</translation>
- </message>
- <message>
- <source>&amp;Third-party transaction URLs</source>
- <translation type="unfinished">&amp;URL de transacciones de terceros</translation>
- </message>
- <message>
- <source>none</source>
- <translation type="unfinished">ninguno</translation>
- </message>
- <message>
- <source>Current settings will be backed up at "%1".</source>
- <extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
- <translation type="unfinished">Se realizará una copia de seguridad de la configuración actual en "%1".</translation>
- </message>
- <message>
- <source>Continue</source>
- <translation type="unfinished">Continuar</translation>
- </message>
- </context>
-<context>
- <name>OptionsModel</name>
- <message>
- <source>Could not read setting "%1", %2.</source>
- <translation type="unfinished">No se puede leer la configuración "%1", %2.</translation>
- </message>
-</context>
-<context>
- <name>PSBTOperationsDialog</name>
- <message>
- <source>PSBT Operations</source>
- <translation type="unfinished">Operaciones PSBT</translation>
- </message>
- <message>
- <source>Cannot sign inputs while wallet is locked.</source>
- <translation type="unfinished">No se pueden firmar entradas mientras la billetera está bloqueada.</translation>
- </message>
- <message>
- <source>Partially Signed Transaction (Binary)</source>
- <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
- <translation type="unfinished">Transacción firmada parcialmente (binaria) </translation>
- </message>
- <message>
- <source>Total Amount</source>
- <translation type="unfinished">Importe total</translation>
- </message>
- <message>
- <source>(But no wallet is loaded.)</source>
- <translation type="unfinished">(Pero no se cargó ninguna billetera).</translation>
- </message>
- </context>
-<context>
- <name>PaymentServer</name>
- <message>
- <source>Cannot process payment request because BIP70 is not supported.
-Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
-If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
- <translation type="unfinished">No se puede procesar la solicitud de pago porque no existe compatibilidad con BIP70.
-Debido a los fallos de seguridad generalizados en BIP70, se recomienda encarecidamente ignorar las instrucciones del comerciante para cambiar de billetera.
-Si recibes este error, debes solicitar al comerciante que te proporcione un URI compatible con BIP21.</translation>
- </message>
- </context>
-<context>
- <name>PeerTableModel</name>
- <message>
- <source>Age</source>
- <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
- <translation type="unfinished">Duración</translation>
- </message>
</context>
<context>
<name>RPCConsole</name>
<message>
- <source>Whether we relay transactions to this peer.</source>
- <translation type="unfinished">Si retransmitimos las transacciones a este par.</translation>
- </message>
- <message>
- <source>Transaction Relay</source>
- <translation type="unfinished">Retransmisión de transacción</translation>
- </message>
- <message>
- <source>Last Transaction</source>
- <translation type="unfinished">Última transacción</translation>
- </message>
- <message>
- <source>Whether we relay addresses to this peer.</source>
- <extracomment>Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
- <translation type="unfinished">Si retransmitimos las direcciones a este par.</translation>
- </message>
- <message>
- <source>Address Relay</source>
- <extracomment>Text title for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
- <translation type="unfinished">Retransmisión de dirección</translation>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versión de la capa de transporte: %1</translation>
</message>
<message>
- <source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
- <extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
- <translation type="unfinished">El número total de direcciones recibidas desde este par que se procesaron (excluye las direcciones omitidas debido a la limitación de volumen).</translation>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
</message>
<message>
- <source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
- <extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">El número total de direcciones recibidas desde este par que se omitieron (no se procesaron) debido a la limitación de volumen.</translation>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Cadena de identificación de la sesión BIP324 en formato hexadecimal, si existe.</translation>
</message>
<message>
- <source>Addresses Processed</source>
- <extracomment>Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
- <translation type="unfinished">Direcciones procesadas</translation>
+ <source>Session ID</source>
+ <translation type="unfinished">Identificador de sesión</translation>
</message>
<message>
- <source>Addresses Rate-Limited</source>
- <extracomment>Text title for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">Direcciones omitidas por limitación de volumen</translation>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Detectando: el par puede ser v1 o v2</translation>
</message>
<message>
- <source>Last Send</source>
- <translation type="unfinished">Último envío</translation>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simple sin cifrar</translation>
</message>
<message>
- <source>Last Receive</source>
- <translation type="unfinished">Última recepción</translation>
- </message>
- <message>
- <source>Outbound Address Fetch: short-lived, for soliciting addresses</source>
- <extracomment>Explanatory text for a short-lived outbound peer connection that is used to request addresses from a peer.</extracomment>
- <translation type="unfinished">Recuperación de dirección saliente: de corta duración, para solicitar direcciones</translation>
- </message>
- <message>
- <source>&amp;Copy IP/Netmask</source>
- <extracomment>Context menu action to copy the IP/Netmask of a banned peer. IP/Netmask is the combination of a peer's IP address and its Netmask. For IP address, see: https://en.wikipedia.org/wiki/IP_address.</extracomment>
- <translation type="unfinished">&amp;Copiar IP/Máscara de red</translation>
- </message>
- <message>
- <source>Executing command without any wallet</source>
- <translation type="unfinished">Ejecutar comando sin ninguna billetera</translation>
- </message>
- <message>
- <source>Welcome to the %1 RPC console.
-Use up and down arrows to navigate history, and %2 to clear screen.
-Use %3 and %4 to increase or decrease the font size.
-Type %5 for an overview of available commands.
-For more information on using this console, type %6.
-
-%7WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command.%8</source>
- <extracomment>RPC console welcome message. Placeholders %7 and %8 are style tags for the warning content, and they are not space separated from the rest of the text intentionally.</extracomment>
- <translation type="unfinished">Te damos la bienvenida a la consola RPC de %1.
-Utiliza las flechas hacia arriba y abajo para navegar por el historial y %2 para borrar la pantalla.
-Utiliza %3 y %4 para aumentar o disminuir el tamaño de la fuente.
-Escribe %5 para ver los comandos disponibles.
-Para obtener más información sobre cómo usar esta consola, escribe %6.
-
-%7 ADVERTENCIA: Los estafadores han estado activos diciendo a los usuarios que escriban comandos aquí, robando el contenido de sus billeteras. No uses esta consola sin entender completamente las ramificaciones de un comando.%8</translation>
- </message>
- <message>
- <source>Yes</source>
- <translation type="unfinished">Sí</translation>
- </message>
- <message>
- <source>From</source>
- <translation type="unfinished">De</translation>
- </message>
- </context>
-<context>
- <name>ReceiveCoinsDialog</name>
- <message>
- <source>&amp;Amount:</source>
- <translation type="unfinished">&amp;Importe:</translation>
- </message>
- <message>
- <source>&amp;Message:</source>
- <translation type="unfinished">&amp;Mensaje:</translation>
- </message>
- <message>
- <source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source>
- <translation type="unfinished">Mensaje opcional para adjuntar a la solicitud de pago, que se mostrará cuando se abra la solicitud. Nota: Este mensaje no se enviará con el pago a través de la red de Bitcoin.</translation>
- </message>
- <message>
- <source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
- <translation type="unfinished">Usa este formulario para solicitar pagos. Todos los campos son &lt;b&gt;opcionales&lt;/b&gt;.</translation>
- </message>
- <message>
- <source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
- <translation type="unfinished">Un importe opcional para solicitar. Déjalo vacío o pon cero para no solicitar un importe específico.</translation>
- </message>
- <message>
- <source>&amp;Create new receiving address</source>
- <translation type="unfinished">&amp;Crear nueva dirección de recepción</translation>
- </message>
- <message>
- <source>Clear all fields of the form.</source>
- <translation type="unfinished">Borrar todos los campos del formulario.</translation>
- </message>
- <message>
- <source>Clear</source>
- <translation type="unfinished">Borrar</translation>
- </message>
- <message>
- <source>Show the selected request (does the same as double clicking an entry)</source>
- <translation type="unfinished">Mostrar la solicitud seleccionada (equivale a hacer doble clic en una entrada)</translation>
- </message>
- <message>
- <source>Remove the selected entries from the list</source>
- <translation type="unfinished">Eliminar las entradas seleccionadas de la lista</translation>
- </message>
- <message>
- <source>Copy &amp;amount</source>
- <translation type="unfinished">Copiar &amp;importe</translation>
- </message>
- <message>
- <source>Not recommended due to higher fees and less protection against typos.</source>
- <translation type="unfinished">No se recomienda debido a las altas comisiones y la poca protección contra errores tipográficos.</translation>
- </message>
- <message>
- <source>Generates an address compatible with older wallets.</source>
- <translation type="unfinished">Genera una dirección compatible con billeteras más antiguas.</translation>
- </message>
- <message>
- <source>Generates a native segwit address (BIP-173). Some old wallets don't support it.</source>
- <translation type="unfinished">Genera una dirección segwit nativa (BIP-173). No es compatible con algunas billeteras antiguas.</translation>
- </message>
- <message>
- <source>Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
- <translation type="unfinished">Bech32m (BIP-350) es una actualización de Bech32. La compatibilidad con la billetera todavía es limitada.</translation>
- </message>
- </context>
-<context>
- <name>ReceiveRequestDialog</name>
- <message>
- <source>Amount:</source>
- <translation type="unfinished">Importe:</translation>
- </message>
- <message>
- <source>Copy &amp;Address</source>
- <translation type="unfinished">Copiar &amp;dirección</translation>
- </message>
- <message>
- <source>Verify this address on e.g. a hardware wallet screen</source>
- <translation type="unfinished">Verificar esta dirección, por ejemplo, en la pantalla de una billetera de hardware</translation>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte encriptado BIP324</translation>
</message>
</context>
<context>
<name>SendCoinsDialog</name>
- <message>
- <source>Amount:</source>
- <translation type="unfinished">Importe:</translation>
- </message>
- <message>
- <source>Fee:</source>
- <translation type="unfinished">Comisión:</translation>
- </message>
- <message>
- <source>After Fee:</source>
- <translation type="unfinished">Después de la comisión:</translation>
- </message>
- <message>
- <source>Clear all fields of the form.</source>
- <translation type="unfinished">Borrar todos los campos del formulario.</translation>
- </message>
- <message>
- <source>Dust:</source>
- <translation type="unfinished">Remanente:</translation>
- </message>
- <message>
- <source>Confirm the send action</source>
- <translation type="unfinished">Confirmar el envío</translation>
- </message>
- <message>
- <source>Copy amount</source>
- <translation type="unfinished">Copiar importe</translation>
- </message>
- <message>
- <source>Partially Signed Transaction (Binary)</source>
- <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
- <translation type="unfinished">Transacción firmada parcialmente (binaria) </translation>
- </message>
- <message>
- <source>Do you want to create this transaction?</source>
- <extracomment>Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</extracomment>
- <translation type="unfinished">¿Quieres crear esta transacción?</translation>
- </message>
- <message>
- <source>Please, review your transaction. You can create and send this transaction or create a Partially Signed Bitcoin Transaction (PSBT), which you can save or copy and then sign with, e.g., an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
- <extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can send their transaction or create a PSBT. This string is displayed when both private keys and PSBT controls are enabled.</extracomment>
- <translation type="unfinished">Revisa por favor la transacción. Puedes crear y enviar esta transacción de Bitcoin parcialmente firmada (PSBT), que además puedes guardar o copiar y, luego, firmar; por ejemplo, una billetera %1 sin conexión o una billetera de hardware compatible con PSBT.</translation>
- </message>
- <message>
- <source>Please, review your transaction.</source>
- <extracomment>Text to prompt a user to review the details of the transaction they are attempting to send.</extracomment>
- <translation type="unfinished">Revisa la transacción.</translation>
- </message>
- <message>
- <source>Total Amount</source>
- <translation type="unfinished">Importe total</translation>
- </message>
- <message>
- <source>Unsigned Transaction</source>
- <comment>PSBT copied</comment>
- <extracomment>Caption of "PSBT has been copied" messagebox</extracomment>
- <translation type="unfinished">Transacción sin firmar</translation>
- </message>
- <message>
- <source>The PSBT has been copied to the clipboard. You can also save it.</source>
- <translation type="unfinished">Se copió la PSBT al portapapeles. También puedes guardarla.</translation>
- </message>
- <message>
- <source>PSBT saved to disk</source>
- <translation type="unfinished">PSBT guardada en el disco</translation>
- </message>
- <message>
- <source>The recipient address is not valid. Please recheck.</source>
- <translation type="unfinished">La dirección del destinatario no es válida. Revísala.</translation>
- </message>
- <message>
- <source>The amount to pay must be larger than 0.</source>
- <translation type="unfinished">El importe por pagar tiene que ser mayor que 0.</translation>
- </message>
- <message>
- <source>The amount exceeds your balance.</source>
- <translation type="unfinished">El importe sobrepasa el saldo.</translation>
- </message>
- <message>
- <source>Duplicate address found: addresses should only be used once each.</source>
- <translation type="unfinished">Se encontró una dirección duplicada: las direcciones solo se deben usar una vez.</translation>
- </message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
- <numerusform>Estimado para comenzar confirmación dentro de %n bloque.</numerusform>
- <numerusform>Estimado para comenzar confirmación dentro de %n bloques.</numerusform>
+ <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
+ <numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
</translation>
</message>
- <message>
- <source>Warning: Invalid Bitcoin address</source>
- <translation type="unfinished">Advertencia: Dirección de Bitcoin inválida</translation>
- </message>
- <message>
- <source>Warning: Unknown change address</source>
- <translation type="unfinished">Advertencia: Dirección de cambio desconocida</translation>
- </message>
- <message>
- <source>Confirm custom change address</source>
- <translation type="unfinished">Confirmar la dirección de cambio personalizada</translation>
- </message>
- </context>
-<context>
- <name>SendCoinsEntry</name>
- <message>
- <source>A&amp;mount:</source>
- <translation type="unfinished">&amp;Importe:</translation>
- </message>
- <message>
- <source>Pay &amp;To:</source>
- <translation type="unfinished">Pagar &amp;a:</translation>
- </message>
- <message>
- <source>The Bitcoin address to send the payment to</source>
- <translation type="unfinished">La dirección de Bitcoin a la que se enviará el pago</translation>
- </message>
- <message>
- <source>Paste address from clipboard</source>
- <translation type="unfinished">Pegar dirección desde el portapapeles</translation>
- </message>
- <message>
- <source>Remove this entry</source>
- <translation type="unfinished">Eliminar esta entrada</translation>
- </message>
- <message>
- <source>Enter a label for this address to add it to the list of used addresses</source>
- <translation type="unfinished">Ingresar una etiqueta para esta dirección a fin de agregarla a la lista de direcciones utilizadas</translation>
- </message>
- </context>
-<context>
- <name>SignVerifyMessageDialog</name>
- <message>
- <source>Paste address from clipboard</source>
- <translation type="unfinished">Pegar dirección desde el portapapeles</translation>
- </message>
</context>
<context>
- <name>SplashScreen</name>
- <message>
- <source>(press q to shutdown and continue later)</source>
- <translation type="unfinished">(presiona q para apagar y seguir luego)</translation>
- </message>
- <message>
- <source>press q to shutdown</source>
- <translation type="unfinished">presiona q para apagar </translation>
- </message>
-</context>
-<context>
<name>TransactionDesc</name>
- <message>
- <source>0/unconfirmed, in memory pool</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
- <translation type="unfinished">0/sin confirmar, en el pool de memoria</translation>
- </message>
- <message>
- <source>0/unconfirmed, not in memory pool</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
- <translation type="unfinished">0/sin confirmar, no está en el pool de memoria</translation>
- </message>
- <message>
- <source>%1/unconfirmed</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in at least one block, but less than 6 blocks.</extracomment>
- <translation type="unfinished">%1/sin confirmar</translation>
- </message>
- <message>
- <source>%1 confirmations</source>
- <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in 6 or more blocks.</extracomment>
- <translation type="unfinished">%1 confirmaciones</translation>
- </message>
- <message>
- <source>From</source>
- <translation type="unfinished">De</translation>
- </message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
- <numerusform>madura en %n bloque más</numerusform>
- <numerusform>madura en %n bloques más</numerusform>
+ <numerusform>matures in %n more block(s)</numerusform>
+ <numerusform>matures in %n more block(s)</numerusform>
</translation>
</message>
- <message>
- <source>Amount</source>
- <translation type="unfinished">Importe</translation>
- </message>
- </context>
-<context>
- <name>TransactionDescDialog</name>
- <message>
- <source>This pane shows a detailed description of the transaction</source>
- <translation type="unfinished">En este panel se muestra una descripción detallada de la transacción</translation>
- </message>
- </context>
-<context>
- <name>TransactionTableModel</name>
- <message>
- <source>Confirmed (%1 confirmations)</source>
- <translation type="unfinished">Confirmada (%1 confirmaciones)</translation>
- </message>
- <message>
- <source>Generated but not accepted</source>
- <translation type="unfinished">Generada pero no aceptada</translation>
- </message>
- <message>
- <source>Received with</source>
- <translation type="unfinished">Recibida con</translation>
- </message>
- <message>
- <source>Sent to</source>
- <translation type="unfinished">Enviada a</translation>
- </message>
- <message>
- <source>Mined</source>
- <translation type="unfinished">Minada</translation>
- </message>
- <message>
- <source>Date and time that the transaction was received.</source>
- <translation type="unfinished">Fecha y hora en las que se recibió la transacción.</translation>
- </message>
- <message>
- <source>Amount removed from or added to balance.</source>
- <translation type="unfinished">Importe restado del saldo o sumado a este.</translation>
- </message>
-</context>
-<context>
- <name>TransactionView</name>
- <message>
- <source>Received with</source>
- <translation type="unfinished">Recibida con</translation>
- </message>
- <message>
- <source>Sent to</source>
- <translation type="unfinished">Enviada a</translation>
- </message>
- <message>
- <source>Mined</source>
- <translation type="unfinished">Minada</translation>
- </message>
- <message>
- <source>Min amount</source>
- <translation type="unfinished">Importe mínimo</translation>
- </message>
- <message>
- <source>Copy &amp;amount</source>
- <translation type="unfinished">Copiar &amp;importe</translation>
- </message>
- <message>
- <source>Copy transaction &amp;ID</source>
- <translation type="unfinished">Copiar &amp;identificador de transacción</translation>
- </message>
- <message>
- <source>Copy &amp;raw transaction</source>
- <translation type="unfinished">Copiar transacción &amp;sin procesar</translation>
- </message>
- <message>
- <source>A&amp;bandon transaction</source>
- <translation type="unfinished">&amp;Abandonar transacción</translation>
- </message>
- <message>
- <source>Show in %1</source>
- <extracomment>Transactions table context menu action to show the selected transaction in a third-party block explorer. %1 is a stand-in argument for the URL of the explorer.</extracomment>
- <translation type="unfinished">Mostrar en %1</translation>
- </message>
- <message>
- <source>Comma separated file</source>
- <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">Archivo separado por comas</translation>
- </message>
- <message>
- <source>Confirmed</source>
- <translation type="unfinished">Confirmada</translation>
- </message>
- <message>
- <source>The transaction history was successfully saved to %1.</source>
- <translation type="unfinished">El historial de transacciones se guardó correctamente en %1.</translation>
- </message>
- <message>
- <source>to</source>
- <translation type="unfinished">a</translation>
- </message>
-</context>
-<context>
- <name>WalletModel</name>
- <message>
- <source>Copied to clipboard</source>
- <comment>Fee-bump PSBT saved</comment>
- <translation type="unfinished">Copiada al portapapeles</translation>
- </message>
- </context>
-<context>
- <name>WalletView</name>
- <message>
- <source>There was an error trying to save the wallet data to %1.</source>
- <translation type="unfinished">Hubo un error al intentar guardar los datos de la billetera en %1.</translation>
- </message>
- <message>
- <source>The wallet data was successfully saved to %1.</source>
- <translation type="unfinished">Los datos de la billetera se guardaron correctamente en %1.</translation>
- </message>
</context>
<context>
<name>bitcoin-core</name>
<message>
- <source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
- <translation type="unfinished">%s solicitud para escuchar en el puerto%u. Este puerto se considera "malo" y, por lo tanto, es poco probable que algún par se conecte a él. Consulta doc/p2p-bad-ports.md para obtener detalles y una lista completa.</translation>
- </message>
- <message>
- <source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
- <translation type="unfinished">Es posible que el espacio en disco %s no tenga capacidad para los archivos de bloque. Aproximadamente %u GB de datos se almacenarán en este directorio.</translation>
- </message>
- <message>
- <source>Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
- <translation type="unfinished">Error al cargar la billetera. Esta requiere que se descarguen bloques, y el software actualmente no admite la carga de billeteras mientras los bloques se descargan fuera de orden, cuando se usan instantáneas de assumeutxo. La billetera debería poder cargarse correctamente después de que la sincronización del nodo alcance la altura %s.</translation>
- </message>
- <message>
- <source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
- <translation type="unfinished">¡Error al leer %s! Es probable que falten los datos de la transacción o que sean incorrectos. Reescaneando billetera.</translation>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">No se pudo calcular la comisión de incremento porque las UTXO sin confirmar dependen de un grupo enorme de transacciones no confirmadas.</translation>
</message>
- <message>
- <source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
- <translation type="unfinished">Error: el registro del formato del archivo de volcado es incorrecto. Se obtuvo "%s"; se esperaba "formato".</translation>
- </message>
- <message>
- <source>Error: Dumpfile identifier record is incorrect. Got "%s", expected "%s".</source>
- <translation type="unfinished">Error: el registro del identificador del archivo de volcado es incorrecto. Se obtuvo "%s"; se esperaba "%s".</translation>
- </message>
- <message>
- <source>Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
- <translation type="unfinished">Error: la versión del archivo volcado no es compatible. Esta versión de la billetera de bitcoin solo admite archivos de volcado de la versión 1. Se obtuvo un archivo de volcado con la versión %s</translation>
- </message>
- <message>
- <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
- <translation type="unfinished">Error: las billeteras heredadas solo admiten los tipos de dirección "legacy", "p2sh-segwit" y "bech32".</translation>
- </message>
- <message>
- <source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
- <translation type="unfinished">Error: No se pueden producir descriptores para esta billetera tipo legacy. Asegúrate de proporcionar la frase de contraseña de la billetera si está encriptada.</translation>
- </message>
- <message>
- <source>Invalid or corrupt peers.dat (%s). If you believe this is a bug, please report it to %s. As a workaround, you can move the file (%s) out of the way (rename, move, or delete) to have a new one created on the next start.</source>
- <translation type="unfinished">Archivo peers.dat inválido o corrupto (%s). Si crees que se trata de un error, infórmalo a %s. Como alternativa, puedes quitar el archivo (%s) (renombrarlo, moverlo o eliminarlo) para que se cree uno nuevo en el siguiente inicio.</translation>
- </message>
- <message>
- <source>No dump file provided. To use createfromdump, -dumpfile=&lt;filename&gt; must be provided.</source>
- <translation type="unfinished">No se proporcionó el archivo de volcado. Para usar createfromdump, se debe proporcionar -dumpfile=&lt;filename&gt;.</translation>
- </message>
- <message>
- <source>No dump file provided. To use dump, -dumpfile=&lt;filename&gt; must be provided.</source>
- <translation type="unfinished">No se proporcionó el archivo de volcado. Para usar dump, se debe proporcionar -dumpfile=&lt;filename&gt;.</translation>
- </message>
- <message>
- <source>No wallet file format provided. To use createfromdump, -format=&lt;format&gt; must be provided.</source>
- <translation type="unfinished">No se proporcionó el formato de archivo de billetera. Para usar createfromdump, se debe proporcionar -format=&lt;format&gt;.</translation>
- </message>
- <message>
- <source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
- <translation type="unfinished">El modo de poda no es compatible con -reindex-chainstate. Usa en su lugar un -reindex completo.</translation>
- </message>
- <message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">La base de datos del índice de bloques contiene un "txindex" heredado. Para borrar el espacio de disco ocupado, ejecute un -reindex completo; de lo contrario, ignore este error. Este mensaje de error no se volverá a mostrar.</translation>
- </message>
- <message>
- <source>The transaction amount is too small to send after the fee has been deducted</source>
- <translation type="unfinished">El importe de la transacción es demasiado pequeño para enviarlo después de deducir la comisión</translation>
- </message>
- <message>
- <source>This is the transaction fee you may pay when fee estimates are not available.</source>
- <translation type="unfinished">Esta es la comisión de transacción que puedes pagar cuando los cálculos de comisiones no estén disponibles.</translation>
- </message>
- <message>
- <source>Unknown wallet file format "%s" provided. Please provide one of "bdb" or "sqlite".</source>
- <translation type="unfinished">Se proporcionó un formato de archivo de billetera desconocido "%s". Proporciona uno entre "bdb" o "sqlite".</translation>
- </message>
- <message>
- <source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
- <translation type="unfinished">El formato de la base de datos chainstate es incompatible. Reinicia con -reindex-chainstate para reconstruir la base de datos chainstate.</translation>
- </message>
- <message>
- <source>Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
- <translation type="unfinished">La billetera se creó correctamente. El tipo de billetera "legacy" se está descontinuando, por lo que la asistencia para crear y abrir estas billeteras se eliminará en el futuro.</translation>
- </message>
- <message>
- <source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
- <translation type="unfinished">Advertencia: el formato de la billetera del archivo de volcado "%s" no coincide con el formato especificado en la línea de comandos "%s".</translation>
- </message>
- <message>
- <source>Witness data for blocks after height %d requires validation. Please restart with -reindex.</source>
- <translation type="unfinished">Los datos del testigo para los bloques después de la altura %d requieren validación. Reinicia con -reindex.</translation>
- </message>
- <message>
- <source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
- <translation type="unfinished">No se puede establecer el valor de -forcednsseed con la variable true al establecer el valor de -dnsseed con la variable false.</translation>
- </message>
- <message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La actualización -txindex iniciada por una versión anterior no puede completarse. Reinicia con la versión anterior o ejecuta un -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea inválida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Reporta este incidente a %s, indicando cómo obtuviste la instantánea. Se dejó el estado de cadena de la instantánea inválida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
- </message>
- <message>
- <source>%s is set very high! Fees this large could be paid on a single transaction.</source>
- <translation type="unfinished">La configuración de %s es demasiado alta. Las comisiones tan grandes se podrían pagar en una sola transacción.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -blockfilterindex. Desactiva temporalmente blockfilterindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -coinstatsindex. Desactiva temporalmente coinstatsindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -txindex. Desactiva temporalmente txindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
- <translation type="unfinished">No se pueden proporcionar conexiones específicas y hacer que addrman encuentre conexiones salientes al mismo tiempo.</translation>
- </message>
- <message>
- <source>Error loading %s: External signer wallet being loaded without external signer support compiled</source>
- <translation type="unfinished">Error al cargar %s: Se está cargando la billetera firmante externa sin que se haya compilado la compatibilidad del firmante externo</translation>
- </message>
- <message>
- <source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
- <translation type="unfinished">Error: No se puede identificar si los datos de la libreta de direcciones en la billetera pertenecen a billeteras migradas</translation>
- </message>
- <message>
- <source>Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
- <translation type="unfinished">Error: Se crearon descriptores duplicados durante la migración. Tu billetera podría estar dañada.</translation>
- </message>
- <message>
- <source>Error: Transaction %s in wallet cannot be identified to belong to migrated wallets</source>
- <translation type="unfinished">Error: No se puede identificar si la transacción %s en la billetera pertenece a billeteras migradas</translation>
- </message>
- <message>
- <source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
- <translation type="unfinished">No se pudo cambiar el nombre del archivo peers.dat inválido. Muévelo o elimínalo, e intenta de nuevo.</translation>
- </message>
- <message>
- <source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
- <translation type="unfinished">Error al calcular la comisión. La opción "fallbackfee" está desactivada. Espera algunos bloques o activa %s.</translation>
- </message>
- <message>
- <source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
- <translation type="unfinished">Opciones incompatibles: -dnsseed=1 se especificó explícitamente, pero -onlynet prohíbe conexiones a IPv4/IPv6.</translation>
- </message>
- <message>
- <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
- <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: "%s" (debe ser al menos la comisión mínima de retransmisión de %s para evitar transacciones atascadas)</translation>
- </message>
- <message>
- <source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
- <translation type="unfinished">Las conexiones salientes están restringidas a CJDNS (-onlynet=cjdns), pero no se proporciona -cjdnsreachable</translation>
- </message>
- <message>
- <source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is explicitly forbidden: -onion=0</source>
- <translation type="unfinished">Las conexiones salientes están restringidas a Tor (-onlynet=onion), pero el proxy para conectarse con la red Tor está explícitamente prohibido: -onion=0.</translation>
- </message>
- <message>
- <source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is not provided: none of -proxy, -onion or -listenonion is given</source>
- <translation type="unfinished">Las conexiones salientes están restringidas a Tor (-onlynet=onion), pero no se proporciona el proxy para conectarse con la red Tor: no se indican -proxy, -onion ni -listenonion.</translation>
- </message>
- <message>
- <source>Outbound connections restricted to i2p (-onlynet=i2p) but -i2psam is not provided</source>
- <translation type="unfinished">Las conexiones salientes están restringidas a i2p (-onlynet=i2p), pero no se proporciona -i2psam</translation>
- </message>
- <message>
- <source>The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet's UTXOs</source>
- <translation type="unfinished">El tamaño de las entradas supera el peso máximo. Intenta enviar una cantidad menor o consolidar manualmente las UTXO de la billetera.</translation>
- </message>
- <message>
- <source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
- <translation type="unfinished">La cantidad total de monedas preseleccionadas no cubre la meta de la transacción. Permite que se seleccionen automáticamente otras entradas o incluye más monedas manualmente.</translation>
- </message>
- <message>
- <source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
- <translation type="unfinished">La transacción requiere un destino de valor distinto de cero, una tasa de comisión distinta de cero, o una entrada preseleccionada.</translation>
- </message>
- <message>
- <source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
- <translation type="unfinished">No se validó la instantánea de UTXO. Reinicia para reanudar la descarga de bloques inicial normal o intenta cargar una instantánea diferente.</translation>
- </message>
- <message>
- <source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
- <translation type="unfinished">Las UTXO sin confirmar están disponibles, pero si se gastan, se crea una cadena de transacciones que rechazará el pool de memoria.</translation>
- </message>
- <message>
- <source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
-
-The wallet might have been tampered with or created with malicious intent.
-</source>
- <translation type="unfinished">Se encontró una entrada heredada inesperada en la billetera del descriptor. Cargando billetera%s
-
-Es posible que la billetera haya sido manipulada o creada con malas intenciones.
-</translation>
- </message>
- <message>
- <source>Unrecognized descriptor found. Loading wallet %s
-
-The wallet might had been created on a newer version.
-Please try running the latest software version.
-</source>
- <translation type="unfinished">Se encontró un descriptor desconocido. Cargando billetera %s.
-
-La billetera se pudo hacer creado con una versión más reciente.
-Intenta ejecutar la última versión del software.
-</translation>
- </message>
- <message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">La categoría especifica de nivel de registro no es compatible: -loglevel=%s. Se espera -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %s. Niveles de registro válidos: %s.</translation>
- </message>
- <message>
- <source>
-Unable to cleanup failed migration</source>
- <translation type="unfinished">
-No se puede limpiar la migración fallida</translation>
- </message>
- <message>
- <source>
-Unable to restore backup of wallet.</source>
- <translation type="unfinished">
-No se puede restaurar la copia de seguridad de la billetera.</translation>
- </message>
- <message>
- <source>Block verification was interrupted</source>
- <translation type="unfinished">Se interrumpió la verificación de bloques</translation>
- </message>
- <message>
- <source>Dump file %s does not exist.</source>
- <translation type="unfinished">El archivo de volcado %s no existe.</translation>
- </message>
- <message>
- <source>Error reading configuration file: %s</source>
- <translation type="unfinished">Error al leer el archivo de configuración: %s</translation>
- </message>
- <message>
- <source>Error reading from database, shutting down.</source>
- <translation type="unfinished">Error al leer la base de datos. Se cerrará la aplicación.</translation>
- </message>
- <message>
- <source>Error: Cannot extract destination from the generated scriptpubkey</source>
- <translation type="unfinished">Error: no se puede extraer el destino del scriptpubkey generado</translation>
- </message>
- <message>
- <source>Error: Could not add watchonly tx to watchonly wallet</source>
- <translation type="unfinished">Error: No se pudo agregar la transacción solo de observación a la billetera respectiva</translation>
- </message>
- <message>
- <source>Error: Could not delete watchonly transactions</source>
- <translation type="unfinished">Error: No se pudo eliminar las transacciones solo de observación</translation>
- </message>
- <message>
- <source>Error: Dumpfile checksum does not match. Computed %s, expected %s</source>
- <translation type="unfinished">Error: La suma de comprobación del archivo de volcado no coincide. Calculada:%s; prevista:%s.</translation>
- </message>
- <message>
- <source>Error: Failed to create new watchonly wallet</source>
- <translation type="unfinished">Error: No se pudo crear una billetera solo de observación</translation>
- </message>
- <message>
- <source>Error: Not all watchonly txs could be deleted</source>
- <translation type="unfinished">Error: No se pudo eliminar todas las transacciones solo de observación</translation>
- </message>
- <message>
- <source>Error: This wallet already uses SQLite</source>
- <translation type="unfinished">Error: Esta billetera ya usa SQLite</translation>
- </message>
- <message>
- <source>Error: This wallet is already a descriptor wallet</source>
- <translation type="unfinished">Error: Esta billetera ya es de descriptores</translation>
- </message>
- <message>
- <source>Error: Unable to begin reading all records in the database</source>
- <translation type="unfinished">Error: No se puede comenzar a leer todos los registros en la base de datos</translation>
- </message>
- <message>
- <source>Error: Unable to make a backup of your wallet</source>
- <translation type="unfinished">Error: No se puede realizar una copia de seguridad de tu billetera</translation>
- </message>
- <message>
- <source>Error: Unable to parse version %u as a uint32_t</source>
- <translation type="unfinished">Error: No se puede analizar la versión %ucomo uint32_t</translation>
- </message>
- <message>
- <source>Error: Unable to read all records in the database</source>
- <translation type="unfinished">Error: No se pueden leer todos los registros en la base de datos</translation>
- </message>
- <message>
- <source>Error: Unable to remove watchonly address book data</source>
- <translation type="unfinished">Error: No se pueden eliminar los datos de la libreta de direcciones solo de observación</translation>
- </message>
- <message>
- <source>Input not found or already spent</source>
- <translation type="unfinished">No se encontró o ya se gastó la entrada</translation>
- </message>
- <message>
- <source>Insufficient dbcache for block verification</source>
- <translation type="unfinished">dbcache insuficiente para la verificación de bloques</translation>
- </message>
- <message>
- <source>Invalid -i2psam address or hostname: '%s'</source>
- <translation type="unfinished">Dirección -i2psam o nombre de host inválido: "%s" </translation>
- </message>
- <message>
- <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least %s)</source>
- <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: "%s" (debe ser por lo menos %s)</translation>
- </message>
- <message>
- <source>Invalid amount for %s=&lt;amount&gt;: '%s'</source>
- <translation type="unfinished">Importe inválido para %s=&lt;amount&gt;: "%s"</translation>
- </message>
- <message>
- <source>Invalid port specified in %s: '%s'</source>
- <translation type="unfinished">Puerto no válido especificado en%s: '%s'</translation>
- </message>
- <message>
- <source>Invalid pre-selected input %s</source>
- <translation type="unfinished">Entrada preseleccionada no válida %s</translation>
- </message>
- <message>
- <source>Listening for incoming connections failed (listen returned error %s)</source>
- <translation type="unfinished">Fallo en la escucha para conexiones entrantes (la escucha devolvió el error %s)</translation>
- </message>
- <message>
- <source>Missing amount</source>
- <translation type="unfinished">Falta la cantidad</translation>
- </message>
- <message>
- <source>Missing solving data for estimating transaction size</source>
- <translation type="unfinished">Faltan datos de resolución para estimar el tamaño de la transacción</translation>
- </message>
- <message>
- <source>No addresses available</source>
- <translation type="unfinished">No hay direcciones disponibles</translation>
- </message>
- <message>
- <source>Not found pre-selected input %s</source>
- <translation type="unfinished">Entrada preseleccionada no encontrada%s</translation>
- </message>
- <message>
- <source>Not solvable pre-selected input %s</source>
- <translation type="unfinished">Entrada preseleccionada no solucionable %s</translation>
- </message>
- <message>
- <source>Signing transaction failed</source>
- <translation type="unfinished">Fallo al firmar la transacción</translation>
- </message>
- <message>
- <source>Specified data directory "%s" does not exist.</source>
- <translation type="unfinished">El directorio de datos especificado "%s" no existe.</translation>
- </message>
- <message>
- <source>The transaction amount is too small to pay the fee</source>
- <translation type="unfinished">El importe de la transacción es muy pequeño para pagar la comisión</translation>
- </message>
- <message>
- <source>This is the minimum transaction fee you pay on every transaction.</source>
- <translation type="unfinished">Esta es la comisión mínima de transacción que pagas en cada transacción.</translation>
- </message>
- <message>
- <source>This is the transaction fee you will pay if you send a transaction.</source>
- <translation type="unfinished">Esta es la comisión de transacción que pagarás si envías una transacción.</translation>
- </message>
- <message>
- <source>Transaction amount too small</source>
- <translation type="unfinished">El importe de la transacción es demasiado pequeño</translation>
- </message>
- <message>
- <source>Transaction amounts must not be negative</source>
- <translation type="unfinished">Los importes de la transacción no pueden ser negativos</translation>
- </message>
- <message>
- <source>Transaction change output index out of range</source>
- <translation type="unfinished">Índice de salidas de cambio de transacciones fuera de alcance</translation>
- </message>
- <message>
- <source>Transaction must have at least one recipient</source>
- <translation type="unfinished">La transacción debe incluir al menos un destinatario</translation>
- </message>
- <message>
- <source>Transaction needs a change address, but we can't generate it.</source>
- <translation type="unfinished">La transacción necesita una dirección de cambio, pero no podemos generarla.</translation>
- </message>
- <message>
- <source>Transaction too large</source>
- <translation type="unfinished">Transacción demasiado grande</translation>
- </message>
- <message>
- <source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
- <translation type="unfinished">No se puede asignar memoria para -maxsigcachesize: "%s" MiB</translation>
- </message>
- <message>
- <source>Unable to find UTXO for external input</source>
- <translation type="unfinished">No se puede encontrar UTXO para la entrada externa</translation>
- </message>
- <message>
- <source>Unable to parse -maxuploadtarget: '%s'</source>
- <translation type="unfinished">No se puede analizar -maxuploadtarget: "%s"</translation>
- </message>
- <message>
- <source>Unable to unload the wallet before migrating</source>
- <translation type="unfinished">No se puede descargar la billetera antes de la migración</translation>
- </message>
- <message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">El nivel de registro de depuración global -loglevel=%s no es compatible. Valores válidos: %s.</translation>
- </message>
- <message>
- <source>Settings file could not be read</source>
- <translation type="unfinished">El archivo de configuración no se puede leer</translation>
- </message>
- <message>
- <source>Settings file could not be written</source>
- <translation type="unfinished">El archivo de configuración no se puede escribir</translation>
- </message>
-</context>
+ </context>
</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_es_SV.ts b/src/qt/locale/bitcoin_es_SV.ts
index a01d0641f9..dae383a116 100644
--- a/src/qt/locale/bitcoin_es_SV.ts
+++ b/src/qt/locale/bitcoin_es_SV.ts
@@ -54,14 +54,6 @@
<translation type="unfinished">&amp;Escoger</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Envío de direcciones</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Direcciones de recepción</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estas son sus direcciones Bitcoin para enviar pagos. Compruebe siempre la cantidad y la dirección de recibo antes de transferir monedas.</translation>
</message>
@@ -93,6 +85,11 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">Archivo separado por comas</translation>
</message>
<message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Recepción de direcciones - %1
+</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Error al exportar</translation>
</message>
@@ -262,10 +259,6 @@ Usa el boton "Crear nueva direccion de recibimiento" en la pestaña de recibir p
<translation type="unfinished">%1 todavía no ha terminado de forma segura...</translation>
</message>
<message>
- <source>unknown</source>
- <translation type="unfinished">desconocido</translation>
- </message>
- <message>
<source>Amount</source>
<translation type="unfinished">Monto</translation>
</message>
@@ -560,46 +553,54 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar una billetera</translation>
+ </message>
+ <message>
<source>&amp;Mask values</source>
<translation type="unfinished">&amp;Ocultar valores</translation>
</message>
<message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Ocultar los valores en la pestaña de vista general</translation>
+ </message>
+ <message>
<source>default wallet</source>
<translation type="unfinished">billetera por defecto</translation>
</message>
<message>
<source>No wallets available</source>
- <translation type="unfinished">No hay carteras disponibles</translation>
+ <translation type="unfinished">Monederos no disponibles</translation>
</message>
<message>
<source>Wallet Data</source>
<extracomment>Name of the wallet data file format.</extracomment>
- <translation type="unfinished">Datos del monedero </translation>
+ <translation type="unfinished">Datos de la billetera</translation>
</message>
<message>
<source>Load Wallet Backup</source>
<extracomment>The title for Restore Wallet File Windows</extracomment>
- <translation type="unfinished">Cargar copia de seguridad del monedero</translation>
+ <translation type="unfinished">Cargar copia de seguridad de billetera</translation>
</message>
<message>
<source>Restore Wallet</source>
<extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
- <translation type="unfinished">Restaurar monedero</translation>
+ <translation type="unfinished">Restaurar billetera</translation>
</message>
<message>
<source>Wallet Name</source>
<extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
- <translation type="unfinished">Nombre de la billetera </translation>
+ <translation type="unfinished">Nombre del monedero</translation>
</message>
<message>
<source>&amp;Window</source>
<translation type="unfinished">&amp;Ventana</translation>
</message>
<message>
- <source>Main Window</source>
- <translation type="unfinished">Ventana principal</translation>
- </message>
- <message>
<source>%1 client</source>
<translation type="unfinished">%1 cliente</translation>
</message>
@@ -609,20 +610,20 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
</message>
<message>
<source>S&amp;how</source>
- <translation type="unfinished">&amp;Mostrar</translation>
+ <translation type="unfinished">M&amp;ostrar</translation>
</message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n conexión activa con la red de Bitcoin.</numerusform>
- <numerusform>%n conexiónes activas con la red de Bitcoin.</numerusform>
+ <numerusform>%n conexiones activas con la red Bitcoin</numerusform>
+ <numerusform>%n conexiones activas con la red Bitcoin </numerusform>
</translation>
</message>
<message>
<source>Click for more actions.</source>
<extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
- <translation type="unfinished">Haz clic para ver más acciones.</translation>
+ <translation type="unfinished">Hacer clic para ver más acciones.</translation>
</message>
<message>
<source>Show Peers tab</source>
@@ -641,7 +642,15 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
</message>
<message>
<source>Pre-syncing Headers (%1%)…</source>
- <translation type="unfinished">Presincronizando cabeceras (%1%)...</translation>
+ <translation type="unfinished">Presincronizando encabezados (%1%)...</translation>
+ </message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Error al crear billetera</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">No se puede crear una nueva billetera, el software se compiló sin soporte sqlite (requerido para billeteras descriptivas)</translation>
</message>
<message>
<source>Warning: %1</source>
@@ -742,50 +751,18 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Comisión:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Después de la comisión:</translation>
</message>
<message>
- <source>Change:</source>
- <translation type="unfinished">Cambio:</translation>
- </message>
- <message>
- <source>(un)select all</source>
- <translation type="unfinished">(des)marcar todos</translation>
- </message>
- <message>
- <source>Tree mode</source>
- <translation type="unfinished">Modo arbol</translation>
- </message>
- <message>
- <source>List mode</source>
- <translation type="unfinished">Modo de lista</translation>
- </message>
- <message>
<source>Amount</source>
<translation type="unfinished">Monto</translation>
</message>
<message>
- <source>Received with label</source>
- <translation type="unfinished">Recibido con etiqueta</translation>
- </message>
- <message>
<source>Received with address</source>
<translation type="unfinished">Recibido con etiqueta</translation>
</message>
<message>
- <source>Date</source>
- <translation type="unfinished">Fecha</translation>
- </message>
- <message>
- <source>Confirmations</source>
- <translation type="unfinished">Confirmaciones</translation>
- </message>
- <message>
<source>Confirmed</source>
<translation type="unfinished">Confirmada</translation>
</message>
@@ -830,26 +807,10 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Copiar después de la tarifa</translation>
</message>
<message>
- <source>Copy bytes</source>
- <translation type="unfinished">Copiar bytes</translation>
- </message>
- <message>
- <source>Copy change</source>
- <translation type="unfinished">Copiar cambio</translation>
- </message>
- <message>
<source>(%1 locked)</source>
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">sí</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta se vuelve roja si algún receptor recibe un importe inferior al umbral actual establecido para el polvo.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Puede variar en +/- %1 satoshi(s) por entrada.</translation>
</message>
@@ -861,19 +822,10 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<source>change from %1 (%2)</source>
<translation type="unfinished">Cambio desde %1 (%2)</translation>
</message>
- <message>
- <source>(change)</source>
- <translation type="unfinished">(cambio)</translation>
- </message>
-</context>
+ </context>
<context>
<name>CreateWalletActivity</name>
<message>
- <source>Create Wallet</source>
- <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
- <translation type="unfinished">Crear billetera</translation>
- </message>
- <message>
<source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the create wallet progress window which indicates to the user which wallet is currently being created.</extracomment>
<translation type="unfinished">Creando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
@@ -909,6 +861,57 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Estas seguro de wue deseas migrar la billetera 1 %1 1 ?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migración de la billetera la convertirá en una o más billeteras basadas en descriptores. Será necesario realizar una nueva copia de seguridad de la billetera.
+Si esta billetera contiene scripts solo de lectura, se creará una nueva billetera que los contenga.
+Si esta billetera contiene scripts solucionables pero no de lectura, se creará una nueva billetera diferente que los contenga.
+
+El proceso de migración creará una copia de seguridad de la billetera antes de migrar. Este archivo de copia de seguridad se llamará &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak y se encontrará en el directorio de esta billetera. En el caso de una migración incorrecta, la copia de seguridad puede restaurarse con la funcionalidad "Restore Wallet" (Restaurar billetera).</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">La migración de la billetera "%1" se realizó correctamente.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solo de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solucionables pero no de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migración errónea</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migración correcta</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet warning</source>
@@ -921,7 +924,7 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Abrir billetera</translation>
+ <translation type="unfinished">Abrir monedero</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -960,10 +963,6 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<context>
<name>WalletController</name>
<message>
- <source>Close wallet</source>
- <translation type="unfinished">Cerrar cartera</translation>
- </message>
- <message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
<translation type="unfinished">¿Estás seguro de que deseas cerrar el monedero &lt;i&gt;%1&lt;/i&gt;?</translation>
</message>
@@ -973,7 +972,7 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
</message>
<message>
<source>Close all wallets</source>
- <translation type="unfinished">Cerrar todas las billeteras</translation>
+ <translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
<source>Are you sure you wish to close all wallets?</source>
@@ -983,18 +982,22 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<context>
<name>CreateWalletDialog</name>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Estás a un paso de crear tu nueva billetera.</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Escribe un nombre y, si lo deseas, activa las opciones avanzadas.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">Nombre de la billetera </translation>
+ <translation type="unfinished">Nombre del monedero</translation>
</message>
<message>
<source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
<translation type="unfinished">Encriptar la billetera. La billetera será encriptada con una contraseña de tu elección.</translation>
</message>
<message>
- <source>Advanced Options</source>
- <translation type="unfinished">Opciones Avanzadas</translation>
- </message>
- <message>
<source>Disable Private Keys</source>
<translation type="unfinished">Desactivar las claves privadas</translation>
</message>
@@ -1007,10 +1010,6 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Crear billetera vacía</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Use descriptores para la gestión de scriptPubKey</translation>
- </message>
- <message>
<source>External signer</source>
<translation type="unfinished">Firmante externo</translation>
</message>
@@ -1019,10 +1018,6 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Crear</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilado sin soporte de sqlite (requerido para billeteras descriptoras)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilado sin soporte de firma externa (necesario para la firma externa)</translation>
@@ -1200,10 +1195,6 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Incremento del progreso por hora</translation>
</message>
<message>
- <source>Estimated time left until synced</source>
- <translation type="unfinished">Tiempo estimado antes de sincronizar</translation>
- </message>
- <message>
<source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
<translation type="unfinished">%1 está actualmente sincronizándose. Descargará cabeceras y bloques de nodos semejantes y los validará hasta alcanzar la cabeza de la cadena de bloques.</translation>
</message>
@@ -1367,10 +1358,6 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">Asignar puerto usando NA&amp;T-PMP</translation>
</message>
<message>
- <source>Accept connections from outside.</source>
- <translation type="unfinished">Acepta conexiones desde afuera.</translation>
- </message>
- <message>
<source>Allow incomin&amp;g connections</source>
<translation type="unfinished">Permitir conexiones entrantes</translation>
</message>
@@ -1509,10 +1496,6 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<source>The configuration file could not be opened.</source>
<translation type="unfinished">El archivo de configuración no se pudo abrir.</translation>
</message>
- <message>
- <source>This change would require a client restart.</source>
- <translation type="unfinished">Este cambio requeriría un reinicio del cliente.</translation>
- </message>
</context>
<context>
<name>OptionsModel</name>
@@ -1660,6 +1643,10 @@ Solicitar pagos (genera códigos QR y bitcoin: URI)
<translation type="unfinished">* Envia %1 a %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">dirección personal</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">No se ha podido calcular la comisión por transacción o la totalidad del importe de la transacción.</translation>
</message>
@@ -1771,18 +1758,10 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">&amp;Guardar imagen...</translation>
</message>
<message>
- <source>&amp;Copy Image</source>
- <translation type="unfinished">&amp;Copiar imagen</translation>
- </message>
- <message>
<source>Resulting URI too long, try to reduce the text for label / message.</source>
<translation type="unfinished">URI resultante demasiado larga. Intente reducir el texto de la etiqueta / mensaje.</translation>
</message>
<message>
- <source>Error encoding URI into QR Code.</source>
- <translation type="unfinished">Fallo al codificar URI en código QR.</translation>
- </message>
- <message>
<source>QR code support not available.</source>
<translation type="unfinished">La compatibilidad con el código QR no está disponible.</translation>
</message>
@@ -1803,10 +1782,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">N/D</translation>
</message>
<message>
- <source>Client version</source>
- <translation type="unfinished">Versión del cliente</translation>
- </message>
- <message>
<source>&amp;Information</source>
<translation type="unfinished">&amp;Información</translation>
</message>
@@ -1855,10 +1830,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Monedero:</translation>
</message>
<message>
- <source>(none)</source>
- <translation type="unfinished">(ninguno)</translation>
- </message>
- <message>
<source>&amp;Reset</source>
<translation type="unfinished">&amp;Reestablecer</translation>
</message>
@@ -1883,6 +1854,22 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Selecciona un par para ver la información detallada.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versión de la capa de transporte: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Cadena de identificación de la sesión BIP324 en formato hexadecimal, si existe.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">Identificador de sesión</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Si retransmitimos las transacciones a este par.</translation>
</message>
@@ -1985,10 +1972,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Banda ancha</translation>
</message>
<message>
- <source>Connection Time</source>
- <translation type="unfinished">Tiempo de conexión</translation>
- </message>
- <message>
<source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
<translation type="unfinished">Tiempo transcurrido desde que se recibió de este par un nuevo bloque que superó las comprobaciones de validez iniciales.</translation>
</message>
@@ -2088,6 +2071,21 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Recuperación de dirección saliente: de corta duración, para solicitar direcciones</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Detectando: el par puede ser v1 o v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simple sin cifrar</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte encriptado BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">Seleccionamos el par para la retransmisión de banda ancha</translation>
</message>
@@ -2190,10 +2188,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">&amp;Importe:</translation>
</message>
<message>
- <source>&amp;Label:</source>
- <translation type="unfinished">&amp;Etiqueta:</translation>
- </message>
- <message>
<source>&amp;Message:</source>
<translation type="unfinished">&amp;Mensaje:</translation>
</message>
@@ -2242,18 +2236,10 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Muestra la petición seleccionada (También doble clic)</translation>
</message>
<message>
- <source>Show</source>
- <translation type="unfinished">Mostrar</translation>
- </message>
- <message>
<source>Remove the selected entries from the list</source>
<translation type="unfinished">Eliminar las entradas seleccionadas de la lista</translation>
</message>
<message>
- <source>Remove</source>
- <translation type="unfinished">Eliminar</translation>
- </message>
- <message>
<source>Copy &amp;URI</source>
<translation type="unfinished">Copiar &amp;URI</translation>
</message>
@@ -2290,10 +2276,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Bech32m (BIP-350) es una actualización de Bech32. La compatibilidad con la billetera todavía es limitada.</translation>
</message>
<message>
- <source>Could not unlock wallet.</source>
- <translation type="unfinished">No se pudo desbloquear el monedero.</translation>
- </message>
- <message>
<source>Could not generate new %1 address</source>
<translation type="unfinished">No se ha podido generar una nueva dirección %1</translation>
</message>
@@ -2309,10 +2291,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Importe:</translation>
</message>
<message>
- <source>Message:</source>
- <translation type="unfinished">Mensaje:</translation>
- </message>
- <message>
<source>Copy &amp;URI</source>
<translation type="unfinished">Copiar &amp;URI</translation>
</message>
@@ -2336,18 +2314,10 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<context>
<name>RecentRequestsTableModel</name>
<message>
- <source>Date</source>
- <translation type="unfinished">Fecha</translation>
- </message>
- <message>
<source>Label</source>
<translation type="unfinished">Nombre</translation>
</message>
<message>
- <source>Message</source>
- <translation type="unfinished">Mensaje</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(sin etiqueta)</translation>
</message>
@@ -2379,10 +2349,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Fondos insuficientes!</translation>
</message>
<message>
- <source>Quantity:</source>
- <translation type="unfinished">Cantidad:</translation>
- </message>
- <message>
<source>Amount:</source>
<translation type="unfinished">Importe:</translation>
</message>
@@ -2395,10 +2361,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Después de la comisión:</translation>
</message>
<message>
- <source>Change:</source>
- <translation type="unfinished">Cambio:</translation>
- </message>
- <message>
<source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source>
<translation type="unfinished">Al activarse, si la dirección esta vacía o es inválida, las monedas serán enviadas a una nueva dirección generada.</translation>
</message>
@@ -2435,10 +2397,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Entradas...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Elegir...</translation>
</message>
@@ -2499,14 +2457,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Copiar después de la tarifa</translation>
</message>
<message>
- <source>Copy bytes</source>
- <translation type="unfinished">Copiar bytes</translation>
- </message>
- <message>
- <source>Copy change</source>
- <translation type="unfinished">Copiar cambio</translation>
- </message>
- <message>
<source>Sign on device</source>
<extracomment>"device" usually means a hardware wallet.</extracomment>
<translation type="unfinished">Firmar en el dispositivo</translation>
@@ -2618,10 +2568,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">PSBT guardada en el disco</translation>
</message>
<message>
- <source>Confirm send coins</source>
- <translation type="unfinished">Confirmar el envío de monedas</translation>
- </message>
- <message>
<source>Watch-only balance:</source>
<translation type="unfinished">Saldo solo de observación:</translation>
</message>
@@ -2646,10 +2592,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Se encontró una dirección duplicada: las direcciones solo se deben usar una vez.</translation>
</message>
<message>
- <source>Transaction creation failed!</source>
- <translation type="unfinished">¡Fallo al crear la transacción!</translation>
- </message>
- <message>
<source>A fee higher than %1 is considered an absurdly high fee.</source>
<translation type="unfinished">Una comisión mayor que %1 se considera como una comisión absurda-mente alta.</translation>
</message>
@@ -2692,10 +2634,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">&amp;Pagar a:</translation>
</message>
<message>
- <source>&amp;Label:</source>
- <translation type="unfinished">&amp;Etiqueta:</translation>
- </message>
- <message>
<source>Choose previously used address</source>
<translation type="unfinished">Seleccionar dirección usada anteriormente</translation>
</message>
@@ -2720,10 +2658,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Usar el saldo disponible</translation>
</message>
<message>
- <source>Message:</source>
- <translation type="unfinished">Mensaje:</translation>
- </message>
- <message>
<source>Enter a label for this address to add it to the list of used addresses</source>
<translation type="unfinished">Ingresar una etiqueta para esta dirección a fin de agregarla a la lista de direcciones utilizadas</translation>
</message>
@@ -2857,11 +2791,7 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<source>The signature did not match the message digest.</source>
<translation type="unfinished">La firma no coincide con el resumen del mensaje.</translation>
</message>
- <message>
- <source>Message verified.</source>
- <translation type="unfinished">Mensaje verificado.</translation>
- </message>
-</context>
+ </context>
<context>
<name>SplashScreen</name>
<message>
@@ -2905,10 +2835,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Estado</translation>
</message>
<message>
- <source>Date</source>
- <translation type="unfinished">Fecha</translation>
- </message>
- <message>
<source>Source</source>
<translation type="unfinished">Fuente</translation>
</message>
@@ -2917,10 +2843,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">De</translation>
</message>
<message>
- <source>unknown</source>
- <translation type="unfinished">desconocido</translation>
- </message>
- <message>
<source>To</source>
<translation type="unfinished">Para</translation>
</message>
@@ -2928,10 +2850,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<source>own address</source>
<translation type="unfinished">dirección personal</translation>
</message>
- <message>
- <source>label</source>
- <translation type="unfinished">etiqueta</translation>
- </message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
@@ -2956,14 +2874,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Cantidad total</translation>
</message>
<message>
- <source>Message</source>
- <translation type="unfinished">Mensaje</translation>
- </message>
- <message>
- <source>Comment</source>
- <translation type="unfinished">Comentario</translation>
- </message>
- <message>
<source>Transaction ID</source>
<translation type="unfinished">Identificador de transacción</translation>
</message>
@@ -2992,10 +2902,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Las monedas generadas deben madurar %1 bloques antes de que puedan ser gastadas. Una vez que generas este bloque, es propagado por la red para ser añadido a la cadena de bloques. Si falla el intento de meterse en la cadena, su estado cambiará a "no aceptado" y ya no se puede gastar. Esto puede ocurrir ocasionalmente si otro nodo genera un bloque a pocos segundos del tuyo.</translation>
</message>
<message>
- <source>Transaction</source>
- <translation type="unfinished">Transacción</translation>
- </message>
- <message>
<source>Inputs</source>
<translation type="unfinished">Entradas</translation>
</message>
@@ -3018,10 +2924,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<context>
<name>TransactionTableModel</name>
<message>
- <source>Date</source>
- <translation type="unfinished">Fecha</translation>
- </message>
- <message>
<source>Type</source>
<translation type="unfinished">Tipo</translation>
</message>
@@ -3058,10 +2960,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviada a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pago a ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3074,10 +2972,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Fecha y hora en las que se recibió la transacción.</translation>
</message>
<message>
- <source>Type of transaction.</source>
- <translation type="unfinished">Tipo de transacción.</translation>
- </message>
- <message>
<source>Amount removed from or added to balance.</source>
<translation type="unfinished">Importe restado del saldo o sumado a este.</translation>
</message>
@@ -3085,14 +2979,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<context>
<name>TransactionView</name>
<message>
- <source>All</source>
- <translation type="unfinished">Todo</translation>
- </message>
- <message>
- <source>Today</source>
- <translation type="unfinished">Hoy</translation>
- </message>
- <message>
<source>This week</source>
<translation type="unfinished">Esta semana</translation>
</message>
@@ -3105,10 +2991,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">El mes pasado </translation>
</message>
<message>
- <source>This year</source>
- <translation type="unfinished">Este año</translation>
- </message>
- <message>
<source>Received with</source>
<translation type="unfinished">Recibido con</translation>
</message>
@@ -3117,10 +2999,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviada a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3199,10 +3077,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Confirmada</translation>
</message>
<message>
- <source>Date</source>
- <translation type="unfinished">Fecha</translation>
- </message>
- <message>
<source>Type</source>
<translation type="unfinished">Tipo</translation>
</message>
@@ -3332,7 +3206,7 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<message>
<source>Wallet Data</source>
<extracomment>Name of the wallet data file format.</extracomment>
- <translation type="unfinished">Datos del monedero </translation>
+ <translation type="unfinished">Datos de la billetera</translation>
</message>
<message>
<source>Backup Failed</source>
@@ -3366,6 +3240,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">%s corrupto. Intenta utilizar la herramienta del monedero bitcoin-monedero para salvar o restaurar una copia de seguridad.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea no válida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Comunique este incidente a %s, indicando cómo obtuvo la instantánea. Se dejó el estado de encadenamiento de la instantánea no válida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s solicitud para escuchar en el puerto%u. Este puerto se considera "malo" y, por lo tanto, es poco probable que algún par se conecte a él. Consulta doc/p2p-bad-ports.md para obtener detalles y una lista completa.</translation>
</message>
@@ -3450,6 +3328,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Poda: la última sincronización de la billetera sobrepasa los datos podados. Tienes que ejecutar -reindex (descarga toda la cadena de bloques de nuevo en caso de tener un nodo podado)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Error de renombrado de «%s» → «%s». Debería resolver esto manualmente moviendo o borrando el directorio %s de la instantánea no válida, en otro caso encontrará el mismo error de nuevo en el arranque siguiente.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: versión desconocida del esquema de la billetera sqlite %d. Solo se admite la versión %d</translation>
</message>
@@ -3458,10 +3340,6 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">La base de datos de bloques contiene un bloque que parece ser del futuro. Es posible que se deba a que la fecha y hora de la computadora están mal configuradas. Reconstruye la base de datos de bloques solo si tienes la certeza de que la fecha y hora de la computadora son correctas.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">El índice de bloque db contiene un «txindex» heredado. Para borrar el espacio de disco ocupado, ejecute un -reindex completo, de lo contrario ignore este error. Este mensaje de error no se volverá a mostrar.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">El monto de la transacción es demasiado pequeño para enviarlo después de deducir la comisión</translation>
</message>
@@ -3498,6 +3376,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Se proporcionó un formato de billetera desconocido "%s". Proporciona uno entre "bdb" o "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nivel de boletín del acceso especificado en categoría no mantenida en %1$s=%2$s. Se esperaba %1$s=1:2. Categorías válidas: %3$s. Niveles de boletín válidos: %4 $s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">El formato de la base de datos chainstate es incompatible. Reinicia con -reindex-chainstate para reconstruir la base de datos chainstate.</translation>
</message>
@@ -3506,6 +3388,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">La billetera se creó correctamente. El tipo de billetera "legacy" se está descontinuando, por lo que la asistencia para crear y abrir estas billeteras se eliminará en el futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Monedero correctamente cargado. El tipo de billetero heredado está siendo obsoleto y mantenimiento para creación de monederos heredados serán eliminados en el futuro. Los monederos heredados pueden ser migrados a un descriptor de monedero con migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Advertencia: el formato de la billetera del archivo de volcado "%s" no coincide con el formato especificado en la línea de comandos "%s".</translation>
</message>
@@ -3554,30 +3440,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">No se puede escribir en el directorio de datos "%s"; comprueba los permisos.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La actualización -txindex iniciada por una versión anterior no puede completarse. Reinicia con la versión anterior o ejecuta un -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea inválida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Reporta este incidente a %s, indicando cómo obtuviste la instantánea. Se dejó el estado de cadena de la instantánea inválida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">El valor establecido para %s es demasiado alto. Las comisiones tan grandes se podrían pagar en una sola transacción.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -blockfilterindex. Desactiva temporalmente blockfilterindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -coinstatsindex. Desactiva temporalmente coinstatsindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -txindex. Desactiva temporalmente txindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">No se pueden proporcionar conexiones específicas y hacer que addrman encuentre conexiones salientes al mismo tiempo.</translation>
</message>
@@ -3586,6 +3452,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error al cargar %s: Se está cargando la billetera firmante externa sin que se haya compilado la compatibilidad del firmante externo</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Error leyendo %s. Todas las teclas leídas correctamente, pero los datos de transacción o metadatos de dirección puedan ser ausentes o incorrectos.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Error: No se puede identificar si los datos de la libreta de direcciones en la billetera pertenecen a billeteras migradas</translation>
</message>
@@ -3598,6 +3468,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error: No se puede identificar si la transacción %s en la billetera pertenece a billeteras migradas</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">No se pudo calcular la comisión de incremento porque las UTXO sin confirmar dependen de un grupo enorme de transacciones no confirmadas.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">No se pudo cambiar el nombre del archivo peers.dat inválido. Muévelo o elimínalo, e intenta de nuevo.</translation>
</message>
@@ -3672,10 +3546,6 @@ Intenta ejecutar la última versión del software.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">La categoría especifica de nivel de registro no es compatible: -loglevel=%s. Se espera -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %s. Niveles de registro válidos: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -3704,10 +3574,6 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">¡El espacio en disco es demasiado pequeño!</translation>
</message>
<message>
- <source>Done loading</source>
- <translation type="unfinished">Listo Cargando</translation>
- </message>
- <message>
<source>Dump file %s does not exist.</source>
<translation type="unfinished">El archivo de volcado %s no existe.</translation>
</message>
@@ -3828,6 +3694,10 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Fallo al rescanear la billetera durante la inicialización</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Es erróneo al iniciar indizados, se apaga...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Fallo al verificar la base de datos</translation>
</message>
@@ -3856,10 +3726,6 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">dbcache insuficiente para la verificación de bloques</translation>
</message>
<message>
- <source>Insufficient funds</source>
- <translation type="unfinished">Fondos Insuficientes</translation>
- </message>
- <message>
<source>Invalid -i2psam address or hostname: '%s'</source>
<translation type="unfinished">La dirección -i2psam o el nombre de host no es válido: "%s" </translation>
</message>
@@ -3924,10 +3790,6 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">No hay direcciones disponibles</translation>
</message>
<message>
- <source>Not enough file descriptors available.</source>
- <translation type="unfinished">No hay suficientes descriptores de archivo disponibles.</translation>
- </message>
- <message>
<source>Not found pre-selected input %s</source>
<translation type="unfinished">Entrada preseleccionada no encontrada%s</translation>
</message>
@@ -4016,10 +3878,6 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">El monto de la transacción es demasiado pequeño para pagar la comisión</translation>
</message>
<message>
- <source>This is experimental software.</source>
- <translation type="unfinished">Este es un software experimental.</translation>
- </message>
- <message>
<source>This is the minimum transaction fee you pay on every transaction.</source>
<translation type="unfinished">Mínimo de impuesto que pagarás con cada transacción.</translation>
</message>
@@ -4116,8 +3974,12 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Se desconocen las nuevas reglas activadas (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">El nivel de registro de depuración global -loglevel=%s no es compatible. Valores válidos: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nivel de acceso global %s = %s no mantenido. Los valores válidos son: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates no está mantenido en el encadenamiento %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_es_VE.ts b/src/qt/locale/bitcoin_es_VE.ts
index f1d4b4a5b1..e550f43f23 100644
--- a/src/qt/locale/bitcoin_es_VE.ts
+++ b/src/qt/locale/bitcoin_es_VE.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Escoger</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Direcciones de envío</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Direcciones de recepción</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estas son sus direcciones Bitcoin para enviar pagos. Compruebe siempre la cantidad y la dirección de recibo antes de transferir monedas.</translation>
</message>
@@ -102,6 +94,14 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Hubo un error al intentar guardar la lista de direcciones a %1. Por favor trate de nuevo.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Direcciones de envío - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Direcciones de recepción - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">La exportación falló</translation>
</message>
@@ -177,7 +177,7 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
</message>
<message>
<source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
- <translation type="unfinished">Ingrese la nueva contraseña para la billetera. Use una contraseña de diez o más caracteres aleatorios, u ocho o más palabras.</translation>
+ <translation type="unfinished">Ingrese la nueva frase de contraseña para la billetera. &lt;br/&gt;Usa una frase de contraseña de &lt;b&gt;diez o más caracteres aleatorios&lt;/b&gt;, u &lt;b&gt;ocho o más palabras&lt;/b&gt;.</translation>
</message>
<message>
<source>Enter the old passphrase and new passphrase for the wallet.</source>
@@ -631,10 +631,22 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar una billetera</translation>
+ </message>
+ <message>
<source>&amp;Mask values</source>
<translation type="unfinished">&amp;Ocultar valores</translation>
</message>
<message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Ocultar los valores en la pestaña de vista general</translation>
+ </message>
+ <message>
<source>default wallet</source>
<translation type="unfinished">billetera por defecto</translation>
</message>
@@ -667,10 +679,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">&amp;Ventana</translation>
</message>
<message>
- <source>Main Window</source>
- <translation type="unfinished">Ventana principal</translation>
- </message>
- <message>
<source>%1 client</source>
<translation type="unfinished">%1 cliente</translation>
</message>
@@ -715,6 +723,14 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Presincronizando encabezados (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Error al crear billetera</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">No se puede crear una nueva billetera, el software se compiló sin soporte sqlite (requerido para billeteras descriptivas)</translation>
+ </message>
+ <message>
<source>Warning: %1</source>
<translation type="unfinished">Advertencia: %1</translation>
</message>
@@ -768,7 +784,7 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
</message>
<message>
<source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
- <translation type="unfinished">La generación de la clave HD está &lt;b&gt; desactivada &lt;/ b&gt;</translation>
+ <translation type="unfinished">La generación de la clave HD está &lt;b&gt; desactivada&lt;/b&gt;</translation>
</message>
<message>
<source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
@@ -813,10 +829,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Tasa:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Después de tasas:</translation>
</message>
@@ -905,10 +917,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar dust</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -917,14 +925,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">si</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta se vuelve roja si algún receptor recibe un importe inferior al umbral actual establecido para el polvo.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Puede variar +/- %1 satoshi(s) por entrada.</translation>
</message>
@@ -944,11 +944,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<context>
<name>CreateWalletActivity</name>
<message>
- <source>Create Wallet</source>
- <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
- <translation type="unfinished">Crear billetera</translation>
- </message>
- <message>
<source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the create wallet progress window which indicates to the user which wallet is currently being created.</extracomment>
<translation type="unfinished">Creando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
@@ -984,6 +979,57 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">¿Seguro deseas migrar la billetera &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migración de la billetera la convertirá en una o más billeteras basadas en descriptores. Será necesario realizar una nueva copia de seguridad de la billetera.
+Si esta billetera contiene scripts solo de lectura, se creará una nueva billetera que los contenga.
+Si esta billetera contiene scripts solucionables pero no de lectura, se creará una nueva billetera diferente que los contenga.
+
+El proceso de migración creará una copia de seguridad de la billetera antes de migrar. Este archivo de copia de seguridad se llamará &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak y se encontrará en el directorio de esta billetera. En el caso de una migración incorrecta, la copia de seguridad puede restaurarse con la funcionalidad "Restore Wallet" (Restaurar billetera).</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar billetera</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando billetera &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">La migración de la billetera "%1" se realizó correctamente.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solo de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Los scripts solucionables pero no de lectura se migraron a una nueva billetera llamada "%1".</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migración errónea</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migración correcta</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet warning</source>
@@ -996,7 +1042,7 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Abrir billetera</translation>
+ <translation type="unfinished">Abrir monedero</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -1048,7 +1094,7 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
</message>
<message>
<source>Close all wallets</source>
- <translation type="unfinished">Cerrar todas las billeteras</translation>
+ <translation type="unfinished">Cerrar todos los monederos</translation>
</message>
<message>
<source>Are you sure you wish to close all wallets?</source>
@@ -1058,8 +1104,16 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<context>
<name>CreateWalletDialog</name>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Estás a un paso de crear tu nueva billetera.</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Escribe un nombre y, si lo deseas, activa las opciones avanzadas.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">Nombre de la billetera </translation>
+ <translation type="unfinished">Nombre del monedero</translation>
</message>
<message>
<source>Wallet</source>
@@ -1070,10 +1124,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Encriptar la billetera. La billetera será encriptada con una contraseña de tu elección.</translation>
</message>
<message>
- <source>Advanced Options</source>
- <translation type="unfinished">Opciones Avanzadas</translation>
- </message>
- <message>
<source>Disable Private Keys</source>
<translation type="unfinished">Desactivar las claves privadas</translation>
</message>
@@ -1086,10 +1136,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Crear billetera vacía</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Use descriptores para la gestión de scriptPubKey</translation>
- </message>
- <message>
<source>External signer</source>
<translation type="unfinished">Firmante externo</translation>
</message>
@@ -1098,10 +1144,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Crear</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilado sin soporte de sqlite (requerido para billeteras descriptoras)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilado sin soporte de firma externa (necesario para la firma externa)</translation>
@@ -1303,10 +1345,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Incremento del progreso por hora</translation>
</message>
<message>
- <source>Estimated time left until synced</source>
- <translation type="unfinished">Tiempo estimado antes de sincronizar</translation>
- </message>
- <message>
<source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
<translation type="unfinished">%1 está actualmente sincronizándose. Descargará cabeceras y bloques de nodos semejantes y los validará hasta alcanzar la cabeza de la cadena de bloques.</translation>
</message>
@@ -1482,10 +1520,6 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">Asignar puerto usando NA&amp;T-PMP</translation>
</message>
<message>
- <source>Accept connections from outside.</source>
- <translation type="unfinished">Acepta conexiones desde afuera.</translation>
- </message>
- <message>
<source>Allow incomin&amp;g connections</source>
<translation type="unfinished">Permitir conexiones entrantes</translation>
</message>
@@ -1815,6 +1849,10 @@ Registrarse solo es posible utilizando una direccion tipo "Legal"</translation>
<translation type="unfinished">* Envía %1 a %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">dirección personal</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">No se puede calcular la comisión o el importe total de la transacción.</translation>
</message>
@@ -1942,18 +1980,10 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">&amp;Guardar imagen...</translation>
</message>
<message>
- <source>&amp;Copy Image</source>
- <translation type="unfinished">&amp;Copiar imagen</translation>
- </message>
- <message>
<source>Resulting URI too long, try to reduce the text for label / message.</source>
<translation type="unfinished">El URI resultante es demasiado largo, así que trate de reducir el texto de la etiqueta o el mensaje.</translation>
</message>
<message>
- <source>Error encoding URI into QR Code.</source>
- <translation type="unfinished">Fallo al codificar URI en código QR.</translation>
- </message>
- <message>
<source>QR code support not available.</source>
<translation type="unfinished">La compatibilidad con el código QR no está disponible.</translation>
</message>
@@ -2026,10 +2056,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Monedero:</translation>
</message>
<message>
- <source>(none)</source>
- <translation type="unfinished">(ninguno)</translation>
- </message>
- <message>
<source>&amp;Reset</source>
<translation type="unfinished">&amp;Reestablecer</translation>
</message>
@@ -2054,6 +2080,22 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Selecciona un par para ver la información detallada.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versión de la capa de transporte: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Cadena de identificación de la sesión BIP324 en formato hexadecimal, si existe.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">Identificador de sesión</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Si retransmitimos las transacciones a este par.</translation>
</message>
@@ -2160,10 +2202,6 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Banda ancha</translation>
</message>
<message>
- <source>Connection Time</source>
- <translation type="unfinished">Tiempo de conexión</translation>
- </message>
- <message>
<source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
<translation type="unfinished">Tiempo transcurrido desde que se recibió de este par un nuevo bloque que superó las comprobaciones de validez iniciales.</translation>
</message>
@@ -2263,6 +2301,21 @@ Si recibe este error, debe solicitar al comerciante que le proporcione un URI co
<translation type="unfinished">Recuperación de dirección saliente: de corta duración, para solicitar direcciones</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">Detectando: el par puede ser v1 o v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simple sin cifrar</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte encriptado BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">Seleccionamos el par para la retransmisión de banda ancha</translation>
</message>
@@ -2382,7 +2435,7 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
</message>
<message>
<source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
- <translation type="unfinished">Use este formulario para solicitar pagos. Todos los campos son &lt;b&gt; opcionales &lt;/ b&gt;.</translation>
+ <translation type="unfinished">Use este formulario para solicitar pagos. Todos los campos son &lt;b&gt;opcionales&lt;/b&gt;.</translation>
</message>
<message>
<source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
@@ -2519,10 +2572,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Etiqueta</translation>
</message>
<message>
- <source>Message</source>
- <translation type="unfinished">Mensaje</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(sin etiqueta)</translation>
</message>
@@ -2622,10 +2671,6 @@ Escribe %5 para ver un resumen de los comandos disponibles. Para más informaci
<translation type="unfinished">Entradas...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvo:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Elegir...</translation>
</message>
@@ -2694,10 +2739,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar dust</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -2813,10 +2854,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">PSBT guardada en el disco</translation>
</message>
<message>
- <source>Confirm send coins</source>
- <translation type="unfinished">Confirmar el envío de monedas</translation>
- </message>
- <message>
<source>Watch-only balance:</source>
<translation type="unfinished">Saldo solo de observación:</translation>
</message>
@@ -2841,10 +2878,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Se encontró una dirección duplicada: las direcciones solo se deben usar una vez.</translation>
</message>
<message>
- <source>Transaction creation failed!</source>
- <translation type="unfinished">¡Fallo al crear la transacción!</translation>
- </message>
- <message>
<source>A fee higher than %1 is considered an absurdly high fee.</source>
<translation type="unfinished">Una comisión mayor que %1 se considera como una comisión absurda-mente alta.</translation>
</message>
@@ -3060,11 +3093,7 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<source>The signature did not match the message digest.</source>
<translation type="unfinished">La firma no coincide con el resumen del mensaje.</translation>
</message>
- <message>
- <source>Message verified.</source>
- <translation type="unfinished">Mensaje verificado.</translation>
- </message>
-</context>
+ </context>
<context>
<name>SplashScreen</name>
<message>
@@ -3131,10 +3160,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<source>own address</source>
<translation type="unfinished">dirección personal</translation>
</message>
- <message>
- <source>label</source>
- <translation type="unfinished">etiqueta</translation>
- </message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
@@ -3159,14 +3184,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Cantidad total</translation>
</message>
<message>
- <source>Message</source>
- <translation type="unfinished">Mensaje</translation>
- </message>
- <message>
- <source>Comment</source>
- <translation type="unfinished">Comentario</translation>
- </message>
- <message>
<source>Transaction ID</source>
<translation type="unfinished">Identificador de transacción</translation>
</message>
@@ -3261,10 +3278,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviada a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pago a ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3277,10 +3290,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Fecha y hora en las que se recibió la transacción.</translation>
</message>
<message>
- <source>Type of transaction.</source>
- <translation type="unfinished">Tipo de transacción.</translation>
- </message>
- <message>
<source>Whether or not a watch-only address is involved in this transaction.</source>
<translation type="unfinished">Si una dirección de solo observación está involucrada en esta transacción o no.</translation>
</message>
@@ -3296,14 +3305,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<context>
<name>TransactionView</name>
<message>
- <source>All</source>
- <translation type="unfinished">Todo</translation>
- </message>
- <message>
- <source>Today</source>
- <translation type="unfinished">Hoy</translation>
- </message>
- <message>
<source>This week</source>
<translation type="unfinished">Esta semana</translation>
</message>
@@ -3316,10 +3317,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">El mes pasado </translation>
</message>
<message>
- <source>This year</source>
- <translation type="unfinished">Este año</translation>
- </message>
- <message>
<source>Received with</source>
<translation type="unfinished">Recibido con</translation>
</message>
@@ -3328,10 +3325,6 @@ Nota: Dado que la comisión se calcula por byte, una tasa de "100 satoshis por k
<translation type="unfinished">Enviada a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A ti mismo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -3589,6 +3582,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">%s corrupto. Intenta utilizar la herramienta de la billetera de bitcoin para rescatar o restaurar una copia de seguridad.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea no válida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Comunique este incidente a %s, indicando cómo obtuvo la instantánea. Se dejó el estado de encadenamiento de la instantánea no válida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s solicitud para escuchar en el puerto%u. Este puerto se considera "malo" y, por lo tanto, es poco probable que algún par se conecte a él. Consulta doc/p2p-bad-ports.md para obtener detalles y una lista completa.</translation>
</message>
@@ -3613,10 +3610,6 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error al cargar la billetera. Esta requiere que se descarguen bloques, y el software actualmente no admite la carga de billeteras mientras los bloques se descargan fuera de orden, cuando se usan instantáneas de assumeutxo. La billetera debería poder cargarse correctamente después de que la sincronización del nodo alcance la altura %s.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">¡Error al leer %s! Todas las claves se leyeron correctamente, pero es probable que falten los datos de la transacción o la libreta de direcciones, o que sean incorrectos.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">¡Error al leer %s! Es probable que falten los datos de la transacción o que sean incorrectos. Reescaneando billetera.</translation>
</message>
@@ -3681,6 +3674,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Poda: la última sincronización de la billetera sobrepasa los datos podados. Tienes que ejecutar -reindex (descarga toda la cadena de bloques de nuevo en caso de tener un nodo podado)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Error de renombrado de «%s» → «%s». Debería resolver esto manualmente moviendo o borrando el directorio %s de la instantánea no válida, en otro caso encontrará el mismo error de nuevo en el arranque siguiente.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: versión desconocida del esquema de la billetera sqlite %d. Solo se admite la versión %d.</translation>
</message>
@@ -3689,10 +3686,6 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">La base de datos de bloques contiene un bloque que parece ser del futuro. Es posible que se deba a que la fecha y hora de la computadora están mal configuradas. Reconstruye la base de datos de bloques solo si tienes la certeza de que la fecha y hora de la computadora son correctas.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">La base de datos del índice de bloques contiene un "txindex" heredado. Para borrar el espacio de disco ocupado, ejecute un -reindex completo; de lo contrario, ignore este error. Este mensaje de error no se volverá a mostrar.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">El monto de la transacción es demasiado pequeño para enviarlo después de deducir la comisión</translation>
</message>
@@ -3729,6 +3722,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Se proporcionó un formato de archivo de billetera desconocido "%s". Proporciona uno entre "bdb" o "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nivel de boletín del acceso especificado en categoría no mantenida en %1$s=%2$s. Se esperaba %1$s=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %3$s. Niveles de boletín válidos: %4 $s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">El formato de la base de datos chainstate es incompatible. Reinicia con -reindex-chainstate para reconstruir la base de datos chainstate.</translation>
</message>
@@ -3737,6 +3734,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">La billetera se creó correctamente. El tipo de billetera "legacy" se está descontinuando, por lo que la asistencia para crear y abrir estas billeteras se eliminará en el futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Monedero correctamente cargado. El tipo de billetero heredado está siendo obsoleto y mantenimiento para creación de monederos heredados serán eliminados en el futuro. Los monederos heredados pueden ser migrados a un descriptor de monedero con migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Advertencia: el formato de la billetera del archivo de volcado "%s" no coincide con el formato especificado en la línea de comandos "%s".</translation>
</message>
@@ -3785,30 +3786,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">No se puede escribir en el directorio de datos "%s"; comprueba los permisos.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La actualización -txindex iniciada por una versión anterior no puede completarse. Reinicia con la versión anterior o ejecuta un -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s no pudo validar el estado de la instantánea -assumeutxo. Esto indica un problema de hardware, un error en el software o una modificación incorrecta del software que permitió que se cargara una instantánea inválida. Por consiguiente, el nodo se apagará y dejará de utilizar cualquier estado basado en la instantánea, restableciendo la altura de la cadena de %d a %d. En el siguiente reinicio, el nodo reanudará la sincronización desde %d sin usar datos de instantánea. Reporta este incidente a %s, indicando cómo obtuviste la instantánea. Se dejó el estado de cadena de la instantánea inválida en el disco por si resulta útil para diagnosticar el problema que causó este error.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">La configuración de %s es demasiado alta. Las comisiones tan grandes se podrían pagar en una sola transacción.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -blockfilterindex. Desactiva temporalmente blockfilterindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -coinstatsindex. Desactiva temporalmente coinstatsindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">La opción -reindex-chainstate no es compatible con -txindex. Desactiva temporalmente txindex cuando uses -reindex-chainstate, o remplaza -reindex-chainstate por -reindex para reconstruir completamente todos los índices.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">No se pueden proporcionar conexiones específicas y hacer que addrman encuentre conexiones salientes al mismo tiempo.</translation>
</message>
@@ -3817,6 +3798,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error al cargar %s: Se está cargando la billetera firmante externa sin que se haya compilado la compatibilidad del firmante externo</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Error leyendo %s. Todas las teclas leídas correctamente, pero los datos de transacción o metadatos de dirección puedan ser ausentes o incorrectos.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Error: No se puede identificar si los datos de la libreta de direcciones en la billetera pertenecen a billeteras migradas</translation>
</message>
@@ -3829,6 +3814,10 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
<translation type="unfinished">Error: No se puede identificar si la transacción %s en la billetera pertenece a billeteras migradas</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">No se pudo calcular la comisión de incremento porque las UTXO sin confirmar dependen de un grupo enorme de transacciones no confirmadas.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">No se pudo cambiar el nombre del archivo peers.dat inválido. Muévelo o elimínalo, e intenta de nuevo.</translation>
</message>
@@ -3870,7 +3859,7 @@ Ir a Archivo &gt; Abrir billetera para cargar una.
</message>
<message>
<source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
- <translation type="unfinished">La transacción requiere un destino de valor distinto de cero, una tasa de comisión distinta de cero, o una entrada preseleccionada.</translation>
+ <translation type="unfinished">La transacción requiere un destino de valor distinto de 0, una tasa de comisión distinta de 0, o una entrada preseleccionada.</translation>
</message>
<message>
<source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
@@ -3903,10 +3892,6 @@ Intenta ejecutar la última versión del software.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">La categoría especifica de nivel de registro no es compatible: -loglevel=%s. Se espera -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorías válidas: %s. Niveles de registro válidos: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4087,6 +4072,10 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Fallo al rescanear la billetera durante la inicialización</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Es erróneo al iniciar indizados, se apaga...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Fallo al verificar la base de datos</translation>
</message>
@@ -4275,10 +4264,6 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">El monto de la transacción es demasiado pequeño para pagar la comisión</translation>
</message>
<message>
- <source>This is experimental software.</source>
- <translation type="unfinished">Este es un software experimental.</translation>
- </message>
- <message>
<source>This is the minimum transaction fee you pay on every transaction.</source>
<translation type="unfinished">Esta es la tarifa mínima a pagar en cada transacción.</translation>
</message>
@@ -4375,8 +4360,12 @@ No se puede restaurar la copia de seguridad de la billetera.</translation>
<translation type="unfinished">Se desconocen las nuevas reglas activadas (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">El nivel de registro de depuración global -loglevel=%s no es compatible. Valores válidos: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nivel de acceso global %s = %s no mantenido. Los valores válidos son: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates no está mantenido en el encadenamiento %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_et.ts b/src/qt/locale/bitcoin_et.ts
index e9c32815a9..8ffd068e5c 100644
--- a/src/qt/locale/bitcoin_et.ts
+++ b/src/qt/locale/bitcoin_et.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">V&amp;ali</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Saatvad aadressid</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Vastuvõtvad aadressid</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Need on sinu Bitcoin aadressid maksete saatmiseks. Ennem müntide saatmist kontrolli alati summat ja makse saaja aadressi.</translation>
</message>
@@ -583,10 +575,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Tasu:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Puru:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Peale tehingutasu:</translation>
</message>
@@ -643,10 +631,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopeeri baidid</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopeeri puru</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopeeri vahetusraha</translation>
</message>
@@ -655,14 +639,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 lukustatud)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">jah</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ei</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(silt puudub)</translation>
</message>
@@ -951,6 +927,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>PSBTOperationsDialog</name>
<message>
+ <source>own address</source>
+ <translation type="unfinished">oma aadress</translation>
+ </message>
+ <message>
<source>or</source>
<translation type="unfinished">või</translation>
</message>
@@ -1295,10 +1275,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Puhasta kõik vormi väljad.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Puru:</translation>
- </message>
- <message>
<source>Clear &amp;All</source>
<translation type="unfinished">Puhasta &amp;Kõik</translation>
</message>
@@ -1331,10 +1307,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopeeri baidid</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopeeri puru</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopeeri vahetusraha</translation>
</message>
@@ -1698,10 +1670,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Saadetud</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Makse iseendale</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Mine'itud</translation>
</message>
@@ -1761,10 +1729,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Saadetud</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Iseendale</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Mine'itud</translation>
</message>
diff --git a/src/qt/locale/bitcoin_eu.ts b/src/qt/locale/bitcoin_eu.ts
index 3dd82387d9..78cac641f0 100644
--- a/src/qt/locale/bitcoin_eu.ts
+++ b/src/qt/locale/bitcoin_eu.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Aukeratu</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Helbideak bidaltzen</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Helbideak jasotzen</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Hauek dira zuk dirua jaso dezaketen Bitcoin helbideak. Egiaztatu beti diru-kopurua eta dirua jasoko duen helbidea zuzen egon daitezen, txanponak bidali baino lehen.</translation>
</message>
@@ -739,10 +731,6 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">Ordainketa:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Hautsa:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Ordaindu ondoren:</translation>
</message>
@@ -807,10 +795,6 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">Kopiatu byte-ak</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiatu hautsa</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiatu aldaketa</translation>
</message>
@@ -819,14 +803,6 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">(%1 blokeatuta)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">bai</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ez</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(izendapenik ez)</translation>
</message>
@@ -944,10 +920,6 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">Egin diruzorro hutsa...</translation>
</message>
<message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptorearen zorroa</translation>
- </message>
- <message>
<source>External signer</source>
<translation type="unfinished">Kanpo sinatzailea</translation>
</message>
@@ -1331,6 +1303,10 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">PSBT diskoan gorde da.</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">zure helbidea</translation>
+ </message>
+ <message>
<source>Total Amount</source>
<translation type="unfinished">Kopuru osoa</translation>
</message>
@@ -1712,10 +1688,6 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">Garbitu formularioko eremu guztiak.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Hautsa:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Aukeratu...</translation>
</message>
@@ -1752,10 +1724,6 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">Kopiatu byte-ak</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiatu hautsa</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiatu aldaketa</translation>
</message>
@@ -2052,10 +2020,6 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">Hona bidalia</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Zure buruarentzat ordainketa</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Meatua</translation>
</message>
@@ -2119,10 +2083,6 @@ Sinatzea 'legacy' motako helbideekin soilik da posible</translation>
<translation type="unfinished">Hona bidalia</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Zeure buruari</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Meatua</translation>
</message>
diff --git a/src/qt/locale/bitcoin_fa.ts b/src/qt/locale/bitcoin_fa.ts
index 455921250a..a63f560c33 100644
--- a/src/qt/locale/bitcoin_fa.ts
+++ b/src/qt/locale/bitcoin_fa.ts
@@ -1,191 +1,7 @@
<TS version="2.1" language="fa">
<context>
- <name>AddressBookPage</name>
- <message>
- <source>&amp;New</source>
- <translation type="unfinished">&amp;جدید</translation>
- </message>
- <message>
- <source>Copy the currently selected address to the system clipboard</source>
- <translation type="unfinished">گپی آدرسی که اکنون انتخاب کردید در کلیپ بورد سیستم</translation>
- </message>
- <message>
- <source>&amp;Copy</source>
- <translation type="unfinished">و کپی</translation>
- </message>
- <message>
- <source>C&amp;lose</source>
- <translation type="unfinished">و بستن</translation>
- </message>
- <message>
- <source>Delete the currently selected address from the list</source>
- <translation type="unfinished">حذف آدرس ‌انتخاب شده کنونی از فهرست</translation>
- </message>
- <message>
- <source>Enter address or label to search</source>
- <translation type="unfinished">برای جستجو یک آدرس یا برچسب را وارد کنید</translation>
- </message>
- <message>
- <source>Export the data in the current tab to a file</source>
- <translation type="unfinished">خروجی گرفتن داده‌ها از صفحه کنونی در یک فایل</translation>
- </message>
- <message>
- <source>&amp;Export</source>
- <translation type="unfinished">و صدور</translation>
- </message>
- <message>
- <source>&amp;Delete</source>
- <translation type="unfinished">و حذف</translation>
- </message>
- <message>
- <source>Choose the address to send coins to</source>
- <translation type="unfinished">آدرسی که ارزها به آن ارسال میشود را انتخاب کنید</translation>
- </message>
- <message>
- <source>Choose the address to receive coins with</source>
- <translation type="unfinished">آدرسی که ارزها را دریافت میکند را انتخاب کنید</translation>
- </message>
- <message>
- <source>C&amp;hoose</source>
- <translation type="unfinished">و انتخاب</translation>
- </message>
- <message>
- <source>Sending addresses</source>
- <translation type="unfinished">آدرس‌های فرستنده</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">آدرس‌های گیرنده</translation>
- </message>
- <message>
- <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
- <translation type="unfinished">اینها آدرسهای ارسال پرداخت های بیتکوین شماست. همیشه قبل از انجام تراکنش مقدار بیتکوینی که قصد دارید ارسال کنید و آدرسی که برای آن بیتکوین ارسال میکنید را دوباره بررسی کنید</translation>
- </message>
- <message>
- <source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
-Signing is only possible with addresses of the type 'legacy'.</source>
- <translation type="unfinished">اینها آدرس های بیت کوین شما هستند که برای دریافت بیتکوین از آنها استفاده می کنید. اگر میخواهید یک آدرس دریافت بیتکوین جدید برای خود بسازید، میتوانید در صفحه "دریافت ها" از گزینه "ساخت یک آدرس جدید برای دریافت بیتکوین" استفاده کنید
-امکان ساخت امضای تراکنش ها تنها با آدرس هایی که از نوع «legacy» هستند امکان‌پذیر است.</translation>
- </message>
- <message>
- <source>&amp;Copy Address</source>
- <translation type="unfinished">و کپی آدرس</translation>
- </message>
- <message>
- <source>Copy &amp;Label</source>
- <translation type="unfinished">و کپی برچسب</translation>
- </message>
- <message>
- <source>&amp;Edit</source>
- <translation type="unfinished">و ویرایش</translation>
- </message>
- <message>
- <source>Export Address List</source>
- <translation type="unfinished">خروجی گرفتن از لیست آدرس ها</translation>
- </message>
- <message>
- <source>Comma separated file</source>
- <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">فایل جدا شده با ویرگول</translation>
- </message>
- <message>
- <source>There was an error trying to save the address list to %1. Please try again.</source>
- <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
- <translation type="unfinished">هنگام ذخیره کردن فهرست آدرس ها در فایل %1 خطایی پیش آمد. لطفاً دوباره تلاش کنید.</translation>
- </message>
- <message>
- <source>Exporting Failed</source>
- <translation type="unfinished">اجرای خروجی ناموفق بود</translation>
- </message>
-</context>
-<context>
- <name>AddressTableModel</name>
- <message>
- <source>Label</source>
- <translation type="unfinished">لیبل</translation>
- </message>
- <message>
- <source>Address</source>
- <translation type="unfinished">آدرس</translation>
- </message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">(بدون لیبل)</translation>
- </message>
-</context>
-<context>
<name>AskPassphraseDialog</name>
<message>
- <source>Passphrase Dialog</source>
- <translation type="unfinished">دیالوگ رمزعبور</translation>
- </message>
- <message>
- <source>Enter passphrase</source>
- <translation type="unfinished">جملۀ عبور را وارد کنید</translation>
- </message>
- <message>
- <source>New passphrase</source>
- <translation type="unfinished">جمله عبور تازه را وارد کنید</translation>
- </message>
- <message>
- <source>Repeat new passphrase</source>
- <translation type="unfinished">جملۀ عبور تازه را دوباره وارد کنید</translation>
- </message>
- <message>
- <source>Show passphrase</source>
- <translation type="unfinished">نمایش جملۀ عبور</translation>
- </message>
- <message>
- <source>Encrypt wallet</source>
- <translation type="unfinished">رمزگذاری کیف پول</translation>
- </message>
- <message>
- <source>This operation needs your wallet passphrase to unlock the wallet.</source>
- <translation type="unfinished">این عملیات برای باز کردن قفل کیف پول شما به رمزعبور کیف پول نیاز دارد.
- </translation>
- </message>
- <message>
- <source>Unlock wallet</source>
- <translation type="unfinished">قفل کیف پول را باز کنید
- </translation>
- </message>
- <message>
- <source>Change passphrase</source>
- <translation type="unfinished">تغییر رمزعبور</translation>
- </message>
- <message>
- <source>Confirm wallet encryption</source>
- <translation type="unfinished">تایید رمزگذاری کیف پول</translation>
- </message>
- <message>
- <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
- <translation type="unfinished">هشدار: اگر کیف پول خود را رمزگذاری کرده و رمز خود را گم کنید ، &lt;b&gt;تمام بیتکوین های خود را از دست خواهید داد&lt;/b&gt;!</translation>
- </message>
- <message>
- <source>Are you sure you wish to encrypt your wallet?</source>
- <translation type="unfinished">مطمئن هستید که می خواهید کیف پول خود را رمزگذاری کنید؟</translation>
- </message>
- <message>
- <source>Wallet encrypted</source>
- <translation type="unfinished">کیف پول رمزگذاری شد</translation>
- </message>
- <message>
- <source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
- <translation type="unfinished">رمز جدید را برای کیف پول خود وارد کنید. &lt;br/&gt;لطفاً از رمزی استفاده کنید که&lt;b&gt;ده یا بیشتر از ده حرف که بصورت تصادفی انتخاب شده اند&lt;/b&gt;، یا &lt;b&gt; حداقل هشت کلمه باشند&lt;/b&gt;</translation>
- </message>
- <message>
- <source>Enter the old passphrase and new passphrase for the wallet.</source>
- <translation type="unfinished">رمز عبور قدیمی و رمز عبور جدید کیف پول خود را وارد کنید.</translation>
- </message>
- <message>
- <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
- <translation type="unfinished">به یاد داشته باشید که رمزگذاری کیف پول شما نمی تواند به طور کامل از سرقت بیت کوین شما در اثر آلوده شدن رایانه به بدافزار محافظت کند.</translation>
- </message>
- <message>
- <source>Wallet to be encrypted</source>
- <translation type="unfinished">کیف پول رمز نگاری شده است</translation>
- </message>
- <message>
<source>Your wallet is about to be encrypted. </source>
<translation type="unfinished">کیف پول شما در حال رمزگذاری ست.</translation>
</message>
@@ -227,19 +43,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">عبارت عبور وارد شده برای رمزگشایی کیف پول نادرست است. این شامل یک کاراکتر تهی (به معنی صفر بایت) است. اگر عبارت عبور را در نسخه ای از این نرم افزار که قدیمی تر نسخه 25.0 است تنظیم کرده اید ، لطفا عبارت را تا آنجایی که اولین کاراکتر تهی قرار دارد امتحان کنید ( خود کاراکتر تهی را درج نکنید ) و دوباره امتحان کنید. اگر این کار موفقیت آمیز بود ، لطفا یک عبارت عبور جدید تنظیم کنید تا دوباره به این مشکل بر نخورید.</translation>
</message>
<message>
- <source>Wallet passphrase was successfully changed.</source>
- <translation type="unfinished">عبارت عبور کیف پول با موفقیت تغییر کرد.
- </translation>
- </message>
- <message>
- <source>Passphrase change failed</source>
- <translation type="unfinished">تغییر عبارت عبور ناموفق بود.</translation>
- </message>
- <message>
- <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
- <translation type="unfinished">عبارت عبور قدیمی وارد شده برای رمزگشایی کیف پول نادرست است. این عبارت عبور شامل یک کاراکتر تهی (به عنوان مثال - کاراکتری با حجم صفر بایت) است . اگر عبارت عبور خود را در نسخه ای از این نرم افزار تا قبل از نسخه 25.0 تنظیم کرده اید ،لطفا دوباره عبارت عبور را تا قبل از کاراکتر تهی یا NULL امتحان کنید ( خود کاراکتر تهی را درج نکنید ).</translation>
- </message>
- <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">هشدار: کلید کلاه قفل روشن است!
 </translation>
@@ -300,10 +103,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ناشناس</translation>
</message>
<message>
- <source>Amount</source>
- <translation type="unfinished">میزان وجه:</translation>
- </message>
- <message>
<source>Enter a Bitcoin address (e.g. %1)</source>
<translation type="unfinished">آدرس بیت کوین را وارد کنید (به طور مثال %1)</translation>
</message>
@@ -761,7 +560,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n اتصال(های) فعال به شبکه بیت کوین.</numerusform>
+ <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
</translation>
</message>
<message>
@@ -891,10 +690,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">هزینه</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">گرد و غبار یا داست:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">بعد از احتساب کارمزد</translation>
</message>
@@ -903,46 +698,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">تغییر</translation>
</message>
<message>
- <source>(un)select all</source>
- <translation type="unfinished">(عدم)انتخاب همه</translation>
- </message>
- <message>
- <source>Tree mode</source>
- <translation type="unfinished">حالت درختی</translation>
- </message>
- <message>
<source>List mode</source>
<translation type="unfinished">حالت لیستی</translation>
</message>
<message>
- <source>Amount</source>
- <translation type="unfinished">میزان وجه:</translation>
- </message>
- <message>
- <source>Received with label</source>
- <translation type="unfinished">دریافت شده با برچسب</translation>
- </message>
- <message>
- <source>Received with address</source>
- <translation type="unfinished">دریافت شده با آدرس</translation>
- </message>
- <message>
- <source>Date</source>
- <translation type="unfinished">تاریخ</translation>
- </message>
- <message>
- <source>Confirmations</source>
- <translation type="unfinished">تاییدیه</translation>
- </message>
- <message>
- <source>Confirmed</source>
- <translation type="unfinished">تایید شده</translation>
- </message>
- <message>
- <source>Copy amount</source>
- <translation type="unfinished">کپی مقدار</translation>
- </message>
- <message>
<source>&amp;Copy address</source>
<translation type="unfinished">تکثیر نشانی</translation>
</message>
@@ -983,10 +742,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">کپی کردن بایت ها</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">کپی کردن داست:</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">کپی کردن تغییر</translation>
</message>
@@ -995,22 +750,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(قفل شده است %1)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">بله</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">خیر</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">اگر هر گیرنده مقداری کمتر آستانه فعلی دریافت کند از این لیبل قرمز می‌شود.</translation>
- </message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">(بدون لیبل)</translation>
- </message>
- <message>
<source>change from %1 (%2)</source>
<translation type="unfinished">تغییر از %1 (%2)</translation>
</message>
@@ -1875,6 +1614,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">تراکنش نسبتا امضا شده (باینری)</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">آدرس خود</translation>
+ </message>
+ <message>
<source>Total Amount</source>
<translation type="unfinished">میزان کل</translation>
</message>
@@ -1968,11 +1711,6 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">دریافت شد</translation>
</message>
<message>
- <source>Address</source>
- <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
- <translation type="unfinished">آدرس</translation>
- </message>
- <message>
<source>Type</source>
<extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
<translation type="unfinished">نوع</translation>
@@ -2517,10 +2255,19 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">آدرس سازگار با کیف‌پول‌های قدیمی‌تر تولید می‌کند</translation>
</message>
<message>
+ <source>Generates a native segwit address (BIP-173). Some old wallets don't support it.</source>
+ <translation type="unfinished">یک آدرس سگویت بومی (BIP-173) ایجاد کنید.
+برخی از کیف پول های قدیمی از آن پشتیبانی نمی کنند.</translation>
+ </message>
+ <message>
<source>Bech32m (Taproot)</source>
<translation type="unfinished">Bech32m (تپ‌روت)</translation>
</message>
<message>
+ <source>Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
+ <translation type="unfinished">Bech32m(BIP-350) یک آپدیت برای Bech32 است، پشتیبانی کیف پول هنوز محدود شده است.</translation>
+ </message>
+ <message>
<source>Could not unlock wallet.</source>
<translation type="unfinished">نمیتوان کیف پول را باز کرد.</translation>
</message>
@@ -2579,22 +2326,10 @@ If you are receiving this error you should request the merchant provide a BIP21
<context>
<name>RecentRequestsTableModel</name>
<message>
- <source>Date</source>
- <translation type="unfinished">تاریخ</translation>
- </message>
- <message>
- <source>Label</source>
- <translation type="unfinished">لیبل</translation>
- </message>
- <message>
<source>Message</source>
<translation type="unfinished">پیام</translation>
</message>
<message>
- <source>(no label)</source>
- <translation type="unfinished">(بدون لیبل)</translation>
- </message>
- <message>
<source>(no message)</source>
<translation type="unfinished">(بدون پیام)</translation>
</message>
@@ -2627,10 +2362,6 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">وجوه ناکافی</translation>
</message>
<message>
- <source>Quantity:</source>
- <translation type="unfinished">مقدار</translation>
- </message>
- <message>
<source>Bytes:</source>
<translation type="unfinished">بایت ها:</translation>
</message>
@@ -2699,10 +2430,6 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">ورودی ها</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">گرد و غبار یا داست:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">انتخاب کنید...</translation>
</message>
@@ -2756,10 +2483,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">کپی مقدار</translation>
</message>
<message>
- <source>Copy amount</source>
- <translation type="unfinished">کپی مقدار</translation>
- </message>
- <message>
<source>Copy fee</source>
<translation type="unfinished">کپی هزینه</translation>
</message>
@@ -2772,10 +2495,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">کپی کردن بایت ها</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">کپی کردن داست:</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">کپی کردن تغییر</translation>
</message>
@@ -2870,6 +2589,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">تراکنش امضا نشده</translation>
</message>
<message>
+ <source>The PSBT has been copied to the clipboard. You can also save it.</source>
+ <translation type="unfinished">تراکنش بیت کوین با امضای جزئی (PSBT) در کلیپ بورد کپی شده است. همچنین شما می‌توانید آن را ذخیره کنید.</translation>
+ </message>
+ <message>
<source>PSBT saved to disk</source>
<translation type="unfinished">فایل PSBT در دیسک ذخیره شد</translation>
</message>
@@ -2906,6 +2629,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<source>A fee higher than %1 is considered an absurdly high fee.</source>
<translation type="unfinished">کارمزد بیشتر از %1 است,این یعنی کارمزد خیلی زیادی در نظر گرفته شده است.</translation>
</message>
+ <message>
+ <source>%1/kvB</source>
+ <translation type="unfinished">%1 kvB</translation>
+ </message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
@@ -2928,11 +2655,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<source>The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure?</source>
<translation type="unfinished">این آدرس که شما انتخاب کرده اید بخشی از کیف پول شما نیست.هر یا همه دارایی های شما در این کیف پول به این آدرس ارسال خواهد شد.آیا مطمئن هستید؟</translation>
</message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">(بدون لیبل)</translation>
- </message>
-</context>
+ </context>
<context>
<name>SendCoinsEntry</name>
<message>
@@ -3156,10 +2879,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">وضعیت</translation>
</message>
<message>
- <source>Date</source>
- <translation type="unfinished">تاریخ</translation>
- </message>
- <message>
<source>Source</source>
<translation type="unfinished">منبع</translation>
</message>
@@ -3259,10 +2978,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">ورودی ها</translation>
</message>
<message>
- <source>Amount</source>
- <translation type="unfinished">میزان وجه:</translation>
- </message>
- <message>
<source>true</source>
<translation type="unfinished">درست</translation>
</message>
@@ -3285,18 +3000,10 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<context>
<name>TransactionTableModel</name>
<message>
- <source>Date</source>
- <translation type="unfinished">تاریخ</translation>
- </message>
- <message>
<source>Type</source>
<translation type="unfinished">نوع</translation>
</message>
<message>
- <source>Label</source>
- <translation type="unfinished">لیبل</translation>
- </message>
- <message>
<source>Unconfirmed</source>
<translation type="unfinished">تایید نشده</translation>
</message>
@@ -3325,10 +3032,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">ارسال شده به</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">پرداخت به خود</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">استخراج شده</translation>
</message>
@@ -3341,10 +3044,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">(موجود نیست)</translation>
</message>
<message>
- <source>(no label)</source>
- <translation type="unfinished">(بدون لیبل)</translation>
- </message>
- <message>
<source>Transaction status. Hover over this field to show number of confirmations.</source>
<translation type="unfinished">وضعیت تراکنش. نشانگر را روی این فیلد نگه دارید تا تعداد تأییدیه‌ها نشان داده شود.</translation>
</message>
@@ -3396,10 +3095,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">ارسال شده به</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">به خودت</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">استخراج شده</translation>
</message>
@@ -3465,43 +3160,18 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">خارج کردن یا بالا بردن سابقه تراکنش ها</translation>
</message>
<message>
- <source>Comma separated file</source>
- <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">فایل جدا شده با ویرگول</translation>
- </message>
- <message>
- <source>Confirmed</source>
- <translation type="unfinished">تایید شده</translation>
- </message>
- <message>
<source>Watch-only</source>
<translation type="unfinished">فقط برای تماشا</translation>
</message>
<message>
- <source>Date</source>
- <translation type="unfinished">تاریخ</translation>
- </message>
- <message>
<source>Type</source>
<translation type="unfinished">نوع</translation>
</message>
<message>
- <source>Label</source>
- <translation type="unfinished">لیبل</translation>
- </message>
- <message>
- <source>Address</source>
- <translation type="unfinished">آدرس</translation>
- </message>
- <message>
<source>ID</source>
<translation type="unfinished">شناسه</translation>
</message>
<message>
- <source>Exporting Failed</source>
- <translation type="unfinished">اجرای خروجی ناموفق بود</translation>
- </message>
- <message>
<source>Exporting Successful</source>
<translation type="unfinished">خارج کردن موفقیت آمیز بود Exporting</translation>
</message>
@@ -3583,14 +3253,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<context>
<name>WalletView</name>
<message>
- <source>&amp;Export</source>
- <translation type="unfinished">و صدور</translation>
- </message>
- <message>
- <source>Export the data in the current tab to a file</source>
- <translation type="unfinished">خروجی گرفتن داده‌ها از صفحه کنونی در یک فایل</translation>
- </message>
- <message>
<source>Backup Wallet</source>
<translation type="unfinished">کیف پول پشتیبان
 </translation>
@@ -3691,10 +3353,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
 </translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">نمایه بلوک db حاوی یک «txindex» است. برای پاک کردن فضای اشغال شده دیسک، یک -reindex کامل را اجرا کنید، در غیر این صورت این خطا را نادیده بگیرید. این پیغام خطا دیگر نمایش داده نخواهد شد.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">مبلغ معامله برای ارسال پس از کسر هزینه بسیار ناچیز است
 </translation>
diff --git a/src/qt/locale/bitcoin_fi.ts b/src/qt/locale/bitcoin_fi.ts
index 02f073d6c3..54eb41ed88 100644
--- a/src/qt/locale/bitcoin_fi.ts
+++ b/src/qt/locale/bitcoin_fi.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">V&amp;alitse</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Lähetysosoitteet</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Vastaanotto-osoitteet</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Nämä ovat Bitcoin-osoitteesi maksujen lähettämistä varten. Tarkista aina määrä ja vastaanotto-osoite ennen kolikoiden lähettämistä.</translation>
</message>
@@ -262,6 +254,10 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
<translation type="unfinished">Asetustiedosto %1 saattaa olla vioittunut tai virheellinen.</translation>
</message>
<message>
+ <source>Runaway exception</source>
+ <translation type="unfinished">Runaway poikkeus</translation>
+ </message>
+ <message>
<source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
<translation type="unfinished">Peruuttamaton virhe on tapahtunut. %1 ei voi enää jatkaa turvallisesti ja sammutetaan.</translation>
</message>
@@ -282,6 +278,11 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
<translation type="unfinished">Haluatko palauttaa asetukset oletusarvoihin vai keskeyttää tekemättä muutoksia?</translation>
</message>
<message>
+ <source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
+ <extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
+ <translation type="unfinished">Tapahtui kohtalokas virhe. Tarkista, että asetustiedosto on kirjoitettavissa, tai yritä suorittaa ohjelma -nosettings -asetuksilla.</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Virhe: %1</translation>
</message>
@@ -863,10 +864,6 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
<translation type="unfinished">Palkkio:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Tomu:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Palkkion jälkeen:</translation>
</message>
@@ -947,10 +944,6 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
<translation type="unfinished">Kopioi tavut</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopioi tomu</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopioi vaihtorahat</translation>
</message>
@@ -959,18 +952,6 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
<translation type="unfinished">(%1 lukittu)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">kyllä</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ei</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Tämä nimike muuttuu punaiseksi, jos jokin vastaanottajista on saamassa tämänhetkistä tomun rajaa pienemmän summan.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Saattaa vaihdella +/- %1 satoshia per syöte.</translation>
</message>
@@ -1134,14 +1115,6 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
<translation type="unfinished">Luo tyhjä lompakko</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Käytä kuvaajia sciptPubKeyn hallinnointiin</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Kuvaajalompakko</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Käytä ulkoista allekirjoituslaitetta, kuten laitteistolompakkoa. Määritä ulkoisen allekirjoittajan skripti ensin lompakon asetuksissa.</translation>
</message>
@@ -1154,10 +1127,6 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
<translation type="unfinished">Luo</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Koostettu ilman sqlite-tukea (vaaditaan descriptor-lompakoille)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Käännetään ilman ulkoista allekirjoitustukea (tarvitaan ulkoista allekirjoitusta varten)</translation>
@@ -1265,6 +1234,10 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
</translation>
</message>
<message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">Valitse data-kansio</translation>
+ </message>
+ <message>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">Ainakin %1 GB tietoa varastoidaan tähän hakemistoon ja tarve kasvaa ajan myötä.</translation>
</message>
@@ -1902,6 +1875,10 @@ Allekirjoitus on mahdollista vain 'legacy'-tyyppisillä osoitteilla.</translatio
<translation type="unfinished">*Lähettää %1'n kohteeseen %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">oma osoite</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Siirtokuluja tai siirron lopullista määrää ei voitu laskea.</translation>
</message>
@@ -2198,6 +2175,11 @@ Jos saat tämän virheen, pyydä kauppiasta antamaan BIP21-yhteensopiva URI.</tr
<translation type="unfinished">Kartoitettu AS</translation>
</message>
<message>
+ <source>Addresses Processed</source>
+ <extracomment>Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Käsitellyt osoitteet</translation>
+ </message>
+ <message>
<source>User Agent</source>
<translation type="unfinished">Käyttöliittymä</translation>
</message>
@@ -2690,10 +2672,6 @@ Jos saat tämän virheen, pyydä kauppiasta antamaan BIP21-yhteensopiva URI.</tr
<translation type="unfinished">Syötteet...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Tomu:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Valitse...</translation>
</message>
@@ -2758,10 +2736,6 @@ Jos saat tämän virheen, pyydä kauppiasta antamaan BIP21-yhteensopiva URI.</tr
<translation type="unfinished">Kopioi tavut</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopioi tomu</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopioi vaihtorahat</translation>
</message>
@@ -3377,10 +3351,6 @@ Jos saat tämän virheen, pyydä kauppiasta antamaan BIP21-yhteensopiva URI.</tr
<translation type="unfinished">Lähetetty vastaanottajalle</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Maksu itsellesi</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Louhittu</translation>
</message>
@@ -3456,10 +3426,6 @@ Jos saat tämän virheen, pyydä kauppiasta antamaan BIP21-yhteensopiva URI.</tr
<translation type="unfinished">Lähetetty vastaanottajalle</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Itsellesi</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Louhittu</translation>
</message>
@@ -3715,10 +3681,6 @@ Siirry osioon Tiedosto &gt; Avaa lompakko ladataksesi lompakon.
<translation type="unfinished">Jaettu MIT -ohjelmistolisenssin alaisuudessa, katso mukana tuleva %s tiedosto tai %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Virhe luettaessa %s! Avaimet luetttiin oikein, mutta rahansiirtotiedot tai osoitekirjan sisältö saattavat olla puutteellisia tai vääriä.</translation>
- </message>
- <message>
<source>Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
<translation type="unfinished">Virhe: Dump-tiedoston versio ei ole tuettu. Tämä bitcoin-lompakon versio tukee vain version 1 dump-tiedostoja. Annetun dump-tiedoston versio %s</translation>
</message>
@@ -3995,6 +3957,10 @@ Siirry osioon Tiedosto &gt; Avaa lompakko ladataksesi lompakon.
<translation type="unfinished">Ladataan lompakko...</translation>
</message>
<message>
+ <source>Missing amount</source>
+ <translation type="unfinished">Puuttuva summa</translation>
+ </message>
+ <message>
<source>Need to specify a port with -whitebind: '%s'</source>
<translation type="unfinished">Pitää määritellä portti argumentilla -whitebind: '%s'</translation>
</message>
diff --git a/src/qt/locale/bitcoin_fil.ts b/src/qt/locale/bitcoin_fil.ts
index 02f1ebb390..b0bfec07d4 100644
--- a/src/qt/locale/bitcoin_fil.ts
+++ b/src/qt/locale/bitcoin_fil.ts
@@ -3,7 +3,7 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">Mag-right click para ibahin ang address o label</translation>
+ <translation type="unfinished">Right-click para ma-edit ang address o label</translation>
</message>
<message>
<source>Create a new address</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">Pumili</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Mga address na padadalahan</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Mga address na tatanggap</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ito ang iyong mga Bitcoin address para sa pagpapadala ng bayad. Laging suriin ang halaga at ang address na tatanggap bago magpadala ng coins.</translation>
</message>
@@ -698,28 +690,12 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopyahin ang bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopyahin ang dust</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopyahin ang sukli</translation>
</message>
<message>
<source>(%1 locked)</source>
- <translation type="unfinished">(%1 Naka-lock)</translation>
- </message>
- <message>
- <source>yes</source>
- <translation type="unfinished">oo</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">hindi</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ang label na ito ay magiging pula kung ang sinumang tatanggap ay tumanggap ng halagang mas mababa sa kasalukuyang dust threshold.</translation>
+ <translation type="unfinished">(%1 ay naka-lock)</translation>
</message>
<message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
@@ -1393,6 +1369,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">%1</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">sariling address</translation>
+ </message>
+ <message>
<source>Pays transaction fee: </source>
<translation type="unfinished">babayaran ang transaction fee:</translation>
</message>
@@ -2030,10 +2010,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopyahin ang bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopyahin ang dust</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopyahin ang sukli</translation>
</message>
@@ -2535,10 +2511,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Ipinadala sa</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pagbabayad sa iyong sarili</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Namina</translation>
</message>
@@ -2606,10 +2578,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Ipinadala sa</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Sa iyong sarili</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Namina</translation>
</message>
@@ -2795,10 +2763,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Naipamahagi sa ilalim ng lisensya ng MIT software, tingnan ang kasamang file %s o %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Error sa pagbabasa %s! Nabasa nang tama ang lahat ng mga key, ngunit ang data ng transaksyon o mga entry sa address book ay maaaring nawawala o hindi tama.</translation>
- </message>
- <message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
<translation type="unfinished">Mangyaring suriin na ang petsa at oras ng iyong computer ay tama! Kung mali ang iyong orasan, ang %s ay hindi gagana nang maayos.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_fo.ts b/src/qt/locale/bitcoin_fo.ts
new file mode 100644
index 0000000000..f16444c3d3
--- /dev/null
+++ b/src/qt/locale/bitcoin_fo.ts
@@ -0,0 +1,1364 @@
+<TS version="2.1" language="fo">
+<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Right-click to edit address or label</source>
+ <translation type="unfinished">Høgraklikk fyri at broyta adressu ella spjaldur</translation>
+ </message>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">Mynda nýggja adressu</translation>
+ </message>
+ <message>
+ <source>Delete the currently selected address from the list</source>
+ <translation type="unfinished">Strika valdu adressuna av listanum</translation>
+ </message>
+ <message>
+ <source>Enter address or label to search</source>
+ <translation type="unfinished">Leita eftir adressu ella spjaldri</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Address</source>
+ <translation type="unfinished">&amp;Avrita addressu</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Label</source>
+ <translation type="unfinished">Avrita &amp;Spjaldur</translation>
+ </message>
+ <message>
+ <source>&amp;Edit</source>
+ <translation type="unfinished">&amp;Broyt</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">Villa við goyming av adressuskrá til %1. Vinaliga royn aftur.</translation>
+ </message>
+ </context>
+<context>
+ <name>AddressTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Spjaldur</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Adressa</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(einki spjaldur)</translation>
+ </message>
+</context>
+<context>
+ <name>BitcoinApplication</name>
+ <message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">Uppsetanarfílan %1 kann vera avskeplað ella ógildig.</translation>
+ </message>
+ <message>
+ <source>Internal error</source>
+ <translation type="unfinished">Innanhýsis villa</translation>
+ </message>
+ </context>
+<context>
+ <name>QObject</name>
+ <message>
+ <source>Do you want to reset settings to default values, or to abort without making changes?</source>
+ <extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
+ <translation type="unfinished">Ynskir tú at endurstilla stillingar til sjálvsettar, ella at avbróta uttan at hava broytt stillingar?</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Villa: %1</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Upphædd</translation>
+ </message>
+ <message>
+ <source>Enter a Bitcoin address (e.g. %1)</source>
+ <translation type="unfinished">Inntøppa eina Bitcoin adressu (t.d. %1)</translation>
+ </message>
+ <message>
+ <source>Ctrl+W</source>
+ <translation type="unfinished">CTRL+W</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</extracomment>
+ <translation type="unfinished">Inngangandi</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An outbound connection to a peer. An outbound connection is a connection initiated by us.</extracomment>
+ <translation type="unfinished">Útgangandi</translation>
+ </message>
+ <message>
+ <source>%1 h</source>
+ <translation type="unfinished">%1 t</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n sekund</numerusform>
+ <numerusform>%n sekund</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n minuttur</numerusform>
+ <numerusform>%n minuttir</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n tími</numerusform>
+ <numerusform>%n tímar</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n dagur</numerusform>
+ <numerusform>%n dagar</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n week(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n vika</numerusform>
+ <numerusform>%n vikur</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>%1 and %2</source>
+ <translation type="unfinished">%1 og %2</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n year(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n ár</numerusform>
+ <numerusform>%n ár</numerusform>
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinGUI</name>
+ <message>
+ <source>&amp;Overview</source>
+ <translation type="unfinished">&amp;Yvirlit</translation>
+ </message>
+ <message>
+ <source>Quit application</source>
+ <translation type="unfinished">Sløkk forrit</translation>
+ </message>
+ <message>
+ <source>&amp;About %1</source>
+ <translation type="unfinished">&amp;Um %1</translation>
+ </message>
+ <message>
+ <source>Show information about %1</source>
+ <translation type="unfinished">Vís upplýsingar um %1</translation>
+ </message>
+ <message>
+ <source>About &amp;Qt</source>
+ <translation type="unfinished">Um &amp;Qt</translation>
+ </message>
+ <message>
+ <source>Show information about Qt</source>
+ <translation type="unfinished">Vís upplýsingar um Qt</translation>
+ </message>
+ <message>
+ <source>Modify configuration options for %1</source>
+ <translation type="unfinished">Broyt uppsetan fyri %1</translation>
+ </message>
+ <message>
+ <source>Network activity disabled.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">Net-virksemi óvirkijað.</translation>
+ </message>
+ <message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">&amp;Undirskriva boðini</translation>
+ </message>
+ <message>
+ <source>Sign messages with your Bitcoin addresses to prove you own them</source>
+ <translation type="unfinished">Undirskriva boðini við tíni Bitcoin-adressu til tess at prógva at tey eru tíni</translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Fíl</translation>
+ </message>
+ <message>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Stillingar</translation>
+ </message>
+ <message>
+ <source>&amp;Help</source>
+ <translation type="unfinished">&amp;Hjálp</translation>
+ </message>
+ <message numerus="yes">
+ <source>Processed %n block(s) of transaction history.</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>%1 behind</source>
+ <translation type="unfinished">%1 aftanfyri</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Villa</translation>
+ </message>
+ <message>
+ <source>Warning</source>
+ <translation type="unfinished">Ávaring</translation>
+ </message>
+ <message>
+ <source>Up to date</source>
+ <translation type="unfinished">Javnsettur</translation>
+ </message>
+ <message>
+ <source>Ctrl+Q</source>
+ <translation type="unfinished">CTRL+Q</translation>
+ </message>
+ <message>
+ <source>Ctrl+M</source>
+ <translation type="unfinished">CTRL+M</translation>
+ </message>
+ <message>
+ <source>%1 client</source>
+ <translation type="unfinished">%1 viðskiftari</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n active connection(s) to Bitcoin network.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">
+ <numerusform>%n virkið samband til Bitcoin netið.</numerusform>
+ <numerusform>%n virkin sambond til Bitcoin netið.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">Óvirkja net-virksemið.</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">Virkja net-virksemið.</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Villa: %1</translation>
+ </message>
+ <message>
+ <source>Warning: %1</source>
+ <translation type="unfinished">Ávaring: %1</translation>
+ </message>
+ <message>
+ <source>Label: %1
+</source>
+ <translation type="unfinished">Spjaldur: %1
+</translation>
+ </message>
+ <message>
+ <source>Address: %1
+</source>
+ <translation type="unfinished">Adressa: %1
+</translation>
+ </message>
+ </context>
+<context>
+ <name>CoinControlDialog</name>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Mongd:</translation>
+ </message>
+ <message>
+ <source>Bytes:</source>
+ <translation type="unfinished">Byte:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Upphædd:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">Vekslipeningur:</translation>
+ </message>
+ <message>
+ <source>(un)select all</source>
+ <translation type="unfinished">(frá)vel alt</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Upphædd</translation>
+ </message>
+ <message>
+ <source>Copy amount</source>
+ <translation type="unfinished">Avrita mongd</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Avrita adressu</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">Avrita &amp;spjaldur</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">Avrita &amp;upphædd</translation>
+ </message>
+ <message>
+ <source>Copy quantity</source>
+ <translation type="unfinished">Avrita mongd</translation>
+ </message>
+ <message>
+ <source>Copy bytes</source>
+ <translation type="unfinished">Avrita být</translation>
+ </message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">Avrita vekslipening</translation>
+ </message>
+ <message>
+ <source>Can vary +/- %1 satoshi(s) per input.</source>
+ <translation type="unfinished">Kann vera ymiskt +/- %1 satoshi fyri hvørt ískoyti.</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(einki spjaldur)</translation>
+ </message>
+ <message>
+ <source>change from %1 (%2)</source>
+ <translation type="unfinished">vekslipeningur frá %1 (%2)</translation>
+ </message>
+ <message>
+ <source>(change)</source>
+ <translation type="unfinished">(vekslipeningur)</translation>
+ </message>
+</context>
+<context>
+ <name>CreateWalletDialog</name>
+ <message>
+ <source>Advanced Options</source>
+ <translation type="unfinished">Víðkaðar stillingar</translation>
+ </message>
+ </context>
+<context>
+ <name>EditAddressDialog</name>
+ <message>
+ <source>Edit Address</source>
+ <translation type="unfinished">Broyt adressu</translation>
+ </message>
+ <message>
+ <source>&amp;Label</source>
+ <translation type="unfinished">&amp;Spjaldur</translation>
+ </message>
+ <message>
+ <source>The label associated with this address list entry</source>
+ <translation type="unfinished">Spjaldrið knýtt at hesi adressuni í adressuskránni</translation>
+ </message>
+ <message>
+ <source>&amp;Address</source>
+ <translation type="unfinished">&amp;Adressa</translation>
+ </message>
+ </context>
+<context>
+ <name>FreespaceChecker</name>
+ <message>
+ <source>name</source>
+ <translation type="unfinished">navn</translation>
+ </message>
+ </context>
+<context>
+ <name>Intro</name>
+ <message numerus="yes">
+ <source>%n GB of space available</source>
+ <translation type="unfinished">
+ <numerusform>%n GB av goymsluplássi tøkt</numerusform>
+ <numerusform>%n GB av goymsluplássi tøkt</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(of %n GB needed)</source>
+ <translation type="unfinished">
+ <numerusform>(av %n GB ið tørvur er á)</numerusform>
+ <numerusform>(av %n GB ið tørvur er á)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(%n GB needed for full chain)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Approximately %1 GB of data will be stored in this directory.</source>
+ <translation type="unfinished">Á leið %1 GB av dátum verða goymd í hesi fíluskránni.</translation>
+ </message>
+ <message numerus="yes">
+ <source>(sufficient to restore backups %n day(s) old)</source>
+ <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Villa</translation>
+ </message>
+ <message>
+ <source>Welcome</source>
+ <translation type="unfinished">Vælkomin</translation>
+ </message>
+ <message>
+ <source>Welcome to %1.</source>
+ <translation type="unfinished">Vælkomin til %1.</translation>
+ </message>
+ <message>
+ <source> GB</source>
+ <translation type="unfinished">GB</translation>
+ </message>
+ <message>
+ <source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
+ <translation type="unfinished">Hendan innleiðandi stevjavningin er sera krevjandi, og kann avdúka trupulleikar, við tólbúnaðinum í teldu tíni, ið tú annars ikki hevur varnast. %1 heldur á fram at takað niður, hvørja ferð %1 verður koyrt.</translation>
+ </message>
+ </context>
+<context>
+ <name>HelpMessageDialog</name>
+ <message>
+ <source>About %1</source>
+ <translation type="unfinished">Um %1</translation>
+ </message>
+ </context>
+<context>
+ <name>ShutdownWindow</name>
+ <message>
+ <source>%1 is shutting down…</source>
+ <translation type="unfinished">%1 letur aftur...</translation>
+ </message>
+ </context>
+<context>
+ <name>ModalOverlay</name>
+ <message>
+ <source>Progress</source>
+ <translation type="unfinished">Gongd</translation>
+ </message>
+ <message>
+ <source>Progress increase per hour</source>
+ <translation type="unfinished">Framgongd um tíman</translation>
+ </message>
+ <message>
+ <source>Estimated time left until synced</source>
+ <translation type="unfinished">Mett tíð eftir til fulla stevjavnan</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">Loka</translation>
+ </message>
+ </context>
+<context>
+ <name>OptionsDialog</name>
+ <message>
+ <source>Options</source>
+ <translation type="unfinished">Stillingar</translation>
+ </message>
+ <message>
+ <source>Automatically start %1 after logging in to the system.</source>
+ <translation type="unfinished">Koyr %1 sjálvvirkandi eftir innritan á stýrikervið</translation>
+ </message>
+ <message>
+ <source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
+ <translation type="unfinished">Fullfíggja leið til eitt %1 sambæriligt skeljarrit (t.d. C:\Downloads\hwi.exe ella /Users/you/Downloads/hwi.py). Gev gætur: Illbúnaður kann stjala tín pening!</translation>
+ </message>
+ <message>
+ <source>Open Configuration File</source>
+ <translation type="unfinished">Lat upp uppsetanarfíl</translation>
+ </message>
+ <message>
+ <source>Reset all client options to default.</source>
+ <translation type="unfinished">Endurstilla allar viðskiftarastillingar til sjálvsettar.</translation>
+ </message>
+ <message>
+ <source>&amp;Reset Options</source>
+ <translation type="unfinished">&amp;Endurstilla stillingar</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
+ <translation type="unfinished">Sjálvvirkandi upplating av Bicoin viðskiftara porturinum á beinaranum. Hetta virkar bert um UPnP er virkja í beinaranum, á netinum tú brúkar.</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
+ <translation type="unfinished">Sjálvvirkandi upplating av Bicoin viðskiftara porturinum á beinaranum. Hetta virkar bert um NAT-PMP er virkja í beinaranum, á netinum tú brúkar. Ytra porturnummari kann vera tilvildarligt.</translation>
+ </message>
+ <message>
+ <source>&amp;Port:</source>
+ <translation type="unfinished">&amp;Portur:</translation>
+ </message>
+ <message>
+ <source>User Interface &amp;language:</source>
+ <translation type="unfinished">Mál á nýtaramóti:</translation>
+ </message>
+ <message>
+ <source>The user interface language can be set here. This setting will take effect after restarting %1.</source>
+ <translation type="unfinished">Her kann mál á nýtaramóti ásetast. Stillingin hevur virknað eftir at %1 er endurbyrja.</translation>
+ </message>
+ <message>
+ <source>&amp;Cancel</source>
+ <translation type="unfinished">&amp;Avlýs</translation>
+ </message>
+ <message>
+ <source>default</source>
+ <translation type="unfinished">sjálvsett</translation>
+ </message>
+ <message>
+ <source>Confirm options reset</source>
+ <extracomment>Window title text of pop-up window shown when the user has chosen to reset options.</extracomment>
+ <translation type="unfinished">Vátta endurstilling av stillingum</translation>
+ </message>
+ <message>
+ <source>Client restart required to activate changes.</source>
+ <extracomment>Text explaining that the settings changed will not come into effect until the client is restarted.</extracomment>
+ <translation type="unfinished">Endurbyrjan av viðskiftara kravd fyri at virkja broyting(ar).</translation>
+ </message>
+ <message>
+ <source>Client will be shut down. Do you want to proceed?</source>
+ <extracomment>Text asking the user to confirm if they would like to proceed with a client shutdown.</extracomment>
+ <translation type="unfinished">Viðskiftari verður slóktur. Ynskir tú at halda áfram?</translation>
+ </message>
+ <message>
+ <source>Configuration options</source>
+ <extracomment>Window title text of pop-up box that allows opening up of configuration file.</extracomment>
+ <translation type="unfinished">Uppsetanarstillingar</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">Avlýs</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Villa</translation>
+ </message>
+ <message>
+ <source>The configuration file could not be opened.</source>
+ <translation type="unfinished">Innlesan av uppsetanarfílu miseydnaðist.</translation>
+ </message>
+ <message>
+ <source>This change would require a client restart.</source>
+ <translation type="unfinished">Broytingin krevur endurbyrjan av viðskiftaranum.</translation>
+ </message>
+ </context>
+<context>
+ <name>OverviewPage</name>
+ <message>
+ <source>Available:</source>
+ <translation type="unfinished">Tókt:</translation>
+ </message>
+ <message>
+ <source>Pending:</source>
+ <translation type="unfinished">Óváttað:</translation>
+ </message>
+ </context>
+<context>
+ <name>PSBTOperationsDialog</name>
+ <message>
+ <source>Save…</source>
+ <translation type="unfinished">Goym...</translation>
+ </message>
+ <message>
+ <source> * Sends %1 to %2</source>
+ <translation type="unfinished">* Sendir %1 til %2</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">egin adressa</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">Samlað upphædd</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">ella</translation>
+ </message>
+ </context>
+<context>
+ <name>PeerTableModel</name>
+ <message>
+ <source>Age</source>
+ <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
+ <translation type="unfinished">Aldur</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have received from the peer.</extracomment>
+ <translation type="unfinished">Móttikið</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">Adressa</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
+ <translation type="unfinished">Slag</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <extracomment>Title of Peers Table column which states the network the peer connected through.</extracomment>
+ <translation type="unfinished">Net</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An Inbound Connection from a Peer.</extracomment>
+ <translation type="unfinished">Inngangandi</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An Outbound Connection to a Peer.</extracomment>
+ <translation type="unfinished">Útgangandi</translation>
+ </message>
+</context>
+<context>
+ <name>QRImageWidget</name>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">&amp;Goym mynd...</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Image</source>
+ <translation type="unfinished">&amp;Avrita mynd</translation>
+ </message>
+ <message>
+ <source>Save QR Code</source>
+ <translation type="unfinished">Goym QR kotu</translation>
+ </message>
+ <message>
+ <source>PNG Image</source>
+ <extracomment>Expanded name of the PNG file format. See: https://en.wikipedia.org/wiki/Portable_Network_Graphics.</extracomment>
+ <translation type="unfinished">PNG mynd</translation>
+ </message>
+</context>
+<context>
+ <name>RPCConsole</name>
+ <message>
+ <source>Client version</source>
+ <translation type="unfinished">Viðskiftaraútgáva</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <translation type="unfinished">Net</translation>
+ </message>
+ <message>
+ <source>Name</source>
+ <translation type="unfinished">Navn</translation>
+ </message>
+ <message>
+ <source>Number of connections</source>
+ <translation type="unfinished">Tal av sambondum</translation>
+ </message>
+ <message>
+ <source>Memory usage</source>
+ <translation type="unfinished">Minnisnýtsla</translation>
+ </message>
+ <message>
+ <source>&amp;Reset</source>
+ <translation type="unfinished">Tómstilla</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <translation type="unfinished">Móttikið</translation>
+ </message>
+ <message>
+ <source>Version</source>
+ <translation type="unfinished">Útgáva</translation>
+ </message>
+ <message>
+ <source>Ping Time</source>
+ <translation type="unfinished">Ping tíð</translation>
+ </message>
+ <message>
+ <source>Debug log file</source>
+ <translation type="unfinished">Gerðalistafíla til villukemban</translation>
+ </message>
+ <message>
+ <source>In:</source>
+ <translation type="unfinished">Niður:</translation>
+ </message>
+ <message>
+ <source>Out:</source>
+ <translation type="unfinished">Upp:</translation>
+ </message>
+ <message>
+ <source>Ctrl++</source>
+ <extracomment>Main shortcut to increase the RPC console font size.</extracomment>
+ <translation type="unfinished">CTRL++</translation>
+ </message>
+ <message>
+ <source>Ctrl+=</source>
+ <extracomment>Secondary shortcut to increase the RPC console font size.</extracomment>
+ <translation type="unfinished">CTRL+=</translation>
+ </message>
+ <message>
+ <source>Ctrl+-</source>
+ <extracomment>Main shortcut to decrease the RPC console font size.</extracomment>
+ <translation type="unfinished">CTRL+-</translation>
+ </message>
+ <message>
+ <source>Ctrl+_</source>
+ <extracomment>Secondary shortcut to decrease the RPC console font size.</extracomment>
+ <translation type="unfinished">CTRL+_</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <extracomment>Context menu action to copy the address of a peer.</extracomment>
+ <translation type="unfinished">&amp;Avrita adressu</translation>
+ </message>
+ <message>
+ <source>1 &amp;hour</source>
+ <translation type="unfinished">1 &amp;tíma</translation>
+ </message>
+ <message>
+ <source>1 d&amp;ay</source>
+ <translation type="unfinished">1 &amp;dag</translation>
+ </message>
+ <message>
+ <source>1 &amp;week</source>
+ <translation type="unfinished">1 &amp;viku</translation>
+ </message>
+ <message>
+ <source>1 &amp;year</source>
+ <translation type="unfinished">1 &amp;ár</translation>
+ </message>
+ <message>
+ <source>Ctrl+I</source>
+ <translation type="unfinished">CTRL+I</translation>
+ </message>
+ <message>
+ <source>Ctrl+T</source>
+ <translation type="unfinished">CTRL+T</translation>
+ </message>
+ <message>
+ <source>Ctrl+N</source>
+ <translation type="unfinished">CTRL+N</translation>
+ </message>
+ <message>
+ <source>Ctrl+P</source>
+ <translation type="unfinished">CTRL+P</translation>
+ </message>
+ <message>
+ <source>Executing…</source>
+ <extracomment>A console message indicating an entered command is currently being executed.</extracomment>
+ <translation type="unfinished">Innir...</translation>
+ </message>
+ <message>
+ <source>via %1</source>
+ <translation type="unfinished">umvegis %1</translation>
+ </message>
+ <message>
+ <source>Yes</source>
+ <translation type="unfinished">Ja</translation>
+ </message>
+ <message>
+ <source>No</source>
+ <translation type="unfinished">Nei</translation>
+ </message>
+ <message>
+ <source>To</source>
+ <translation type="unfinished">Til</translation>
+ </message>
+ <message>
+ <source>From</source>
+ <translation type="unfinished">Frá</translation>
+ </message>
+ </context>
+<context>
+ <name>ReceiveCoinsDialog</name>
+ <message>
+ <source>&amp;Label:</source>
+ <translation type="unfinished">&amp;Spjaldur:</translation>
+ </message>
+ <message>
+ <source>Clear</source>
+ <translation type="unfinished">Tómstilla</translation>
+ </message>
+ <message>
+ <source>Show</source>
+ <translation type="unfinished">Vís</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Avrita adressu</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">Avrita &amp;spjaldur</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">Avrita &amp;upphædd</translation>
+ </message>
+ </context>
+<context>
+ <name>ReceiveRequestDialog</name>
+ <message>
+ <source>Address:</source>
+ <translation type="unfinished">Adressu:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Upphædd:</translation>
+ </message>
+ <message>
+ <source>Label:</source>
+ <translation type="unfinished">Spjaldur:</translation>
+ </message>
+ <message>
+ <source>Message:</source>
+ <translation type="unfinished">Boð:</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Address</source>
+ <translation type="unfinished">Avrita &amp;adressu</translation>
+ </message>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">&amp;Goym mynd...</translation>
+ </message>
+ </context>
+<context>
+ <name>RecentRequestsTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Spjaldur</translation>
+ </message>
+ <message>
+ <source>Message</source>
+ <translation type="unfinished">Boð</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(einki spjaldur)</translation>
+ </message>
+ <message>
+ <source>(no message)</source>
+ <translation type="unfinished">(eingi boð)</translation>
+ </message>
+ </context>
+<context>
+ <name>SendCoinsDialog</name>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Mongd:</translation>
+ </message>
+ <message>
+ <source>Bytes:</source>
+ <translation type="unfinished">Byte:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Upphædd:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">Vekslipeningur:</translation>
+ </message>
+ <message>
+ <source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source>
+ <translation type="unfinished">Um hetta er virkja, men teigurin til adressu fyri vekslipening er tómur ella ógildigur, so verður vekslipeningurin sendur til eina ný-myndaða adressu.</translation>
+ </message>
+ <message>
+ <source>Custom change address</source>
+ <translation type="unfinished">Adressa til vekslipening</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">Loka</translation>
+ </message>
+ <message>
+ <source>Recommended:</source>
+ <translation type="unfinished">Viðmælt:</translation>
+ </message>
+ <message>
+ <source>Send to multiple recipients at once</source>
+ <translation type="unfinished">Send til fleiri móttakarar í einum</translation>
+ </message>
+ <message>
+ <source>Choose…</source>
+ <translation type="unfinished">Vel...</translation>
+ </message>
+ <message>
+ <source>Clear &amp;All</source>
+ <translation type="unfinished">Tómstilla &amp;alt</translation>
+ </message>
+ <message>
+ <source>Copy quantity</source>
+ <translation type="unfinished">Avrita mongd</translation>
+ </message>
+ <message>
+ <source>Copy amount</source>
+ <translation type="unfinished">Avrita mongd</translation>
+ </message>
+ <message>
+ <source>Copy bytes</source>
+ <translation type="unfinished">Avrita být</translation>
+ </message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">Avrita vekslipening</translation>
+ </message>
+ <message>
+ <source>Sign on device</source>
+ <extracomment>"device" usually means a hardware wallet.</extracomment>
+ <translation type="unfinished">Undirrita á eind</translation>
+ </message>
+ <message>
+ <source>%1 to '%2'</source>
+ <translation type="unfinished">%1 til '%2'</translation>
+ </message>
+ <message>
+ <source>%1 to %2</source>
+ <translation type="unfinished">%1 til %2</translation>
+ </message>
+ <message>
+ <source>Sign failed</source>
+ <translation type="unfinished">Undirritan miseydnaðist</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">ella</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">Samlað upphædd</translation>
+ </message>
+ <message>
+ <source>The recipient address is not valid. Please recheck.</source>
+ <translation type="unfinished">Móttakara adressan er ógildig. Vinaliga eftirkanna.</translation>
+ </message>
+ <message numerus="yes">
+ <source>Estimated to begin confirmation within %n block(s).</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Warning: Invalid Bitcoin address</source>
+ <translation type="unfinished">Ávaring: Ógildig Bitcoin adressa</translation>
+ </message>
+ <message>
+ <source>Warning: Unknown change address</source>
+ <translation type="unfinished">Ávaring: Ókend adressa til vekslipening</translation>
+ </message>
+ <message>
+ <source>Confirm custom change address</source>
+ <translation type="unfinished">Váttað adressu til vekslipening</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(einki spjaldur)</translation>
+ </message>
+</context>
+<context>
+ <name>SendCoinsEntry</name>
+ <message>
+ <source>&amp;Label:</source>
+ <translation type="unfinished">&amp;Spjaldur:</translation>
+ </message>
+ <message>
+ <source>Choose previously used address</source>
+ <translation type="unfinished">Brúka adressuna ið frammanundan var brúkt</translation>
+ </message>
+ <message>
+ <source>Alt+A</source>
+ <translation type="unfinished">ALT+A</translation>
+ </message>
+ <message>
+ <source>Alt+P</source>
+ <translation type="unfinished">ALT+P</translation>
+ </message>
+ <message>
+ <source>Message:</source>
+ <translation type="unfinished">Boð:</translation>
+ </message>
+ </context>
+<context>
+ <name>SignVerifyMessageDialog</name>
+ <message>
+ <source>Signatures - Sign / Verify a Message</source>
+ <translation type="unfinished">Undirskriftir - Undirrita / Vátta eini boð</translation>
+ </message>
+ <message>
+ <source>&amp;Sign Message</source>
+ <translation type="unfinished">&amp;Undirrita Boð</translation>
+ </message>
+ <message>
+ <source>You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source>
+ <translation type="unfinished">Tú kann skriva undir boð/sáttmálar við tínum adressum, fyri at prógva at tú kanst móttaka bitcoin sendar til tær. Ver ansin so tú ikki skrivar undir nakað ógreitt ella tilvildarligt, tí fysking-álop kunnu royna at snýta teg til at latað tín samleika til tey. Undirrita einans nágreiniligar útsagnir ið tú tekur undir við.</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address to sign the message with</source>
+ <translation type="unfinished">Bitcoin adressan at undirskriva boðini við</translation>
+ </message>
+ <message>
+ <source>Choose previously used address</source>
+ <translation type="unfinished">Brúka adressuna ið frammanundan var brúkt</translation>
+ </message>
+ <message>
+ <source>Alt+A</source>
+ <translation type="unfinished">ALT+A</translation>
+ </message>
+ <message>
+ <source>Alt+P</source>
+ <translation type="unfinished">ALT+P</translation>
+ </message>
+ <message>
+ <source>Enter the message you want to sign here</source>
+ <translation type="unfinished">Inntøppa boðini, tú ynskir at undirrita, her</translation>
+ </message>
+ <message>
+ <source>Signature</source>
+ <translation type="unfinished">Undirskrift</translation>
+ </message>
+ <message>
+ <source>Sign the message to prove you own this Bitcoin address</source>
+ <translation type="unfinished">Undirskriva boðini fyri at prógva at Bitcoin-adressan er tín</translation>
+ </message>
+ <message>
+ <source>Sign &amp;Message</source>
+ <translation type="unfinished">&amp;Undirrita boð</translation>
+ </message>
+ <message>
+ <source>Clear &amp;All</source>
+ <translation type="unfinished">Tómstilla &amp;alt</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address the message was signed with</source>
+ <translation type="unfinished">Bitcoin-adressan ið undirskrivaði boðini</translation>
+ </message>
+ <message>
+ <source>The signed message to verify</source>
+ <translation type="unfinished">Undirritað boð at vátta</translation>
+ </message>
+ <message>
+ <source>Click "Sign Message" to generate signature</source>
+ <translation type="unfinished">Trýst á "Undirrita boð" fyri at gera eina undirskrift</translation>
+ </message>
+ <message>
+ <source>No error</source>
+ <translation type="unfinished">Eingin villa</translation>
+ </message>
+ <message>
+ <source>Message signing failed.</source>
+ <translation type="unfinished">Undirritan av boðum miseydnaðist.</translation>
+ </message>
+ <message>
+ <source>Message signed.</source>
+ <translation type="unfinished">Boð undirritað</translation>
+ </message>
+ <message>
+ <source>The signature could not be decoded.</source>
+ <translation type="unfinished">Undirskriftin er ógildig.</translation>
+ </message>
+ <message>
+ <source>Please check the signature and try again.</source>
+ <translation type="unfinished">Vinaliga kanna undirskriftina og royn aftur.</translation>
+ </message>
+ <message>
+ <source>The signature did not match the message digest.</source>
+ <translation type="unfinished">Undirskriftin samsvaraði ikki við innihaldi í boðnum.</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionDesc</name>
+ <message>
+ <source>Source</source>
+ <translation type="unfinished">Kelda</translation>
+ </message>
+ <message>
+ <source>From</source>
+ <translation type="unfinished">Frá</translation>
+ </message>
+ <message>
+ <source>To</source>
+ <translation type="unfinished">Til</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">egin adressa</translation>
+ </message>
+ <message>
+ <source>label</source>
+ <translation type="unfinished">spjaldur</translation>
+ </message>
+ <message numerus="yes">
+ <source>matures in %n more block(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Message</source>
+ <translation type="unfinished">Boð</translation>
+ </message>
+ <message>
+ <source>Comment</source>
+ <translation type="unfinished">Viðmerking</translation>
+ </message>
+ <message>
+ <source>Inputs</source>
+ <translation type="unfinished">Ískoytir</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Upphædd</translation>
+ </message>
+ <message>
+ <source>true</source>
+ <translation type="unfinished">satt</translation>
+ </message>
+ <message>
+ <source>false</source>
+ <translation type="unfinished">ósatt</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionDescDialog</name>
+ <message>
+ <source>Details for %1</source>
+ <translation type="unfinished">Nágreinilig lýsing um %1</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionTableModel</name>
+ <message>
+ <source>Type</source>
+ <translation type="unfinished">Slag</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Spjaldur</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">Sent til</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(einki spjaldur)</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionView</name>
+ <message>
+ <source>Today</source>
+ <translation type="unfinished">Í dag</translation>
+ </message>
+ <message>
+ <source>This week</source>
+ <translation type="unfinished">Hesa vikuna</translation>
+ </message>
+ <message>
+ <source>This month</source>
+ <translation type="unfinished">Hendan mánaðin</translation>
+ </message>
+ <message>
+ <source>Last month</source>
+ <translation type="unfinished">Síðsta mánað</translation>
+ </message>
+ <message>
+ <source>This year</source>
+ <translation type="unfinished">Í ár</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">Sent til</translation>
+ </message>
+ <message>
+ <source>Min amount</source>
+ <translation type="unfinished">Minstaupphædd</translation>
+ </message>
+ <message>
+ <source>Range…</source>
+ <translation type="unfinished">Talstrekki...</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Avrita adressu</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">Avrita &amp;spjaldur</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">Avrita &amp;upphædd</translation>
+ </message>
+ <message>
+ <source>&amp;Edit address label</source>
+ <translation type="unfinished">&amp;Broyt adressuspjaldur</translation>
+ </message>
+ <message>
+ <source>Show in %1</source>
+ <extracomment>Transactions table context menu action to show the selected transaction in a third-party block explorer. %1 is a stand-in argument for the URL of the explorer.</extracomment>
+ <translation type="unfinished">Vís í %1</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <translation type="unfinished">Slag</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Spjaldur</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Adressa</translation>
+ </message>
+ <message>
+ <source>Range:</source>
+ <translation type="unfinished">Talstrekki:</translation>
+ </message>
+ <message>
+ <source>to</source>
+ <translation type="unfinished">til</translation>
+ </message>
+</context>
+<context>
+ <name>WalletFrame</name>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Villa</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletModel</name>
+ <message>
+ <source>Increase:</source>
+ <translation type="unfinished">Øking:</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletView</name>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">Avlýs</translation>
+ </message>
+</context>
+<context>
+ <name>bitcoin-core</name>
+ <message>
+ <source>The %s developers</source>
+ <translation type="unfinished">%smennararnir</translation>
+ </message>
+ <message>
+ <source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
+ <translation type="unfinished">%s umbøn at lurta á portur %u. Hetta portrið er tulkað "óhóskandi" og tí er ósannlíkt at nakar viðskiftari sambindur í tað. Sí lista yvir "óhóskandi" portur og nágreiniligari upplýsingar í doc/p2p-bad-ports.md.</translation>
+ </message>
+ <message>
+ <source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
+ <translation type="unfinished">Vinaliga tryggja at dagfesting og tíð, í teldu tíni, eru røtt! Er klokkan skeiv virkar %s ikki sum ætlað.</translation>
+ </message>
+ <message>
+ <source>%s is set very high!</source>
+ <translation type="unfinished">Ásetingin %s er sera høgt!</translation>
+ </message>
+ <message>
+ <source>-maxmempool must be at least %d MB</source>
+ <translation type="unfinished">-maxmempool skal vera í minsta lagi %d MB</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
+ <translation type="unfinished">Útgangandi sambond eru avmarkaði til CJDNS (-onlynet=cjdns) men -cjdnsreachable er ikki ásett.</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to i2p (-onlynet=i2p) but -i2psam is not provided</source>
+ <translation type="unfinished">Útgangandi sambond avmarkaði til i2p (-onlynet=i2p) men -i2psam er ikki ásett.</translation>
+ </message>
+ <message>
+ <source>Error loading %s</source>
+ <translation type="unfinished">Villa við innlesan %s</translation>
+ </message>
+ <message>
+ <source>Error reading configuration file: %s</source>
+ <translation type="unfinished">Villa við innlesing av uppsetanarfílu: %s</translation>
+ </message>
+ <message>
+ <source>Error reading from database, shutting down.</source>
+ <translation type="unfinished">Villa við innlesan av dátugrunni. Letur aftur.</translation>
+ </message>
+ <message>
+ <source>Error: Disk space is low for %s</source>
+ <translation type="unfinished">Villa: Tøkt disk goymslupláss og lítið til %s</translation>
+ </message>
+ <message>
+ <source>Error: Got key that was not hex: %s</source>
+ <translation type="unfinished">Villa: Fekk lykil ið ikki er sekstandatal: %s</translation>
+ </message>
+ <message>
+ <source>Error: Got value that was not hex: %s</source>
+ <translation type="unfinished">Villa: Læs virði ið ikki er sekstandatal: %s</translation>
+ </message>
+ <message>
+ <source>Error: No %s addresses available.</source>
+ <translation type="unfinished">Villa: Ongar %s adressur tøkar.</translation>
+ </message>
+ <message>
+ <source>Error: Unable to begin reading all records in the database</source>
+ <translation type="unfinished">Villa: Bar ikki til at byrja at lesa allar skrásetingar í dátugrunninum</translation>
+ </message>
+ <message>
+ <source>Error: Unable to parse version %u as a uint32_t</source>
+ <translation type="unfinished">Villa: Bar ikki til at tulkað útgávu %u sum uint32_t</translation>
+ </message>
+ <message>
+ <source>Error: Unable to read all records in the database</source>
+ <translation type="unfinished">Villa: Bar ikki til at lesa allar skrásetingar í dátugrunninum</translation>
+ </message>
+ <message>
+ <source>Failed to listen on any port. Use -listen=0 if you want this.</source>
+ <translation type="unfinished">Miseydnaðist at lurta á portri. Brúka -listen=0 um tú ynskir hetta.</translation>
+ </message>
+ <message>
+ <source>Listening for incoming connections failed (listen returned error %s)</source>
+ <translation type="unfinished">Lurtingin eftir inngangandi sambondum miseydnaðist (lurtingin gav villuna %s)</translation>
+ </message>
+ <message>
+ <source>No addresses available</source>
+ <translation type="unfinished">Ongar adressur tøkar</translation>
+ </message>
+ <message>
+ <source>The source code is available from %s.</source>
+ <translation type="unfinished">Keldukotan er tøk á %s.</translation>
+ </message>
+ <message>
+ <source>The specified config file %s does not exist</source>
+ <translation type="unfinished">Ásetta uppsetanarfílan %s finst ikki</translation>
+ </message>
+ <message>
+ <source>This is experimental software.</source>
+ <translation type="unfinished">Hetta er royndar-ritbúnaður.</translation>
+ </message>
+ <message>
+ <source>Settings file could not be read</source>
+ <translation type="unfinished">Lesing av uppsetanarfílu miseydnaðist.</translation>
+ </message>
+ <message>
+ <source>Settings file could not be written</source>
+ <translation type="unfinished">Skriving av uppsetanarfílu miseydnaðist</translation>
+ </message>
+</context>
+</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_fr.ts b/src/qt/locale/bitcoin_fr.ts
index ed11aecf53..f4d0ccdc5c 100644
--- a/src/qt/locale/bitcoin_fr.ts
+++ b/src/qt/locale/bitcoin_fr.ts
@@ -15,7 +15,7 @@
</message>
<message>
<source>Copy the currently selected address to the system clipboard</source>
- <translation type="unfinished">Copier l’adresse sélectionnée actuellement dans le presse-papiers</translation>
+ <translation type="unfinished">Copier l’adresse sélectionnée dans le presse-papiers</translation>
</message>
<message>
<source>&amp;Copy</source>
@@ -27,7 +27,7 @@
</message>
<message>
<source>Delete the currently selected address from the list</source>
- <translation type="unfinished">Supprimer l’adresse sélectionnée actuellement de la liste</translation>
+ <translation type="unfinished">Supprimer l’adresse sélectionnée de la liste</translation>
</message>
<message>
<source>Enter address or label to search</source>
@@ -55,19 +55,11 @@
</message>
<message>
<source>C&amp;hoose</source>
- <translation type="unfinished">C&amp;hoisir</translation>
- </message>
- <message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adresses d’envoi</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adresses de réception</translation>
+ <translation type="unfinished">&amp;Choisir</translation>
</message>
<message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
- <translation type="unfinished">Ce sont vos adresses Bitcoin pour envoyer des paiements. Vérifiez toujours le montant et l’adresse du destinataire avant d’envoyer des pièces.</translation>
+ <translation type="unfinished">Ce sont vos adresses Bitcoin pour envoyer des paiements. Vérifiez toujours le montant et l’adresse de réception avant d’envoyer des pièces.</translation>
</message>
<message>
<source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
@@ -81,7 +73,7 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
</message>
<message>
<source>Copy &amp;Label</source>
- <translation type="unfinished">Copier l’é&amp;tiquette</translation>
+ <translation type="unfinished">Copier &amp;l’étiquette</translation>
</message>
<message>
<source>&amp;Edit</source>
@@ -94,7 +86,7 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<message>
<source>Comma separated file</source>
<extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">Fichier séparé par des virgules</translation>
+ <translation type="unfinished">Fichier avec séparateur virgule</translation>
</message>
<message>
<source>There was an error trying to save the address list to %1. Please try again.</source>
@@ -102,6 +94,14 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Une erreur est survenue lors de l'enregistrement de la liste d'adresses vers %1. Veuillez réessayer plus tard.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Adresses d’envois - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Adresses de réceptions - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Échec d’exportation</translation>
</message>
@@ -165,7 +165,7 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
</message>
<message>
<source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
- <translation type="unfinished">Avertissement : Si vous chiffrez votre porte-monnaie et perdez votre phrase de passe, vous &lt;b&gt;PERDREZ TOUS VOS BITCOINS&lt;/b&gt; !</translation>
+ <translation type="unfinished">Avertissement : Si vous chiffrez votre porte-monnaie et perdez votre phrase de passe, vous allez &lt;b&gt;PERDRE TOUS VOS BITCOINS&lt;/b&gt; !</translation>
</message>
<message>
<source>Are you sure you wish to encrypt your wallet?</source>
@@ -713,8 +713,16 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Fermer tous les porte-monnaie</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrer un portefeuilles </translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">Afficher le message d’aide de %1 pour obtenir la liste des options possibles de ligne de commande Bitcoin</translation>
+ <translation type="unfinished">Afficher le message d’aide de %1 pour obtenir la liste des options possibles en ligne de commande Bitcoin</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -809,6 +817,14 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">En-têtes de pré-synchronisation (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Erreur lors de la création du portefeuille</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Impossible de créer un nouveau portefeuilles, le logiciel a été compilé sans support pour sqlite (nécessaire pour le portefeuille décris) </translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Erreur : %1</translation>
</message>
@@ -915,10 +931,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Frais :</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Poussière :</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Après les frais :</translation>
</message>
@@ -999,10 +1011,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Copier les octets</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copier la poussière</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copier la monnaie</translation>
</message>
@@ -1011,18 +1019,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">(%1 verrouillée)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">oui</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">non</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Cette étiquette devient rouge si un destinataire reçoit un montant inférieur au seuil actuel de poussière.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Peut varier +/- %1 satoshi(s) par entrée.</translation>
</message>
@@ -1082,6 +1078,56 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Êtes-vous sûr de vouloir migrer le portefeuille 1 %1 1?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migration du porte-monnaie convertira ce porte-monnaie en un ou plusieurs porte-monnaie de descripteurs. Une nouvelle sauvegarde du porte-monnaie devra être effectuée.
+Si ce porte-monnaie contient des scripts en lecture seule, un nouveau porte-monnaie sera créé contenant ces scripts en lecture seule.
+Si ce porte-monnaie contient des scripts solvables mais non surveillés, un autre nouveau porte-monnaie sera créé contenant ces scripts.
+Le processus de migration créera une sauvegarde du porte-monnaie avant la migration. Ce fichier de sauvegarde sera nommé &lt;nom du porte-monnaie&gt;-&lt;horodatage&gt;.legacy.bak et pourra être trouvé dans le répertoire de ce porte-monnaie. En cas de migration incorrecte, la sauvegarde peut être restaurée avec la fonctionnalité "Restaurer le porte-monnaie".</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migration du portefeuille &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Le porte-monnaie '%1' a été migré avec succès.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Les scripts en mode de visualisation ont été migrés vers un nouveau porte-monnaie nommé '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Les scripts solvables mais non surveillés ont été migrés vers un nouveau porte-monnaie nommé '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">La migration a échoué</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migration réussie</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1164,6 +1210,14 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer un porte-monnaie</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Vous n'êtes qu'à un pas de la création de votre nouveau portefeuille !</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Veuillez fournir un nom et, si désiré, activer toutes les options avancées.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Nom du porte-monnaie</translation>
</message>
@@ -1200,14 +1254,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer un porte-monnaie vide</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Utiliser des descripteurs pour la gestion des scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Porte-monnaie de descripteurs</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Utiliser un appareil externe de signature tel qu’un porte-monnaie matériel. Configurer d’abord le script signataire externe dans les préférences du porte-monnaie.</translation>
</message>
@@ -1220,10 +1266,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilé sans prise en charge de sqlite (requis pour les porte-monnaie de descripteurs)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilé sans prise en charge des signatures externes (requis pour la signature externe)</translation>
@@ -2032,6 +2074,10 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished"> * Envoie %1 à %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">votre adresse</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Impossible de calculer les frais de la transaction ou le montant total de la transaction.</translation>
</message>
@@ -2287,6 +2333,18 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Sélectionnez un pair pour afficher des renseignements détaillés.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">La version de la couche de transport : %1</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">La chaîne d'ID de session BIP324 en hexadécimal, le cas échéant.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID de session</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Si nous relayons des transactions à ce pair.</translation>
</message>
@@ -2500,6 +2558,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Récupération d’adresse sortante : de courte durée, pour solliciter des adresses</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">détection : paires pourrait être v1 ou v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocole de transport non chiffré en texte clair</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: Protocole de transport chiffré BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">nous avons sélectionné le pair comme relais à large bande passante</translation>
</message>
@@ -2899,10 +2972,6 @@ Pour plus de précisions sur cette console, tapez %6.
<translation type="unfinished">Effacer tous les champs du formulaire.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Poussière :</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Choisir…</translation>
</message>
@@ -2979,10 +3048,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Copier les octets</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copier la poussière</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copier la monnaie</translation>
</message>
@@ -3603,10 +3668,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Envoyée à</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Paiement à vous-même</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Miné </translation>
</message>
@@ -3682,10 +3743,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Envoyée à</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">À vous-même</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Miné </translation>
</message>
@@ -3757,7 +3814,7 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<message>
<source>Comma separated file</source>
<extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">Fichier séparé par des virgules</translation>
+ <translation type="unfinished">Fichier avec séparateur virgule</translation>
</message>
<message>
<source>Confirmed</source>
@@ -3963,6 +4020,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">%s est corrompu. Essayez l’outil bitcoin-wallet pour le sauver ou restaurez une sauvegarde.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s a échoué à valider l'état instantané -assumeutxo. Cela indique un problème matériel, ou un bug dans le logiciel, ou une mauvaise modification du logiciel qui a permis de charger un instantané invalide. En conséquence, le nœud s'arrêtera et cessera d'utiliser tout état qui a été construit sur l'instantané, réinitialisant la hauteur de la chaîne de %d à %d. Au prochain redémarrage, le nœud reprendra la synchronisation à partir de %d sans utiliser de données d'instantané. Veuillez signaler cet incident à %s, en précisant comment vous avez obtenu l'instantané. L'état de chaîne d'instantané invalide sera conservé sur le disque au cas où il serait utile pour diagnostiquer le problème qui a causé cette erreur.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s demande d'écouter sur le port %u. Ce port est considéré comme "mauvais" et il est donc peu probable qu'un pair s'y connecte. Voir doc/p2p-bad-ports.md pour plus de détails et une liste complète.</translation>
</message>
@@ -3991,10 +4052,6 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Erreur de chargement du portefeuille. Le portefeuille nécessite le téléchargement de blocs, et le logiciel ne prend pas actuellement en charge le chargement de portefeuilles lorsque les blocs sont téléchargés dans le désordre lors de l'utilisation de snapshots assumeutxo. Le portefeuille devrait pouvoir être chargé avec succès une fois que la synchronisation des nœuds aura atteint la hauteur %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Erreur de lecture de %s. Toutes les clés ont été lues correctement, mais les données de la transaction ou les entrées du carnet d’adresses sont peut-être manquantes ou incorrectes.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Erreur de lecture de %s : soit les données de la transaction manquent soit elles sont incorrectes. Réanalyse du porte-monnaie.</translation>
</message>
@@ -4063,6 +4120,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Élagage : la dernière synchronisation de porte-monnaie va par-delà les données élaguées. Vous devez -reindex (réindexer, télécharger de nouveau toute la chaîne de blocs en cas de nœud élagué)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">La modification de '%s' -&gt; '%s' a échoué. Vous devriez résoudre cela en déplaçant ou en supprimant manuellement le répertoire de snapshot invalide %s, sinon vous rencontrerez la même erreur à nouveau au prochain démarrage.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase : la version %d du schéma de porte-monnaie sqlite est inconnue. Seule la version %d est prise en charge</translation>
</message>
@@ -4071,10 +4132,6 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">La base de données des blocs comprend un bloc qui semble provenir du futur. Cela pourrait être causé par la date et l’heure erronées de votre ordinateur. Ne reconstruisez la base de données des blocs que si vous êtes certain que la date et l’heure de votre ordinateur sont justes.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">La base de données d’indexation des blocs comprend un « txindex » hérité. Pour libérer l’espace disque occupé, exécutez un -reindex complet ou ignorez cette erreur. Ce message d’erreur ne sera pas affiché de nouveau.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Le montant de la transaction est trop bas pour être envoyé une fois que les frais ont été déduits</translation>
</message>
@@ -4111,6 +4168,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Le format de fichier porte-monnaie « %s » indiqué est inconnu. Veuillez soit indiquer « bdb » soit « sqlite ».</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Niveau de journalisation spécifique à la catégorie non pris en charge %1$s=%2$s. Attendu %1$s=&lt;catégorie&gt;:&lt;niveaudejournal&gt;. Catégories valides : %3$s. Niveaux de journalisation valides : %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Le format de la base de données chainstate n'est pas supporté. Veuillez redémarrer avec -reindex-chainstate. Cela reconstruira la base de données chainstate.</translation>
</message>
@@ -4119,6 +4180,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Portefeuille créé avec succès. Le type de portefeuille ancien est en cours de suppression et la prise en charge de la création et de l'ouverture des portefeuilles anciens sera supprimée à l'avenir.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Portefeuille chargé avec succès. Le type de portefeuille existant est obsolète et la prise en charge de la création et de l'ouverture de portefeuilles existants sera supprimée à l'avenir. Les anciens portefeuilles peuvent être migrés vers un portefeuille descripteur avec migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Avertissement : Le format du fichier de vidage de porte-monnaie « %s » ne correspond pas au format « %s » indiqué dans la ligne de commande.</translation>
</message>
@@ -4167,30 +4232,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Impossible d’écrire dans le répertoire de données « %s » ; veuillez vérifier les droits.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La mise à niveau -txindex lancée par une version précédente ne peut pas être achevée. Redémarrez la version précédente ou exécutez un -reindex complet.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%sn'a pas réussi à valider l'état de l'instantané -assumeutxo. Cela indique un problème matériel, un bug dans le logiciel ou une mauvaise modification du logiciel qui a permis le chargement d'une snapshot invalide. En conséquence, le nœud s'arrêtera et cessera d'utiliser tout état construit sur la snapshot, ce qui réinitialisera la taille de la chaîne de %d à %d. Au prochain redémarrage, le nœud reprendra la synchronisation à partir de %d sans utiliser les données de la snapshot. Veuillez signaler cet incident à %s, en indiquant comment vous avez obtenu la snapshot. L'état de chaîne de la snapshot non valide a été laissé sur le disque au cas où il serait utile pour diagnostiquer le problème à l'origine de cette erreur.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s est très élevé ! Des frais aussi importants pourraient être payés sur une seule transaction.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -blockfilterindex. Veuillez désactiver temporairement blockfilterindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire complètement tous les index.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -coinstatsindex. Veuillez désactiver temporairement coinstatsindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire complètement tous les index.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -txindex. Veuillez désactiver temporairement txindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire entièrement tous les index.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Il est impossible d’indiquer des connexions précises et en même temps de demander à addrman de trouver les connexions sortantes.</translation>
</message>
@@ -4199,6 +4244,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Erreur de chargement de %s : le porte-monnaie signataire externe est chargé sans que la prise en charge de signataires externes soit compilée</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Erreur de lecture de %s! Toutes les clés ont été lues correctement, mais les données de transaction ou les métadonnées d'adresse peuvent être manquantes ou incorrectes.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Erreur : Les données du carnet d'adresses du portefeuille ne peuvent pas être identifiées comme appartenant à des portefeuilles migrés</translation>
</message>
@@ -4208,7 +4257,11 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
</message>
<message>
<source>Error: Transaction %s in wallet cannot be identified to belong to migrated wallets</source>
- <translation type="unfinished">Erreur : La transaction %s dans le portefeuille ne peut pas être identifiée comme appartenant aux portefeuilles migrés.</translation>
+ <translation type="unfinished">Erreur : La transaction %s dans le portefeuille ne peut pas être identifiée comme appartenant aux portefeuilles migrés</translation>
+ </message>
+ <message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Échec du calcul des frais de majoration, car les UTXO non confirmés dépendent d'un énorme groupe de transactions non confirmées.</translation>
</message>
<message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
@@ -4281,16 +4334,14 @@ Please try running the latest software version.
<translation type="unfinished">Descripteur non reconnu trouvé. Chargement du portefeuille %s
Le portefeuille a peut-être été créé avec une version plus récente.
-Veuillez essayer d'utiliser la dernière version du logiciel.</translation>
- </message>
- <message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Niveau de consignation spécifique à une catégorie non pris en charge -loglevel=%s. Attendu -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Catégories valides : %s. Niveaux de consignation valides : %s.</translation>
+Veuillez essayer d'utiliser la dernière version du logiciel.
+</translation>
</message>
<message>
<source>
Unable to cleanup failed migration</source>
- <translation type="unfinished">Impossible de corriger l'échec de la migration</translation>
+ <translation type="unfinished">
+Impossible de corriger l'échec de la migration</translation>
</message>
<message>
<source>
@@ -4392,7 +4443,7 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
</message>
<message>
<source>Error: Could not add watchonly tx to watchonly wallet</source>
- <translation type="unfinished">Erreur : Impossible d'ajouter le tx watchonly au portefeuille watchonly</translation>
+ <translation type="unfinished">Erreur : Impossible d'ajouter la transaction watchonly au portefeuille watchonly</translation>
</message>
<message>
<source>Error: Could not delete watchonly transactions</source>
@@ -4412,7 +4463,7 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
</message>
<message>
<source>Error: Failed to create new watchonly wallet</source>
- <translation type="unfinished">Erreur : Echec de la création d'un nouveau porte-monnaie Watchonly</translation>
+ <translation type="unfinished">Erreur : Echec de la création d'un nouveau portefeuille watchonly</translation>
</message>
<message>
<source>Error: Got key that was not hex: %s</source>
@@ -4464,7 +4515,7 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
</message>
<message>
<source>Error: Unable to remove watchonly address book data</source>
- <translation type="unfinished">Erreur : Impossible de supprimer les données du carnet d'adresses en mode veille</translation>
+ <translation type="unfinished">Erreur : Impossible de supprimer les données du carnet d'adresses watchonly</translation>
</message>
<message>
<source>Error: Unable to write record to new wallet</source>
@@ -4479,6 +4530,10 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
<translation type="unfinished">Échec de réanalyse du porte-monnaie lors de l’initialisation</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Échec du démarrage des index, arrêt.</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Échec de vérification de la base de données</translation>
</message>
@@ -4795,8 +4850,12 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
<translation type="unfinished">Les nouvelles règles inconnues sont activées (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Niveau de consignation global non pris en charge -loglevel=%s. Valeurs valides : %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Niveau de journalisation global non pris en charge %s=%s. Valeurs valides : %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates n'est pas pris en charge sur la chaîne %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
@@ -4816,7 +4875,7 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
</message>
<message>
<source>Wallet needed to be rewritten: restart %s to complete</source>
- <translation type="unfinished">Le porte-monnaie devait être réécrit : redémarrer %s pour terminer l’opération.</translation>
+ <translation type="unfinished">Le portefeuille doit être réécrit : redémarrer %s pour terminer</translation>
</message>
<message>
<source>Settings file could not be read</source>
diff --git a/src/qt/locale/bitcoin_fr_CM.ts b/src/qt/locale/bitcoin_fr_CM.ts
index 0d05fe25ed..8c2fd96681 100644
--- a/src/qt/locale/bitcoin_fr_CM.ts
+++ b/src/qt/locale/bitcoin_fr_CM.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">C&amp;hoisir</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adresses d’envoi</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adresses de réception</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ce sont vos adresses Bitcoin pour envoyer des paiements. Vérifiez toujours le montant et l’adresse du destinataire avant d’envoyer des pièces.</translation>
</message>
@@ -102,6 +94,10 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Une erreur est survenue lors de l'enregistrement de la liste d'adresses vers %1. Veuillez réessayer plus tard.</translation>
</message>
<message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Adresses de réceptions - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Échec d’exportation</translation>
</message>
@@ -713,8 +709,16 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Fermer tous les porte-monnaie</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrer un portefeuilles </translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">Afficher le message d’aide de %1 pour obtenir la liste des options possibles de ligne de commande Bitcoin</translation>
+ <translation type="unfinished">Afficher le message d’aide de %1 pour obtenir la liste des options possibles en ligne de commande Bitcoin</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -809,6 +813,14 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">En-têtes de pré-synchronisation (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Erreur lors de la création du portefeuille</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Impossible de créer un nouveau portefeuilles, le logiciel a été compilé sans support pour sqlite (nécessaire pour le portefeuille décris) </translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Erreur : %1</translation>
</message>
@@ -915,10 +927,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Frais :</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Poussière :</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Après les frais :</translation>
</message>
@@ -999,10 +1007,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Copier les octets</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copier la poussière</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copier la monnaie</translation>
</message>
@@ -1011,18 +1015,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">(%1 verrouillée)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">oui</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">non</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Cette étiquette devient rouge si un destinataire reçoit un montant inférieur au seuil actuel de poussière.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Peut varier +/- %1 satoshi(s) par entrée.</translation>
</message>
@@ -1082,6 +1074,53 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migration du porte-monnaie convertira ce porte-monnaie en un ou plusieurs porte-monnaie de descripteurs. Une nouvelle sauvegarde du porte-monnaie devra être effectuée.
+Si ce porte-monnaie contient des scripts en lecture seule, un nouveau porte-monnaie sera créé contenant ces scripts en lecture seule.
+Si ce porte-monnaie contient des scripts solvables mais non surveillés, un autre nouveau porte-monnaie sera créé contenant ces scripts.
+
+Le processus de migration créera une sauvegarde du porte-monnaie avant la migration. Ce fichier de sauvegarde sera nommé &lt;nom du porte-monnaie&gt;-&lt;horodatage&gt;.legacy.bak et pourra être trouvé dans le répertoire de ce porte-monnaie. En cas de migration incorrecte, la sauvegarde peut être restaurée avec la fonctionnalité "Restaurer le porte-monnaie".</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migration du portefeuille &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Le porte-monnaie '%1' a été migré avec succès.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Les scripts en mode de visualisation ont été migrés vers un nouveau porte-monnaie nommé '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Les scripts solvables mais non surveillés ont été migrés vers un nouveau porte-monnaie nommé '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">La migration a échoué</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migration réussie</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1164,6 +1203,14 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer un porte-monnaie</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Vous n'êtes qu'à un pas de la création de votre nouveau portefeuille !</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Veuillez fournir un nom et, si désiré, activer toutes les options avancées.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Nom du porte-monnaie</translation>
</message>
@@ -1200,14 +1247,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer un porte-monnaie vide</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Utiliser des descripteurs pour la gestion des scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Porte-monnaie de descripteurs</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Utiliser un appareil externe de signature tel qu’un porte-monnaie matériel. Configurer d’abord le script signataire externe dans les préférences du porte-monnaie.</translation>
</message>
@@ -1220,10 +1259,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilé sans prise en charge de sqlite (requis pour les porte-monnaie de descripteurs)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilé sans prise en charge des signatures externes (requis pour la signature externe)</translation>
@@ -1396,7 +1431,7 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
</message>
<message>
<source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
- <translation type="unfinished">Quand vous cliquerez sur Valider, %1 commencera à télécharger et à traiter l’intégralité de la chaîne de blocs %4 (%2 Go) en débutant avec les transactions les plus anciennes de %3, quand %4 a été lancé initialement.</translation>
+ <translation type="unfinished">Quand vous cliquerez sur Valider, %1 commencera à télécharger et à traiter l’intégralité de la chaîne de blocs %4 (%2 Go) en débutant avec les transactions les plus anciennes de %3, quand %4 a été lancé initialement.</translation>
</message>
<message>
<source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
@@ -2032,6 +2067,10 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished"> * Envoie %1 à %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">votre adresse</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Impossible de calculer les frais de la transaction ou le montant total de la transaction.</translation>
</message>
@@ -2287,6 +2326,18 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Sélectionnez un pair pour afficher des renseignements détaillés.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">La version de la couche de transport : %1</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">La chaîne d'ID de session BIP324 en hexadécimal, le cas échéant.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID de session</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Si nous relayons des transactions à ce pair.</translation>
</message>
@@ -2500,6 +2551,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Récupération d’adresse sortante : de courte durée, pour solliciter des adresses</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">détection : paires pourrait être v1 ou v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocole de transport non chiffré en texte clair</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: Protocole de transport chiffré BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">nous avons sélectionné le pair comme relais à large bande passante</translation>
</message>
@@ -2899,10 +2965,6 @@ Pour plus de précisions sur cette console, tapez %6.
<translation type="unfinished">Effacer tous les champs du formulaire.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Poussière :</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Choisir…</translation>
</message>
@@ -2979,10 +3041,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Copier les octets</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copier la poussière</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copier la monnaie</translation>
</message>
@@ -3603,10 +3661,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Envoyée à</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Paiement à vous-même</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Miné </translation>
</message>
@@ -3682,10 +3736,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Envoyée à</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">À vous-même</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Miné </translation>
</message>
@@ -3963,6 +4013,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">%s est corrompu. Essayez l’outil bitcoin-wallet pour le sauver ou restaurez une sauvegarde.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s a échoué à valider l'état instantané -assumeutxo. Cela indique un problème matériel, ou un bug dans le logiciel, ou une mauvaise modification du logiciel qui a permis de charger un instantané invalide. En conséquence, le nœud s'arrêtera et cessera d'utiliser tout état qui a été construit sur l'instantané, réinitialisant la hauteur de la chaîne de %d à %d. Au prochain redémarrage, le nœud reprendra la synchronisation à partir de %d sans utiliser de données d'instantané. Veuillez signaler cet incident à %s, en précisant comment vous avez obtenu l'instantané. L'état de chaîne d'instantané invalide sera conservé sur le disque au cas où il serait utile pour diagnostiquer le problème qui a causé cette erreur.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s demande d'écouter sur le port %u. Ce port est considéré comme "mauvais" et il est donc peu probable qu'un pair s'y connecte. Voir doc/p2p-bad-ports.md pour plus de détails et une liste complète.</translation>
</message>
@@ -3991,10 +4045,6 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Erreur de chargement du portefeuille. Le portefeuille nécessite le téléchargement de blocs, et le logiciel ne prend pas actuellement en charge le chargement de portefeuilles lorsque les blocs sont téléchargés dans le désordre lors de l'utilisation de snapshots assumeutxo. Le portefeuille devrait pouvoir être chargé avec succès une fois que la synchronisation des nœuds aura atteint la hauteur %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Erreur de lecture de %s. Toutes les clés ont été lues correctement, mais les données de la transaction ou les entrées du carnet d’adresses sont peut-être manquantes ou incorrectes.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Erreur de lecture de %s : soit les données de la transaction manquent soit elles sont incorrectes. Réanalyse du porte-monnaie.</translation>
</message>
@@ -4063,6 +4113,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Élagage : la dernière synchronisation de porte-monnaie va par-delà les données élaguées. Vous devez -reindex (réindexer, télécharger de nouveau toute la chaîne de blocs en cas de nœud élagué)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">La modification de '%s' -&gt; '%s' a échoué. Vous devriez résoudre cela en déplaçant ou en supprimant manuellement le répertoire de snapshot invalide %s, sinon vous rencontrerez la même erreur à nouveau au prochain démarrage.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase : la version %d du schéma de porte-monnaie sqlite est inconnue. Seule la version %d est prise en charge</translation>
</message>
@@ -4071,10 +4125,6 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">La base de données des blocs comprend un bloc qui semble provenir du futur. Cela pourrait être causé par la date et l’heure erronées de votre ordinateur. Ne reconstruisez la base de données des blocs que si vous êtes certain que la date et l’heure de votre ordinateur sont justes.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">La base de données d’indexation des blocs comprend un « txindex » hérité. Pour libérer l’espace disque occupé, exécutez un -reindex complet ou ignorez cette erreur. Ce message d’erreur ne sera pas affiché de nouveau.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Le montant de la transaction est trop bas pour être envoyé une fois que les frais ont été déduits</translation>
</message>
@@ -4111,6 +4161,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Le format de fichier porte-monnaie « %s » indiqué est inconnu. Veuillez soit indiquer « bdb » soit « sqlite ».</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Niveau de journalisation spécifique à la catégorie non pris en charge %1$s=%2$s. Attendu %1$s=&lt;catégorie&gt;:&lt;niveaudejournal&gt;. Catégories valides : %3$s. Niveaux de journalisation valides : %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Le format de la base de données chainstate n'est pas supporté. Veuillez redémarrer avec -reindex-chainstate. Cela reconstruira la base de données chainstate.</translation>
</message>
@@ -4119,6 +4173,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Portefeuille créé avec succès. Le type de portefeuille ancien est en cours de suppression et la prise en charge de la création et de l'ouverture des portefeuilles anciens sera supprimée à l'avenir.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Portefeuille chargé avec succès. Le type de portefeuille existant est obsolète et la prise en charge de la création et de l'ouverture de portefeuilles existants sera supprimée à l'avenir. Les anciens portefeuilles peuvent être migrés vers un portefeuille descripteur avec migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Avertissement : Le format du fichier de vidage de porte-monnaie « %s » ne correspond pas au format « %s » indiqué dans la ligne de commande.</translation>
</message>
@@ -4167,30 +4225,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Impossible d’écrire dans le répertoire de données « %s » ; veuillez vérifier les droits.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La mise à niveau -txindex lancée par une version précédente ne peut pas être achevée. Redémarrez la version précédente ou exécutez un -reindex complet.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%sn'a pas réussi à valider l'état de l'instantané -assumeutxo. Cela indique un problème matériel, un bug dans le logiciel ou une mauvaise modification du logiciel qui a permis le chargement d'une snapshot invalide. En conséquence, le nœud s'arrêtera et cessera d'utiliser tout état construit sur la snapshot, ce qui réinitialisera la taille de la chaîne de %d à %d. Au prochain redémarrage, le nœud reprendra la synchronisation à partir de %d sans utiliser les données de la snapshot. Veuillez signaler cet incident à %s, en indiquant comment vous avez obtenu la snapshot. L'état de chaîne de la snapshot non valide a été laissé sur le disque au cas où il serait utile pour diagnostiquer le problème à l'origine de cette erreur.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s est très élevé ! Des frais aussi importants pourraient être payés sur une seule transaction.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -blockfilterindex. Veuillez désactiver temporairement blockfilterindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire complètement tous les index.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -coinstatsindex. Veuillez désactiver temporairement coinstatsindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire complètement tous les index.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -txindex. Veuillez désactiver temporairement txindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire entièrement tous les index.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Il est impossible d’indiquer des connexions précises et en même temps de demander à addrman de trouver les connexions sortantes.</translation>
</message>
@@ -4199,6 +4237,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Erreur de chargement de %s : le porte-monnaie signataire externe est chargé sans que la prise en charge de signataires externes soit compilée</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Erreur de lecture de %s! Toutes les clés ont été lues correctement, mais les données de transaction ou les métadonnées d'adresse peuvent être manquantes ou incorrectes.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Erreur : Les données du carnet d'adresses du portefeuille ne peuvent pas être identifiées comme appartenant à des portefeuilles migrés</translation>
</message>
@@ -4211,6 +4253,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Erreur : La transaction %s dans le portefeuille ne peut pas être identifiée comme appartenant aux portefeuilles migrés.</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Échec du calcul des frais de majoration, car les UTXO non confirmés dépendent d'un énorme groupe de transactions non confirmées.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Échec de renommage du fichier peers.dat invalide. Veuillez le déplacer ou le supprimer, puis réessayer.</translation>
</message>
@@ -4284,10 +4330,6 @@ Le portefeuille a peut-être été créé avec une version plus récente.
Veuillez essayer d'utiliser la dernière version du logiciel.</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Niveau de consignation spécifique à une catégorie non pris en charge -loglevel=%s. Attendu -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Catégories valides : %s. Niveaux de consignation valides : %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">Impossible de corriger l'échec de la migration</translation>
@@ -4479,6 +4521,10 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
<translation type="unfinished">Échec de réanalyse du porte-monnaie lors de l’initialisation</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Échec du démarrage des index, arrêt.</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Échec de vérification de la base de données</translation>
</message>
@@ -4795,8 +4841,12 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
<translation type="unfinished">Les nouvelles règles inconnues sont activées (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Niveau de consignation global non pris en charge -loglevel=%s. Valeurs valides : %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Niveau de journalisation global non pris en charge %s=%s. Valeurs valides : %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates n'est pas pris en charge sur la chaîne %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_fr_LU.ts b/src/qt/locale/bitcoin_fr_LU.ts
index c83e810e95..cc235f0d56 100644
--- a/src/qt/locale/bitcoin_fr_LU.ts
+++ b/src/qt/locale/bitcoin_fr_LU.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">C&amp;hoisir</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adresses d’envoi</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adresses de réception</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ce sont vos adresses Bitcoin pour envoyer des paiements. Vérifiez toujours le montant et l’adresse du destinataire avant d’envoyer des pièces.</translation>
</message>
@@ -102,6 +94,10 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Une erreur est survenue lors de l'enregistrement de la liste d'adresses vers %1. Veuillez réessayer plus tard.</translation>
</message>
<message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Adresses de réceptions - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Échec d’exportation</translation>
</message>
@@ -713,8 +709,16 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Fermer tous les porte-monnaie</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrer un portefeuilles </translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">Afficher le message d’aide de %1 pour obtenir la liste des options possibles de ligne de commande Bitcoin</translation>
+ <translation type="unfinished">Afficher le message d’aide de %1 pour obtenir la liste des options possibles en ligne de commande Bitcoin</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -809,6 +813,14 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">En-têtes de pré-synchronisation (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Erreur lors de la création du portefeuille</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Impossible de créer un nouveau portefeuilles, le logiciel a été compilé sans support pour sqlite (nécessaire pour le portefeuille décris) </translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Erreur : %1</translation>
</message>
@@ -915,10 +927,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Frais :</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Poussière :</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Après les frais :</translation>
</message>
@@ -999,10 +1007,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Copier les octets</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copier la poussière</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copier la monnaie</translation>
</message>
@@ -1011,18 +1015,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">(%1 verrouillée)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">oui</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">non</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Cette étiquette devient rouge si un destinataire reçoit un montant inférieur au seuil actuel de poussière.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Peut varier +/- %1 satoshi(s) par entrée.</translation>
</message>
@@ -1082,6 +1074,53 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migration du porte-monnaie convertira ce porte-monnaie en un ou plusieurs porte-monnaie de descripteurs. Une nouvelle sauvegarde du porte-monnaie devra être effectuée.
+Si ce porte-monnaie contient des scripts en lecture seule, un nouveau porte-monnaie sera créé contenant ces scripts en lecture seule.
+Si ce porte-monnaie contient des scripts solvables mais non surveillés, un autre nouveau porte-monnaie sera créé contenant ces scripts.
+
+Le processus de migration créera une sauvegarde du porte-monnaie avant la migration. Ce fichier de sauvegarde sera nommé &lt;nom du porte-monnaie&gt;-&lt;horodatage&gt;.legacy.bak et pourra être trouvé dans le répertoire de ce porte-monnaie. En cas de migration incorrecte, la sauvegarde peut être restaurée avec la fonctionnalité "Restaurer le porte-monnaie".</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrer le portefeuille</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migration du portefeuille &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Le porte-monnaie '%1' a été migré avec succès.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Les scripts en mode de visualisation ont été migrés vers un nouveau porte-monnaie nommé '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Les scripts solvables mais non surveillés ont été migrés vers un nouveau porte-monnaie nommé '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">La migration a échoué</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migration réussie</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1164,6 +1203,14 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer un porte-monnaie</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Vous n'êtes qu'à un pas de la création de votre nouveau portefeuille !</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Veuillez fournir un nom et, si désiré, activer toutes les options avancées.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Nom du porte-monnaie</translation>
</message>
@@ -1200,14 +1247,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer un porte-monnaie vide</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Utiliser des descripteurs pour la gestion des scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Porte-monnaie de descripteurs</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Utiliser un appareil externe de signature tel qu’un porte-monnaie matériel. Configurer d’abord le script signataire externe dans les préférences du porte-monnaie.</translation>
</message>
@@ -1220,10 +1259,6 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished">Créer</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilé sans prise en charge de sqlite (requis pour les porte-monnaie de descripteurs)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilé sans prise en charge des signatures externes (requis pour la signature externe)</translation>
@@ -2032,6 +2067,10 @@ La signature n'est possible qu'avec les adresses de type "patrimoine".</translat
<translation type="unfinished"> * Envoie %1 à %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">votre adresse</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Impossible de calculer les frais de la transaction ou le montant total de la transaction.</translation>
</message>
@@ -2287,6 +2326,18 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Sélectionnez un pair pour afficher des renseignements détaillés.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">La version de la couche de transport : %1</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">La chaîne d'ID de session BIP324 en hexadécimal, le cas échéant.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID de session</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Si nous relayons des transactions à ce pair.</translation>
</message>
@@ -2500,6 +2551,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Récupération d’adresse sortante : de courte durée, pour solliciter des adresses</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">détection : paires pourrait être v1 ou v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocole de transport non chiffré en texte clair</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: Protocole de transport chiffré BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">nous avons sélectionné le pair comme relais à large bande passante</translation>
</message>
@@ -2899,10 +2965,6 @@ Pour plus de précisions sur cette console, tapez %6.
<translation type="unfinished">Effacer tous les champs du formulaire.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Poussière :</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Choisir…</translation>
</message>
@@ -2979,10 +3041,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Copier les octets</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copier la poussière</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copier la monnaie</translation>
</message>
@@ -3603,10 +3661,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Envoyée à</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Paiement à vous-même</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Miné </translation>
</message>
@@ -3682,10 +3736,6 @@ Note : Les frais étant calculés par octet, un taux de frais de « 100 satoshi
<translation type="unfinished">Envoyée à</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">À vous-même</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Miné </translation>
</message>
@@ -3963,6 +4013,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">%s est corrompu. Essayez l’outil bitcoin-wallet pour le sauver ou restaurez une sauvegarde.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s a échoué à valider l'état instantané -assumeutxo. Cela indique un problème matériel, ou un bug dans le logiciel, ou une mauvaise modification du logiciel qui a permis de charger un instantané invalide. En conséquence, le nœud s'arrêtera et cessera d'utiliser tout état qui a été construit sur l'instantané, réinitialisant la hauteur de la chaîne de %d à %d. Au prochain redémarrage, le nœud reprendra la synchronisation à partir de %d sans utiliser de données d'instantané. Veuillez signaler cet incident à %s, en précisant comment vous avez obtenu l'instantané. L'état de chaîne d'instantané invalide sera conservé sur le disque au cas où il serait utile pour diagnostiquer le problème qui a causé cette erreur.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s demande d'écouter sur le port %u. Ce port est considéré comme "mauvais" et il est donc peu probable qu'un pair s'y connecte. Voir doc/p2p-bad-ports.md pour plus de détails et une liste complète.</translation>
</message>
@@ -3991,10 +4045,6 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Erreur de chargement du portefeuille. Le portefeuille nécessite le téléchargement de blocs, et le logiciel ne prend pas actuellement en charge le chargement de portefeuilles lorsque les blocs sont téléchargés dans le désordre lors de l'utilisation de snapshots assumeutxo. Le portefeuille devrait pouvoir être chargé avec succès une fois que la synchronisation des nœuds aura atteint la hauteur %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Erreur de lecture de %s. Toutes les clés ont été lues correctement, mais les données de la transaction ou les entrées du carnet d’adresses sont peut-être manquantes ou incorrectes.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Erreur de lecture de %s : soit les données de la transaction manquent soit elles sont incorrectes. Réanalyse du porte-monnaie.</translation>
</message>
@@ -4063,6 +4113,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Élagage : la dernière synchronisation de porte-monnaie va par-delà les données élaguées. Vous devez -reindex (réindexer, télécharger de nouveau toute la chaîne de blocs en cas de nœud élagué)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">La modification de '%s' -&gt; '%s' a échoué. Vous devriez résoudre cela en déplaçant ou en supprimant manuellement le répertoire de snapshot invalide %s, sinon vous rencontrerez la même erreur à nouveau au prochain démarrage.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase : la version %d du schéma de porte-monnaie sqlite est inconnue. Seule la version %d est prise en charge</translation>
</message>
@@ -4071,10 +4125,6 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">La base de données des blocs comprend un bloc qui semble provenir du futur. Cela pourrait être causé par la date et l’heure erronées de votre ordinateur. Ne reconstruisez la base de données des blocs que si vous êtes certain que la date et l’heure de votre ordinateur sont justes.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">La base de données d’indexation des blocs comprend un « txindex » hérité. Pour libérer l’espace disque occupé, exécutez un -reindex complet ou ignorez cette erreur. Ce message d’erreur ne sera pas affiché de nouveau.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Le montant de la transaction est trop bas pour être envoyé une fois que les frais ont été déduits</translation>
</message>
@@ -4111,6 +4161,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Le format de fichier porte-monnaie « %s » indiqué est inconnu. Veuillez soit indiquer « bdb » soit « sqlite ».</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Niveau de journalisation spécifique à la catégorie non pris en charge %1$s=%2$s. Attendu %1$s=&lt;catégorie&gt;:&lt;niveaudejournal&gt;. Catégories valides : %3$s. Niveaux de journalisation valides : %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Le format de la base de données chainstate n'est pas supporté. Veuillez redémarrer avec -reindex-chainstate. Cela reconstruira la base de données chainstate.</translation>
</message>
@@ -4119,6 +4173,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Portefeuille créé avec succès. Le type de portefeuille ancien est en cours de suppression et la prise en charge de la création et de l'ouverture des portefeuilles anciens sera supprimée à l'avenir.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Portefeuille chargé avec succès. Le type de portefeuille existant est obsolète et la prise en charge de la création et de l'ouverture de portefeuilles existants sera supprimée à l'avenir. Les anciens portefeuilles peuvent être migrés vers un portefeuille descripteur avec migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Avertissement : Le format du fichier de vidage de porte-monnaie « %s » ne correspond pas au format « %s » indiqué dans la ligne de commande.</translation>
</message>
@@ -4167,30 +4225,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Impossible d’écrire dans le répertoire de données « %s » ; veuillez vérifier les droits.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">La mise à niveau -txindex lancée par une version précédente ne peut pas être achevée. Redémarrez la version précédente ou exécutez un -reindex complet.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%sn'a pas réussi à valider l'état de l'instantané -assumeutxo. Cela indique un problème matériel, un bug dans le logiciel ou une mauvaise modification du logiciel qui a permis le chargement d'une snapshot invalide. En conséquence, le nœud s'arrêtera et cessera d'utiliser tout état construit sur la snapshot, ce qui réinitialisera la taille de la chaîne de %d à %d. Au prochain redémarrage, le nœud reprendra la synchronisation à partir de %d sans utiliser les données de la snapshot. Veuillez signaler cet incident à %s, en indiquant comment vous avez obtenu la snapshot. L'état de chaîne de la snapshot non valide a été laissé sur le disque au cas où il serait utile pour diagnostiquer le problème à l'origine de cette erreur.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s est très élevé ! Des frais aussi importants pourraient être payés sur une seule transaction.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -blockfilterindex. Veuillez désactiver temporairement blockfilterindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire complètement tous les index.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -coinstatsindex. Veuillez désactiver temporairement coinstatsindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire complètement tous les index.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'option -reindex-chainstate n'est pas compatible avec -txindex. Veuillez désactiver temporairement txindex lorsque vous utilisez -reindex-chainstate, ou remplacez -reindex-chainstate par -reindex pour reconstruire entièrement tous les index.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Il est impossible d’indiquer des connexions précises et en même temps de demander à addrman de trouver les connexions sortantes.</translation>
</message>
@@ -4199,6 +4237,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Erreur de chargement de %s : le porte-monnaie signataire externe est chargé sans que la prise en charge de signataires externes soit compilée</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Erreur de lecture de %s! Toutes les clés ont été lues correctement, mais les données de transaction ou les métadonnées d'adresse peuvent être manquantes ou incorrectes.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Erreur : Les données du carnet d'adresses du portefeuille ne peuvent pas être identifiées comme appartenant à des portefeuilles migrés</translation>
</message>
@@ -4211,6 +4253,10 @@ Accédez à Fichier &gt; Ouvrir un porte-monnaie pour en charger un.
<translation type="unfinished">Erreur : La transaction %s dans le portefeuille ne peut pas être identifiée comme appartenant aux portefeuilles migrés.</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Échec du calcul des frais de majoration, car les UTXO non confirmés dépendent d'un énorme groupe de transactions non confirmées.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Échec de renommage du fichier peers.dat invalide. Veuillez le déplacer ou le supprimer, puis réessayer.</translation>
</message>
@@ -4284,10 +4330,6 @@ Le portefeuille a peut-être été créé avec une version plus récente.
Veuillez essayer d'utiliser la dernière version du logiciel.</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Niveau de consignation spécifique à une catégorie non pris en charge -loglevel=%s. Attendu -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Catégories valides : %s. Niveaux de consignation valides : %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">Impossible de corriger l'échec de la migration</translation>
@@ -4479,6 +4521,10 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
<translation type="unfinished">Échec de réanalyse du porte-monnaie lors de l’initialisation</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Échec du démarrage des index, arrêt.</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Échec de vérification de la base de données</translation>
</message>
@@ -4795,8 +4841,12 @@ Impossible de restaurer la sauvegarde du portefeuille.</translation>
<translation type="unfinished">Les nouvelles règles inconnues sont activées (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Niveau de consignation global non pris en charge -loglevel=%s. Valeurs valides : %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Niveau de journalisation global non pris en charge %s=%s. Valeurs valides : %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates n'est pas pris en charge sur la chaîne %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_ga.ts b/src/qt/locale/bitcoin_ga.ts
index 580ba278bb..a957a35a00 100644
--- a/src/qt/locale/bitcoin_ga.ts
+++ b/src/qt/locale/bitcoin_ga.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Roghnaigh</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Seoltaí seoladh</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Seoltaí glacadh</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Seo iad do sheoltaí Bitcoin chun íocaíochtaí a sheoladh. Seiceáil i gcónaí an méid agus an seoladh glactha sula seoltar boinn.</translation>
</message>
@@ -702,10 +694,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Táille:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Dusta:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Iar-tháille:</translation>
</message>
@@ -770,10 +758,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Cóipeáíl bearta</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Cóipeáíl dusta</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Cóipeáíl sóinseáil</translation>
</message>
@@ -782,18 +766,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">(%1 glasáilte)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">tá</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">níl</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Casann an lipéad seo dearg má fhaigheann aon fhaighteoir méid níos lú ná an tairseach reatha dusta.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Athraitheach +/- %1 satosh(í) in aghaidh an ionchuir.</translation>
</message>
@@ -917,21 +889,9 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Déan Sparán Glan</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Úsáid tuairisceoirí le haghaidh bainistíochta scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Sparán Tuairisceoir</translation>
- </message>
- <message>
<source>Create</source>
<translation type="unfinished">Cruthaigh</translation>
</message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Tiomsaithe gan tacíocht sqlite (riachtanach do sparán tuairisceora)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1558,6 +1518,10 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished"> * Seolann %1 chuig %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">seoladh féin</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Ní féidir táille idirbhirt nó méid iomlán an idirbhirt a ríomh.</translation>
</message>
@@ -2227,10 +2191,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Glan gach réimse den fhoirm.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Dusta:</translation>
- </message>
- <message>
<source>Hide transaction fee settings</source>
<translation type="unfinished">Folaigh socruithe táillí idirbhirt</translation>
</message>
@@ -2291,10 +2251,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Cóipeáíl bearta</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Cóipeáíl dusta</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Cóipeáíl sóinseáil</translation>
</message>
@@ -2864,10 +2820,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Seolta chuig</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Íocaíocht chugat féin</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Mianáilte</translation>
</message>
@@ -2943,10 +2895,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Seolta chuig</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Chugat fhéin</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Mianáilte</translation>
</message>
@@ -3165,10 +3113,6 @@ Téigh go Comhad &gt; Oscail Sparán chun sparán a lódáil.
<translation type="unfinished">Dáilte faoin gceadúnas bogearraí MIT, féach na comhad atá in éindí %s nó %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Earráid ag léamh %s! Léigh gach eochair i gceart, ach d’fhéadfadh sonraí idirbhirt nó iontrálacha leabhar seoltaí a bheidh in easnamh nó mícheart.</translation>
- </message>
- <message>
<source>More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
<translation type="unfinished">Tá níos mó ná seoladh ceangail oinniún amháin curtha ar fáil. Ag baint úsáide as %s don tseirbhís Tor oinniún a cruthaíodh go huathoibríoch.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ga_IE.ts b/src/qt/locale/bitcoin_ga_IE.ts
index 8d44a216f9..fe030c889b 100644
--- a/src/qt/locale/bitcoin_ga_IE.ts
+++ b/src/qt/locale/bitcoin_ga_IE.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Roghnaigh</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Seoltaí seoladh</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Seoltaí glacadh</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Seo iad do sheoltaí Bitcoin chun íocaíochtaí a sheoladh. Seiceáil i gcónaí an méid agus an seoladh glactha sula seoltar boinn.</translation>
</message>
@@ -702,10 +694,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Táille:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Dusta:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Iar-tháille:</translation>
</message>
@@ -770,10 +758,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Cóipeáíl bearta</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Cóipeáíl dusta</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Cóipeáíl sóinseáil</translation>
</message>
@@ -782,18 +766,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">(%1 glasáilte)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">tá</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">níl</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Casann an lipéad seo dearg má fhaigheann aon fhaighteoir méid níos lú ná an tairseach reatha dusta.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Athraitheach +/- %1 satosh(í) in aghaidh an ionchuir.</translation>
</message>
@@ -917,21 +889,9 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Déan Sparán Glan</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Úsáid tuairisceoirí le haghaidh bainistíochta scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Sparán Tuairisceoir</translation>
- </message>
- <message>
<source>Create</source>
<translation type="unfinished">Cruthaigh</translation>
</message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Tiomsaithe gan tacíocht sqlite (riachtanach do sparán tuairisceora)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1558,6 +1518,10 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished"> * Seolann %1 chuig %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">seoladh féin</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Ní féidir táille idirbhirt nó méid iomlán an idirbhirt a ríomh.</translation>
</message>
@@ -2227,10 +2191,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Glan gach réimse den fhoirm.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Dusta:</translation>
- </message>
- <message>
<source>Hide transaction fee settings</source>
<translation type="unfinished">Folaigh socruithe táillí idirbhirt</translation>
</message>
@@ -2291,10 +2251,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Cóipeáíl bearta</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Cóipeáíl dusta</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Cóipeáíl sóinseáil</translation>
</message>
@@ -2864,10 +2820,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Seolta chuig</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Íocaíocht chugat féin</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Mianáilte</translation>
</message>
@@ -2943,10 +2895,6 @@ Ní féidir síniú ach le seoltaí 'oidhreachta'.</translation>
<translation type="unfinished">Seolta chuig</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Chugat fhéin</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Mianáilte</translation>
</message>
@@ -3165,10 +3113,6 @@ Téigh go Comhad &gt; Oscail Sparán chun sparán a lódáil.
<translation type="unfinished">Dáilte faoin gceadúnas bogearraí MIT, féach na comhad atá in éindí %s nó %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Earráid ag léamh %s! Léigh gach eochair i gceart, ach d’fhéadfadh sonraí idirbhirt nó iontrálacha leabhar seoltaí a bheidh in easnamh nó mícheart.</translation>
- </message>
- <message>
<source>More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
<translation type="unfinished">Tá níos mó ná seoladh ceangail oinniún amháin curtha ar fáil. Ag baint úsáide as %s don tseirbhís Tor oinniún a cruthaíodh go huathoibríoch.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_gd.ts b/src/qt/locale/bitcoin_gd.ts
index 63a59d6fe8..8ce79e1193 100644
--- a/src/qt/locale/bitcoin_gd.ts
+++ b/src/qt/locale/bitcoin_gd.ts
@@ -21,10 +21,6 @@
<source>Choose the address to send coins to</source>
<translation type="unfinished">Tagh an seòladh airson buinn a chuir thuige</translation>
</message>
- <message>
- <source>Sending addresses</source>
- <translation type="unfinished">A ’cur sheòlaidhean</translation>
- </message>
</context>
<context>
<name>AddressTableModel</name>
diff --git a/src/qt/locale/bitcoin_gl.ts b/src/qt/locale/bitcoin_gl.ts
index e207194fb6..df9362d664 100644
--- a/src/qt/locale/bitcoin_gl.ts
+++ b/src/qt/locale/bitcoin_gl.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Escoller</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Enviando enderezos</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Recibindo enderezos</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estas son as túas direccións Bitcoin para enviar pagos. Revisa sempre a cantidade e a dirección receptora antes de enviar moedas.</translation>
</message>
@@ -633,10 +625,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Taxa:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">po:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Despois de taxas:</translation>
</message>
@@ -705,10 +693,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar po</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -717,18 +701,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">si</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">non</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta tórnase vermella se algún receptor recibe unha cantidade máis pequena que o actual límite de po.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Pode variar +/- %1 satoshi(s) por entrada.</translation>
</message>
@@ -1157,6 +1129,10 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<source>Close</source>
<translation type="unfinished">Pechar</translation>
</message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">dirección propia</translation>
+ </message>
</context>
<context>
<name>PaymentServer</name>
@@ -1430,10 +1406,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Limpar tódolos campos do formulario</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">po:</translation>
- </message>
- <message>
<source>Clear &amp;All</source>
<translation type="unfinished">Limpar &amp;Todo</translation>
</message>
@@ -1466,10 +1438,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar po</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -1829,10 +1797,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Enviado a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pago a ti mesmo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
@@ -1892,10 +1856,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Enviado a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A ti mesmo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minado</translation>
</message>
diff --git a/src/qt/locale/bitcoin_gl_ES.ts b/src/qt/locale/bitcoin_gl_ES.ts
index b36fa1b60d..74c7d4d4d3 100644
--- a/src/qt/locale/bitcoin_gl_ES.ts
+++ b/src/qt/locale/bitcoin_gl_ES.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Selecciona</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Enderezos de envío</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Enderezos de recepción</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estes son os teus enderezos de Bitcoin para enviar pagamentos. Asegurate sempre de comprobar a cantidade e maila dirección antes de enviar moedas.</translation>
</message>
@@ -625,10 +617,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">taxa:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">po:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Despois de taxas:</translation>
</message>
@@ -697,10 +685,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar po</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
@@ -709,14 +693,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">sí</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta tórnase vermella se algún receptor recibe unha cantidade máis pequena que o actual límite de po.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Pode variar +/- %1 satoshi(s) por entrada.</translation>
</message>
@@ -1014,10 +990,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Cambio:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">po:</translation>
- </message>
- <message>
<source>Copy quantity</source>
<translation type="unfinished">Copiar cantidade</translation>
</message>
@@ -1038,10 +1010,6 @@ Firmar é posible unicamente con enderezos de tipo 'legacy'.</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar po</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar cambio</translation>
</message>
diff --git a/src/qt/locale/bitcoin_gu.ts b/src/qt/locale/bitcoin_gu.ts
index afb4c59bc5..54f2cd1741 100644
--- a/src/qt/locale/bitcoin_gu.ts
+++ b/src/qt/locale/bitcoin_gu.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp; પસંદ કરો</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">મોકલવા માટે ના સરનામાં</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">મેળવવા માટે ના સરનામાં</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">આ તમારા ચુકવણી કરવા માટે ના સરનામાં છે, હંમેશા કિંમત અને મોકલવાના ના સરનામાં ચકાસી લેવા સિક્કા આપતા પહેલા.</translation>
</message>
@@ -97,6 +89,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">અલ્પવિરામથી વિભાજિત ફાઇલ</translation>
</message>
<message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">સરનામાં સૂચિને માં સાચવવાનો પ્રયાસ કરતી વખતે ભૂલ આવી હતી %1. મહેરબાની કરીને ફરીથી પ્રયતન કરો.</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">નિકાસ ની પ્ર્રાક્રિયા નિષ્ફળ ગયેલ છે</translation>
</message>
@@ -160,7 +157,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
- <translation type="unfinished">ચેતવણી: જો તમે તમારું વletલેટ એન્ક્રિપ્ટ કરો છો અને તમારો પાસફ્રેઝ ખોવાઈ જાય છે, તો તમે તમારા બધા બિટકોઇન્સ ગુમાવશો!</translation>
+ <translation type="unfinished">ચેતવણી: જો તમે તમારા વૉલેટને એન્ક્રિપ્ટ કરો છો અને તમારો પાસફ્રેઝ ખોવાઈ જાય છે, &lt;b&gt; તો તમે તમારા બધા બિટકોઇન્સ ગુમાવશો&lt;/b&gt;!</translation>
</message>
<message>
<source>Are you sure you wish to encrypt your wallet?</source>
diff --git a/src/qt/locale/bitcoin_ha.ts b/src/qt/locale/bitcoin_ha.ts
index 94bcbcb05b..e78d1a213e 100644
--- a/src/qt/locale/bitcoin_ha.ts
+++ b/src/qt/locale/bitcoin_ha.ts
@@ -7,7 +7,7 @@
</message>
<message>
<source>&amp;New</source>
- <translation type="unfinished">&amp;Sabontawa</translation>
+ <translation type="unfinished">&amp;Sabonta</translation>
</message>
<message>
<source>Copy the currently selected address to the system clipboard</source>
@@ -19,7 +19,7 @@
</message>
<message>
<source>C&amp;lose</source>
- <translation type="unfinished">C&amp;Rufe</translation>
+ <translation type="unfinished">C&amp;ɓatar</translation>
</message>
<message>
<source>Delete the currently selected address from the list</source>
@@ -54,14 +54,6 @@
<translation type="unfinished">c&amp;zaɓi</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">adireshin aikawa</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adireshi da za a karba dashi</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Waɗannan adiresoshin Bitcoin ne don tura kuɗi bitcoin . ka tabbatar da cewa adreshin daidai ne kamin ka tura abua a ciki</translation>
</message>
diff --git a/src/qt/locale/bitcoin_hak.ts b/src/qt/locale/bitcoin_hak.ts
index e95d92ce84..c07373fb6e 100644
--- a/src/qt/locale/bitcoin_hak.ts
+++ b/src/qt/locale/bitcoin_hak.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">选择(&amp;H)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">发送地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">收款地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">这些是你的比特币支付地址。在发送之前,一定要核对金额和接收地址。</translation>
</message>
@@ -101,6 +93,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">儲存地址列表到 %1 時發生錯誤。請再試一次。</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">导出失败</translation>
</message>
@@ -673,8 +673,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">关闭所有钱包</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">迁移一个钱包</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
+ <translation type="unfinished">显示 %1 帮助信息,获取可用命令行选项列表</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -768,6 +776,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">預先同步標頭(%1%)</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">创建钱包时出错</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">无法创建新钱包,软件编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">錯誤: %1</translation>
</message>
@@ -838,10 +854,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">手动选币</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">計費後金額:</translation>
</message>
@@ -902,10 +914,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -914,14 +922,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1已锁定)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">當任何一個收款金額小於目前的灰塵金額上限時,文字會變紅色。</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">每个输入可能有 +/- %1 聪 (satoshi) 的误差。</translation>
</message>
@@ -964,6 +964,57 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要迁移钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">迁移钱包将会把这个钱包转换成一个或多个输出描述符钱包。将会需要创建一个新的钱包备份。
+如果这个钱包包含仅观察脚本,将会创建包含那些仅观察脚本的新钱包。
+如果这个钱包包含可解但又未被监视的脚本,将会创建一个不同的钱包以包含那些脚本。
+
+迁移过程开始前将会创建一个钱包备份。备份文件将会被命名为 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然后被保存在该钱包所在目录下。如果迁移过程出错,可以使用“恢复钱包”功能恢复备份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">迁移钱包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功迁移钱包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">仅观察脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 可解但又未被监视的脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">迁移失败</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">迁移成功</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -974,9 +1025,13 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">打開錢包警告</translation>
</message>
<message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+ <message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">開啟錢包</translation>
+ <translation type="unfinished">打开钱包</translation>
</message>
</context>
<context>
@@ -1017,6 +1072,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
<translation type="unfinished">启用修剪时,如果一个钱包被卸载太久,就必须重新同步整条区块链才能再次加载它。</translation>
</message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">关闭所有钱包</translation>
+ </message>
</context>
<context>
<name>CreateWalletDialog</name>
@@ -1025,8 +1084,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">新增錢包</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距离创建您的新钱包只有一步之遥了!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">请指定一个名字,如果需要的话还可以启用高级选项</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">錢包名稱</translation>
+ <translation type="unfinished">钱包名称</translation>
</message>
<message>
<source>Wallet</source>
@@ -1056,14 +1123,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Make Blank Wallet</source>
<translation type="unfinished">製作空白錢包</translation>
</message>
- <message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">使用输出描述符进行scriptPubKey管理</translation>
- </message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1151,10 +1210,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">此目录中至少会保存 %1 GB 的数据,并且大小还会随着时间增长。</translation>
</message>
- <message>
- <source>Approximately %1 GB of data will be stored in this directory.</source>
- <translation type="unfinished">会在此目录中存储约 %1 GB 的数据。</translation>
- </message>
<message numerus="yes">
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
@@ -1183,10 +1238,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">欢迎</translation>
</message>
<message>
- <source>Welcome to %1.</source>
- <translation type="unfinished">欢迎使用 %1</translation>
- </message>
- <message>
<source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
<translation type="unfinished">由于这是第一次启动此程序,您可以选择%1存储数据的位置</translation>
</message>
@@ -1214,10 +1265,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>HelpMessageDialog</name>
<message>
- <source>version</source>
- <translation type="unfinished">版本</translation>
- </message>
- <message>
<source>About %1</source>
<translation type="unfinished">关于 %1</translation>
</message>
@@ -1232,11 +1279,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%1 is shutting down…</source>
<translation type="unfinished">%1正在关闭...</translation>
</message>
- <message>
- <source>Do not shut down the computer until this window disappears.</source>
- <translation type="unfinished">在此窗口消失前不要关闭计算机。</translation>
- </message>
-</context>
+ </context>
<context>
<name>ModalOverlay</name>
<message>
@@ -1244,18 +1287,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">窗体</translation>
</message>
<message>
- <source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
- <translation type="unfinished">近期交易可能尚未显示,因此当前余额可能不准确。以上信息将在与比特币网络完全同步后更正。详情如下</translation>
- </message>
- <message>
- <source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
- <translation type="unfinished">尝试使用受未可见交易影响的余额将不被网络接受。</translation>
- </message>
- <message>
- <source>Number of blocks left</source>
- <translation type="unfinished">剩余区块数量</translation>
- </message>
- <message>
<source>Unknown…</source>
<translation type="unfinished">未知...</translation>
</message>
@@ -1264,10 +1295,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">计算中...</translation>
</message>
<message>
- <source>Last block time</source>
- <translation type="unfinished">上一区块时间</translation>
- </message>
- <message>
<source>Progress</source>
<translation type="unfinished">进度</translation>
</message>
@@ -1276,10 +1303,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">每小时进度增加</translation>
</message>
<message>
- <source>Estimated time left until synced</source>
- <translation type="unfinished">预计剩余同步时间</translation>
- </message>
- <message>
<source>Hide</source>
<translation type="unfinished">隐藏</translation>
</message>
@@ -1860,6 +1883,22 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">选择节点查看详细信息。</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">传输层版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">传输</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">十六进制格式的BIP324会话ID,如果有的话。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">会话ID</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">是否要将交易转发给这个节点。</translation>
</message>
@@ -2035,6 +2074,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">出站触须: 短暂,用于测试地址</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">检测中: 节点可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文传输协议</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密传输协议</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">我们选择了用于高带宽转发的节点</translation>
</message>
@@ -2319,10 +2373,6 @@ For more information on using this console, type %6.
<translation type="unfinished">增加收款人(&amp;R)</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">选择...</translation>
</message>
@@ -2363,10 +2413,6 @@ For more information on using this console, type %6.
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -2780,10 +2826,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">付給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -2839,10 +2881,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -3012,12 +3050,16 @@ Go to File &gt; Open Wallet to load a wallet.
<source>Could not commit transaction</source>
<translation type="unfinished">沒辦法提交交易</translation>
</message>
- </context>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+</context>
<context>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">&amp;匯出</translation>
+ <translation type="unfinished">导出(E)</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
@@ -3060,6 +3102,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s 開發人員</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
</message>
@@ -3096,6 +3142,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误: 转储文件版本不被支持。这个版本的 bitcoin-wallet 只支持版本为 1 的转储文件。得到的转储文件版本却是%s</translation>
</message>
<message>
+ <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
+ <translation type="unfinished">错误: 旧式钱包只支持 "legacy", "p2sh-segwit", 和 "bech32" 这三种地址类型</translation>
+ </message>
+ <message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
<translation type="unfinished">错误: 无法为该旧式钱包生成描述符。如果钱包已被加密,请确保提供的钱包加密密码正确。</translation>
</message>
@@ -3120,6 +3170,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">修剪:上次同步钱包的位置已经超出(落后于)现有修剪后数据的范围。你需要进行-reindex(对于已经启用修剪节点,就需要重新下载整个区块链)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失败。您需要手动移走或删除无效的快照目录 %s来解决这个问题,不然的话您就会在下一次启动时遇到相同的错误。</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: SQLite钱包schema版本%d未知。只支持%d版本</translation>
</message>
@@ -3128,10 +3182,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">區塊資料庫中有來自未來的區塊。可能是你電腦的日期時間不對。如果確定電腦日期時間沒錯的話,就重建區塊資料庫看看。</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">扣除手續費後的交易金額太少而不能傳送</translation>
</message>
@@ -3164,6 +3214,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">提供了未知的钱包格式 "%s" 。请使用 "bdb" 或 "sqlite" 中的一种。</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支持的类别限定日志等级 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的类别: %3$s 。有效的日志等级: %4$s 。</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">找到了不受支持的 chainstate 数据库格式。请使用 -reindex-chainstate 参数重启。这将会重建 chainstate 数据库。</translation>
</message>
@@ -3172,6 +3226,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">钱包加载成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。可以使用 migratewallet 命令将旧式钱包迁移至输出描述符钱包。</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">警告: 转储文件的钱包格式 "%s" 与命令行指定的格式 "%s" 不符。</translation>
</message>
@@ -3212,30 +3270,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">不能写入到数据目录'%s';请检查文件权限。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">在使用地址管理器(addrman)寻找出站连接时,无法同时提供特定的连接。</translation>
</message>
@@ -3244,6 +3282,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">读取 %s 时出错! 所有密钥都被正确读取,但交易数据或地址元数据可能缺失或有误。</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
</message>
@@ -3256,6 +3298,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">计算追加手续费失败,因为未确认UTXO依赖了大量未确认交易的簇集。</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
</message>
@@ -3330,10 +3376,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -3462,6 +3504,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误: 无法写入记录到新钱包</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">无法启动索引,关闭中...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">校验数据库失败</translation>
</message>
@@ -3702,8 +3748,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">在 -onlynet 指定了不明的網路別: '%s'</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上acceptstalefeeestimates 不受支持。</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_he.ts b/src/qt/locale/bitcoin_he.ts
index 9275ddfb34..2840b67afc 100644
--- a/src/qt/locale/bitcoin_he.ts
+++ b/src/qt/locale/bitcoin_he.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;בחירה</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">כתובת לשליחה</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">כתובות לקבלה</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">אלה כתובות הביטקוין שלך לשליחת תשלומים. חשוב לבדוק את הסכום ואת הכתובת המקבלת לפני שליחת מטבעות.</translation>
</message>
@@ -228,6 +220,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">סיסמת הארנק שונתה בהצלחה.</translation>
</message>
<message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">שינוי הסיסמה נכשל</translation>
+ </message>
+ <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">אזהרה: מקש Caps Lock פעיל!</translation>
</message>
@@ -242,6 +238,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>BitcoinApplication</name>
<message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">קובץ ההגדרות %1 כנראה פגום או שגוי.</translation>
+ </message>
+ <message>
<source>Runaway exception</source>
<translation type="unfinished">חריגת בריחה</translation>
</message>
@@ -499,6 +499,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ה&amp;חלפת מילת צופן…</translation>
</message>
<message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">&amp;חתימה על הודעה…</translation>
+ </message>
+ <message>
<source>Sign messages with your Bitcoin addresses to prove you own them</source>
<translation type="unfinished">חתום על הודעות עם כתובות הביטקוין שלך כדי להוכיח שהן בבעלותך</translation>
</message>
@@ -511,6 +515,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">אמת הודעות כדי להבטיח שהן נחתמו עם כתובת ביטקוין מסוימות</translation>
</message>
<message>
+ <source>&amp;Load PSBT from file…</source>
+ <translation type="unfinished">&amp;טעינת PBST מקובץ…</translation>
+ </message>
+ <message>
<source>Open &amp;URI…</source>
<translation type="unfinished">פתיחת הקישור</translation>
</message>
@@ -543,10 +551,22 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">סרגל כלים לשוניות</translation>
</message>
<message>
+ <source>Syncing Headers (%1%)…</source>
+ <translation type="unfinished">הכותרות מסונכרנות (%1%)…</translation>
+ </message>
+ <message>
<source>Synchronizing with network…</source>
<translation type="unfinished">בסנכרון עם הרשת</translation>
</message>
<message>
+ <source>Indexing blocks on disk…</source>
+ <translation type="unfinished">מעביר לאינדקס בלוקים בדיסק...</translation>
+ </message>
+ <message>
+ <source>Processing blocks on disk…</source>
+ <translation type="unfinished">מעבד בלוקים בדיסק...</translation>
+ </message>
+ <message>
<source>Connecting to peers…</source>
<translation type="unfinished">מתחבר לעמיתים</translation>
</message>
@@ -610,6 +630,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">העלה עיסקת ביטקוין חתומה חלקית</translation>
</message>
<message>
+ <source>Load PSBT from &amp;clipboard…</source>
+ <translation type="unfinished">העלאת PSBT מהקליפבורד...</translation>
+ </message>
+ <message>
<source>Load Partially Signed Bitcoin Transaction from clipboard</source>
<translation type="unfinished">טעינת עסקת ביטקוין חתומה חלקית מלוח הגזירים</translation>
</message>
@@ -681,11 +705,21 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">אין ארנקים זמינים</translation>
</message>
<message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">נתוני ארנק</translation>
+ </message>
+ <message>
<source>Load Wallet Backup</source>
<extracomment>The title for Restore Wallet File Windows</extracomment>
<translation type="unfinished">טעינת גיבוי הארנק</translation>
</message>
<message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">שחזור ארנק</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
<translation type="unfinished">שם הארנק</translation>
@@ -706,6 +740,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%1 client</source>
<translation type="unfinished">לקוח %1</translation>
</message>
+ <message>
+ <source>&amp;Hide</source>
+ <translation type="unfinished">ה&amp;סתרה</translation>
+ </message>
+ <message>
+ <source>S&amp;how</source>
+ <translation type="unfinished">ה&amp;צגה</translation>
+ </message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
@@ -715,6 +757,30 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</translation>
</message>
<message>
+ <source>Click for more actions.</source>
+ <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
+ <translation type="unfinished">נא ללחוץ כאן לפעולות נוספות.</translation>
+ </message>
+ <message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">הצגת לשונית עמיתים</translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">השבתת פעילות רשת</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">הפעלת פעילות רשת</translation>
+ </message>
+ <message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">הכותרות בקדם סנכרון (%1%)…</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">שגיאה: %1</translation>
</message>
@@ -817,10 +883,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">עמלה:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">אבק:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">לאחר עמלה:</translation>
</message>
@@ -869,6 +931,18 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">העתקת הסכום</translation>
</message>
<message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">ה&amp;עתקת כתובת</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">העתקת &amp;תווית</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">העתקת &amp;סכום</translation>
+ </message>
+ <message>
<source>Copy quantity</source>
<translation type="unfinished">העתקת הכמות</translation>
</message>
@@ -885,10 +959,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">העתקת בתים</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">העתקת אבק</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">העתקת השינוי</translation>
</message>
@@ -897,18 +967,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 נעולים)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">כן</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">לא</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">תווית זו הופכת לאדומה אם מישהו מהנמענים מקבל סכום נמוך יותר מסף האבק הנוכחי.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">יכול להשתנות במגמה של +/- %1 סנטושי לקלט.</translation>
</message>
@@ -967,6 +1025,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">שחזור ארנק</translation>
+ </message>
+ </context>
+<context>
<name>WalletController</name>
<message>
<source>Close wallet</source>
@@ -1032,21 +1098,9 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">יצירת ארנק ריק</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">השתמש ב descriptors לניהול scriptPubKey </translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">ארנק Descriptor </translation>
- </message>
- <message>
<source>Create</source>
<translation type="unfinished">יצירה</translation>
</message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">מהודר ללא תמיכת sqlite (נחוץ לארנקי דסקריפטור)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1705,6 +1759,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished"> * שליחת %1 אל %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">כתובת עצמית</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">לא מצליח לחשב עמלת עיסקה או הערך הכולל של העיסקה.</translation>
</message>
@@ -2067,6 +2125,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">יוצא:</translation>
</message>
<message>
+ <source>&amp;Copy address</source>
+ <extracomment>Context menu action to copy the address of a peer.</extracomment>
+ <translation type="unfinished">ה&amp;עתקת כתובת</translation>
+ </message>
+ <message>
<source>&amp;Disconnect</source>
<translation type="unfinished">&amp;ניתוק</translation>
</message>
@@ -2202,6 +2265,18 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">העתקת &amp;כתובת משאב</translation>
</message>
<message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">ה&amp;עתקת כתובת</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">העתקת &amp;תווית</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">העתקת &amp;סכום</translation>
+ </message>
+ <message>
<source>Could not unlock wallet.</source>
<translation type="unfinished">לא ניתן לשחרר את הארנק.</translation>
</message>
@@ -2371,10 +2446,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ניקוי של כל השדות בטופס.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">אבק:</translation>
- </message>
- <message>
<source>Hide transaction fee settings</source>
<translation type="unfinished">הסתרת הגדרות עמלת עסקה</translation>
</message>
@@ -2435,10 +2506,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">העתקת בתים</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">העתקת אבק</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">העתקת השינוי</translation>
</message>
@@ -3010,10 +3077,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">נשלח אל</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">תשלום לעצמך</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">נכרו</translation>
</message>
@@ -3089,10 +3152,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">נשלח אל</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">לעצמך</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">נכרו</translation>
</message>
@@ -3109,6 +3168,18 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">סכום מזערי</translation>
</message>
<message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">ה&amp;עתקת כתובת</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">העתקת &amp;תווית</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">העתקת &amp;סכום</translation>
+ </message>
+ <message>
<source>Export Transaction History</source>
<translation type="unfinished">יצוא היסטוריית העברה</translation>
</message>
@@ -3280,6 +3351,11 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">גיבוי הארנק</translation>
</message>
<message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">נתוני ארנק</translation>
+ </message>
+ <message>
<source>Backup Failed</source>
<translation type="unfinished">הגיבוי נכשל</translation>
</message>
@@ -3315,10 +3391,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">מופץ תחת רשיון התוכנה של MIT, ראה קובץ מלווה %s או %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">שגיאה בנסיון לקרוא את %s! כל המפתחות נקראו נכונה, אך נתוני העסקה או הכתובות יתכן שחסרו או שגויים.</translation>
- </message>
- <message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
<translation type="unfinished">נא בדקו שהתאריך והשעה במחשב שלכם נכונים! אם השעון שלכם לא מסונכרן, %s לא יעבוד כהלכה.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_hi.ts b/src/qt/locale/bitcoin_hi.ts
index 15d62418fb..118269625e 100644
--- a/src/qt/locale/bitcoin_hi.ts
+++ b/src/qt/locale/bitcoin_hi.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;चुज़</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">पते भेजे जा रहे हैं</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">पते प्राप्त किए जा रहे हैं</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">भुगतान भेजने के लिए ये आपके बिटकॉइन पते हैं। कॉइन्स भेजने से पहले हमेशा राशि और प्राप्त करने वाले पते की जांच करें।</translation>
</message>
@@ -533,26 +525,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</translation>
</message>
<message>
- <source>Click for more actions.</source>
- <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
- <translation type="unfinished">अधिक विकल्पों के लिए क्लिक करें</translation>
- </message>
- <message>
- <source>Show Peers tab</source>
- <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
- <translation type="unfinished">पीयर्स टैब दिखाएं</translation>
- </message>
- <message>
- <source>Disable network activity</source>
- <extracomment>A context menu item.</extracomment>
- <translation type="unfinished">नेटवर्क गतिविधि अक्षम करें</translation>
- </message>
- <message>
- <source>Enable network activity</source>
- <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
- <translation type="unfinished">नेटवर्क गतिविधि सक्षम करें</translation>
- </message>
- <message>
<source>Error: %1</source>
<translation type="unfinished">त्रुटि: %1</translation>
</message>
@@ -595,10 +567,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">फी:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">डस्ट:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">आफ़्टर फी:</translation>
</message>
@@ -632,7 +600,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Date</source>
- <translation type="unfinished">डेट</translation>
+ <translation type="unfinished">तारीख़</translation>
</message>
<message>
<source>Confirmations</source>
@@ -675,38 +643,13 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">कॉपी बाइट्स</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">कॉपी डस्ट</translation>
- </message>
- <message>
- <source>Copy change</source>
- <translation type="unfinished">कॉपी चैंज</translation>
- </message>
- <message>
- <source>yes</source>
- <translation type="unfinished">हां</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ना</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">यदि किसी प्राप्तकर्ता को वर्तमान शेष सीमा से कम राशि प्राप्त होती है तो यह लेबल लाल हो जाता है।</translation>
- </message>
- <message>
<source>(no label)</source>
- <translation type="unfinished">(नो लेबल)</translation>
+ <translation type="unfinished">(कोई लेबल नहीं)</translation>
</message>
</context>
<context>
<name>CreateWalletActivity</name>
<message>
- <source>Create Wallet</source>
- <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
- <translation type="unfinished">वॉलेट बनाएं</translation>
- </message>
- <message>
<source>Create wallet failed</source>
<translation type="unfinished">वॉलेट बनाना विफल</translation>
</message>
@@ -792,6 +735,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">आंशिक रूप से हस्ताक्षरित लेनदेन (बाइनरी)</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">खुद का पता</translation>
+ </message>
+ <message>
<source>Total Amount</source>
<translation type="unfinished">कुल राशि</translation>
</message>
@@ -825,7 +772,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Type</source>
<extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
- <translation type="unfinished">टाइप</translation>
+ <translation type="unfinished">प्रकार</translation>
</message>
<message>
<source>Network</source>
@@ -1068,10 +1015,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">समय का निर्धारण</translation>
</message>
<message>
- <source>Last block time</source>
- <translation type="unfinished">अंतिम ब्लॉक समय</translation>
- </message>
- <message>
<source>&amp;Open</source>
<translation type="unfinished">खुला हुआ</translation>
</message>
@@ -1333,10 +1276,6 @@ For more information on using this console, type %6.
<translation type="unfinished">कॉपी &amp;अमाउंट</translation>
</message>
<message>
- <source>Could not unlock wallet.</source>
- <translation type="unfinished">वॉलेट अनलॉक नहीं किया जा सकता |</translation>
- </message>
- <message>
<source>Could not generate new %1 address</source>
<translation type="unfinished">नया पता उत्पन्न नहीं कर सका %1 </translation>
</message>
@@ -1400,7 +1339,7 @@ For more information on using this console, type %6.
<name>RecentRequestsTableModel</name>
<message>
<source>Date</source>
- <translation type="unfinished">डेट</translation>
+ <translation type="unfinished">तारीख़</translation>
</message>
<message>
<source>Label</source>
@@ -1412,7 +1351,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(नो लेबल)</translation>
+ <translation type="unfinished">(कोई लेबल नहीं)</translation>
</message>
<message>
<source>(no message)</source>
@@ -1518,10 +1457,6 @@ For more information on using this console, type %6.
<translation type="unfinished">इनपुट्स…</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">डस्ट:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">चुज…</translation>
</message>
@@ -1598,10 +1533,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">कॉपी बाइट्स</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">कॉपी डस्ट</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">कॉपी चैंज</translation>
</message>
@@ -1788,7 +1719,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(नो लेबल)</translation>
+ <translation type="unfinished">(कोई लेबल नहीं)</translation>
</message>
</context>
<context>
@@ -2067,7 +1998,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Date</source>
- <translation type="unfinished">डेट</translation>
+ <translation type="unfinished">तारीख़</translation>
</message>
<message>
<source>Source</source>
@@ -2095,7 +2026,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>watch-only</source>
- <translation type="unfinished">निगरानी-केवल</translation>
+ <translation type="unfinished">केवल निगरानी</translation>
</message>
<message>
<source>label</source>
@@ -2212,11 +2143,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<name>TransactionTableModel</name>
<message>
<source>Date</source>
- <translation type="unfinished">डेट</translation>
+ <translation type="unfinished">तारीख़</translation>
</message>
<message>
<source>Type</source>
- <translation type="unfinished">टाइप</translation>
+ <translation type="unfinished">प्रकार</translation>
</message>
<message>
<source>Label</source>
@@ -2228,7 +2159,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Abandoned</source>
- <translation type="unfinished">अबॅन्डन्ड</translation>
+ <translation type="unfinished">छोड़ दिया </translation>
</message>
<message>
<source>Confirming (%1 of %2 recommended confirmations)</source>
@@ -2240,7 +2171,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Conflicted</source>
- <translation type="unfinished">विरोध हुआ</translation>
+ <translation type="unfinished">एक दूसरे के विरोध में</translation>
</message>
<message>
<source>Immature (%1 confirmations, will be available after %2)</source>
@@ -2248,20 +2179,108 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Generated but not accepted</source>
- <translation type="unfinished">जनरेट किया गया लेकिन स्वीकार नहीं किया गया</translation>
+ <translation type="unfinished">निकाला गया पर स्वीकार नहीं </translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">के साथ प्राप्त हुए</translation>
+ </message>
+ <message>
+ <source>Received from</source>
+ <translation type="unfinished">से मिला</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">को भेजा</translation>
+ </message>
+ <message>
+ <source>Mined</source>
+ <translation type="unfinished">माइन किया</translation>
</message>
<message>
<source>watch-only</source>
- <translation type="unfinished">निगरानी-केवल</translation>
+ <translation type="unfinished">केवल निगरानी</translation>
+ </message>
+ <message>
+ <source>(n/a)</source>
+ <translation type="unfinished">(असंबंधित)</translation>
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(नो लेबल)</translation>
+ <translation type="unfinished">(कोई लेबल नहीं)</translation>
</message>
- </context>
+ <message>
+ <source>Transaction status. Hover over this field to show number of confirmations.</source>
+ <translation type="unfinished">लेनदेन की जानकारी. इस फ़ील्ड पर कर्सर लाएं ताकि कन्फ़र्मेशन की संख्या पता चले.</translation>
+ </message>
+ <message>
+ <source>Date and time that the transaction was received.</source>
+ <translation type="unfinished">तारीख़ और समय जब आपको ट्रांज़ेक्शन मिला. </translation>
+ </message>
+ <message>
+ <source>Type of transaction.</source>
+ <translation type="unfinished">ट्रांज़ेक्शन का प्रकार</translation>
+ </message>
+ <message>
+ <source>Amount removed from or added to balance.</source>
+ <translation type="unfinished">पैसा बैलेंस से हटाया या जोड़ा गया.</translation>
+ </message>
+</context>
<context>
<name>TransactionView</name>
<message>
+ <source>All</source>
+ <translation type="unfinished">सभी</translation>
+ </message>
+ <message>
+ <source>Today</source>
+ <translation type="unfinished">आज</translation>
+ </message>
+ <message>
+ <source>This week</source>
+ <translation type="unfinished">इस हफ़्ते</translation>
+ </message>
+ <message>
+ <source>This month</source>
+ <translation type="unfinished">इस महीने</translation>
+ </message>
+ <message>
+ <source>Last month</source>
+ <translation type="unfinished">पिछले महीने</translation>
+ </message>
+ <message>
+ <source>This year</source>
+ <translation type="unfinished">इस साल</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">के साथ प्राप्त हुए</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">को भेजा</translation>
+ </message>
+ <message>
+ <source>Mined</source>
+ <translation type="unfinished">माइन किया</translation>
+ </message>
+ <message>
+ <source>Other</source>
+ <translation type="unfinished">दूसरा</translation>
+ </message>
+ <message>
+ <source>Enter address, transaction id, or label to search</source>
+ <translation type="unfinished">सर्च करने के लिए अपना पता, ट्रांज़ेक्शन आईडी या लेबल डालें</translation>
+ </message>
+ <message>
+ <source>Min amount</source>
+ <translation type="unfinished">कम से कम राशि</translation>
+ </message>
+ <message>
+ <source>Range…</source>
+ <translation type="unfinished">सीमा...</translation>
+ </message>
+ <message>
<source>&amp;Copy address</source>
<translation type="unfinished">&amp;कॉपी पता</translation>
</message>
@@ -2284,11 +2303,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Date</source>
- <translation type="unfinished">डेट</translation>
+ <translation type="unfinished">तारीख़</translation>
</message>
<message>
<source>Type</source>
- <translation type="unfinished">टाइप</translation>
+ <translation type="unfinished">प्रकार</translation>
</message>
<message>
<source>Label</source>
@@ -2326,7 +2345,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<name>WalletView</name>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">&amp;एक्सपोर्ट</translation>
+ <translation type="unfinished">निर्यात</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
diff --git a/src/qt/locale/bitcoin_hr.ts b/src/qt/locale/bitcoin_hr.ts
index fc86e84d7c..741cd1cb2b 100644
--- a/src/qt/locale/bitcoin_hr.ts
+++ b/src/qt/locale/bitcoin_hr.ts
@@ -39,11 +39,11 @@
</message>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">&amp;Izvozi</translation>
+ <translation type="unfinished">&amp;Izvezite</translation>
</message>
<message>
<source>&amp;Delete</source>
- <translation type="unfinished">Iz&amp;brišite</translation>
+ <translation type="unfinished">&amp;Izbrišite</translation>
</message>
<message>
<source>Choose the address to send coins to</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Odaberite</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adrese pošiljatelja</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adrese primatelja</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ovo su vaše Bitcoin adrese za slanje novca. Uvijek provjerite iznos i adresu primatelja prije slanja novca.</translation>
</message>
@@ -875,10 +867,6 @@ Potpisivanje je moguće samo sa 'legacy' adresama. </translation>
<translation type="unfinished">Naknada:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prah:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Nakon naknade:</translation>
</message>
@@ -967,10 +955,6 @@ Potpisivanje je moguće samo sa 'legacy' adresama. </translation>
<translation type="unfinished">Kopirajte količinu bajtova</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopirajte sićušne iznose ("prašinu")</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopirajte ostatak</translation>
</message>
@@ -979,18 +963,6 @@ Potpisivanje je moguće samo sa 'legacy' adresama. </translation>
<translation type="unfinished">(%1 zaključen)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">da</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ne</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Oznaka postane crvene boje ako bilo koji primatelj dobije iznos manji od trenutnog praga "prašine" (sićušnog iznosa).</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Može varirati +/- %1 satoši(ja) po inputu.</translation>
</message>
@@ -1136,14 +1108,6 @@ Potpisivanje je moguće samo sa 'legacy' adresama. </translation>
<translation type="unfinished">Stvorite prazni novčanik</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Koristi deskriptore za upravljanje scriptPubKey-a</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptor novčanik</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Koristi vanjski potpisni uređaj kao što je hardverski novčanik. Prije korištenja konfiguriraj vanjski potpisni skript u postavkama novčanika.</translation>
</message>
@@ -1156,10 +1120,6 @@ Potpisivanje je moguće samo sa 'legacy' adresama. </translation>
<translation type="unfinished">Stvorite</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Kompajlirano bez sqlite mogućnosti (potrebno za deskriptor novčanike)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Kompajlirano bez mogućnosti vanjskog potpisivanje (potrebno za vanjsko potpisivanje)</translation>
@@ -1932,6 +1892,10 @@ Potpisivanje je moguće samo sa 'legacy' adresama. </translation>
<translation type="unfinished">* Šalje %1 %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">vlastita adresa</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Ne mogu izračunati naknadu za transakciju niti totalni iznos transakcije.</translation>
</message>
@@ -2789,10 +2753,6 @@ Za više informacija o korištenju ove konzile, utipkajte %6.
<translation type="unfinished">Inputi...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prah:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Odaberi...</translation>
</message>
@@ -2870,10 +2830,6 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k
<translation type="unfinished">Kopirajte količinu bajtova</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopirajte sićušne iznose ("prašinu")</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopirajte ostatak</translation>
</message>
@@ -3501,10 +3457,6 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k
<translation type="unfinished">Poslano za</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Plaćanje samom sebi</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Rudareno</translation>
</message>
@@ -3580,10 +3532,6 @@ Napomena: Budući da se naknada računa po bajtu, naknada od "100 satošija po k
<translation type="unfinished">Poslano za</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Samom sebi</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Rudareno</translation>
</message>
@@ -3876,10 +3824,6 @@ Idi na Datoteka &gt; Otvori novčanik za učitanje novčanika.
<translation type="unfinished">Distribuirano pod MIT licencom softvera. Vidite pripadajuću datoteku %s ili %s.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Greška kod iščitanja %s! Svi ključevi su ispravno učitani, ali transakcijski podaci ili zapisi u adresaru mogu biti nepotpuni ili netočni.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Greška u čitanju %s! Transakcijski podaci nedostaju ili su netočni. Ponovno skeniranje novčanika.</translation>
</message>
@@ -3948,10 +3892,6 @@ Idi na Datoteka &gt; Otvori novčanik za učitanje novčanika.
<translation type="unfinished">Baza blokova sadrži blok koji je naizgled iz budućnosti. Može to biti posljedica krivo namještenog datuma i vremena na vašem računalu. Obnovite bazu blokova samo ako ste sigurni da su točni datum i vrijeme na vašem računalu.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Index bloka db sadrži legacy 'txindex'. Kako biste očistili zauzeti prostor na disku, pokrenite puni -reindex ili ignorirajte ovu grešku. Ova greška neće biti ponovno prikazana.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Iznos transakcije je premalen za poslati nakon naknade</translation>
</message>
@@ -4036,10 +3976,6 @@ Idi na Datoteka &gt; Otvori novčanik za učitanje novčanika.
<translation type="unfinished">Nije moguće pisati u podatkovnu mapu '%s'; provjerite dozvole.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Unaprijeđenje -txindex koje za započela prijašnja verzija nije moguće završiti. Ponovno pokrenite s prethodnom verzijom ili pokrenite potpuni -reindex.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Nije moguće ponuditi specifične veze i istovremeno dati addrman da traži izlazne veze.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_hu.ts b/src/qt/locale/bitcoin_hu.ts
index 533e6a25ef..669a6269fc 100644
--- a/src/qt/locale/bitcoin_hu.ts
+++ b/src/qt/locale/bitcoin_hu.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">K&amp;iválaszt</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Küldési címek</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Fogadási címek</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ezek az Ön Bitcoin címei kifizetések küldéséhez. Mindig ellenőrizze az összeget és a fogadó címet mielőtt érméket küldene.</translation>
</message>
@@ -102,6 +94,14 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<translation type="unfinished">Hiba történt a címlista %1 mentésekor. Kérem próbálja újra.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Küldési címek - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Fogadó címek - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Sikertelen exportálás</translation>
</message>
@@ -728,7 +728,7 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<message>
<source>Wallet Data</source>
<extracomment>Name of the wallet data file format.</extracomment>
- <translation type="unfinished">Tárca adatai</translation>
+ <translation type="unfinished">Tárca adat</translation>
</message>
<message>
<source>Load Wallet Backup</source>
@@ -801,6 +801,10 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<translation type="unfinished">Fejlécek szinkronizálása (%1%)…</translation>
</message>
<message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Nem sikerült új tárcát létrehozni, a program sqlite támogatás nélkül lett fordítva (követelmény a leíró tárcákhoz)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Hiba: %1</translation>
</message>
@@ -907,10 +911,6 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<translation type="unfinished">Díj:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Porszem:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Díj levonása után:</translation>
</message>
@@ -964,11 +964,11 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
</message>
<message>
<source>Copy &amp;label</source>
- <translation type="unfinished">Címke &amp;másolása</translation>
+ <translation type="unfinished">C&amp;ímke másolása</translation>
</message>
<message>
<source>Copy &amp;amount</source>
- <translation type="unfinished">Ö&amp;sszeg másolása</translation>
+ <translation type="unfinished">&amp;Összeg másolása</translation>
</message>
<message>
<source>Copy transaction &amp;ID and output index</source>
@@ -999,10 +999,6 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<translation type="unfinished">Byte-ok másolása</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Porszem tulajdonság másolása</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Visszajáró másolása</translation>
</message>
@@ -1011,18 +1007,6 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<translation type="unfinished">(%1 zárolva)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">igen</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nem</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ez a címke pirosra változik, ha bármely fogadóhoz, a porszem határértéknél kevesebb összeg érkezik.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Eltérhet +/- %1 satoshi-val bemenetenként.</translation>
</message>
@@ -1200,14 +1184,6 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<translation type="unfinished">Üres tárca készítése</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Leírók használata scriptPubKey kezeléséhez</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Leíró tárca</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Külső aláíró eszköz például hardver tárca használata. Előtte konfigurálja az aláíró szkriptet a tárca beállításaiban.</translation>
</message>
@@ -1220,10 +1196,6 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<translation type="unfinished">Létrehozás</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">SQLite támogatás nélkül fordítva (követelmény a leíró tárca használatához)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">A program külső aláíró támogatás nélkül lett fordítva (követelmény külső aláírók használatához)</translation>
@@ -2016,6 +1988,10 @@ Aláírni csak régi típusú, egyessel kezdődő címekkel lehet.</translation>
<translation type="unfinished"> * Küldés %1 to %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">saját cím</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Nem sikerült tranzakciós díjat vagy teljes tranzakció értéket számolni.</translation>
</message>
@@ -2930,10 +2906,6 @@ Gépeljen %5 az elérhető parancsok áttekintéséhez. Több információért a
<translation type="unfinished">Bemenetek...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Porszem:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Válasszon...</translation>
</message>
@@ -3010,10 +2982,6 @@ Megjegyzés: Mivel a díj bájtonként van kiszámítva, egy "100 satoshi kvB-nk
<translation type="unfinished">Byte-ok másolása</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Porszem tulajdonság másolása</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Visszajáró másolása</translation>
</message>
@@ -3482,7 +3450,7 @@ Megjegyzés: Mivel a díj bájtonként van kiszámítva, egy "100 satoshi kvB-nk
</message>
<message>
<source>From</source>
- <translation type="unfinished">Küldő</translation>
+ <translation type="unfinished">Innen</translation>
</message>
<message>
<source>unknown</source>
@@ -3490,7 +3458,7 @@ Megjegyzés: Mivel a díj bájtonként van kiszámítva, egy "100 satoshi kvB-nk
</message>
<message>
<source>To</source>
- <translation type="unfinished">Címzett</translation>
+ <translation type="unfinished">Ide</translation>
</message>
<message>
<source>own address</source>
@@ -3665,10 +3633,6 @@ Megjegyzés: Mivel a díj bájtonként van kiszámítva, egy "100 satoshi kvB-nk
<translation type="unfinished">Elküldve ide</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Saját részre kifizetve</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Bányászva</translation>
</message>
@@ -3744,10 +3708,6 @@ Megjegyzés: Mivel a díj bájtonként van kiszámítva, egy "100 satoshi kvB-nk
<translation type="unfinished">Elküldve ide</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Saját részre</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Bányászva</translation>
</message>
@@ -3773,11 +3733,11 @@ Megjegyzés: Mivel a díj bájtonként van kiszámítva, egy "100 satoshi kvB-nk
</message>
<message>
<source>Copy &amp;label</source>
- <translation type="unfinished">Címke &amp;másolása</translation>
+ <translation type="unfinished">C&amp;ímke másolása</translation>
</message>
<message>
<source>Copy &amp;amount</source>
- <translation type="unfinished">Ö&amp;sszeg másolása</translation>
+ <translation type="unfinished">&amp;Összeg másolása</translation>
</message>
<message>
<source>Copy transaction &amp;ID</source>
@@ -3886,7 +3846,7 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
</message>
<message>
<source>Create a new wallet</source>
- <translation type="unfinished">Új tárca készítése</translation>
+ <translation type="unfinished">Új tárca létrehozása</translation>
</message>
<message>
<source>Error</source>
@@ -3999,7 +3959,7 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<message>
<source>Wallet Data</source>
<extracomment>Name of the wallet data file format.</extracomment>
- <translation type="unfinished">Tárca adatai</translation>
+ <translation type="unfinished">Tárca adat</translation>
</message>
<message>
<source>Backup Failed</source>
@@ -4033,6 +3993,10 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<translation type="unfinished">%s sérült. Próbálja meg a bitcoint-wallet tárca mentő eszközt használni, vagy állítsa helyre egy biztonsági mentésből.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s: az -assumeutxo pillanatkép állapot jóváhagyása sikertelen. Ez hardverproblémára, programhibára vagy olyan hibás módosításra utalhat a programban, ami engedélyezte az érvénytelen pillanatkép betöltését. Emiatt a csomópont most leáll és nem használ olyan állapotot ami a megadott pillanatképre épül, újraépítve a blokkláncot %d és %d között. A következő indításkor a csomópont szinkronizálni fog innen: %d figyelmen kívül hagyva minden adatot a pillanatképből. Kérjük jelentse ezt a problémát itt: %s, hozzátéve hogyan jutott a hibát okozó pillanatképhez. Az érvénytelen láncállapot pillanatkép megőrizve marad a lemezen arra az esetre, ha hasznosnak bizonyul a hiba okának feltárása során.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s kérés figyel a(z) %u porton. Ennek a portnak a megítélése "rossz" ezért valószínűtlen, hogy más partner ezen keresztül csatlakozna. Részletekért és teljes listáért lásd doc/p2p-bad-ports.md.</translation>
</message>
@@ -4061,10 +4025,6 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<translation type="unfinished">Hiba a tárca betöltése közben. A tárca igényli a letöltött blokkokat, de a szoftver jelenleg nem támogatja a tárcák betöltését miközben a blokkok soron kívüli letöltése zajlik feltételezett utxo pillanatképek használatával. A tárca betöltése sikerülhet amint a csomópont szinkronizálása eléri a %s magasságot.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Hiba %s beolvasása közben. Az összes kulcs sikeresen beolvasva, de a tranzakciós adatok és a címtár rekordok hiányoznak vagy sérültek.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Hiba %s olvasásakor! A tranzakciós adatok hiányosak vagy sérültek. Tárca átfésülése folyamatban.</translation>
</message>
@@ -4133,6 +4093,10 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<translation type="unfinished">Ritkítás: az utolsó tárcaszinkronizálás meghaladja a ritkított adatokat. Szükséges a -reindex használata (ritkított csomópont esetében a teljes blokklánc ismételt letöltése).</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Sikertelen átnevezés: '%s' -&gt; '%s'. Ezt megoldhatja azzal, ha kézzel áthelyezi vagy törli az érvénytelen pillanatkép könyvtárat %s, különben ugyanebbe a hibába fog ütközni a következő indításkor is.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: Ismeretlen sqlite tárca séma verzió: %d. Csak az alábbi verzió támogatott: %d</translation>
</message>
@@ -4141,10 +4105,6 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<translation type="unfinished">A blokk-adatbázis tartalmaz egy blokkot ami a jövőből érkezettnek látszik. Ennek oka lehet, hogy a számítógép dátum és idő beállítása helytelen. Csak akkor építse újra a blokk-adatbázist ha biztos vagy benne, hogy az időbeállítás helyes.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">A blokk index adatbázis régi típusú 'txindex'-et tartalmaz. Az elfoglalt tárhely felszabadításához futtassa a teljes -reindex parancsot, vagy hagyja figyelmen kívül ezt a hibát. Ez az üzenet nem fog újra megjelenni.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">A tranzakció összege túl alacsony az elküldéshez miután a díj levonódik</translation>
</message>
@@ -4181,6 +4141,10 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<translation type="unfinished">A megadott tárca fájl formátuma "%s" ismeretlen. Kérjuk adja meg "bdb" vagy "sqlite" egyikét.</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Nem támogatott kategóriához kötött naplózási szint %1$=%2$s. Várt %1$s=&lt;category&gt;:&lt;loglevel&gt;. Érvényes kategóriák: %3$s. Érvényes naplózási szintek: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Nem támogatott láncállapot-adatbázis formátum található. Kérjük indítsa újra -reindex-chainstate kapcsolóval. Ez újraépíti a láncállapot-adatbázist.</translation>
</message>
@@ -4189,6 +4153,10 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<translation type="unfinished">Tárca sikeresen létrehozva. A régi típusú tárcák elavultak ezért a régi típusú tárcák létrehozásának és megnyitásának támogatása a jövőben meg fog szűnni.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Tárca betöltése sikeres. A régi típusú tárcák elavultak ezért a régi típusú tárcák létrehozásának és megnyitásának támogatása a jövőben meg fog szűnni. Régi típusú tárcáról való áttérés leíró tárcára a migratewallet paranccsal lehetséges.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Figyelmeztetés: A dumpfájl tárca formátum (%s) nem egyezik a parancssor által megadott formátummal (%s).</translation>
</message>
@@ -4237,30 +4205,10 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<translation type="unfinished">Nem lehet írni a '%s' könyvtárba; ellenőrizze a jogosultságokat.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">A -txindex frissítése nem fejezhető be mivel egy korábbi verzió kezdte el. Indítsa újra az előző verziót vagy futtassa a teljes -reindex parancsot.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s: az -assumeutxo pillanatkép állapot jóváhagyása sikertelen. Ez hardverproblémára, programhibára vagy olyan hibás módosításra utalhat a programban, ami engedélyezte az érvénytelen pillanatkép betöltését. Emiatt a csomópont most leáll és nem használ olyan állapotot ami a megadott pillanatképre épül, újraépítve a blokkláncot %d és %d között. A következő indításkor a csomópont szinkronizálni fog innen: %d figyelmen kívül hagyva minden adatot a pillanatképből. Kérjük jelentse ezt a problémát itt: %s, hozzátéve hogyan jutott a hibát okozó pillanatképhez. Az érvénytelen láncállapot pillanatkép megőrizve marad a lemezen arra az esetre, ha hasznosnak bizonyul a hiba okának feltárása során.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s nagyon magasra van állítva! Ilyen magas díj akár egyetlen tranzakció költsége is lehet.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">A -reindex-chainstate összeférhetetlen a -blockfilterindex kapcsolóval. Kérjük átmenetileg tiltsa le a blockfilterindex-et amíg a -reindex-chainstate használatban van, vagy használja a -reindex-chainstate helyett a -reindex kapcsolót ami teljesen újraépíti az összes indexet.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">A -reindex-chainstate összeférhetetlen a -coinstatindex kapcsolóval. Kérjük átmenetileg tiltsa le a coinstatindex-et amíg a -reindex-chainstate használatban van, vagy használja a -reindex-chainstate helyett a -reindex kapcsolót ami teljesen újraépíti az összes indexet.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">A -reindex-chainstate összeférhetetlen a -txindex kapcsolóval. Kérjük átmenetileg tiltsa le a txindex-et amíg a -reindex-chainstate használatban van, vagy használja a -reindex-chainstate helyett a -reindex kapcsolót ami teljesen újraépíti az összes indexet.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Nem lehetséges a megadott kapcsolatok és az addrman által felderített kapcsolatok egyidejű használata.</translation>
</message>
@@ -4269,6 +4217,10 @@ A "Fájl &gt; Tárca megnyitása" menüben tölthet be egyet.
<translation type="unfinished">Hiba %s betöltése közben: Külső aláíró tárca betöltése külső aláírók támogatása nélkül</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Hiba %s beolvasása közben. Az összes kulcs sikeresen beolvasva, de a tranzakciós adatok vagy a címtár rekordok hiányoznak vagy sérültek.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Hiba: A címjegyzék adatot nem lehet beazonosítani, hogy a migrált tárcákhoz tartozna</translation>
</message>
@@ -4355,10 +4307,6 @@ Kérjük próbálja futtatni a legújabb szoftver verziót.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Nem támogatott kategóriához kötött naplózási szint -loglevel=%s. Várt -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Érvényes kategóriák: %s. Érvényes naplózási szintek: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4551,6 +4499,10 @@ A tárca biztonsági mentésének visszaállítása sikertelen.</translation>
<translation type="unfinished">Indítás közben nem sikerült átfésülni a tárcát</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Indexek indítása sikertelen, a program leáll...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Adatbázis ellenőrzése sikertelen</translation>
</message>
@@ -4867,8 +4819,12 @@ A tárca biztonsági mentésének visszaállítása sikertelen.</translation>
<translation type="unfinished">Ismeretlen új szabályok aktiválva (verzióbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Nem támogatott globális naplózási szint -loglevel=%s. Lehetséges értékek: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nem támogatott globális naplózási szint %s=%s. Lehetséges értékek: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates nem támogatott ezen a láncon: %s</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_id.ts b/src/qt/locale/bitcoin_id.ts
index 4d900ed4d2..989d7b1f40 100644
--- a/src/qt/locale/bitcoin_id.ts
+++ b/src/qt/locale/bitcoin_id.ts
@@ -34,22 +34,10 @@
<translation type="unfinished">Pilih alamat tujuan pengiriman koin</translation>
</message>
<message>
- <source>Choose the address to receive coins with</source>
- <translation type="unfinished">Pilih alamat untuk menerima koin dengan</translation>
- </message>
- <message>
<source>C&amp;hoose</source>
<translation type="unfinished">&amp;Choose</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Alamat pengirim</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Alamat penerima</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ini adalah alamat Bitcoin Anda untuk mengirim pembayaran. Selalu periksa jumlah dan alamat penerima sebelum mengirim koin.</translation>
</message>
@@ -374,6 +362,14 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">Tutup semua dompet</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrasi dompet</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrasi sebuah dompet</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Tampilkan %1 pesan bantuan untuk mendapatkan daftar opsi baris perintah Bitcoin yang memungkinkan</translation>
</message>
@@ -394,6 +390,11 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">Tidak ada wallet tersedia</translation>
</message>
<message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Data Dompet</translation>
+ </message>
+ <message>
<source>Load Wallet Backup</source>
<extracomment>The title for Restore Wallet File Windows</extracomment>
<translation type="unfinished">Muat Pencadangan Dompet</translation>
@@ -403,21 +404,94 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
<translation type="unfinished">Pulihkan Dompet</translation>
</message>
+ <message>
+ <source>Wallet Name</source>
+ <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
+ <translation type="unfinished">Nama Dompet</translation>
+ </message>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;Jendela</translation>
+ </message>
+ <message>
+ <source>Main Window</source>
+ <translation type="unfinished">Jendela Utama</translation>
+ </message>
+ <message>
+ <source>%1 client</source>
+ <translation type="unfinished">%1 klien</translation>
+ </message>
+ <message>
+ <source>&amp;Hide</source>
+ <translation type="unfinished">Sembunyi</translation>
+ </message>
+ <message>
+ <source>S&amp;how</source>
+ <translation type="unfinished">Tampilkan</translation>
+ </message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ <numerusform>%n koneksi yang aktif ke jaringan Bitcoin</numerusform>
</translation>
</message>
<message>
+ <source>Click for more actions.</source>
+ <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
+ <translation type="unfinished">Klik untuk tindakan lainnya</translation>
+ </message>
+ <message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">Tampilkan tab Rekan</translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">nonaktifkan aktivitas jaringan</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">aktifkan aktivitas jaringan</translation>
+ </message>
+ <message>
<source>Pre-syncing Headers (%1%)…</source>
<translation type="unfinished">Pra-Singkronisasi Header (%1%)...</translation>
</message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Gagal saat membuat dompet</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Tidak bisa membuat dompet baru, perangkat lunak dikompilasi tanpa dukungan sqlite (yang diperlukan untuk dompet deskriptor)</translation>
+ </message>
+ </context>
+<context>
+ <name>CoinControlDialog</name>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">Salin Perubahan</translation>
+ </message>
+ <message>
+ <source>(%1 locked)</source>
+ <translation type="unfinished">(%1 terkunci)</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(tidak ada label)</translation>
+ </message>
</context>
<context>
<name>CreateWalletActivity</name>
<message>
+ <source>Create Wallet</source>
+ <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
+ <translation type="unfinished">Bikin dompet</translation>
+ </message>
+ <message>
<source>Too many external signers found</source>
<translation type="unfinished">Terlalu banyak penanda tangan eksternal ditemukan</translation>
</message>
@@ -436,6 +510,25 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrasi dompet</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrasi dompet</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migrasi gagal</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migrasi berhasil</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -450,11 +543,6 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">wallet default</translation>
</message>
<message>
- <source>Open Wallet</source>
- <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Buka Wallet</translation>
- </message>
- <message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
<translation type="unfinished">Membuka Wallet &lt;b&gt;%1&lt;/b&gt;...</translation>
@@ -491,10 +579,6 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<context>
<name>WalletController</name>
<message>
- <source>Close wallet</source>
- <translation type="unfinished">Tutup wallet</translation>
- </message>
- <message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
<translation type="unfinished">Apakah anda yakin ingin menutup dompet &lt;i&gt;%1&lt;/i&gt;?</translation>
</message>
@@ -518,6 +602,14 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">Bikin dompet</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Anda hanya selangkah lagi untuk membuat dompet baru anda!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Mohon sertakan nama, dan jika diinginkan, aktifkan pilihan lanjut apapun</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Nama Dompet</translation>
</message>
@@ -554,14 +646,6 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">Buat dompet kosong</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Pakai deskriptor untuk managemen scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Dompet Deskriptor</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Gunakan perangkat penandatanganan eksternal seperti dompet perangkat keras. Konfigurasikan skrip penandatangan eksternal di preferensi dompet terlebih dahulu.</translation>
</message>
@@ -574,10 +658,6 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">Membuat</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Dikompilasi tanpa support sqlite (dibutuhkan untuk dompet deskriptor)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Dikompilasi tanpa dukungan penandatanganan eksternal (diperlukan untuk penandatanganan eksternal)</translation>
@@ -961,6 +1041,10 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">&amp;Jalur skrip penanda tangan eksternal</translation>
</message>
<message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;Jendela</translation>
+ </message>
+ <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Dikompilasi tanpa dukungan penandatanganan eksternal (diperlukan untuk penandatanganan eksternal)</translation>
@@ -1003,10 +1087,47 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
<translation type="unfinished">Umur</translation>
</message>
+ <message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">Alamat</translation>
+ </message>
</context>
<context>
<name>RPCConsole</name>
<message>
+ <source>Current number of transactions</source>
+ <translation type="unfinished">Jumlah transaksi saat ini</translation>
+ </message>
+ <message>
+ <source>Memory usage</source>
+ <translation type="unfinished">Penggunaan memori</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <translation type="unfinished">Diterima</translation>
+ </message>
+ <message>
+ <source>Sent</source>
+ <translation type="unfinished">Terkirim</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transpor</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">String ID sesi BIP324 dalam heksadesimal, jika ada.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID sesi</translation>
+ </message>
+ <message>
+ <source>Version</source>
+ <translation type="unfinished">Versi</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">Apakah kita merelay transaksi ke peer ini.</translation>
</message>
@@ -1024,6 +1145,20 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
<translation type="unfinished">Jumlah total alamat yang diterima dari rekan ini yang dihapus (tidak diproses) karena pembatasan tarif.</translation>
</message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">Waktu blok terakhir</translation>
+ </message>
+ <message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">mendeteksi: peer bisa jadi v1 atau v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protokol transportasi teks biasa tanpa enkripsi</translation>
+ </message>
</context>
<context>
<name>ReceiveCoinsDialog</name>
@@ -1043,6 +1178,17 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<source>Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
<translation type="unfinished">Bech32m (BIP-350) adalah peningkatan terhadap Bech32, dukungan dompet masih terbatas.</translation>
</message>
+ <message>
+ <source>Could not unlock wallet.</source>
+ <translation type="unfinished">Tidak dapat membuka dompet.</translation>
+ </message>
+ </context>
+<context>
+ <name>RecentRequestsTableModel</name>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(tidak ada label)</translation>
+ </message>
</context>
<context>
<name>SendCoinsDialog</name>
@@ -1070,7 +1216,11 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<numerusform>Estimated to begin confirmation within %n block(s).</numerusform>
</translation>
</message>
- </context>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(tidak ada label)</translation>
+ </message>
+</context>
<context>
<name>TransactionDesc</name>
<message>
@@ -1091,12 +1241,27 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
</message>
</context>
<context>
+ <name>TransactionTableModel</name>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(tidak ada label)</translation>
+ </message>
+ </context>
+<context>
<name>TransactionView</name>
<message>
<source>Comma separated file</source>
<extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
<translation type="unfinished">File yang dipisahkan koma</translation>
</message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Alamat</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Gagal Mengekspor</translation>
+ </message>
</context>
<context>
<name>WalletFrame</name>
@@ -1123,6 +1288,11 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<source>Export the data in the current tab to a file</source>
<translation type="unfinished">Ekspor data di tab saat ini ke sebuah file</translation>
</message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Data Dompet</translation>
+ </message>
</context>
<context>
<name>bitcoin-core</name>
@@ -1159,16 +1329,8 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">Dompet berhasil dibuat. Jenis dompet lama tidak digunakan lagi dan dukungan untuk membuat dan membuka dompet lama akan dihapus di masa mendatang.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Opsi -reindex-chainstate tidak kompatibel dengan -blockfilterindex. Harap nonaktifkan blockfilterindex sementara saat menggunakan -reindex-chainstate, atau ganti -reindex-chainstate dengan -reindex untuk membangun kembali semua indeks sepenuhnya.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Opsi -reindex-chainstate tidak kompatibel dengan -coinstatsindex. Harap nonaktifkan sementara coinstatsindex saat menggunakan -reindex-chainstate, atau ganti -reindex-chainstate dengan -reindex untuk membangun kembali semua indeks sepenuhnya.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Opsi -reindex-chainstate tidak kompatibel dengan -txindex. Harap nonaktifkan sementara txindex saat menggunakan -reindex-chainstate, atau ganti -reindex-chainstate dengan -reindex untuk sepenuhnya membangun kembali semua indeks.</translation>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Dompet berhasil dimuat. Tipe dompet lama akan ditinggalkan dan dukungan untuk membuat dan membuka dompet ini akan dihapus di masa depan. Dompet lama dapat dimigrasikan ke dompet deskriptor dengan migratewallet.</translation>
</message>
<message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
@@ -1183,6 +1345,10 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">Kesalahan: %s transaksi di dompet tidak dapat diidentifikasi sebagai dompet yang dimigrasikan</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Gagal menghitung biaya peningkatan, karena UTXO yang belum dikonfirmasi bergantung pada kelompok besar transaksi yang belum dikonfirmasi.</translation>
+ </message>
+ <message>
<source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
<translation type="unfinished">Opsi yang tidak kompatibel: -dnsseed=1 secara eksplisit ditentukan, tetapi -onlynet melarang koneksi ke IPv4/IPv6</translation>
</message>
@@ -1211,6 +1377,14 @@ Tanda tangan hanya bisa digunakan dengan tipe alamat 'warisan'</translation>
<translation type="unfinished">Jumlah total koin yang dipilih tidak menutupi transaksi target. Silahkan izinkan input yang lain untuk secara otomatis dipilih atau masukkan lebih banyak koin secara manual.</translation>
</message>
<message>
+ <source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
+ <translation type="unfinished">Snapshot UTXO gagal divalidasi. Mulai ulang untuk melanjutkan pengunduhan blok awal normal, atau coba muat snapshot yang berbeda.</translation>
+ </message>
+ <message>
+ <source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
+ <translation type="unfinished">UTXO yang belum dikonfirmasi tersedia, tetapi menghabiskannya menciptakan rantai transaksi yang akan ditolak oleh mempool</translation>
+ </message>
+ <message>
<source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
The wallet might have been tampered with or created with malicious intent.
@@ -1233,10 +1407,6 @@ Silakan coba jalankan versi perangkat lunak terbaru.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Level logging khusus kategori yang tidak didukung -loglevel=%s. Diharapkan -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Kategori yang valid: %s. Level log yang valid: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -1249,6 +1419,10 @@ Unable to restore backup of wallet.</source>
Tidak dapat memulihkan cadangan dompet..</translation>
</message>
<message>
+ <source>Block verification was interrupted</source>
+ <translation type="unfinished">Verifikasi Blok terganggu</translation>
+ </message>
+ <message>
<source>Error: Cannot extract destination from the generated scriptpubkey</source>
<translation type="unfinished">Eror: Tidak dapat mengekstrak destinasi dari scriptpubkey yang dibuat</translation>
</message>
@@ -1293,6 +1467,10 @@ Tidak dapat memulihkan cadangan dompet..</translation>
<translation type="unfinished">Kesalahan: Tidak dapat menghapus data buku alamat yang hanya dilihat</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Gagal memulai indeks, mematikan..</translation>
+ </message>
+ <message>
<source>Insufficient dbcache for block verification</source>
<translation type="unfinished">Kekurangan dbcache untuk verifikasi blok</translation>
</message>
@@ -1328,9 +1506,5 @@ Tidak dapat memulihkan cadangan dompet..</translation>
<source>Unable to unload the wallet before migrating</source>
<translation type="unfinished">Tidak dapat membongkar dompet sebelum bermigrasi</translation>
</message>
- <message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Level logging global yang tidak didukung -loglevel=%s. Nilai yang valid: %s.</translation>
- </message>
</context>
</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_is.ts b/src/qt/locale/bitcoin_is.ts
index 72372fccca..6ad7445e3c 100644
--- a/src/qt/locale/bitcoin_is.ts
+++ b/src/qt/locale/bitcoin_is.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Veldu</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Veski sem senda frá sér</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Veski sem þiggja til sín</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Þetta eru Bitcoin veskin sem senda greiðslur. Skoðið ævinlega vel upphæðina og veskin sem þiggja greiðslur áður en rafmynt er send.</translation>
</message>
@@ -501,10 +493,6 @@
<translation type="unfinished">Gjald:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Ryk:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Eftirgjald:</translation>
</message>
@@ -537,10 +525,6 @@
<translation type="unfinished">Móttekið með færslugildi</translation>
</message>
<message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Þetta merki verður rautt ef einhver viðtakandi tekur við upphæð sem er lægri en núgildandi þröskuldur.</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(engin merking)</translation>
</message>
@@ -765,10 +749,6 @@
<source>Change:</source>
<translation type="unfinished">Skiptimynt:</translation>
</message>
- <message>
- <source>Dust:</source>
- <translation type="unfinished">Ryk:</translation>
- </message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
@@ -858,11 +838,4 @@
<translation type="unfinished">Flytja gögn í flipanum í skrá</translation>
</message>
</context>
-<context>
- <name>bitcoin-core</name>
- <message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Villa við lestur %s! Allir lyklar fóru inn á réttan hátt, en færslugögn eða færslugildi gætu verið röng eða horfin.</translation>
- </message>
- </context>
</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_it.ts b/src/qt/locale/bitcoin_it.ts
index 0144e463ad..28320cff38 100644
--- a/src/qt/locale/bitcoin_it.ts
+++ b/src/qt/locale/bitcoin_it.ts
@@ -7,7 +7,7 @@
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">Crea un indirizzo nuovo</translation>
+ <translation type="unfinished">Crea un nuovo indirizzo</translation>
</message>
<message>
<source>&amp;New</source>
@@ -15,7 +15,7 @@
</message>
<message>
<source>Copy the currently selected address to the system clipboard</source>
- <translation type="unfinished">Copia negli appunti del sistema l'indirizzo attualmente selezionato</translation>
+ <translation type="unfinished">Copia l'indirizzo attualmente selezionato negli appunti di sistema</translation>
</message>
<message>
<source>&amp;Copy</source>
@@ -27,11 +27,11 @@
</message>
<message>
<source>Delete the currently selected address from the list</source>
- <translation type="unfinished">Rimuovi dalla lista l'indirizzo attualmente selezionato</translation>
+ <translation type="unfinished">Rimuovi l'indirizzo attualmente selezionato dall'elenco</translation>
</message>
<message>
<source>Enter address or label to search</source>
- <translation type="unfinished">Inserisci indirizzo o nominativo da cercare</translation>
+ <translation type="unfinished">Inserisci l'indirizzo o l'etichetta per la ricerca</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">Scegli</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Indirizzi d'invio</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Indirizzi di ricezione</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Questi sono i tuoi indirizzi Bitcoin per l'invio di pagamenti. Controlla sempre l'importo e l'indirizzo del beneficiario prima di inviare bitcoin.</translation>
</message>
@@ -102,6 +94,14 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">Si è verificato un errore nel salvare l'elenco degli indirizzi su %1. Provare di nuovo.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Invio indirizzi - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Ricezione indirizzi - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Esportazione Fallita</translation>
</message>
@@ -684,6 +684,14 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">Chiudi tutti i portafogli</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migra Portafoglio</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migra un portafoglio</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Mostra il messaggio di aiuto di %1 per ottenere una lista di opzioni di comando per Bitcoin</translation>
</message>
@@ -772,6 +780,14 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">Pre-sincronizzazione intestazioni (%1%)…</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Errore creazione portafoglio</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Impossibile creare un nuovo portafoglio, il software è stato compilato senza supporto sqlite (richiesto per i portafogli descrittori)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Errore: %1</translation>
</message>
@@ -878,10 +894,6 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">Commissione:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvere:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Dopo Commissione:</translation>
</message>
@@ -970,10 +982,6 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">Copia byte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copia polvere</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copia resto</translation>
</message>
@@ -982,14 +990,6 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">(%1 bloccato)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">sì</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Questa etichetta diventa rossa se uno qualsiasi dei destinatari riceve un importo inferiore alla soglia minima di polvere.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Può variare di +/- %1 satoshi per input.</translation>
</message>
@@ -1049,6 +1049,57 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrare portafoglio</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Sei sicuro di voler migrare il portafoglio &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">La migrazione del portafoglio convertirà questo portafoglio in uno o più portafogli descrittori. Dovrà essere eseguito un nuovo backup del portafoglio.
+Se questo portafoglio contiene script di sola lettura, verrà generato un nuovo portafoglio che contiene quegli scripts di sola lettura.
+Se questo portafoglio contiene script risolvibili ma non osservati, verrà creato un portafoglio nuovo differente, per contenere questi script.
+
+Il processo di migrazione creerà un backup del portafoglio prima della migrazione. Questo file di backup verrà chiamato &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak e verrà collocato nella stessa cartella di questo portafoglio. Se la migrazione non andasse a buon fine, il backup può essere ripristinato con la funzionalità "Ripristina Portafoglio".</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migra Wallet</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando il Portafoglio &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Portafoglio '%1' migrato con successo.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Gli script di sola lettura sono stati trasferiti a un nuovo portafoglio chiamato '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Gli script risolvibili ma non osservati sono stati spostati su un nuovo portafoglio chiamato '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migrazione fallita</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migrazione Riuscita</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1131,6 +1182,14 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">Crea Portafoglio</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Ti manca un ultimo passo per creare il tuo nuovo portafoglio!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Fornisci un nome e, ove desiderato, attiva le opzioni avanzate</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Nome Portafoglio</translation>
</message>
@@ -1167,14 +1226,6 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">Crea Portafoglio Vuoto</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Usa descrittori per la gestione degli scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Descrittore Portafoglio</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Usa un dispositivo esterno di firma come un portafoglio hardware. Configura lo script esterno per la firma nelle preferenze del portafoglio.</translation>
</message>
@@ -1187,10 +1238,6 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished">Crea</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilato senza il supporto per sqlite (richiesto per i descrittori portafoglio)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilato senza supporto per firma esterna (richiesto per firma esterna)</translation>
@@ -1987,6 +2034,10 @@ E' possibile firmare solo con indirizzi di tipo "legacy".</translation>
<translation type="unfinished"> * Invia %1 a %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">proprio indirizzo</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Non in grado di calcolare la fee della transazione o l'ammontare totale della transazione.</translation>
</message>
@@ -2242,6 +2293,22 @@ Se ricevi questo errore, dovresti richiedere al commerciante di fornire un URI c
<translation type="unfinished">Seleziona un peer per visualizzare informazioni più dettagliate.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versione del livello di trasporto (transport layer): %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Trasporto</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">La stringa dell' ID sessione BIP324 nell'hex, se presente.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID Sessione</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">Versione</translation>
</message>
@@ -2463,6 +2530,21 @@ Se ricevi questo errore, dovresti richiedere al commerciante di fornire un URI c
<translation type="unfinished">Trova l’indirizzo in uscita: a vita breve, per richiedere indirizzi</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">rilevamento: il peer potrebbe essere v1 o v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: non criptato, protocollo di trasporto testo semplice</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocollo di trasporto criptato BIP324 </translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">Abbiamo selezionato il peer per il relay a banda larga </translation>
</message>
@@ -2859,10 +2941,6 @@ Per ulteriori informazioni su come usare la console, premi %6.
<translation type="unfinished">Input...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Polvere:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Scegli...</translation>
</message>
@@ -2939,10 +3017,6 @@ Nota: poiché la commissione è calcolata su base per byte, una commissione di "
<translation type="unfinished">Copia byte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copia polvere</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copia resto</translation>
</message>
@@ -3592,10 +3666,6 @@ Nota: poiché la commissione è calcolata su base per byte, una commissione di "
<translation type="unfinished">Inviato a</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pagamento a te stesso</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Ottenuto dal mining</translation>
</message>
@@ -3671,10 +3741,6 @@ Nota: poiché la commissione è calcolata su base per byte, una commissione di "
<translation type="unfinished">Inviato a</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">A te stesso</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Ottenuto dal mining</translation>
</message>
@@ -3956,6 +4022,10 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">%s corrotto. Prova a usare la funzione del portafoglio bitcoin-wallet per salvare o recuperare il backup.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s non è riuscito a validare la data dello snapshot -assumeutxo. Ciò indica un errore hardware, o un bug nel software, o una cattiva modifica del software che ha permesso allo snapshot invalido di essere caricato. Di conseguenza, il nodo verrà spento e smetterà di utilizzare qualunque stato costruito sullo snapshot, reimpostando l'altezza della catena da %d a %d. Al prossimo riavvio, il nodo riprenderà la sincronizzazione da %d senza usare alcun dato dello snapshot. Per favore segnala questo incidente a %s, includendo come hai ottenuto lo snapshot. Il chainstate dello snapshot invalido rimarrà sul disco nel caso in cui tornasse utile per indagare la causa dell'errore.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s richiede di ascoltare sulla porta %u. Questa porta è considerata "cattiva" e quindi è improbabile che un peer vi si connetta. Vedere doc/p2p-bad-ports.md per i dettagli e un elenco completo.</translation>
</message>
@@ -3984,10 +4054,6 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">Errore nel caricamento del portafoglio. Il portafoglio richiede il download dei blocchi e il software non supporta attualmente il caricamento dei portafogli mentre i blocchi vengono scaricati in ordine sparso quando si utilizzano gli snapshot di assumeutxo. Il portafoglio dovrebbe poter essere caricato con successo dopo che la sincronizzazione del nodo ha raggiunto l'altezza %s.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Errore lettura %s! Tutte le chiavi sono state lette correttamente, ma i dati delle transazioni o della rubrica potrebbero essere mancanti o non corretti.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Errore nella lettura di %s! I dati della transazione potrebbero essere mancanti o errati. Nuova scansione del portafoglio in corso.</translation>
</message>
@@ -4056,6 +4122,10 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">Epurazione: l'ultima sincronizzazione del portafoglio risulta essere precedente alla eliminazione dei dati per via della modalità epurazione. È necessario eseguire un -reindex (scaricare nuovamente la catena di blocchi in caso di nodo epurato).</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Rinomina di '%s'-&gt; '%s' fallita. Potresti risolvere il problema spostando manualmente o eliminando la cartella di snapshot invalida %s, altrimenti potrai incontrare ancora lo stesso errore al prossimo avvio.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: Versione dello schema del portafoglio sqlite sconosciuta %d. Solo la versione %d è supportata</translation>
</message>
@@ -4064,10 +4134,6 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">Il database dei blocchi contiene un blocco che sembra provenire dal futuro. Questo può essere dovuto alla data e ora del tuo computer impostate in modo scorretto. Ricostruisci il database dei blocchi se sei certo che la data e l'ora sul tuo computer siano corrette</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Il database dell'indice dei blocchi contiene un 'txindex' obsoleto. Per liberare lo spazio occupato sul disco, esegui un -reindex completo, altrimenti ignora questo errore. Questo messaggio di errore non verrà più visualizzato.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">L'importo della transazione risulta troppo basso per l'invio una volta dedotte le commissioni.</translation>
</message>
@@ -4104,6 +4170,10 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">Il formato “%s” del file portafoglio fornito non è riconosciuto. si prega di fornire uno che sia “bdb” o “sqlite”. </translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Livello di logging specifico per categoria %1$s=%2$s non supportato. Previsto %1$s=&lt;category&gt;:&lt;loglevel&gt;. Categorie valide: %3$s. Livelli di log validi: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Formato del database chainstate non supportato. Riavviare con -reindex-chainstate. In questo modo si ricostruisce il database dello stato della catena.</translation>
</message>
@@ -4112,6 +4182,10 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">Portafoglio creato con successo. Il tipo di portafoglio legacy è stato deprecato e il supporto per la creazione e l'apertura di portafogli legacy sarà rimosso in futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Portafoglio caricato con successo. Il portafoglio di tipo legacy è deprecato e verrà rimosso il supporto per creare e aprire portafogli legacy in futuro. I portafogli legacy possono essere migrati a un portafoglio descrittore con migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Attenzione: il formato “%s” del file dump di portafoglio non combacia con il formato “%s” specificato nella riga di comando.</translation>
</message>
@@ -4160,30 +4234,10 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">Impossibile scrivere nella directory dei dati ' %s'; controlla le autorizzazioni.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">L'upgrade -txindex avviato su una versione precedente non può essere completato. Riavviare con la versione precedente o eseguire un -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s non è riuscito a convalidare lo stato dell'istantanea -assumeutxo. Questo indica un problema hardware, un bug nel software o una modifica errata del software che ha permesso di caricare un'istantanea non valida. Di conseguenza, il nodo si spegnerà e smetterà di usare qualsiasi stato costruito sull'istantanea, azzerando l'altezza della catena da %d a %d. Al successivo riavvio, il nodo riprenderà la sincronizzazione da %d senza utilizzare i dati dell'istantanea. Per cortesia segnala l'incidente a %s, indicando anche come si è ottenuta l'istantanea. Lo stato della catena di istantanee non valido è stato lasciato sul disco nel caso in cui sia utile per diagnosticare il problema che ha causato questo errore.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s è impostato molto alto! Commissioni così alte potrebbero essere pagate su una singola transazione.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'opzione -reindex-chainstate non è compatibile con -blockfilterindex. Disattivare temporaneamente blockfilterindex mentre si usa -reindex-chainstate, oppure sostituire -reindex-chainstate con -reindex per ricostruire completamente tutti gli indici.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'opzione -reindex-chainstate non è compatibile con -coinstatsindex. Si prega di disabilitare temporaneamente coinstatsindex mentre si usa -reindex-chainstate, oppure di sostituire -reindex-chainstate con -reindex per ricostruire completamente tutti gli indici.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">L'opzione -reindex-chainstate non è compatibile con -txindex. Si prega di disabilitare temporaneamente txindex mentre si usa -reindex-chainstate, oppure di sostituire -reindex-chainstate con -reindex per ricostruire completamente tutti gli indici.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Non e' possibile fornire connessioni specifiche e contemporaneamente usare addrman per trovare connessioni uscenti. </translation>
</message>
@@ -4192,6 +4246,10 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">Errore caricando %s: il wallet del dispositivo esterno di firma é stato caricato senza che il supporto del dispositivo esterno di firma sia stato compilato.</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Errore durante la lettura di %s! Tutte le chiavi lette correttamente, ma i dati della transazione o metadati potrebbero essere mancanti o incorretti.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Errore: I dati della rubrica nel portafoglio non possono essere identificati come appartenenti a portafogli migrati</translation>
</message>
@@ -4204,6 +4262,10 @@ Vai su File &gt; Apri Portafoglio per caricare un portafoglio.
<translation type="unfinished">Errore: La transazione %s nel portafoglio non può essere identificata come appartenente ai portafogli migrati.</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Impossibile calcolare il salto di commissioni, poiché gli UTXO non confermati dipendono da una enorme serie di transazioni non confermate.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Mancata rinominazione del file peers.dat non valido. Per favore spostarlo o eliminarlo e provare di nuovo.</translation>
</message>
@@ -4278,10 +4340,6 @@ Provare a eseguire l'ultima versione del software.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Livello di log specifico della categoria non supportato -loglevel=%s. Atteso -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorie valide: %s. Livelli di log validi: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4474,6 +4532,10 @@ Non in grado di ripristinare il backup del portafoglio.</translation>
<translation type="unfinished">Impossibile ripetere la scansione del portafoglio durante l'inizializzazione</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Impossibile inizializzare gli indici, spegnimento...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Errore nella verifica del database</translation>
</message>
@@ -4786,8 +4848,12 @@ Non in grado di ripristinare il backup del portafoglio.</translation>
<translation type="unfinished">Nuove regole non riconosciute sono state attivate (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Livello di registrazione globale non supportato -loglevel=1%s. Valore valido: 1%s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Livello di logging globale non supportato %s=%s. Regole valide: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates non è supportato sulla catena %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_ja.ts b/src/qt/locale/bitcoin_ja.ts
index 5fb072d8c6..27f7c18351 100644
--- a/src/qt/locale/bitcoin_ja.ts
+++ b/src/qt/locale/bitcoin_ja.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">選択(&amp;C)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">送金先アドレス</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">受取用アドレス</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">これらは、あなたが知っている送信先の Bitcoin アドレスです。コインを送る前に必ず、金額と受取用アドレスを確認してください。</translation>
</message>
@@ -99,7 +91,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>There was an error trying to save the address list to %1. Please try again.</source>
<extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
- <translation type="unfinished">トランザクション履歴を %1 へ保存する際にエラーが発生しました。再試行してください。</translation>
+ <translation type="unfinished">取引履歴を %1 へ保存する際にエラーが発生しました。再試行してください。</translation>
+ </message>
+ <message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">送信アドレス - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">受信アドレス - %1</translation>
</message>
<message>
<source>Exporting Failed</source>
@@ -161,7 +161,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Confirm wallet encryption</source>
- <translation type="unfinished">ウォレットの暗号化の承諾</translation>
+ <translation type="unfinished">ウォレットの暗号化の確認</translation>
</message>
<message>
<source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
@@ -173,12 +173,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Wallet encrypted</source>
- <translation type="unfinished">ウォレットの暗号化の完了</translation>
+ <translation type="unfinished">ウォレットは暗号化されました</translation>
</message>
<message>
<source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
- <translation type="unfinished">新しいウォレットのパスフレーズを入力してください。
-パスフレーズは、ランダムな10文字以上の文字か、8語以上の単語を使用してください。</translation>
+ <translation type="unfinished">新しいウォレットのパスフレーズを入力してください。&lt;br/&gt;パスフレーズは、&lt;b&gt;ランダムな10文字以上の文字&lt;/b&gt;か、&lt;b&gt;8語以上の単語&lt;/b&gt;を使用してください。</translation>
</message>
<message>
<source>Enter the old passphrase and new passphrase for the wallet.</source>
@@ -272,8 +271,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Internal error</source>
- <translation type="unfinished">内部エラー
-:あなたの問題ではありません</translation>
+ <translation type="unfinished">内部エラー</translation>
</message>
<message>
<source>An internal error occurred. %1 will attempt to continue safely. This is an unexpected bug which can be reported as described below.</source>
@@ -353,19 +351,19 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>%1 d</source>
- <translation type="unfinished">%1日</translation>
+ <translation type="unfinished">%1 日</translation>
</message>
<message>
<source>%1 h</source>
- <translation type="unfinished">%1時間</translation>
+ <translation type="unfinished">%1 時間</translation>
</message>
<message>
<source>%1 m</source>
- <translation type="unfinished">%1分</translation>
+ <translation type="unfinished">%1 分</translation>
</message>
<message>
<source>%1 s</source>
- <translation type="unfinished">%1秒</translation>
+ <translation type="unfinished">%1 秒</translation>
</message>
<message>
<source>None</source>
@@ -373,7 +371,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>%1 ms</source>
- <translation type="unfinished">%1ミリ秒</translation>
+ <translation type="unfinished">%1 ミリ秒</translation>
</message>
<message numerus="yes">
<source>%n second(s)</source>
@@ -396,7 +394,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message numerus="yes">
<source>%n day(s)</source>
<translation type="unfinished">
- <numerusform>%n 日々</numerusform>
+ <numerusform>%n 日</numerusform>
</translation>
</message>
<message numerus="yes">
@@ -407,7 +405,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>%1 and %2</source>
- <translation type="unfinished">%1 %2</translation>
+ <translation type="unfinished">%1 と %2</translation>
</message>
<message numerus="yes">
<source>%n year(s)</source>
@@ -415,10 +413,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<numerusform>%n 年</numerusform>
</translation>
</message>
- <message>
- <source>%1 kB</source>
- <translation type="unfinished">%1 KB</translation>
- </message>
</context>
<context>
<name>BitcoinGUI</name>
@@ -481,7 +475,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Network activity disabled.</source>
<extracomment>A substring of the tooltip.</extracomment>
- <translation type="unfinished">ネットワーク活動は無効化されました。</translation>
+ <translation type="unfinished">ネットワーク活動は停止されました。</translation>
</message>
<message>
<source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
@@ -513,7 +507,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Encrypt Wallet…</source>
- <translation type="unfinished">ウォレットを暗号化…(&amp;E)</translation>
+ <translation type="unfinished">ウォレットを暗号化(&amp;E)…</translation>
</message>
<message>
<source>Encrypt the private keys that belong to your wallet</source>
@@ -521,15 +515,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Backup Wallet…</source>
- <translation type="unfinished">ウォレットをバックアップ…(&amp;B)</translation>
+ <translation type="unfinished">ウォレットをバックアップ(&amp;B)…</translation>
</message>
<message>
<source>&amp;Change Passphrase…</source>
- <translation type="unfinished">パスフレーズを変更…(&amp;C)</translation>
+ <translation type="unfinished">パスフレーズを変更(&amp;C)…</translation>
</message>
<message>
<source>Sign &amp;message…</source>
- <translation type="unfinished">メッセージを署名…(&amp;m)</translation>
+ <translation type="unfinished">メッセージに署名(&amp;m)…</translation>
</message>
<message>
<source>Sign messages with your Bitcoin addresses to prove you own them</source>
@@ -537,7 +531,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Verify message…</source>
- <translation type="unfinished">メッセージを検証…(&amp;V)</translation>
+ <translation type="unfinished">メッセージを検証(&amp;V)…</translation>
</message>
<message>
<source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
@@ -545,11 +539,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Load PSBT from file…</source>
- <translation type="unfinished">PSBTをファイルから読む…(&amp;L)</translation>
+ <translation type="unfinished">PSBTをファイルから読む(&amp;L)…</translation>
</message>
<message>
<source>Open &amp;URI…</source>
- <translation type="unfinished">URIを開く…(&amp;U)</translation>
+ <translation type="unfinished">URIを開く(&amp;U)…</translation>
</message>
<message>
<source>Close Wallet…</source>
@@ -585,7 +579,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Synchronizing with network…</source>
- <translation type="unfinished">ネットワークに同期中……</translation>
+ <translation type="unfinished">ネットワークに同期中…</translation>
</message>
<message>
<source>Indexing blocks on disk…</source>
@@ -655,7 +649,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Load Partially Signed Bitcoin Transaction</source>
- <translation type="unfinished">部分的に署名されたビットコインのトランザクションを読み込み</translation>
+ <translation type="unfinished">部分的に署名されたBitcoinの取引を読み込む</translation>
</message>
<message>
<source>Load PSBT from &amp;clipboard…</source>
@@ -663,7 +657,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Load Partially Signed Bitcoin Transaction from clipboard</source>
- <translation type="unfinished">部分的に署名されたビットコインのトランザクションをクリップボードから読み込み</translation>
+ <translation type="unfinished">部分的に署名されたBitcoinの取引をクリップボードから読み込む</translation>
</message>
<message>
<source>Node window</source>
@@ -712,12 +706,20 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">全てのウォレットを閉じる</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">ウォレットの移行</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">ウォレットの移行</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">%1 のヘルプ メッセージを表示し、使用可能な Bitcoin のコマンドラインオプション一覧を見る。</translation>
</message>
<message>
<source>&amp;Mask values</source>
- <translation type="unfinished">&amp;値を隠す</translation>
+ <translation type="unfinished">値を隠す (&amp;M)</translation>
</message>
<message>
<source>Mask the values in the Overview tab</source>
@@ -729,7 +731,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>No wallets available</source>
- <translation type="unfinished">ウォレットは利用できません</translation>
+ <translation type="unfinished">利用できるウォレットがありません</translation>
</message>
<message>
<source>Wallet Data</source>
@@ -744,7 +746,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Restore Wallet</source>
<extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
- <translation type="unfinished">ウォレットを復</translation>
+ <translation type="unfinished">ウォレットを復元</translation>
</message>
<message>
<source>Wallet Name</source>
@@ -769,23 +771,23 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Hide</source>
- <translation type="unfinished">隠す</translation>
+ <translation type="unfinished">隠す (&amp;H)</translation>
</message>
<message>
<source>S&amp;how</source>
- <translation type="unfinished">表示</translation>
+ <translation type="unfinished">表示 (&amp;h)</translation>
</message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n ビットコイン ネットワークへのアクティブな接続。</numerusform>
+ <numerusform>Bitcoinネットワークへの %n のアクティブな接続。</numerusform>
</translation>
</message>
<message>
<source>Click for more actions.</source>
<extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
- <translation type="unfinished">クリックして、より多くのアクションを表示。</translation>
+ <translation type="unfinished">クリックして、さらにアクションを表示。</translation>
</message>
<message>
<source>Show Peers tab</source>
@@ -795,16 +797,24 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Disable network activity</source>
<extracomment>A context menu item.</extracomment>
- <translation type="unfinished">ネットワーク活動を無効化する</translation>
+ <translation type="unfinished">ネットワーク活動を停止する</translation>
</message>
<message>
<source>Enable network activity</source>
<extracomment>A context menu item. The network activity was disabled previously.</extracomment>
- <translation type="unfinished">ネットワーク活動を有効化する</translation>
+ <translation type="unfinished">ネットワーク活動を開始する</translation>
</message>
<message>
<source>Pre-syncing Headers (%1%)…</source>
- <translation type="unfinished">事前同期ヘッダー (%1%)…</translation>
+ <translation type="unfinished">ヘッダーを事前同期中 (%1 %)…</translation>
+ </message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">ウォレットの作成に失敗</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">新しいウォレットを作成できません。このソフトウェアは sqlite のサポート (ディスクリプターウォレットに必要) なしでコンパイルされています </translation>
</message>
<message>
<source>Error: %1</source>
@@ -852,11 +862,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Sent transaction</source>
- <translation type="unfinished">送金取引</translation>
+ <translation type="unfinished">送信済み取引</translation>
</message>
<message>
<source>Incoming transaction</source>
- <translation type="unfinished">入金取引</translation>
+ <translation type="unfinished">受信中の取引</translation>
</message>
<message>
<source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
@@ -913,10 +923,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">手数料:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">ダスト:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">手数料差引後金額:</translation>
</message>
@@ -942,11 +948,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Received with label</source>
- <translation type="unfinished">対応するラベル</translation>
+ <translation type="unfinished">ラベル</translation>
</message>
<message>
<source>Received with address</source>
- <translation type="unfinished">対応するアドレス</translation>
+ <translation type="unfinished">アドレス</translation>
</message>
<message>
<source>Date</source>
@@ -954,7 +960,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Confirmations</source>
- <translation type="unfinished">検証数</translation>
+ <translation type="unfinished">承認数</translation>
</message>
<message>
<source>Confirmed</source>
@@ -978,7 +984,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Copy transaction &amp;ID and output index</source>
- <translation type="unfinished">取引IDとアウトプットのインデックスをコピー</translation>
+ <translation type="unfinished">取引IDとアウトプットのインデックスをコピー(&amp;I)</translation>
</message>
<message>
<source>L&amp;ock unspent</source>
@@ -990,7 +996,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Copy quantity</source>
- <translation type="unfinished">選択数をコピー</translation>
+ <translation type="unfinished">金額をコピー</translation>
</message>
<message>
<source>Copy fee</source>
@@ -1005,10 +1011,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">バイト数をコピー</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">ダストをコピー</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">お釣りをコピー</translation>
</message>
@@ -1017,18 +1019,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(ロック済み %1個)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">はい</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">いいえ</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">受取額が現在のダスト閾値を下回るアドレスがひとつでもあると、このラベルが赤くなります。</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">インプット毎に %1 satoshi 前後変動する場合があります。</translation>
</message>
@@ -1038,11 +1028,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>change from %1 (%2)</source>
- <translation type="unfinished">%1 (%2) からのおつり</translation>
+ <translation type="unfinished">%1 (%2) からのお釣り</translation>
</message>
<message>
<source>(change)</source>
- <translation type="unfinished">(おつり)</translation>
+ <translation type="unfinished">(お釣り)</translation>
</message>
</context>
<context>
@@ -1063,7 +1053,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Create wallet warning</source>
- <translation type="unfinished">ウォレットを作成 - 警告</translation>
+ <translation type="unfinished">ウォレット作成の警告</translation>
</message>
<message>
<source>Can't list signers</source>
@@ -1088,14 +1078,65 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">ウォレットを移行する</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">ウォレット &lt;i&gt;%1&lt;/i&gt; を移行してもよろしいですか?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">ウォレットを移行すると、このウォレットが 1 つ以上のディスクリプターウォレットに変換されます。 新しいウォレットのバックアップを作成する必要があります。
+このウォレットに監視専用スクリプトが含まれている場合、それらの監視専用スクリプトを含む新しいウォレットが作成されます。
+このウォレットに解決可能だが監視されないスクリプトが含まれている場合、それらのスクリプトを含む別の新しいウォレットが作成されます。
+
+移行プロセスでは、移行前にウォレットのバックアップが作成されます。 このバックアップ ファイルの名前は &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak で、元のウォレットのディレクトリにあります。 間違った移行が発生した場合は、「ウォレットの復元」機能を使用してバックアップから復元できます。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">ウォレットを移行する</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">ウォレット &lt;b&gt;%1&lt;/b&gt; を移行中…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">ウォレット '%1' の移行が完了しました。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">監視専用スクリプトは新しいウォレット '%1' に移行しました。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">解決可能だが監視されないスクリプトは新しいウォレット '%1' に移行しました。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">移行に失敗しました</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">移行に成功しました</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
- <translation type="unfinished">ウォレットを開くことに失敗しました</translation>
+ <translation type="unfinished">ウォレットを開けませんでした</translation>
</message>
<message>
<source>Open wallet warning</source>
- <translation type="unfinished">ウォレットを開く - 警告</translation>
+ <translation type="unfinished">ウォレットの起動に関する警告</translation>
</message>
<message>
<source>default wallet</source>
@@ -1109,7 +1150,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
- <translation type="unfinished">ウォレットを開いています &lt;b&gt;%1&lt;/b&gt;…</translation>
+ <translation type="unfinished">ウォレット &lt;b&gt;%1&lt;/b&gt; を開いています…</translation>
</message>
</context>
<context>
@@ -1117,12 +1158,12 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Restore Wallet</source>
<extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
- <translation type="unfinished">ウォレットを復</translation>
+ <translation type="unfinished">ウォレットを復元</translation>
</message>
<message>
<source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
- <translation type="unfinished">ウォレットの復元 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ <translation type="unfinished">ウォレット &lt;b&gt;%1&lt;/b&gt; を復元中...</translation>
</message>
<message>
<source>Restore wallet failed</source>
@@ -1137,7 +1178,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Restore wallet message</source>
<extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
- <translation type="unfinished">ウォレット メッセージの復元</translation>
+ <translation type="unfinished">ウォレットの復元に関するメッセージ</translation>
</message>
</context>
<context>
@@ -1152,7 +1193,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
- <translation type="unfinished">ブロックファイル剪定が有効の場合、長期間ウォレットを起動しないと全チェーンを再度同期させる必要があるかもしれません。</translation>
+ <translation type="unfinished">ブロックファイルの剪定が有効の場合、長期間ウォレットを起動しないと全チェーンを再度同期させる必要があるかもしれません。</translation>
</message>
<message>
<source>Close all wallets</source>
@@ -1170,6 +1211,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ウォレットを作成する</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">新しいウォレットの作成まであと一歩です!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">名前を入力し、必要に応じて詳細オプションを有効にしてください</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">ウォレット名</translation>
</message>
@@ -1179,7 +1228,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
- <translation type="unfinished">ウォレットを暗号化。ウォレットは任意のパスフレーズによって暗号化されます。</translation>
+ <translation type="unfinished">ウォレットを暗号化します。ウォレットは任意のパスフレーズによって暗号化されます。</translation>
</message>
<message>
<source>Encrypt Wallet</source>
@@ -1191,7 +1240,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets.</source>
- <translation type="unfinished">このウォレットの秘密鍵を無効にします。秘密鍵が無効になっているウォレットには秘密鍵はなく、HDシードまたはインポートされた秘密鍵を持つこともできません。これはウォッチ限定のウォレットに最適です。</translation>
+ <translation type="unfinished">このウォレットの秘密鍵を無効にします。秘密鍵が無効になっているウォレットには秘密鍵はなく、HDシードまたはインポートされた秘密鍵を持つこともできません。これは監視専用のウォレットに最適です。</translation>
</message>
<message>
<source>Disable Private Keys</source>
@@ -1206,16 +1255,8 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">空ウォレットを作成</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">scriptPubKeyの管理にDescriptorを使用します</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Descriptorウォレット</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
- <translation type="unfinished">外部署名デバイスであるハードウェアウォレットを使ってください。最初に外部署名プログラム(HWI)をウォレットのオプションに設定してください。</translation>
+ <translation type="unfinished">外部署名デバイスであるハードウェアウォレットを使います。最初に外部署名プログラム(HWI)をウォレットのオプションに設定してください。</translation>
</message>
<message>
<source>External signer</source>
@@ -1226,13 +1267,9 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">作成</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">(Descriptorウォレットに必要な)sqliteサポート無しでコンパイル</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">外部署名なしで処理されました (外部署名が必要です)</translation>
+ <translation type="unfinished">外部署名のサポート(外部署名に必要)なしでコンパイルされています </translation>
</message>
</context>
<context>
@@ -1251,7 +1288,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>The address associated with this address list entry. This can only be modified for sending addresses.</source>
- <translation type="unfinished">このアドレス帳項目のアドレス。アドレスは送金先アドレスの場合のみ編集することができます。</translation>
+ <translation type="unfinished">このアドレス帳項目のアドレス。これは送金先アドレスの場合のみ編集することができます。</translation>
</message>
<message>
<source>&amp;Address</source>
@@ -1302,7 +1339,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Directory already exists. Add %1 if you intend to create a new directory here.</source>
- <translation type="unfinished">ディレクトリが既に存在します。新しいディレクトリを作りたい場合は %1 と追記してください。</translation>
+ <translation type="unfinished">ディレクトリが既に存在します。新しいディレクトリを作りたい場合は %1 を追記してください。</translation>
</message>
<message>
<source>Path already exists, and is not a directory.</source>
@@ -1330,7 +1367,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message numerus="yes">
<source>(%n GB needed for full chain)</source>
<translation type="unfinished">
- <numerusform>(完全なチェーンには%n GB必要です)</numerusform>
+ <numerusform>(完全なチェーンには %n GB必要)</numerusform>
</translation>
</message>
<message>
@@ -1393,6 +1430,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">この初回同期には多大なリソースを消費し、あなたのコンピュータでこれまで見つからなかったハードウェア上の問題が発生する場合があります。%1 を実行する度に、中断された時点からダウンロードを再開します。</translation>
</message>
<message>
+ <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
+ <translation type="unfinished">[OK] をクリックすると、%1 は %4 が最初に起動されたときの %3 のうち最も古い取引から開始して、完全な %4 ブロック チェーン ( %2 GB) のダウンロードと処理を開始します。</translation>
+ </message>
+ <message>
<source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
<translation type="unfinished">ブロックチェーンの保存容量に制限を設けること(剪定)を選択した場合にも、過去のデータのダウンロードおよび処理が必要になります。しかし、これらのデータはディスク使用量を低く抑えるために、後で削除されます。</translation>
</message>
@@ -1487,7 +1528,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
- <translation type="unfinished">わからない。ヘッダーを事前同期しています (%1, %2%)…</translation>
+ <translation type="unfinished">不明。ヘッダーの事前同期をしています (%1, %2%)…</translation>
</message>
</context>
<context>
@@ -1522,15 +1563,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
- <translation type="unfinished">プルーニングを有効にすると、トランザクションの保存に必要なディスク容量が大幅に削減されます。すべてのブロックは完全に検証されます。この設定を元に戻すには、ブロックチェーン全体を再ダウンロードする必要があります。</translation>
+ <translation type="unfinished">剪定を有効にすると、取引の保存に必要なディスク容量が大幅に削減されます。すべてのブロックは完全に検証されます。この設定を元に戻すには、ブロックチェーン全体を再ダウンロードする必要があります。</translation>
</message>
<message>
<source>Size of &amp;database cache</source>
- <translation type="unfinished">データベースキャッシュのサイズ(&amp;D)</translation>
+ <translation type="unfinished">データベースキャッシュのサイズ(&amp;d)</translation>
</message>
<message>
<source>Number of script &amp;verification threads</source>
- <translation type="unfinished">スクリプト検証用スレッド数(&amp;V)</translation>
+ <translation type="unfinished">スクリプト検証用スレッド数(&amp;v)</translation>
</message>
<message>
<source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
@@ -1602,11 +1643,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Enable R&amp;PC server</source>
<extracomment>An Options window setting to enable the RPC server.</extracomment>
- <translation type="unfinished">R&amp;PC サーバーを有効にする</translation>
+ <translation type="unfinished">RPC サーバーを有効にする(&amp;P)</translation>
</message>
<message>
<source>W&amp;allet</source>
- <translation type="unfinished">ウォレット(&amp;A)</translation>
+ <translation type="unfinished">ウォレット(&amp;a)</translation>
</message>
<message>
<source>Whether to set subtract fee from amount as default or not.</source>
@@ -1616,7 +1657,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Subtract &amp;fee from amount by default</source>
<extracomment>An Options window setting to set subtracting the fee from a sending amount as default.</extracomment>
- <translation type="unfinished">デフォルトで金額からfeeを差し引く</translation>
+ <translation type="unfinished">デフォルトで金額からfeeを差し引く(&amp;f)</translation>
</message>
<message>
<source>Expert</source>
@@ -1624,11 +1665,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Enable coin &amp;control features</source>
- <translation type="unfinished">コインコントロール機能を有効化する(&amp;C)</translation>
+ <translation type="unfinished">コインコントロール機能を有効化する(&amp;c)</translation>
</message>
<message>
<source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
- <translation type="unfinished">未承認のお釣りを使用しない場合、取引が最低1回検証されるまではその取引のお釣りは利用できなくなります。これは残高の計算方法にも影響します。</translation>
+ <translation type="unfinished">未承認のお釣りを使用しない場合、取引が最低 1 回承認されるまではその取引のお釣りは利用できなくなります。これは残高の計算方法にも影響します。</translation>
</message>
<message>
<source>&amp;Spend unconfirmed change</source>
@@ -1637,7 +1678,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Enable &amp;PSBT controls</source>
<extracomment>An options window setting to enable PSBT controls.</extracomment>
- <translation type="unfinished">PSBT コントロールを有効にする</translation>
+ <translation type="unfinished">PSBT コントロールを有効にする(&amp;P)</translation>
</message>
<message>
<source>Whether to show PSBT controls.</source>
@@ -1662,11 +1703,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
- <translation type="unfinished">自動的にルーター上の Bitcoin クライアントのポートを開放します。あなたのユーターがNAT-PMPに対応していて、それが有効になっている場合のみ動作します。外部ポートはランダムで構いません。</translation>
+ <translation type="unfinished">自動的にルーター上の Bitcoin クライアントのポートを開放します。あなたのルーターが NAT-PMP に対応していて、それが有効になっている場合のみ動作します。外部ポートはランダムで構いません。</translation>
</message>
<message>
<source>Map port using NA&amp;T-PMP</source>
- <translation type="unfinished">NA&amp;T-PMP を使ってポートを割り当てる</translation>
+ <translation type="unfinished">NAT-PMP を使ってポートを割り当てる(&amp;T)</translation>
</message>
<message>
<source>Accept connections from outside.</source>
@@ -1674,7 +1715,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Allow incomin&amp;g connections</source>
- <translation type="unfinished">外部からの接続を許可する(&amp;G)</translation>
+ <translation type="unfinished">外部からの接続を許可する(&amp;g)</translation>
</message>
<message>
<source>Connect to the Bitcoin network through a SOCKS5 proxy.</source>
@@ -1698,7 +1739,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Used for reaching peers via:</source>
- <translation type="unfinished">ピアへの接続手段:</translation>
+ <translation type="unfinished">ピアへの接続経路:</translation>
</message>
<message>
<source>&amp;Window</source>
@@ -1706,11 +1747,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Show the icon in the system tray.</source>
- <translation type="unfinished">システムトレイのアイコンを表示。</translation>
+ <translation type="unfinished">システムトレイにアイコンを表示。</translation>
</message>
<message>
<source>&amp;Show tray icon</source>
- <translation type="unfinished">&amp;トレイアイコンを表示</translation>
+ <translation type="unfinished">トレイアイコンを表示(&amp;S)</translation>
</message>
<message>
<source>Show only a tray icon after minimizing the window.</source>
@@ -1722,7 +1763,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>M&amp;inimize on close</source>
- <translation type="unfinished">閉じるときに最小化(&amp;I)</translation>
+ <translation type="unfinished">閉じるときに最小化(&amp;i)</translation>
</message>
<message>
<source>&amp;Display</source>
@@ -1730,7 +1771,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>User Interface &amp;language:</source>
- <translation type="unfinished">ユーザインターフェースの言語(&amp;L):</translation>
+ <translation type="unfinished">ユーザインターフェースの言語(&amp;l):</translation>
</message>
<message>
<source>The user interface language can be set here. This setting will take effect after restarting %1.</source>
@@ -1742,7 +1783,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Choose the default subdivision unit to show in the interface and when sending coins.</source>
- <translation type="unfinished">インターフェイスや送金時に使用する単位を選択する。</translation>
+ <translation type="unfinished">インターフェイスや送金時に使用するデフォルトの単位を選択する。</translation>
</message>
<message>
<source>Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
@@ -1750,11 +1791,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Third-party transaction URLs</source>
- <translation type="unfinished">サードパーティの取引確認URL</translation>
+ <translation type="unfinished">サードパーティの取引確認URL(&amp;T)</translation>
</message>
<message>
<source>Whether to show coin control features or not.</source>
- <translation type="unfinished">コインコントロール機能を表示するかどうか。</translation>
+ <translation type="unfinished">コインコントロール機能を表示するか否か。</translation>
</message>
<message>
<source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services.</source>
@@ -1762,7 +1803,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Use separate SOCKS&amp;5 proxy to reach peers via Tor onion services:</source>
- <translation type="unfinished">Tor onion serviceを介してピアに到達するために別のSOCKS&amp;5プロキシを使用します:</translation>
+ <translation type="unfinished">Tor onion serviceを介してピアに到達するために別のSOCKS&amp;5プロキシを使用する(&amp;5):</translation>
</message>
<message>
<source>Monospaced font in the Overview tab:</source>
@@ -1783,11 +1824,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">外部署名なしで処理されました (外部署名が必要です)</translation>
+ <translation type="unfinished">外部署名のサポート (外部署名に必要)なしでコンパイルされています</translation>
</message>
<message>
<source>default</source>
- <translation type="unfinished">初期値</translation>
+ <translation type="unfinished">デフォルト</translation>
</message>
<message>
<source>none</source>
@@ -1806,7 +1847,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Current settings will be backed up at "%1".</source>
<extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
- <translation type="unfinished">現在の設定は「%1」にバックアップされます。</translation>
+ <translation type="unfinished">現在の設定は "%1" にバックアップされます。</translation>
</message>
<message>
<source>Client will be shut down. Do you want to proceed?</source>
@@ -1821,7 +1862,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file.</source>
<extracomment>Explanatory text about the priority order of instructions considered by client. The order from high to low being: command-line, configuration file, GUI settings.</extracomment>
- <translation type="unfinished">設定ファイルは、GUIでの設定を上書きする高度なユーザーオプションを指定するためのものです。また、コマンドラインオプションはこの設定ファイルの内容も上書きします。</translation>
+ <translation type="unfinished">設定ファイルは、GUIでの設定に優先する高度なユーザーオプションを指定するためのものです。また、コマンドラインオプションはこの設定ファイルの内容よりも優先します。</translation>
</message>
<message>
<source>Continue</source>
@@ -1867,7 +1908,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Watch-only:</source>
- <translation type="unfinished">ウォッチ限定:</translation>
+ <translation type="unfinished">監視専用:</translation>
</message>
<message>
<source>Available:</source>
@@ -1875,15 +1916,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Your current spendable balance</source>
- <translation type="unfinished">送金可能な残高</translation>
+ <translation type="unfinished">使用可能な残高</translation>
</message>
<message>
<source>Pending:</source>
- <translation type="unfinished">検証待ち:</translation>
+ <translation type="unfinished">保留中:</translation>
</message>
<message>
<source>Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source>
- <translation type="unfinished">取引が未承認で残高に反映されていない総額</translation>
+ <translation type="unfinished">未承認なので使用可能な残高に反映されていない取引の合計</translation>
</message>
<message>
<source>Immature:</source>
@@ -1891,7 +1932,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Mined balance that has not yet matured</source>
- <translation type="unfinished">採掘された未成熟な残高</translation>
+ <translation type="unfinished">未成熟な採掘の残高</translation>
</message>
<message>
<source>Balances</source>
@@ -1903,15 +1944,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Your current total balance</source>
- <translation type="unfinished">現在の残高の総計</translation>
+ <translation type="unfinished">現在の合計残高</translation>
</message>
<message>
<source>Your current balance in watch-only addresses</source>
- <translation type="unfinished">ウォッチ限定アドレス内の現在の残高</translation>
+ <translation type="unfinished">監視専用アドレスの現在の残高</translation>
</message>
<message>
<source>Spendable:</source>
- <translation type="unfinished">送金可能:</translation>
+ <translation type="unfinished">使用可能:</translation>
</message>
<message>
<source>Recent transactions</source>
@@ -1919,19 +1960,19 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Unconfirmed transactions to watch-only addresses</source>
- <translation type="unfinished">ウォッチ限定アドレスの未承認取引</translation>
+ <translation type="unfinished">監視専用アドレスの未承認取引</translation>
</message>
<message>
<source>Mined balance in watch-only addresses that has not yet matured</source>
- <translation type="unfinished">ウォッチ限定アドレスで採掘された未成熟な残高</translation>
+ <translation type="unfinished">監視専用アドレスで採掘された未成熟な残高</translation>
</message>
<message>
<source>Current total balance in watch-only addresses</source>
- <translation type="unfinished">ウォッチ限定アドレスの現在の残高の総計</translation>
+ <translation type="unfinished">監視専用アドレスの現在の残高の合計</translation>
</message>
<message>
<source>Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings-&gt;Mask values.</source>
- <translation type="unfinished">概要タブでプライバシーモードが有効になっています。値のマスクを解除するには、設定-&gt;マスクの値のチェックを外してください。</translation>
+ <translation type="unfinished">概要タブでプライバシーモードが有効になっています。値のマスクを解除するには、設定 -&gt; 値を隠す のチェックを外してください。</translation>
</message>
</context>
<context>
@@ -1942,11 +1983,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Sign Tx</source>
- <translation type="unfinished">署名されたトランザクション</translation>
+ <translation type="unfinished">取引に署名</translation>
</message>
<message>
<source>Broadcast Tx</source>
- <translation type="unfinished">Txをブロードキャスト</translation>
+ <translation type="unfinished">取引をブロードキャスト</translation>
</message>
<message>
<source>Copy to Clipboard</source>
@@ -1962,11 +2003,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Failed to load transaction: %1</source>
- <translation type="unfinished">%1 : トランザクションの読込失敗</translation>
+ <translation type="unfinished">取引の読込に失敗: %1</translation>
</message>
<message>
<source>Failed to sign transaction: %1</source>
- <translation type="unfinished">%1 : トランザクション署名失敗</translation>
+ <translation type="unfinished">取引の署名に失敗: %1</translation>
</message>
<message>
<source>Cannot sign inputs while wallet is locked.</source>
@@ -1982,19 +2023,19 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Signed transaction successfully. Transaction is ready to broadcast.</source>
- <translation type="unfinished">トランザクションへの署名が成功しました。トランザクションのブロードキャストの準備ができています。</translation>
+ <translation type="unfinished">取引への署名に成功しました。取引はブロードキャストの準備ができています。</translation>
</message>
<message>
<source>Unknown error processing transaction.</source>
- <translation type="unfinished">トランザクション処理中の不明なエラー。</translation>
+ <translation type="unfinished">取引処理中の不明なエラー。</translation>
</message>
<message>
<source>Transaction broadcast successfully! Transaction ID: %1</source>
- <translation type="unfinished">トランザクションのブロードキャストに成功しました!トランザクションID: %1</translation>
+ <translation type="unfinished">取引のブロードキャストに成功! 取引 ID: %1</translation>
</message>
<message>
<source>Transaction broadcast failed: %1</source>
- <translation type="unfinished">トランザクションのブロードキャストが失敗しました: %1</translation>
+ <translation type="unfinished">取引のブロードキャストに失敗しました: %1</translation>
</message>
<message>
<source>PSBT copied to clipboard.</source>
@@ -2002,12 +2043,12 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Save Transaction Data</source>
- <translation type="unfinished">トランザクションデータの保存</translation>
+ <translation type="unfinished">取引データの保存</translation>
</message>
<message>
<source>Partially Signed Transaction (Binary)</source>
<extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
- <translation type="unfinished">部分的に署名されたトランザクション(バイナリ)</translation>
+ <translation type="unfinished">部分的に署名された取引(バイナリ)</translation>
</message>
<message>
<source>PSBT saved to disk.</source>
@@ -2015,7 +2056,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source> * Sends %1 to %2</source>
- <translation type="unfinished"> * %1 から %2 へ送信</translation>
+ <translation type="unfinished"> * %1 を %2 へ送金</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">自分のアドレス</translation>
</message>
<message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
@@ -2023,7 +2068,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Pays transaction fee: </source>
- <translation type="unfinished">トランザクション手数料: </translation>
+ <translation type="unfinished">取引手数料の支払い: </translation>
</message>
<message>
<source>Total Amount</source>
@@ -2035,15 +2080,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Transaction has %1 unsigned inputs.</source>
- <translation type="unfinished">トランザクションには %1 個の未署名インプットがあります。</translation>
+ <translation type="unfinished">取引には %1 個の未署名インプットがあります。</translation>
</message>
<message>
<source>Transaction is missing some information about inputs.</source>
- <translation type="unfinished">トランザクションにインプットに関する情報がありません。</translation>
+ <translation type="unfinished">この取引にはインプットに関する情報がありません。</translation>
</message>
<message>
<source>Transaction still needs signature(s).</source>
- <translation type="unfinished">トランザクションにはまだ署名が必要です。</translation>
+ <translation type="unfinished">取引にはさらに署名が必要です。</translation>
</message>
<message>
<source>(But no wallet is loaded.)</source>
@@ -2051,7 +2096,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>(But this wallet cannot sign transactions.)</source>
- <translation type="unfinished">(しかしこのウォレットはトランザクションに署名できません。)</translation>
+ <translation type="unfinished">(しかし、このウォレットは取引に署名できません。)</translation>
</message>
<message>
<source>(But this wallet does not have the right keys.)</source>
@@ -2059,18 +2104,18 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Transaction is fully signed and ready for broadcast.</source>
- <translation type="unfinished">トランザクションは完全に署名され、ブロードキャストの準備ができています。</translation>
+ <translation type="unfinished">取引は完全に署名され、ブロードキャストの準備ができています。</translation>
</message>
<message>
<source>Transaction status is unknown.</source>
- <translation type="unfinished">トランザクションの状態が不明です.</translation>
+ <translation type="unfinished">取引の状態が不明です。</translation>
</message>
</context>
<context>
<name>PaymentServer</name>
<message>
<source>Payment request error</source>
- <translation type="unfinished">支払いリクエスト エラー</translation>
+ <translation type="unfinished">支払いリクエストのエラー</translation>
</message>
<message>
<source>Cannot start bitcoin: click-to-pay handler</source>
@@ -2088,7 +2133,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Cannot process payment request because BIP70 is not supported.
Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
- <translation type="unfinished">BIP70がサポートされていないので支払い請求を処理できません。
+ <translation type="unfinished">BIP70がサポートされていないので支払いリクエストを処理できません。
BIP70には広範なセキュリティー上の問題があるので、ウォレットを換えるようにとの事業者からの指示は無視することを強く推奨します。
このエラーが発生した場合、事業者に対してBIP21に対応したURIを要求してください。</translation>
</message>
@@ -2116,7 +2161,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
<message>
<source>Age</source>
<extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
- <translation type="unfinished">年</translation>
+ <translation type="unfinished">時間</translation>
</message>
<message>
<source>Direction</source>
@@ -2163,7 +2208,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
<name>QRImageWidget</name>
<message>
<source>&amp;Save Image…</source>
- <translation type="unfinished">画像を保存…(&amp;S)</translation>
+ <translation type="unfinished">画像を保存(&amp;S)…</translation>
</message>
<message>
<source>&amp;Copy Image</source>
@@ -2175,7 +2220,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>Error encoding URI into QR Code.</source>
- <translation type="unfinished">URIをQRコードへ変換している際にエラーが発生しました。</translation>
+ <translation type="unfinished">URIからQRコードへの変換でエラーが発生。</translation>
</message>
<message>
<source>QR code support not available.</source>
@@ -2267,11 +2312,11 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>Received</source>
- <translation type="unfinished">受信</translation>
+ <translation type="unfinished">受信済</translation>
</message>
<message>
<source>Sent</source>
- <translation type="unfinished">送信</translation>
+ <translation type="unfinished">送信済</translation>
</message>
<message>
<source>&amp;Peers</source>
@@ -2286,16 +2331,32 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
<translation type="unfinished">詳しい情報を見たいピアを選択してください。</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">トランスポート層のバージョン: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">トランスポート</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">BIP324 のセッション ID の16進文字列 (存在する場合) 。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">セッション ID</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">バージョン</translation>
</message>
<message>
<source>Whether we relay transactions to this peer.</source>
- <translation type="unfinished">このピアにトランザクションをリレーするかどうか。</translation>
+ <translation type="unfinished">このピアに取引をリレーするか否か。</translation>
</message>
<message>
<source>Transaction Relay</source>
- <translation type="unfinished">トランザクションリレー</translation>
+ <translation type="unfinished">取引のリレー</translation>
</message>
<message>
<source>Starting Block</source>
@@ -2315,11 +2376,11 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>The mapped Autonomous System used for diversifying peer selection.</source>
- <translation type="unfinished">ピア選択の多様化に使用できるマップ化された自律システム。</translation>
+ <translation type="unfinished">ピア選択を多様化するために使用されるマッピングされた自律システム。</translation>
</message>
<message>
<source>Mapped AS</source>
- <translation type="unfinished">マップ化された自律システム</translation>
+ <translation type="unfinished">マッピングされた自律システム</translation>
</message>
<message>
<source>Whether we relay addresses to this peer.</source>
@@ -2339,7 +2400,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
<message>
<source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
<extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">レート制限が原因でドロップされた (処理されなかった) このピアから受信したアドレスの総数。</translation>
+ <translation type="unfinished">このピアから受信したアドレスのうち、レート制限起因でドロップされた (処理されなかった) ものの総数。</translation>
</message>
<message>
<source>Addresses Processed</source>
@@ -2377,7 +2438,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>Permissions</source>
- <translation type="unfinished">パーミッション</translation>
+ <translation type="unfinished">権限</translation>
</message>
<message>
<source>The direction and type of peer connection: %1</source>
@@ -2389,7 +2450,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>The network protocol this peer is connected through: IPv4, IPv6, Onion, I2P, or CJDNS.</source>
- <translation type="unfinished">このピアと接続しているネットワーク: IPv4, IPv6, Onion, I2P, or CJDNS.</translation>
+ <translation type="unfinished">このピアと接続しているネットワークプロトコル: IPv4, IPv6, Onion, I2P, or CJDNS.</translation>
</message>
<message>
<source>Services</source>
@@ -2397,7 +2458,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>High bandwidth BIP152 compact block relay: %1</source>
- <translation type="unfinished">高帯域幅のBIP152 Compact Blockリレー: %1</translation>
+ <translation type="unfinished">高帯域幅のBIP152 コンパクトブロックリレー: %1</translation>
</message>
<message>
<source>High Bandwidth</source>
@@ -2418,7 +2479,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
<message>
<source>Elapsed time since a novel transaction accepted into our mempool was received from this peer.</source>
<extracomment>Tooltip text for the Last Transaction field in the peer details area.</extracomment>
- <translation type="unfinished">mempoolに受け入れられた新しいトランザクションがこのピアから受信されてからの経過時間。</translation>
+ <translation type="unfinished">メモリプールに受け入れられた新しい取引がこのピアから受信されてからの経過時間。</translation>
</message>
<message>
<source>Last Send</source>
@@ -2446,7 +2507,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>Time Offset</source>
- <translation type="unfinished">時間オフセット</translation>
+ <translation type="unfinished">時刻のオフセット</translation>
</message>
<message>
<source>Last block time</source>
@@ -2487,7 +2548,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
<message>
<source>Inbound: initiated by peer</source>
<extracomment>Explanatory text for an inbound peer connection.</extracomment>
- <translation type="unfinished">Inbound: ピアから接続</translation>
+ <translation type="unfinished">インバウンド: ピアからの接続</translation>
</message>
<message>
<source>Outbound Full Relay: default</source>
@@ -2497,22 +2558,37 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
<message>
<source>Outbound Block Relay: does not relay transactions or addresses</source>
<extracomment>Explanatory text for an outbound peer connection that relays network information about blocks and not transactions or addresses.</extracomment>
- <translation type="unfinished">アウトバウンドブロックリレー: トランザクションやアドレスは中継しません</translation>
+ <translation type="unfinished">アウトバウンドブロックリレー: 取引やアドレスは中継しません</translation>
</message>
<message>
<source>Outbound Manual: added using RPC %1 or %2/%3 configuration options</source>
<extracomment>Explanatory text for an outbound peer connection that was established manually through one of several methods. The numbered arguments are stand-ins for the methods available to establish manual connections.</extracomment>
- <translation type="unfinished">Outbound Manual: RPC %1 or %2/%3 設定オプションによって追加</translation>
+ <translation type="unfinished">手動アウトバウンド: RPC %1 or %2/%3 設定オプションによって追加</translation>
</message>
<message>
<source>Outbound Feeler: short-lived, for testing addresses</source>
<extracomment>Explanatory text for a short-lived outbound peer connection that is used to test the aliveness of known addresses.</extracomment>
- <translation type="unfinished">Outbound Feeler: 短時間接続、テスティングアドレス用</translation>
+ <translation type="unfinished">探索用アウトバウンド: 短時間接続、アドレスのテスト用</translation>
</message>
<message>
<source>Outbound Address Fetch: short-lived, for soliciting addresses</source>
<extracomment>Explanatory text for a short-lived outbound peer connection that is used to request addresses from a peer.</extracomment>
- <translation type="unfinished">Outbound Address Fetch: 短時間接続、solicitingアドレス用</translation>
+ <translation type="unfinished">アドレス収集用アウトバウンド: 短時間接続、アドレス収集用</translation>
+ </message>
+ <message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">検出中: ピアは v1 でも v2 でもよい</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 非暗号, 平文トランスポートプロトコル</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324 暗号化トランスポートプロトコル</translation>
</message>
<message>
<source>we selected the peer for high bandwidth relay</source>
@@ -2537,7 +2613,7 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>1 &amp;hour</source>
- <translation type="unfinished">1時間(&amp;H)</translation>
+ <translation type="unfinished">1 時間(&amp;h)</translation>
</message>
<message>
<source>1 d&amp;ay</source>
@@ -2545,16 +2621,16 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>1 &amp;week</source>
- <translation type="unfinished">1週間(&amp;W)</translation>
+ <translation type="unfinished">1 週間(&amp;w)</translation>
</message>
<message>
<source>1 &amp;year</source>
- <translation type="unfinished">1年(&amp;Y)</translation>
+ <translation type="unfinished">1 年(&amp;y)</translation>
</message>
<message>
<source>&amp;Copy IP/Netmask</source>
<extracomment>Context menu action to copy the IP/Netmask of a banned peer. IP/Netmask is the combination of a peer's IP address and its Netmask. For IP address, see: https://en.wikipedia.org/wiki/IP_address.</extracomment>
- <translation type="unfinished">IP/ネットマスクをコピー &amp;C</translation>
+ <translation type="unfinished">IP/ネットマスクをコピー (&amp;C)</translation>
</message>
<message>
<source>&amp;Unban</source>
@@ -2562,15 +2638,15 @@ BIP70には広範なセキュリティー上の問題があるので、ウォレ
</message>
<message>
<source>Network activity disabled</source>
- <translation type="unfinished">ネットワーク活動が無効になりました</translation>
+ <translation type="unfinished">ネットワーク活動が停止しました</translation>
</message>
<message>
<source>Executing command without any wallet</source>
- <translation type="unfinished">どのウォレットも使わずにコマンドを実行します</translation>
+ <translation type="unfinished">どのウォレットも使わずにコマンドを実行しています</translation>
</message>
<message>
<source>Executing command using "%1" wallet</source>
- <translation type="unfinished">"%1" ウォレットを使ってコマンドを実行します</translation>
+ <translation type="unfinished">"%1" ウォレットを使ってコマンドを実行しています</translation>
</message>
<message>
<source>Welcome to the %1 RPC console.
@@ -2581,7 +2657,7 @@ For more information on using this console, type %6.
%7WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command.%8</source>
<extracomment>RPC console welcome message. Placeholders %7 and %8 are style tags for the warning content, and they are not space separated from the rest of the text intentionally.</extracomment>
- <translation type="unfinished">ようこそ、%1コンソールへ。
+ <translation type="unfinished">ようこそ、%1 RPCコンソールへ。
上下の矢印で履歴を移動し、%2でスクリーンをクリアできます。
%3および%4を使用してフォントサイズを調整できます。
使用可能なコマンドの概要については、%5を入力してください。
@@ -2635,7 +2711,7 @@ For more information on using this console, type %6.
<name>ReceiveCoinsDialog</name>
<message>
<source>&amp;Amount:</source>
- <translation type="unfinished">金額:(&amp;A)</translation>
+ <translation type="unfinished">金額(&amp;A):</translation>
</message>
<message>
<source>&amp;Label:</source>
@@ -2647,19 +2723,19 @@ For more information on using this console, type %6.
</message>
<message>
<source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source>
- <translation type="unfinished">支払いリクエストに添付するメッセージ(任意)。支払リクエスト開始時に表示されます。注意: メッセージは Bitcoin ネットワーク上へ送信されません。</translation>
+ <translation type="unfinished">支払いリクエストに添付する任意のメッセージで、支払リクエストの開封時に表示されます。注意: メッセージは Bitcoin ネットワーク上へ送信されません。</translation>
</message>
<message>
<source>An optional label to associate with the new receiving address.</source>
- <translation type="unfinished">新規受取用アドレスに紐づけるラベル(任意)。</translation>
+ <translation type="unfinished">新規受取用アドレスに紐づける任意のラベル。</translation>
</message>
<message>
<source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
- <translation type="unfinished">このフォームで支払いをリクエストしましょう。全ての入力欄は&lt;b&gt;任意入力&lt;/b&gt;です。</translation>
+ <translation type="unfinished">このフォームで支払いをリクエストしましょう。全ての欄は&lt;b&gt;任意&lt;/b&gt;です。</translation>
</message>
<message>
<source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
- <translation type="unfinished">リクエストする金額(任意)。特定の金額をリクエストしない場合は、この欄は空白のままかゼロにしてください。</translation>
+ <translation type="unfinished">リクエストする任意の金額。特定の金額をリクエストしない場合は、この欄は空白のままかゼロにしてください。</translation>
</message>
<message>
<source>An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request.</source>
@@ -2671,7 +2747,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>&amp;Create new receiving address</source>
- <translation type="unfinished">新しい受取用アドレスを作成</translation>
+ <translation type="unfinished">新しい受取用アドレスを作成(&amp;C)</translation>
</message>
<message>
<source>Clear all fields of the form.</source>
@@ -2683,7 +2759,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>Requested payments history</source>
- <translation type="unfinished">支払いリクエスト履歴</translation>
+ <translation type="unfinished">支払いリクエストの履歴</translation>
</message>
<message>
<source>Show the selected request (does the same as double clicking an entry)</source>
@@ -2703,7 +2779,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>Copy &amp;URI</source>
- <translation type="unfinished">URIをコピーする(&amp;U)</translation>
+ <translation type="unfinished">URIをコピー(&amp;U)</translation>
</message>
<message>
<source>&amp;Copy address</source>
@@ -2723,7 +2799,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>Not recommended due to higher fees and less protection against typos.</source>
- <translation type="unfinished">料金が高く、タイプミスに対する保護が少ないため、お勧めできません。</translation>
+ <translation type="unfinished">料金が高く、タイプミスに対する保護が弱いため、お勧めできません。</translation>
</message>
<message>
<source>Generates an address compatible with older wallets.</source>
@@ -2750,11 +2826,11 @@ For more information on using this console, type %6.
<name>ReceiveRequestDialog</name>
<message>
<source>Request payment to …</source>
- <translation type="unfinished">支払先…</translation>
+ <translation type="unfinished">支払いリクエスト先…</translation>
</message>
<message>
<source>Address:</source>
- <translation type="unfinished">アドレス:</translation>
+ <translation type="unfinished">アドレス:</translation>
</message>
<message>
<source>Amount:</source>
@@ -2774,7 +2850,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>Copy &amp;URI</source>
- <translation type="unfinished">URIをコピーする(&amp;U)</translation>
+ <translation type="unfinished">URIをコピー(&amp;U)</translation>
</message>
<message>
<source>Copy &amp;Address</source>
@@ -2790,15 +2866,15 @@ For more information on using this console, type %6.
</message>
<message>
<source>&amp;Save Image…</source>
- <translation type="unfinished">画像を保存…(&amp;S)</translation>
+ <translation type="unfinished">画像を保存(&amp;S)…</translation>
</message>
<message>
<source>Payment information</source>
- <translation type="unfinished">支払い情報</translation>
+ <translation type="unfinished">支払いリクエストの内容</translation>
</message>
<message>
<source>Request payment to %1</source>
- <translation type="unfinished">%1 への支払いリクエスト</translation>
+ <translation type="unfinished">支払いリクエスト %1</translation>
</message>
</context>
<context>
@@ -2817,7 +2893,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(ラベル無し)</translation>
+ <translation type="unfinished">(ラベル無し)</translation>
</message>
<message>
<source>(no message)</source>
@@ -2825,11 +2901,11 @@ For more information on using this console, type %6.
</message>
<message>
<source>(no amount requested)</source>
- <translation type="unfinished">(指定無し)</translation>
+ <translation type="unfinished">(金額指定無し)</translation>
</message>
<message>
<source>Requested</source>
- <translation type="unfinished">リクエストされた金額</translation>
+ <translation type="unfinished">リクエスト金額</translation>
</message>
</context>
<context>
@@ -2884,11 +2960,11 @@ For more information on using this console, type %6.
</message>
<message>
<source>Transaction Fee:</source>
- <translation type="unfinished">トランザクション手数料:</translation>
+ <translation type="unfinished">取引手数料:</translation>
</message>
<message>
<source>Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain.</source>
- <translation type="unfinished">代替料金を利用することで、承認されるまでに数時間または数日 (ないし一生承認されない) トランザクションを送信してしまう可能性があります。手動にて手数料を選択するか、完全なブロックチェーンの検証が終わるまで待つことを検討しましょう。</translation>
+ <translation type="unfinished">不適切な料金を利用することで、承認されるまでに数時間または数日 (あるいは永久に承認されない) 取引を送信してしまう可能性があります。手動にて手数料を設定するか、ブロックチェーンの検証が完全に終わるまで待つことを考慮してください。</translation>
</message>
<message>
<source>Warning: Fee estimation is currently not possible.</source>
@@ -2927,36 +3003,32 @@ For more information on using this console, type %6.
<translation type="unfinished">入力…</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">ダスト:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">選択…</translation>
</message>
<message>
<source>Hide transaction fee settings</source>
- <translation type="unfinished">トランザクション手数料の設定を隠す</translation>
+ <translation type="unfinished">取引手数料の設定を隠す</translation>
</message>
<message>
<source>Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size.
Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satoshis per kvB" for a transaction size of 500 virtual bytes (half of 1 kvB) would ultimately yield a fee of only 50 satoshis.</source>
- <translation type="unfinished">トランザクション仮想サイズ(vsize)のkB(1000 bytes)当たりのカスタム手数料率を設定してください。
+ <translation type="unfinished">取引の仮想サイズのkB(1000 bytes)当たりのカスタム手数料を設定してください。
-注意: 手数料はbyte単位で計算されます。"100 satoshis per kvB"という手数料率のとき、500 仮想バイト (half of 1 kvB)のトランザクションの手数料はたったの50 satoshisと計算されます。</translation>
+注意: 手数料はbyte単位で計算されます。"100 satoshis / kvB"という手数料率のとき、500 仮想バイト (1 kvBの半分)の取引の手数料はたったの50 satoshisと計算されます。</translation>
</message>
<message>
<source>When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
- <translation type="unfinished">ブロック内の空きよりトランザクション流量が少ない場合、マイナーや中継ノードは最低限の手数料でも処理することがあります。この最低限の手数料だけを支払っても問題ありませんが、一度トランザクションの需要がネットワークの処理能力を超えてしまった場合には、トランザクションが永久に承認されなくなってしまう可能性があることにご注意ください。</translation>
+ <translation type="unfinished">ブロック内の空きより取引の量が少ない場合、マイナーや中継ノードは最低限の手数料でも処理することがあります。この最低限の手数料だけを支払っても問題ありませんが、一度取引の需要がネットワークの処理能力を超えてしまった場合には、取引が永久に承認されなくなってしまう可能性があることに注意してください。</translation>
</message>
<message>
<source>A too low fee might result in a never confirming transaction (read the tooltip)</source>
- <translation type="unfinished">手数料が低すぎるとトランザクションが永久に承認されなくなる可能性があります (ツールチップを参照)</translation>
+ <translation type="unfinished">手数料が低すぎると取引が永久に承認されなくなる可能性があります (ツールチップを参照)</translation>
</message>
<message>
<source>(Smart fee not initialized yet. This usually takes a few blocks…)</source>
- <translation type="unfinished">(スマート手数料は初期化されていません。初期化まで通常数ブロックを要します…)</translation>
+ <translation type="unfinished">(スマート手数料は初期化されていません。初期化まで通常は数ブロックを要します…)</translation>
</message>
<message>
<source>Confirmation time target:</source>
@@ -2964,11 +3036,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Enable Replace-By-Fee</source>
- <translation type="unfinished">Replace-By-Fee を有効化する</translation>
+ <translation type="unfinished">Replace-By-Fee を有効にする</translation>
</message>
<message>
<source>With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk.</source>
- <translation type="unfinished">Replace-By-Fee(手数料の上乗せ: BIP-125)機能を有効にすることで、トランザクション送信後でも手数料を上乗せすることができます。この機能を利用しない場合、予め手数料を多めに見積もっておかないと取引が遅れる可能性があります。</translation>
+ <translation type="unfinished">Replace-By-Fee(手数料の上乗せ: BIP-125)機能を有効にすることで、取引送信後でも手数料を上乗せすることができます。この機能を利用しない場合、予め手数料を多めに見積もっておかないと取引が遅れるリスクがあります。</translation>
</message>
<message>
<source>Clear &amp;All</source>
@@ -2984,7 +3056,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>S&amp;end</source>
- <translation type="unfinished">送金(&amp;E)</translation>
+ <translation type="unfinished">送金(&amp;e)</translation>
</message>
<message>
<source>Copy quantity</source>
@@ -3007,10 +3079,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">バイト数をコピー</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">ダストをコピー</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">お釣りをコピー</translation>
</message>
@@ -3030,15 +3098,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<message>
<source>Set external signer script path in Options -&gt; Wallet</source>
<extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">オプションのウォレットタブにHWIのパスを設定してください</translation>
+ <translation type="unfinished">設定-&gt;オプション-&gt;ウォレット タブにHWIのパスを設定してください</translation>
</message>
<message>
<source>Cr&amp;eate Unsigned</source>
- <translation type="unfinished">未署名で作成</translation>
+ <translation type="unfinished">未署名で作成(&amp;e)</translation>
</message>
<message>
<source>Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
- <translation type="unfinished">オフライン%1ウォレットまたはPSBTに対応したハードウェアウォレットと合わせて使用するためのPSBT(部分的に署名されたトランザクション)を作成します。</translation>
+ <translation type="unfinished">オフラインの %1 ウォレット、あるいはPSBTに対応したハードウェアウォレットで使用するためのPSBT(部分的に署名された取引)を作成します。</translation>
</message>
<message>
<source> from wallet '%1'</source>
@@ -3046,7 +3114,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>%1 to '%2'</source>
- <translation type="unfinished">%1 から '%2'</translation>
+ <translation type="unfinished">%1 → '%2'</translation>
</message>
<message>
<source>%1 to %2</source>
@@ -3072,12 +3140,12 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Save Transaction Data</source>
- <translation type="unfinished">トランザクションデータの保存</translation>
+ <translation type="unfinished">取引データの保存</translation>
</message>
<message>
<source>Partially Signed Transaction (Binary)</source>
<extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
- <translation type="unfinished">部分的に署名されたトランザクション(バイナリ)</translation>
+ <translation type="unfinished">部分的に署名された取引(バイナリ)</translation>
</message>
<message>
<source>PSBT saved</source>
@@ -3086,7 +3154,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>External balance:</source>
- <translation type="unfinished">Externalの残高:</translation>
+ <translation type="unfinished">外部残高:</translation>
</message>
<message>
<source>or</source>
@@ -3099,7 +3167,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<message>
<source>Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
<extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can only create a PSBT. This string is displayed when private keys are disabled and an external signer is not available.</extracomment>
- <translation type="unfinished">トランザクション提案を確認してください。これにより、部分的に署名されたビットコイン・トランザクション(PSBT)が作成されます。これを保存するかコピーして例えばオフラインの %1 ウォレットやPSBTを扱えるハードウェアウォレットで残りの署名が出来ます。</translation>
+ <translation type="unfinished">取引の提案を確認してください。これにより、部分的に署名されたBitcoin取引(PSBT)が作成されます。これを保存するかコピーして例えばオフラインの %1 ウォレットやPSBTを扱えるハードウェアウォレットで残りの署名が出来ます。</translation>
</message>
<message>
<source>Do you want to create this transaction?</source>
@@ -3109,7 +3177,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<message>
<source>Please, review your transaction. You can create and send this transaction or create a Partially Signed Bitcoin Transaction (PSBT), which you can save or copy and then sign with, e.g., an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
<extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can send their transaction or create a PSBT. This string is displayed when both private keys and PSBT controls are enabled.</extracomment>
- <translation type="unfinished">取引を確認してください。 この取引を作成して送信するか、部分的に署名されたビットコイン取引(Partially Signed Bitcoin Transaction: PSBT)を作成できます。これを保存またはコピーして、オフラインの %1 ウォレットやPSBT互換のハードウェアウォレットなどで署名できます。</translation>
+ <translation type="unfinished">取引を確認してください。 この取引を作成して送信するか、部分的に署名されたBitcoin取引(Partially Signed Bitcoin Transaction: PSBT)を作成できます。これを保存またはコピーして、オフラインの %1 ウォレットやPSBT互換のハードウェアウォレットなどで署名できます。</translation>
</message>
<message>
<source>Please, review your transaction.</source>
@@ -3121,12 +3189,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">取引手数料</translation>
</message>
<message>
- <source>%1 kvB</source>
- <comment>PSBT transaction creation</comment>
- <extracomment>When reviewing a newly created PSBT (via Send flow), the transaction fee is shown, with "virtual size" of the transaction displayed for context</extracomment>
- <translation type="unfinished"> %1 kvB</translation>
- </message>
- <message>
<source>Not signalling Replace-By-Fee, BIP-125.</source>
<translation type="unfinished">Replace-By-Fee(手数料の上乗せ: BIP-125)機能は有効になっていません。</translation>
</message>
@@ -3154,7 +3216,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Watch-only balance:</source>
- <translation type="unfinished">監視限定残高: </translation>
+ <translation type="unfinished">監視専用の残高: </translation>
</message>
<message>
<source>The recipient address is not valid. Please recheck.</source>
@@ -3162,11 +3224,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>The amount to pay must be larger than 0.</source>
- <translation type="unfinished">支払い総額は0より大きい必要があります。</translation>
+ <translation type="unfinished">支払い金額は0より大きい必要があります。</translation>
</message>
<message>
<source>The amount exceeds your balance.</source>
- <translation type="unfinished">支払い総額が残高を超えています。</translation>
+ <translation type="unfinished">金額が残高を超えています。</translation>
</message>
<message>
<source>The total exceeds your balance when the %1 transaction fee is included.</source>
@@ -3182,25 +3244,21 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>A fee higher than %1 is considered an absurdly high fee.</source>
- <translation type="unfinished">%1 よりも高い手数料は、異常に高すぎです。</translation>
- </message>
- <message>
- <source>%1/kvB</source>
- <translation type="unfinished">%1 /kvB</translation>
+ <translation type="unfinished">%1 よりも高い手数料は、法外に高い手数料と判定されます。</translation>
</message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
- <numerusform>%n ブロック以内に確認を開始すると推定されます。</numerusform>
+ <numerusform>%n ブロック以内に承認を開始すると推定されます。</numerusform>
</translation>
</message>
<message>
<source>Warning: Invalid Bitcoin address</source>
- <translation type="unfinished">警告: 無効な Bitcoin アドレス</translation>
+ <translation type="unfinished">警告: 無効な Bitcoin アドレスです</translation>
</message>
<message>
<source>Warning: Unknown change address</source>
- <translation type="unfinished">警告:正体不明のお釣りアドレスです</translation>
+ <translation type="unfinished">警告: 不明なお釣りアドレスです</translation>
</message>
<message>
<source>Confirm custom change address</source>
@@ -3208,18 +3266,18 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure?</source>
- <translation type="unfinished">お釣り用として指定されたアドレスはこのウォレットのものではありません。このウォレットの一部又は全部の資産がこのアドレスへ送金されます。よろしいですか?</translation>
+ <translation type="unfinished">お釣り用として指定されたアドレスはこのウォレットのものではありません。このウォレットの一部又は全部の資産がこのアドレスへ送金されます。確かですか?</translation>
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(ラベル無し)</translation>
+ <translation type="unfinished">(ラベル無し)</translation>
</message>
</context>
<context>
<name>SendCoinsEntry</name>
<message>
<source>A&amp;mount:</source>
- <translation type="unfinished">金額(&amp;A):</translation>
+ <translation type="unfinished">金額(&amp;m):</translation>
</message>
<message>
<source>Pay &amp;To:</source>
@@ -3235,7 +3293,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>The Bitcoin address to send the payment to</source>
- <translation type="unfinished">支払い先 Bitcoin アドレス</translation>
+ <translation type="unfinished">送金先 Bitcoin アドレス</translation>
</message>
<message>
<source>Paste address from clipboard</source>
@@ -3247,7 +3305,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>The amount to send in the selected unit</source>
- <translation type="unfinished">送金する金額の単位を選択</translation>
+ <translation type="unfinished">選択した単位での送金額</translation>
</message>
<message>
<source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source>
@@ -3255,11 +3313,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>S&amp;ubtract fee from amount</source>
- <translation type="unfinished">送金額から手数料を差し引く(&amp;U)</translation>
+ <translation type="unfinished">送金額から手数料を差し引く(&amp;u)</translation>
</message>
<message>
<source>Use available balance</source>
- <translation type="unfinished">利用可能な残額を使用</translation>
+ <translation type="unfinished">利用可能な残高を使用</translation>
</message>
<message>
<source>Message:</source>
@@ -3293,7 +3351,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>&amp;Sign Message</source>
- <translation type="unfinished">メッセージの署名(&amp;S)</translation>
+ <translation type="unfinished">メッセージに署名(&amp;S)</translation>
</message>
<message>
<source>You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source>
@@ -3329,7 +3387,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Sign &amp;Message</source>
- <translation type="unfinished">メッセージを署名(&amp;M)</translation>
+ <translation type="unfinished">メッセージに署名(&amp;M)</translation>
</message>
<message>
<source>Reset all sign message fields</source>
@@ -3341,7 +3399,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>&amp;Verify Message</source>
- <translation type="unfinished">メッセージの検証(&amp;V)</translation>
+ <translation type="unfinished">メッセージを検証(&amp;V)</translation>
</message>
<message>
<source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source>
@@ -3373,7 +3431,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Click "Sign Message" to generate signature</source>
- <translation type="unfinished">「メッセージを署名」をクリックして署名を生成</translation>
+ <translation type="unfinished">「メッセージに署名」をクリックして署名を生成</translation>
</message>
<message>
<source>The entered address is invalid.</source>
@@ -3456,17 +3514,17 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<message>
<source>0/unconfirmed, in memory pool</source>
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
- <translation type="unfinished">0/未確認、メモリープール内</translation>
+ <translation type="unfinished">0/未承認、メモリープールに有る</translation>
</message>
<message>
<source>0/unconfirmed, not in memory pool</source>
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
- <translation type="unfinished">0/未確認、メモリ プールにない</translation>
+ <translation type="unfinished">0/未承認、メモリープールに無い</translation>
</message>
<message>
<source>abandoned</source>
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an abandoned transaction.</extracomment>
- <translation type="unfinished">送信中止</translation>
+ <translation type="unfinished">取消しされました</translation>
</message>
<message>
<source>%1/unconfirmed</source>
@@ -3492,11 +3550,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Generated</source>
- <translation type="unfinished">生成</translation>
+ <translation type="unfinished">採掘</translation>
</message>
<message>
<source>From</source>
- <translation type="unfinished">内向き</translation>
+ <translation type="unfinished">送金元</translation>
</message>
<message>
<source>unknown</source>
@@ -3504,7 +3562,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>To</source>
- <translation type="unfinished">外向き</translation>
+ <translation type="unfinished">送金先</translation>
</message>
<message>
<source>own address</source>
@@ -3512,7 +3570,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>watch-only</source>
- <translation type="unfinished">ウォッチ限定</translation>
+ <translation type="unfinished">監視専用</translation>
</message>
<message>
<source>label</source>
@@ -3520,29 +3578,29 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Credit</source>
- <translation type="unfinished">貸方</translation>
+ <translation type="unfinished">入金額</translation>
</message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
- <numerusform>%n 個以上のブロックで成熟する</numerusform>
+ <numerusform>あと %n 個のブロックで成熟</numerusform>
</translation>
</message>
<message>
<source>not accepted</source>
- <translation type="unfinished">承認されていない</translation>
+ <translation type="unfinished">未承認</translation>
</message>
<message>
<source>Debit</source>
- <translation type="unfinished">借方</translation>
+ <translation type="unfinished">出金額</translation>
</message>
<message>
<source>Total debit</source>
- <translation type="unfinished">借方総計</translation>
+ <translation type="unfinished">出金合計</translation>
</message>
<message>
<source>Total credit</source>
- <translation type="unfinished">貸方総計</translation>
+ <translation type="unfinished">入金合計</translation>
</message>
<message>
<source>Transaction fee</source>
@@ -3562,31 +3620,31 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Transaction ID</source>
- <translation type="unfinished">取引ID</translation>
+ <translation type="unfinished">取引 ID</translation>
</message>
<message>
<source>Transaction total size</source>
- <translation type="unfinished">トランザクションの全体サイズ</translation>
+ <translation type="unfinished">取引の全体サイズ</translation>
</message>
<message>
<source>Transaction virtual size</source>
- <translation type="unfinished">トランザクションの仮想サイズ</translation>
+ <translation type="unfinished">取引の仮想サイズ</translation>
</message>
<message>
<source>Output index</source>
- <translation type="unfinished">アウトプット インデックス数</translation>
+ <translation type="unfinished">アウトプット番号</translation>
</message>
<message>
<source> (Certificate was not verified)</source>
- <translation type="unfinished"> (証明書は検証されませんでした)</translation>
+ <translation type="unfinished"> (証明書は未検証)</translation>
</message>
<message>
<source>Merchant</source>
- <translation type="unfinished">リクエスト元</translation>
+ <translation type="unfinished">取引相手</translation>
</message>
<message>
<source>Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source>
- <translation type="unfinished">生成されたコインは、%1 ブロックの間成熟させたあとに使用可能になります。このブロックは生成された際、ブロックチェーンに取り込まれるためにネットワークに放流されました。ブロックチェーンに取り込まれられなかった場合、取引状態が「承認されていない」に変更され、コインは使用不能になります。これは、別のノードがあなたの数秒前にブロックを生成した場合に時々起こる場合があります。</translation>
+ <translation type="unfinished">生成されたコインは、%1 ブロックの間成熟後に使用可能になります。このブロックは生成された際、ブロックチェーンに取り込まれるためにネットワークにブロードキャストされました。ブロックチェーンに取り込まれなかった場合、取引状態が「不承認」に変更され、コインは使用不能になります。これは、別のノードがあなたの数秒前にブロックを生成した場合に時々起こる場合があります。</translation>
</message>
<message>
<source>Debug information</source>
@@ -3594,7 +3652,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Transaction</source>
- <translation type="unfinished">トランザクション</translation>
+ <translation type="unfinished">取引</translation>
</message>
<message>
<source>Inputs</source>
@@ -3617,7 +3675,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<name>TransactionDescDialog</name>
<message>
<source>This pane shows a detailed description of the transaction</source>
- <translation type="unfinished">取引の詳細</translation>
+ <translation type="unfinished">このペインには取引の詳細な説明が表示されます</translation>
</message>
<message>
<source>Details for %1</source>
@@ -3644,7 +3702,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Abandoned</source>
- <translation type="unfinished">送信中止</translation>
+ <translation type="unfinished">取消しされました</translation>
</message>
<message>
<source>Confirming (%1 of %2 recommended confirmations)</source>
@@ -3656,11 +3714,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Conflicted</source>
- <translation type="unfinished">衝突</translation>
+ <translation type="unfinished">衝突しました</translation>
</message>
<message>
<source>Immature (%1 confirmations, will be available after %2)</source>
- <translation type="unfinished">未成熟(%1 承認。%2 承認完了後に使用可能)</translation>
+ <translation type="unfinished">未成熟(%1 承認済、%2 承認完了後に使用可能)</translation>
</message>
<message>
<source>Generated but not accepted</source>
@@ -3679,24 +3737,20 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">送金</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">自分への送金</translation>
- </message>
- <message>
<source>Mined</source>
- <translation type="unfinished">発掘</translation>
+ <translation type="unfinished">採掘</translation>
</message>
<message>
<source>watch-only</source>
- <translation type="unfinished">ウォッチ限定</translation>
+ <translation type="unfinished">監視専用</translation>
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(ラベル無し)</translation>
+ <translation type="unfinished">(ラベルなし)</translation>
</message>
<message>
<source>Transaction status. Hover over this field to show number of confirmations.</source>
- <translation type="unfinished">トランザクションステータス。このフィールドの上にカーソルを合わせると承認数が表示されます。</translation>
+ <translation type="unfinished">取引の状態。このフィールドの上にカーソルを合わせると承認数が表示されます。</translation>
</message>
<message>
<source>Date and time that the transaction was received.</source>
@@ -3708,15 +3762,15 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Whether or not a watch-only address is involved in this transaction.</source>
- <translation type="unfinished">ウォッチ限定アドレスがこの取引に含まれているかどうか。</translation>
+ <translation type="unfinished">監視専用のアドレスがこの取引に含まれているか否か。</translation>
</message>
<message>
<source>User-defined intent/purpose of the transaction.</source>
- <translation type="unfinished">ユーザー定義の取引の目的や用途。</translation>
+ <translation type="unfinished">ユーザーが定義した取引の目的や用途。</translation>
</message>
<message>
<source>Amount removed from or added to balance.</source>
- <translation type="unfinished">残高から増えた又は減った総額。</translation>
+ <translation type="unfinished">残高から増えた又は減った金額。</translation>
</message>
</context>
<context>
@@ -3754,12 +3808,8 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">送金</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">自己送金</translation>
- </message>
- <message>
<source>Mined</source>
- <translation type="unfinished">発掘</translation>
+ <translation type="unfinished">採掘</translation>
</message>
<message>
<source>Other</source>
@@ -3771,7 +3821,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Min amount</source>
- <translation type="unfinished">表示最小金額</translation>
+ <translation type="unfinished">最小金額</translation>
</message>
<message>
<source>Range…</source>
@@ -3791,27 +3841,27 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Copy transaction &amp;ID</source>
- <translation type="unfinished">TxIDをコピー(&amp;I)</translation>
+ <translation type="unfinished">取引 IDをコピー(&amp;I)</translation>
</message>
<message>
<source>Copy &amp;raw transaction</source>
- <translation type="unfinished">RAW-Txをコピー(r)</translation>
+ <translation type="unfinished">取引のRAWデータをコピー(r)</translation>
</message>
<message>
<source>Copy full transaction &amp;details</source>
- <translation type="unfinished">Txの詳細をコピー(d)</translation>
+ <translation type="unfinished">取引の詳細をコピー(d)</translation>
</message>
<message>
<source>&amp;Show transaction details</source>
- <translation type="unfinished">Txの詳細を表示(S)</translation>
+ <translation type="unfinished">取引の詳細を表示(S)</translation>
</message>
<message>
<source>Increase transaction &amp;fee</source>
- <translation type="unfinished">Tx手数料を追加(&amp;f)</translation>
+ <translation type="unfinished">取引手数料を追加(&amp;f)</translation>
</message>
<message>
<source>A&amp;bandon transaction</source>
- <translation type="unfinished">Txを取消す(b)</translation>
+ <translation type="unfinished">取引を取消す(b)</translation>
</message>
<message>
<source>&amp;Edit address label</source>
@@ -3837,7 +3887,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Watch-only</source>
- <translation type="unfinished">ウォッチ限定</translation>
+ <translation type="unfinished">監視専用</translation>
</message>
<message>
<source>Date</source>
@@ -3904,15 +3954,15 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Load Transaction Data</source>
- <translation type="unfinished">トランザクションデータのロード</translation>
+ <translation type="unfinished">取引データのロード</translation>
</message>
<message>
<source>Partially Signed Transaction (*.psbt)</source>
- <translation type="unfinished">部分的に署名されたトランザクション (*.psbt)</translation>
+ <translation type="unfinished">部分的に署名された取引(*.psbt)</translation>
</message>
<message>
<source>PSBT file must be smaller than 100 MiB</source>
- <translation type="unfinished">PSBTファイルは、100MBより小さい必要があります。</translation>
+ <translation type="unfinished">PSBTファイルは、100 MiB より小さい必要があります。</translation>
</message>
<message>
<source>Unable to decode PSBT</source>
@@ -3952,7 +4002,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Warning: This may pay the additional fee by reducing change outputs or adding inputs, when necessary. It may add a new change output if one does not already exist. These changes may potentially leak privacy.</source>
- <translation type="unfinished">警告: 必要に応じて、お釣り用のアウトプットの額を減らしたり、インプットを追加することで追加手数料を支払うことができます。またお釣り用のアウトプットが存在しない場合、新たな乙利用のアウトプットを追加することもできます。これらの変更はプライバシーをリークする可能性があります。</translation>
+ <translation type="unfinished">警告: 必要に応じて、お釣り用のアウトプットの額を減らしたり、インプットを追加することで追加手数料を支払うことができます。またお釣り用のアウトプットが存在しない場合、新たなお釣り用のアウトプットを追加することもできます。これらの変更はプライバシーをリークする可能性があります。</translation>
</message>
<message>
<source>Confirm fee bump</source>
@@ -3960,7 +4010,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Can't draft transaction.</source>
- <translation type="unfinished">トランザクションのひな型を作成できませんでした。</translation>
+ <translation type="unfinished">取引のひな型を作成できませんでした。</translation>
</message>
<message>
<source>PSBT copied</source>
@@ -3973,11 +4023,11 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Can't sign transaction.</source>
- <translation type="unfinished">トランザクションを署名できませんでした。</translation>
+ <translation type="unfinished">取引に署名できませんでした。</translation>
</message>
<message>
<source>Could not commit transaction</source>
- <translation type="unfinished">トランザクションのコミットに失敗しました</translation>
+ <translation type="unfinished">取引の作成に失敗しました</translation>
</message>
<message>
<source>Can't display address</source>
@@ -3985,7 +4035,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">デフォルトウォレット</translation>
+ <translation type="unfinished">デフォルトのウォレット</translation>
</message>
</context>
<context>
@@ -4005,11 +4055,11 @@ Go to File &gt; Open Wallet to load a wallet.
<message>
<source>Wallet Data</source>
<extracomment>Name of the wallet data file format.</extracomment>
- <translation type="unfinished">ウォレットデータ</translation>
+ <translation type="unfinished">ウォレットのデータ</translation>
</message>
<message>
<source>Backup Failed</source>
- <translation type="unfinished">バックアップ失敗</translation>
+ <translation type="unfinished">バックアップに失敗しました</translation>
</message>
<message>
<source>There was an error trying to save the wallet data to %1.</source>
@@ -4017,11 +4067,11 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Backup Successful</source>
- <translation type="unfinished">バックアップ成功</translation>
+ <translation type="unfinished">バックアップに成功しました</translation>
</message>
<message>
<source>The wallet data was successfully saved to %1.</source>
- <translation type="unfinished">ウォレット データは正常に %1 に保存されました。</translation>
+ <translation type="unfinished">ウォレットのデータは正常に %1 に保存されました。</translation>
</message>
<message>
<source>Cancel</source>
@@ -4039,12 +4089,16 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%sが破損しています。ウォレットのツールbitcoin-walletを使って復旧するか、バックアップから復元してみてください。</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s は -assumeutxo スナップショットの状態を検証できませんでした。これは、ハードウェアの問題、ソフトウェアのバグ、または無効なスナップショットのロードを可能にした不適切なソフトウェア変更を示しています。この結果、ノードはシャットダウンし、スナップショットに基づいて構築された状態の使用を停止し、チェーンの高さを %d から %d にリセットします。次回の再起動時に、ノードはスナップショット データを使用せずに %d からの同期を再開します。スナップショットの入手方法も含めて、このインシデントを %s に報告してください。無効なスナップショットのチェーン状態は、このエラーの原因となった問題の診断に役立てるためにディスク上に残されます。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
- <translation type="unfinished">%s ポート %u でリッスンするように要求します。このポートは「不良」と見なされるため、どのピアもこのポートに接続することはないでしょう。詳細と完全なリストについては、doc/p2p-bad-ports.md を参照してください。</translation>
+ <translation type="unfinished">%s はポート %u でリッスンするように要求します。このポートは「不良」と見なされるため、どのピアもこのポートに接続することはないでしょう。詳細と完全なリストについては、doc/p2p-bad-ports.md を参照してください。</translation>
</message>
<message>
<source>Cannot downgrade wallet from version %i to version %i. Wallet version unchanged.</source>
- <translation type="unfinished">ウォレットをバージョン%iからバージョン%iにダウングレードできません。ウォレットバージョンは変更されていません。</translation>
+ <translation type="unfinished">ウォレットをバージョン%iからバージョン%iにダウングレードできません。ウォレットのバージョンは変更されていません。</translation>
</message>
<message>
<source>Cannot obtain a lock on data directory %s. %s is probably already running.</source>
@@ -4056,7 +4110,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
- <translation type="unfinished">%sのディスク容量では、ブロックファイルを保存できない可能性があります。%uGBのデータがこのディレクトリに保存されます。</translation>
+ <translation type="unfinished">%s のディスク容量では、ブロックファイルを保存しきれない可能性があります。およそ %u GB のデータがこのディレクトリに保存されます。</translation>
</message>
<message>
<source>Distributed under the MIT software license, see the accompanying file %s or %s</source>
@@ -4067,24 +4121,20 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">ウォレットの読み込みに失敗しました。ウォレットはブロックをダウンロードする必要があり、ソフトウェアは現在、assumeutxoスナップショットを使用してブロックが順不同でダウンロードされている間のウォレットの読み込みをサポートしていません。ノードの同期が高さ%sに達したら、ウォレットの読み込みが可能になります。</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">%s の読み込み中にエラーが発生しました! 全ての鍵は正しく読み込めましたが、取引データやアドレス帳の項目が失われたか、正しくない可能性があります。</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">%s が読めません! 取引データが欠落しているか誤っている可能性があります。ウォレットを再スキャンしています。</translation>
</message>
<message>
<source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
- <translation type="unfinished">エラー: Dumpfileのフォーマットレコードが不正です。"%s"が得られましたが、期待値は"format"です。</translation>
+ <translation type="unfinished">エラー: ダンプファイルのフォーマットレコードが不正です。"%s"が得られましたが、期待値は"format"です。</translation>
</message>
<message>
<source>Error: Dumpfile identifier record is incorrect. Got "%s", expected "%s".</source>
- <translation type="unfinished">エラー: Dumpfileの識別子レコードが不正です。得られた値は"%s"で、期待値は"%s"です。</translation>
+ <translation type="unfinished">エラー: ダンプファイルの識別子レコードが不正です。得られた値は"%s"で、期待値は"%s"です。</translation>
</message>
<message>
<source>Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
- <translation type="unfinished">エラー: Dumpfileのバージョンが未指定です。このバージョンのbitcoin-walletは、バージョン1のDumpfileのみをサポートします。バージョン%sのDumpfileを取得しました。</translation>
+ <translation type="unfinished">エラー: ダンプファイルのバージョンがサポート外です。このバージョンの Bitcoin ウォレットは、バージョン 1 のダンプファイルのみをサポートします。バージョン%sのダンプファイルでした。</translation>
</message>
<message>
<source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
@@ -4092,7 +4142,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
- <translation type="unfinished">エラー: このレガシー ウォレットの記述子を生成できません。ウォレットが暗号化されている場合は、ウォレットのパスフレーズを必ず入力してください。</translation>
+ <translation type="unfinished">エラー: このレガシー ウォレットのディスクリプターを生成できません。ウォレットが暗号化されている場合は、ウォレットのパスフレーズを必ず入力してください。</translation>
</message>
<message>
<source>File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
@@ -4132,13 +4182,17 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
- <translation type="unfinished">プルーン モードは -reindex-chainstate と互換性がありません。代わりに完全再インデックスを使用してください。</translation>
+ <translation type="unfinished">剪定モードは -reindex-chainstate と互換性がありません。代わりに完全な再インデックス -reindex を使用してください。</translation>
</message>
<message>
<source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
<translation type="unfinished">剪定: 最後のウォレット同期ポイントが、剪定されたデータを越えています。-reindex を実行する必要があります (剪定されたノードの場合、ブロックチェーン全体を再ダウンロードします)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">'%s' -&gt; '%s' の名前変更に失敗しました。 この問題を解決するには、無効なスナップショット ディレクトリ %s を手動で移動または削除する必要があります。そうしないと、次回の起動時に同じエラーが再び発生します。</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: 未知のsqliteウォレットスキーマバージョン %d 。バージョン %d のみがサポートされています</translation>
</message>
@@ -4147,10 +4201,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">ブロックデータベースに未来の時刻のブロックが含まれています。お使いのコンピューターの日付と時刻が間違っている可能性があります。コンピュータの日付と時刻が本当に正しい場合にのみ、ブロックデータベースの再構築を実行してください</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">ブロックインデックスのDBには、レガシーの 'txindex' が含まれています。 占有されているディスク領域を開放するには -reindex を実行してください。あるいはこのエラーを無視してください。 このエラーメッセージは今後表示されません。</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">取引の手数料差引後金額が小さすぎるため、送金できません</translation>
</message>
@@ -4164,11 +4214,11 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection.</source>
- <translation type="unfinished">これは、通常のコイン選択よりも部分支払いの回避を優先するコイン選択を行う際に(通常の手数料に加えて)支払う最大のトランザクション手数料です。</translation>
+ <translation type="unfinished">これは、通常のコイン選択よりも部分支払いの回避を優先するコイン選択を行う際に(通常の手数料に加えて)支払う最大の取引手数料です。</translation>
</message>
<message>
<source>This is the transaction fee you may discard if change is smaller than dust at this level</source>
- <translation type="unfinished">これは、このレベルでダストよりもお釣りが小さい場合に破棄されるトランザクション手数料です</translation>
+ <translation type="unfinished">これは、このレベルでダストよりもお釣りが小さい場合に破棄される取引手数料です</translation>
</message>
<message>
<source>This is the transaction fee you may pay when fee estimates are not available.</source>
@@ -4187,6 +4237,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">未知のウォレットフォーマット"%s"が指定されました。"bdb"もしくは"sqlite"のどちらかを指定してください。</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">サポートされていないカテゴリ固有のログレベルです %1$s=%2$s。 期待値は %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有効なカテゴリ: %3$s。 有効なログレベル: %4$s。</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">サポートされていないチェーンステート データベース形式が見つかりました。 -reindex-chainstate で再起動してください。これにより、チェーンステート データベースが再構築されます。</translation>
</message>
@@ -4195,6 +4249,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">ウォレットが正常に作成されました。レガシー ウォレット タイプは非推奨になり、レガシー ウォレットの作成とオープンのサポートは将来的に削除される予定です。</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">ウォレットが正常にロードされました。 レガシーウォレットタイプは非推奨となり、レガシーウォレットの作成と使用のサポートは将来削除される予定です。 レガシーウォレットは、「mergewallet」を使用してディスクリプターウォレットに移行できます。</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">警告: ダンプファイルウォレットフォーマット"%s"は、コマンドラインで指定されたフォーマット"%s"と合致していません。</translation>
</message>
@@ -4208,7 +4266,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Witness data for blocks after height %d requires validation. Please restart with -reindex.</source>
- <translation type="unfinished">高さ%d以降のブロックのwitnessデータには検証が必要です。-reindexを付けて再起動してください。</translation>
+ <translation type="unfinished">高さ%d以降のブロックのwitnessデータは検証が必要です。-reindexを付けて再起動してください。</translation>
</message>
<message>
<source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source>
@@ -4220,7 +4278,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>-maxmempool must be at least %d MB</source>
- <translation type="unfinished">-maxmempoolは最低でも %d MB必要です</translation>
+ <translation type="unfinished">-maxmempool は最低でも %d MB 必要です</translation>
</message>
<message>
<source>A fatal internal error occurred, see debug.log for details</source>
@@ -4243,28 +4301,8 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">データディレクトリ '%s' に書き込むことができません。アクセス権を確認してください。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">以前のバージョンで開始された -txindex アップグレードを完了できません。 以前のバージョンで再起動するか、 -reindex を実行してください。</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s は、-assumeutxo スナップショットの状態を検証できませんでした。 これは、ハードウェアの問題、ソフトウェアのバグ、または無効なスナップショットのロードを可能にした不適切なソフトウェアの変更を示しています。 この結果、ノードはシャットダウンし、スナップショット上に構築された状態の使用を停止し、チェーンの高さを %d から %d にリセットします。 次回の再起動時に、ノードはスナップショット データを使用せずに %d から同期を再開します。 スナップショットの取得方法も含めて、このインシデントを %s に報告してください。 このエラーの原因となった問題の診断に役立つように、無効なスナップショット チェーン状態がディスク上に残されています。</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
- <translation type="unfinished">%s が非常に高く設定されています! ひとつの取引でこの金額の手数料が支払われてしまうことがあります。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate オプションは -blockfilterindex と互換性がありません。 -reindex-chainstate の使用中は blockfilterindex を一時的に無効にするか、-reindex-chainstate を -reindex に置き換えてすべてのインデックスを完全に再構築してください。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate オプションは -coinstatsindex と互換性がありません。 -reindex-chainstate の使用中は一時的に coinstatsindex を無効にするか、-reindex-chainstate を -reindex に置き換えてすべてのインデックスを完全に再構築してください。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate オプションは -txindex と互換性がありません。 -reindex-chainstate の使用中は一時的に txindex を無効にするか、-reindex-chainstate を -reindex に置き換えてすべてのインデックスを完全に再構築してください。</translation>
+ <translation type="unfinished">%s が非常に高く設定されています! ひとつの取引でこのような高額の手数料が支払われてしまうことがあります。</translation>
</message>
<message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
@@ -4272,19 +4310,27 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Error loading %s: External signer wallet being loaded without external signer support compiled</source>
- <translation type="unfinished">%s のロード中にエラーが発生しました:外​​部署名者ウォレットがロードされています</translation>
+ <translation type="unfinished">%s のロード中にエラーが発生: 外部署名者サポートがコンパイルされていないソフトウエアで外部署名者ウォレットをロードしようとしています</translation>
+ </message>
+ <message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">%s の読み取り中にエラーが発生しました! すべてのキーは正しく読み取られますが、取引データまたはアドレス メタデータが欠落しているか、正しくない可能性があります。</translation>
</message>
<message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
- <translation type="unfinished">エラー: ウォレット内のアドレス帳データが、移行されたウォレットに属していると識別できません</translation>
+ <translation type="unfinished">エラー: ウォレット内のアドレス帳データが、移行されたウォレットに属しているのか識別できません</translation>
</message>
<message>
<source>Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
- <translation type="unfinished">エラー: 移行中に作成された重複した記述子。ウォレットが破損している可能性があります。</translation>
+ <translation type="unfinished">エラー: 移行中に作成された重複したディスクリプター。ウォレットが破損している可能性があります。</translation>
</message>
<message>
<source>Error: Transaction %s in wallet cannot be identified to belong to migrated wallets</source>
- <translation type="unfinished">エラー: ウォレット内のトランザクション %s は、移行されたウォレットに属していると識別できません</translation>
+ <translation type="unfinished">エラー: ウォレット内の取引%s は、移行されたウォレットに属しているのか識別できません</translation>
+ </message>
+ <message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">未承認の UTXO は未承認の取引の巨大なクラスターに依存しているため、バンプ料金の計算に失敗しました。</translation>
</message>
<message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
@@ -4296,11 +4342,11 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
- <translation type="unfinished">互換性のないオプション: -dnsseed=1 が明示的に指定されましたが、-onlynet は IPv4/IPv6 への接続を禁止します</translation>
+ <translation type="unfinished">不適切なオプション: -dnsseed=1 が明示的に指定されましたが、-onlynet は IPv4/IPv6 への接続を禁止します</translation>
</message>
<message>
<source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
- <translation type="unfinished">%s=&lt;amount&gt; オプションに対する不正な設定: '%s' (取引の停滞防止のため、最小中継手数料の %s より大きい必要があります)</translation>
+ <translation type="unfinished">%s=&lt;amount&gt; オプションに対する不正な金額: '%s' (取引の停滞防止のため、最小中継手数料の %s より大きい必要があります)</translation>
</message>
<message>
<source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
@@ -4336,16 +4382,17 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
- <translation type="unfinished">未確認の UTXO は利用可能ですが、それらを使用すると取引の連鎖が形成されるので、メモリプールによって拒否されます。</translation>
+ <translation type="unfinished">未承認の UTXO は利用可能ですが、それらを使用すると取引の連鎖が形成されるので、メモリプールによって拒否されます。</translation>
</message>
<message>
<source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
The wallet might have been tampered with or created with malicious intent.
</source>
- <translation type="unfinished">記述子ウォレットに予期しないレガシーエントリーが見つかりました。ウォレット%sを読み込んでいます。
+ <translation type="unfinished">ディスクリプターウォレットに予期しないレガシーエントリーが見つかりました。ウォレット%sを読み込んでいます。
-ウォレットが改竄されたか、悪意をもって作成されている可能性があります。</translation>
+ウォレットが改竄されたか、悪意をもって作成されている可能性があります。
+</translation>
</message>
<message>
<source>Unrecognized descriptor found. Loading wallet %s
@@ -4353,17 +4400,13 @@ The wallet might have been tampered with or created with malicious intent.
The wallet might had been created on a newer version.
Please try running the latest software version.
</source>
- <translation type="unfinished">認識できない記述子が見つかりました。ウォレットをロードしています %s
+ <translation type="unfinished">認識できないディスクリプターが見つかりました。ウォレット %s をロードしています
ウォレットが新しいバージョンで作成された可能性があります。
最新のソフトウェア バージョンを実行してみてください。
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">サポートされていないカテゴリ固有のログ レベル -loglevel=%s。 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. が必要です。有効なカテゴリ:%s 。有効なログレベル:%s .</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4389,15 +4432,15 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Could not find asmap file %s</source>
- <translation type="unfinished">Asmapファイル%sが見つかりませんでした</translation>
+ <translation type="unfinished">ASマップファイル%sが見つかりませんでした</translation>
</message>
<message>
<source>Could not parse asmap file %s</source>
- <translation type="unfinished">Asmapファイル%sを解析できませんでした</translation>
+ <translation type="unfinished">ASマップファイル %s を解析できませんでした</translation>
</message>
<message>
<source>Disk space is too low!</source>
- <translation type="unfinished">ディスク容量不足!</translation>
+ <translation type="unfinished">ディスク容量が不足しています!</translation>
</message>
<message>
<source>Do you want to rebuild the block database now?</source>
@@ -4409,7 +4452,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Dump file %s does not exist.</source>
- <translation type="unfinished">ダンプファイル%sは存在しません。</translation>
+ <translation type="unfinished">ダンプファイル %s が存在しません。</translation>
</message>
<message>
<source>Error creating %s</source>
@@ -4437,7 +4480,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error loading %s: Wallet requires newer version of %s</source>
- <translation type="unfinished">%s の読み込みエラー: より新しいバージョンの %s が必要です</translation>
+ <translation type="unfinished">%s の読み込みエラー: ウォレットは新しいバージョン %s が必要です</translation>
</message>
<message>
<source>Error loading block database</source>
@@ -4449,7 +4492,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error reading configuration file: %s</source>
- <translation type="unfinished">エラー: 設定ファイルの読み込み: %s</translation>
+ <translation type="unfinished">設定ファイルの読み込みエラー: %s</translation>
</message>
<message>
<source>Error reading from database, shutting down.</source>
@@ -4465,11 +4508,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Could not add watchonly tx to watchonly wallet</source>
- <translation type="unfinished">¡エラー: watchonly tx を watchonly ウォレットに追加できませんでした</translation>
+ <translation type="unfinished">エラー: 監視対象取引を監視専用ウォレットに追加できませんでした</translation>
</message>
<message>
<source>Error: Could not delete watchonly transactions</source>
- <translation type="unfinished">エラー: watchonly トランザクションを削除できませんでした</translation>
+ <translation type="unfinished">エラー: 監視対象取引を削除できませんでした</translation>
</message>
<message>
<source>Error: Couldn't create cursor into database</source>
@@ -4485,15 +4528,15 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Failed to create new watchonly wallet</source>
- <translation type="unfinished">エラー: 新しい watchonly ウォレットを作成できませんでした</translation>
+ <translation type="unfinished">エラー: 新しい監視専用ウォレットを作成できませんでした</translation>
</message>
<message>
<source>Error: Got key that was not hex: %s</source>
- <translation type="unfinished">エラー: hexではない鍵を取得しました: %s</translation>
+ <translation type="unfinished">エラー: 16進ではない鍵を取得しました: %s</translation>
</message>
<message>
<source>Error: Got value that was not hex: %s</source>
- <translation type="unfinished">エラー: hexではない値を取得しました: %s</translation>
+ <translation type="unfinished">エラー: 16進ではない値を取得しました: %s</translation>
</message>
<message>
<source>Error: Keypool ran out, please call keypoolrefill first</source>
@@ -4505,11 +4548,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: No %s addresses available.</source>
- <translation type="unfinished">エラー: %sアドレスはありません。</translation>
+ <translation type="unfinished">エラー: %sアドレスは使えません。</translation>
</message>
<message>
<source>Error: Not all watchonly txs could be deleted</source>
- <translation type="unfinished">エラー: 一部の watchonly tx を削除できませんでした</translation>
+ <translation type="unfinished">エラー: 一部の監視対象取引を削除できませんでした</translation>
</message>
<message>
<source>Error: This wallet already uses SQLite</source>
@@ -4517,7 +4560,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: This wallet is already a descriptor wallet</source>
- <translation type="unfinished">エラー: このウォレットはすでに記述子ウォレットです</translation>
+ <translation type="unfinished">エラー: このウォレットはすでにディスクリプターウォレットです</translation>
</message>
<message>
<source>Error: Unable to begin reading all records in the database</source>
@@ -4537,7 +4580,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Unable to remove watchonly address book data</source>
- <translation type="unfinished">エラー: watchonly アドレス帳データを削除できません</translation>
+ <translation type="unfinished">エラー: 監視専用アドレス帳データを削除できません</translation>
</message>
<message>
<source>Error: Unable to write record to new wallet</source>
@@ -4552,6 +4595,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">初期化中にウォレットの再スキャンに失敗しました</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">インデックスの開始に失敗しました。シャットダウンします...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">データベースの検証に失敗しました</translation>
</message>
@@ -4561,7 +4608,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Ignoring duplicate -wallet %s.</source>
- <translation type="unfinished">重複するウォレット%sを無視します。</translation>
+ <translation type="unfinished">重複するウォレット -wallet %s を無視します。</translation>
</message>
<message>
<source>Importing…</source>
@@ -4569,7 +4616,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Incorrect or no genesis block found. Wrong datadir for network?</source>
- <translation type="unfinished">ジェネシスブロックが不正であるか、見つかりません。ネットワークの datadir が間違っていませんか?</translation>
+ <translation type="unfinished">ジェネシスブロックが不正であるか、見つかりません。ネットワークに対するデータディレクトリが間違っていませんか?</translation>
</message>
<message>
<source>Initialization sanity check failed. %s is shutting down.</source>
@@ -4581,23 +4628,23 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Insufficient dbcache for block verification</source>
- <translation type="unfinished">ブロック検証用のdbcacheが不足しています</translation>
+ <translation type="unfinished">ブロック検証用のデータベース用キャッシュが不足しています</translation>
</message>
<message>
<source>Insufficient funds</source>
- <translation type="unfinished">残高不足</translation>
+ <translation type="unfinished">残高不足です</translation>
</message>
<message>
<source>Invalid -i2psam address or hostname: '%s'</source>
- <translation type="unfinished">無効な -i2psamアドレス、もしくはホスト名: '%s'</translation>
+ <translation type="unfinished">-i2psam オプションに対する無効なアドレスまたはホスト名: '%s'</translation>
</message>
<message>
<source>Invalid -onion address or hostname: '%s'</source>
- <translation type="unfinished">-onion オプションに対する不正なアドレスまたはホスト名: '%s'</translation>
+ <translation type="unfinished">-onion オプションに対する無効なアドレスまたはホスト名: '%s'</translation>
</message>
<message>
<source>Invalid -proxy address or hostname: '%s'</source>
- <translation type="unfinished">-proxy オプションに対する不正なアドレスまたはホスト名: '%s'</translation>
+ <translation type="unfinished">-proxy オプションに対する無効なアドレスまたはホスト名: '%s'</translation>
</message>
<message>
<source>Invalid P2P permission: '%s'</source>
@@ -4613,7 +4660,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Invalid amount for -%s=&lt;amount&gt;: '%s'</source>
- <translation type="unfinished">-%s=&lt;amount&gt; オプションに対する不正な amount: '%s'</translation>
+ <translation type="unfinished">-%s=&lt;amount&gt; オプションに対する不正な設定: '%s'</translation>
</message>
<message>
<source>Invalid netmask specified in -whitelist: '%s'</source>
@@ -4621,7 +4668,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Invalid port specified in %s: '%s'</source>
- <translation type="unfinished">%sで無効なポートが指定されました: '%s'</translation>
+ <translation type="unfinished">%sに対する無効なポート指定: '%s'</translation>
</message>
<message>
<source>Invalid pre-selected input %s</source>
@@ -4637,7 +4684,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Loading banlist…</source>
- <translation type="unfinished">banリストの読み込み中…</translation>
+ <translation type="unfinished">Banリストの読み込み中…</translation>
</message>
<message>
<source>Loading block index…</source>
@@ -4665,7 +4712,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Not enough file descriptors available.</source>
- <translation type="unfinished">使用可能なファイルディスクリプタが不足しています。</translation>
+ <translation type="unfinished">使用可能なファイルディスクリプターが不足しています。</translation>
</message>
<message>
<source>Not found pre-selected input %s</source>
@@ -4705,7 +4752,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>SQLiteDatabase: Failed to prepare statement to verify database: %s</source>
- <translation type="unfinished">SQLiteDatabase: データベースを検証するプリペアドステートメントの作成に失敗しました: %s</translation>
+ <translation type="unfinished">SQLiteDatabase: データベースを検証するステートメントの準備に失敗しました: %s</translation>
</message>
<message>
<source>SQLiteDatabase: Failed to read database verification error: %s</source>
@@ -4757,7 +4804,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>The transaction amount is too small to pay the fee</source>
- <translation type="unfinished">取引の手数料差引後金額が小さすぎるため、送金できません</translation>
+ <translation type="unfinished">取引金額が小さすぎるので手数料を支払えません</translation>
</message>
<message>
<source>The wallet will avoid paying less than the minimum relay fee.</source>
@@ -4789,11 +4836,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Transaction has too long of a mempool chain</source>
- <translation type="unfinished">トランザクションのmempoolチェーンが長すぎます</translation>
+ <translation type="unfinished">取引のメモリープールチェーンが長すぎます</translation>
</message>
<message>
<source>Transaction must have at least one recipient</source>
- <translation type="unfinished">トランザクションは最低ひとつの受取先が必要です</translation>
+ <translation type="unfinished">取引は最低ひとつの受取先が必要です</translation>
</message>
<message>
<source>Transaction needs a change address, but we can't generate it.</source>
@@ -4801,7 +4848,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Transaction too large</source>
- <translation type="unfinished">トランザクションが大きすぎます</translation>
+ <translation type="unfinished">取引が大きすぎます</translation>
</message>
<message>
<source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
@@ -4809,7 +4856,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Unable to bind to %s on this computer (bind returned error %s)</source>
- <translation type="unfinished">このコンピュータの %s にバインドすることができません(%s エラーが返却されました)</translation>
+ <translation type="unfinished">このコンピュータの %s にバインドすることができません(%s エラーが返されました)</translation>
</message>
<message>
<source>Unable to bind to %s on this computer. %s is probably already running.</source>
@@ -4841,7 +4888,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Unable to start HTTP server. See debug log for details.</source>
- <translation type="unfinished">HTTPサーバを開始できませんでした。詳細は debug.log を参照してください。</translation>
+ <translation type="unfinished">HTTPサーバを開始できません。詳細は debug.log を参照してください。</translation>
</message>
<message>
<source>Unable to unload the wallet before migrating</source>
@@ -4853,11 +4900,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Unknown address type '%s'</source>
- <translation type="unfinished">未知のアドレス形式 '%s' です</translation>
+ <translation type="unfinished">不明なアドレス形式 '%s' </translation>
</message>
<message>
<source>Unknown change type '%s'</source>
- <translation type="unfinished">未知のおつり用アドレス形式 '%s' です</translation>
+ <translation type="unfinished">不明なお釣りのアドレス形式 '%s' </translation>
</message>
<message>
<source>Unknown network specified in -onlynet: '%s'</source>
@@ -4868,8 +4915,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">不明な新ルールがアクティベートされました (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">サポートされていないグローバル ログ レベル -loglevel=%s。有効な値: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">未サポートのログレベル %s=%s。 正しい値は: %s。</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s チェーンでは acceptstalefeeestimates はサポートされていません。</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
@@ -4893,11 +4944,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Settings file could not be read</source>
- <translation type="unfinished">設定ファイルを読めません</translation>
+ <translation type="unfinished">設定ファイルを読めませんでした</translation>
</message>
<message>
<source>Settings file could not be written</source>
- <translation type="unfinished">設定ファイルを書けません</translation>
+ <translation type="unfinished">設定ファイルを書けませんでした</translation>
</message>
</context>
</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_ka.ts b/src/qt/locale/bitcoin_ka.ts
index 27e8650986..e15938e277 100644
--- a/src/qt/locale/bitcoin_ka.ts
+++ b/src/qt/locale/bitcoin_ka.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;არჩევა</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">გასაგზავნი მისამართები</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">მიმღები მისამართები</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">ეს არის თქვენი ბიტკოინ-მისამართები გადარიცხვებისათვის. აუცილებლად შეამოწმეთ მითითებული თანხა და მიმღები მისამართი კოინების გადარიცხვამდე.</translation>
</message>
@@ -799,10 +791,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">საკომისიო:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">მტვერი:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">დამატებითი საკომისიო:</translation>
</message>
@@ -887,14 +875,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 დაბლოკილია)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">დიახ</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">არა</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(ნიშნული არ არის)</translation>
</message>
@@ -1104,6 +1084,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</translation>
</message>
<message>
+ <source>The wallet will also be stored in this directory.</source>
+ <translation type="unfinished">საფულე ასევე შეინახება ამ დირექტორიაში.</translation>
+ </message>
+ <message>
<source>Error: Specified data directory "%1" cannot be created.</source>
<translation type="unfinished">შეცდომა: მითითებულ მონაცემთა დირექტორია „%1“ არ არის შექმნილი.</translation>
</message>
@@ -1228,6 +1212,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">&amp;მთავარი</translation>
</message>
<message>
+ <source>Automatically start %1 after logging in to the system.</source>
+ <translation type="unfinished">ავტომატურად დაიწყება %1 სისტემაში შესვლის შემდეგ.</translation>
+ </message>
+ <message>
<source>Size of &amp;database cache</source>
<translation type="unfinished">მონაცემთა ბაზის კეშის სი&amp;დიდე</translation>
</message>
@@ -1469,6 +1457,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">მეტი შენატანის ხელმოწერა ვერ მოხერხდა.</translation>
</message>
<message>
+ <source>Signed %1 inputs, but more signatures are still required.</source>
+ <translation type="unfinished">ხელმოწერილია %1 შენატანი, მაგრამ მაინც საჭიროა უფრო მეტი ხელმოწერები.</translation>
+ </message>
+ <message>
<source>Unknown error processing transaction.</source>
<translation type="unfinished">ტრანზაქციის დამუშავებისას მოხდა უცნობი შეცდომა.</translation>
</message>
@@ -1498,6 +1490,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">PSBT შენახულია დისკზე.</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">საკუთარი მისამართი</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">ტრანზაქციის საკომისიოს ან მთლიანი ტრანზაქციის თანხის გამოთვლა შეუძლებელია.</translation>
</message>
@@ -1713,7 +1709,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Addresses Rate-Limited</source>
<extracomment>Text title for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">მისამართების შეფასება შეზღუდულია</translation>
+ <translation type="unfinished">მისამართების განაკვეთი შეზღუდულია</translation>
</message>
<message>
<source>User Agent</source>
@@ -1815,7 +1811,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Unban</source>
- <translation type="unfinished">&amp;ბანის მოხსნა</translation>
+ <translation type="unfinished">&amp;აკრძალვის მოხსნა</translation>
</message>
<message>
<source>Network activity disabled</source>
@@ -2086,10 +2082,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">შეყვანები…</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">მტვერი:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">აირჩიეთ…</translation>
</message>
@@ -2461,7 +2453,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Total debit</source>
- <translation type="unfinished">სულ დებეტი</translation>
+ <translation type="unfinished">დებეტი სულ</translation>
</message>
<message>
<source>Total credit</source>
@@ -2590,10 +2582,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">გაგზავნილია</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">გადახდილია საკუთარი თავისათვის</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">მოპოვებულია</translation>
</message>
@@ -2657,10 +2645,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">გაგზავნილია</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">საკუთარი თავისათვის</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">მოპოვებულია</translation>
</message>
@@ -2690,7 +2674,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Copy transaction &amp;ID</source>
- <translation type="unfinished">ტრანზაქციის დაკოპირება &amp; ID</translation>
+ <translation type="unfinished">ტრანზაქციის დაკოპირება &amp;ID</translation>
</message>
<message>
<source>Copy &amp;raw transaction</source>
diff --git a/src/qt/locale/bitcoin_kk.ts b/src/qt/locale/bitcoin_kk.ts
index dafb5d080a..d40c6e56a1 100644
--- a/src/qt/locale/bitcoin_kk.ts
+++ b/src/qt/locale/bitcoin_kk.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Т&amp;аңдау</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Жіберуші мекенжайлар</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Қабылдаушы мекенжайлар</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Бұл сіздің төлем жіберетін Bitcoin мекенжайларыңыз. Тиын жібермес бұрын, әрқашан сома мен алушы мекенжайды тексеріңіз.</translation>
</message>
@@ -551,10 +543,6 @@
<translation type="unfinished">Комиссия</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Шаң</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Комиссия алу кейін</translation>
</message>
@@ -575,10 +563,6 @@
<translation type="unfinished">Растық</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">Иа</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(белгі жоқ)</translation>
</message>
@@ -653,7 +637,7 @@
</message>
<message>
<source>Error</source>
- <translation type="unfinished">қате</translation>
+ <translation type="unfinished">Қате</translation>
</message>
<message>
<source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
@@ -684,7 +668,7 @@
</message>
<message>
<source>Error</source>
- <translation type="unfinished">қате</translation>
+ <translation type="unfinished">Қате</translation>
</message>
</context>
<context>
@@ -772,10 +756,6 @@
<source>After Fee:</source>
<translation type="unfinished">Комиссия алу кейін</translation>
</message>
- <message>
- <source>Dust:</source>
- <translation type="unfinished">Шаң</translation>
- </message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
@@ -879,7 +859,7 @@
</message>
<message>
<source>Error</source>
- <translation type="unfinished">қате</translation>
+ <translation type="unfinished">Қате</translation>
</message>
</context>
<context>
diff --git a/src/qt/locale/bitcoin_kk@latin.ts b/src/qt/locale/bitcoin_kk@latin.ts
new file mode 100644
index 0000000000..981b8a191c
--- /dev/null
+++ b/src/qt/locale/bitcoin_kk@latin.ts
@@ -0,0 +1,891 @@
+<TS version="2.1" language="kk@latin">
+<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Right-click to edit address or label</source>
+ <translation type="unfinished">Мекенжай немесе белгі өңдеу үшін оң клик</translation>
+ </message>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">Жаңа мекенжай құру</translation>
+ </message>
+ <message>
+ <source>&amp;New</source>
+ <translation type="unfinished">&amp;Жаңа</translation>
+ </message>
+ <message>
+ <source>Copy the currently selected address to the system clipboard</source>
+ <translation type="unfinished">Таңдалған мекенжайды жүйенің айырбастау буферіне көшіру</translation>
+ </message>
+ <message>
+ <source>&amp;Copy</source>
+ <translation type="unfinished">&amp;Көшіру</translation>
+ </message>
+ <message>
+ <source>C&amp;lose</source>
+ <translation type="unfinished">Ж&amp;абу</translation>
+ </message>
+ <message>
+ <source>Delete the currently selected address from the list</source>
+ <translation type="unfinished">Таңдалған мекенжайды тізімнен жою</translation>
+ </message>
+ <message>
+ <source>Enter address or label to search</source>
+ <translation type="unfinished">Іздеу үшін мекенжай немесе белгі енгізіңіз</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Қазіргі қойыншадағы деректерді файлға экспорттау</translation>
+ </message>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Экспорттау</translation>
+ </message>
+ <message>
+ <source>&amp;Delete</source>
+ <translation type="unfinished">&amp;Жою</translation>
+ </message>
+ <message>
+ <source>Choose the address to send coins to</source>
+ <translation type="unfinished">Тиын жіберуге мекенжай таңдаңыз</translation>
+ </message>
+ <message>
+ <source>Choose the address to receive coins with</source>
+ <translation type="unfinished">Тиын қабылдайтын мекенжай таңдаңыз</translation>
+ </message>
+ <message>
+ <source>C&amp;hoose</source>
+ <translation type="unfinished">Т&amp;аңдау</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
+ <translation type="unfinished">Бұл сіздің төлем жіберетін Bitcoin мекенжайларыңыз. Тиын жібермес бұрын, әрқашан сома мен алушы мекенжайды тексеріңіз.</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Address</source>
+ <translation type="unfinished">&amp;Мекенжайды көшіру</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Label</source>
+ <translation type="unfinished">Белгіні &amp;көшіру</translation>
+ </message>
+ <message>
+ <source>&amp;Edit</source>
+ <translation type="unfinished">&amp;Өңдеу</translation>
+ </message>
+ <message>
+ <source>Export Address List</source>
+ <translation type="unfinished">Мекенжай тізімін экспорттау</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Үтірмен бөлінген файл</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">Мекенжай тізімін %1 дегенге сақтағанда, қате пайда болды. Қайталап көріңіз. </translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Экспортталмады</translation>
+ </message>
+</context>
+<context>
+ <name>AddressTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Белгі</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Мекенжай</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(белгі жоқ)</translation>
+ </message>
+</context>
+<context>
+ <name>AskPassphraseDialog</name>
+ <message>
+ <source>Passphrase Dialog</source>
+ <translation type="unfinished">Құпиясөйлем диалогі</translation>
+ </message>
+ <message>
+ <source>Enter passphrase</source>
+ <translation type="unfinished">Құпиясөйлем енгізу</translation>
+ </message>
+ <message>
+ <source>New passphrase</source>
+ <translation type="unfinished">Жаңа құпиясөйлем</translation>
+ </message>
+ <message>
+ <source>Repeat new passphrase</source>
+ <translation type="unfinished">Жаңа құпиясөйлемді қайталаңыз</translation>
+ </message>
+ <message>
+ <source>Show passphrase</source>
+ <translation type="unfinished">Құпиясөйлемді көрсету</translation>
+ </message>
+ <message>
+ <source>Encrypt wallet</source>
+ <translation type="unfinished">Әмиянды шифрлау</translation>
+ </message>
+ <message>
+ <source>This operation needs your wallet passphrase to unlock the wallet.</source>
+ <translation type="unfinished">Бұл операцияға әмиянды ашу үшін әмияныңыздың құпиясөйлемі керек.</translation>
+ </message>
+ <message>
+ <source>Unlock wallet</source>
+ <translation type="unfinished">Әмиянды бұғатсыздау</translation>
+ </message>
+ <message>
+ <source>Change passphrase</source>
+ <translation type="unfinished">Құпиясөйлемді өзгерту</translation>
+ </message>
+ <message>
+ <source>Confirm wallet encryption</source>
+ <translation type="unfinished">Әмиян шифрлауды растау</translation>
+ </message>
+ <message>
+ <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
+ <translation type="unfinished">Ескерту: әмияныңызды шифрлап, құпиясөйлеміңізден айырылып қалсаңыз, &lt;b&gt;БАРЛЫҚ BITCOIN-ІҢІЗДЕН ДЕ АЙЫРЫЛАСЫЗ&lt;/b&gt;!</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to encrypt your wallet?</source>
+ <translation type="unfinished">Әмияныңызды шифрлағыңыз келе ме?</translation>
+ </message>
+ <message>
+ <source>Wallet encrypted</source>
+ <translation type="unfinished">Әмиян шифрланды</translation>
+ </message>
+ <message>
+ <source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
+ <translation type="unfinished">Әмиянның жаңа құпиясөйлемін енгізіңіз.&lt;br/&gt;Құпиясөйлеміңіз &lt;b&gt;10+ кездейсоқ таңбадан&lt;/b&gt; немесе &lt;b&gt;8+ сөзден&lt;/b&gt; тұрсын.</translation>
+ </message>
+ <message>
+ <source>Enter the old passphrase and new passphrase for the wallet.</source>
+ <translation type="unfinished">Әмияныңыздың ескі құпиясөйлемі мен жаңа құпиясөйлемін енгізіңіз.</translation>
+ </message>
+ <message>
+ <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
+ <translation type="unfinished">Шифрлау биткоиніңізді компьютер жұқтырған зиянды БЖ-дан толығымен қорғай алмайтынын есіңізде сақтаңыз.</translation>
+ </message>
+ <message>
+ <source>Wallet to be encrypted</source>
+ <translation type="unfinished">Шифланатын әмиян</translation>
+ </message>
+ <message>
+ <source>Your wallet is about to be encrypted. </source>
+ <translation type="unfinished">Әмияныңыз шифрланады.</translation>
+ </message>
+ <message>
+ <source>Your wallet is now encrypted. </source>
+ <translation type="unfinished">Әмияныңыз шифрланды.</translation>
+ </message>
+ <message>
+ <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
+ <translation type="unfinished">МАҢЫЗДЫ: әмиян файлының бұрынғы резервтік көшірмелерінің бәрі жаңа құрылған шифрлы әмиян файлымен ауыстырылуы керек. Қауіпсіздік мақсатында жаңа шифрланған әмиянды қолданып бастағаныңыздан кейін, бұрынғы шифрланбаған әмиян файлының резервтік көшірмелері жарамсыз болып кетеді.</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed</source>
+ <translation type="unfinished">Әмиян шифланбады</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
+ <translation type="unfinished">Әмиян ішкі қате кесірінен шифланбады.</translation>
+ </message>
+ <message>
+ <source>The supplied passphrases do not match.</source>
+ <translation type="unfinished">Енгізілген құпиясөйлемдер сай келмейді.</translation>
+ </message>
+ <message>
+ <source>Wallet unlock failed</source>
+ <translation type="unfinished">Әмиян бұғатсызданбады</translation>
+ </message>
+ <message>
+ <source>The passphrase entered for the wallet decryption was incorrect.</source>
+ <translation type="unfinished">Әмиянды шифрсыздау үшін енгізілген құпиясөйлем бұрыс болды.</translation>
+ </message>
+ <message>
+ <source>Wallet passphrase was successfully changed.</source>
+ <translation type="unfinished">Әмиян құпиясөйлемі сәтті өзгертілді.</translation>
+ </message>
+ <message>
+ <source>Warning: The Caps Lock key is on!</source>
+ <translation type="unfinished">Ескерту: Caps Lock пернесі қосулы!</translation>
+ </message>
+</context>
+<context>
+ <name>BanTableModel</name>
+ <message>
+ <source>IP/Netmask</source>
+ <translation type="unfinished">IP/Субжелі бетпердесі</translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinApplication</name>
+ <message>
+ <source>Internal error</source>
+ <translation type="unfinished">Ішкі қате</translation>
+ </message>
+ </context>
+<context>
+ <name>QObject</name>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Қате: %1</translation>
+ </message>
+ <message>
+ <source>%1 didn't yet exit safely…</source>
+ <translation type="unfinished">%1 қауіпсіз түрде шығып бітпеді...</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Сан</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n week(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>%1 and %2</source>
+ <translation type="unfinished">%1 немесе %2</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n year(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinGUI</name>
+ <message>
+ <source>&amp;Overview</source>
+ <translation type="unfinished">&amp;Шолу</translation>
+ </message>
+ <message>
+ <source>Show general overview of wallet</source>
+ <translation type="unfinished">Негізгі әмиян шолуды көрсету</translation>
+ </message>
+ <message>
+ <source>&amp;Transactions</source>
+ <translation type="unfinished">&amp;Транзакциялар</translation>
+ </message>
+ <message>
+ <source>Browse transaction history</source>
+ <translation type="unfinished">Транзакция тарихын шолу</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation type="unfinished">Ш&amp;ығу</translation>
+ </message>
+ <message>
+ <source>Quit application</source>
+ <translation type="unfinished">Қосымшадан шығу</translation>
+ </message>
+ <message>
+ <source>&amp;About %1</source>
+ <translation type="unfinished">&amp;%1 туралы</translation>
+ </message>
+ <message>
+ <source>Show information about %1</source>
+ <translation type="unfinished">%1 туралы ақпаратты көрсету</translation>
+ </message>
+ <message>
+ <source>About &amp;Qt</source>
+ <translation type="unfinished">Qt &amp;туралы</translation>
+ </message>
+ <message>
+ <source>Show information about Qt</source>
+ <translation type="unfinished">Qt туралы ақпаратты көрсету</translation>
+ </message>
+ <message>
+ <source>Modify configuration options for %1</source>
+ <translation type="unfinished">%1 конфигурация баптауларын өзгерту</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Жаңа әмиян құру</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Әмиян:</translation>
+ </message>
+ <message>
+ <source>Network activity disabled.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">Желі белсенділігі өшірулі.</translation>
+ </message>
+ <message>
+ <source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
+ <translation type="unfinished">Прокси &lt;b&gt;қосулы&lt;/b&gt;: %1</translation>
+ </message>
+ <message>
+ <source>Send coins to a Bitcoin address</source>
+ <translation type="unfinished">Bitcoin мекенжайына тиын жіберу</translation>
+ </message>
+ <message>
+ <source>Backup wallet to another location</source>
+ <translation type="unfinished">Басқа локацияға әмиянның резервтік көшірмесін жасау</translation>
+ </message>
+ <message>
+ <source>Change the passphrase used for wallet encryption</source>
+ <translation type="unfinished">Әмиян шифрлауға қолданылған құпиясөйлемді өзгерту</translation>
+ </message>
+ <message>
+ <source>&amp;Send</source>
+ <translation type="unfinished">&amp;Жіберу</translation>
+ </message>
+ <message>
+ <source>&amp;Receive</source>
+ <translation type="unfinished">&amp;Қабылдау</translation>
+ </message>
+ <message>
+ <source>&amp;Options…</source>
+ <translation type="unfinished">&amp;Баптау…</translation>
+ </message>
+ <message>
+ <source>&amp;Encrypt Wallet…</source>
+ <translation type="unfinished">&amp;Әмиянды шифрлау…</translation>
+ </message>
+ <message>
+ <source>Encrypt the private keys that belong to your wallet</source>
+ <translation type="unfinished">Әмияныңызға тиесілі жеке кілттерді шифрлау</translation>
+ </message>
+ <message>
+ <source>&amp;Backup Wallet…</source>
+ <translation type="unfinished">&amp;Әмиянның резервтік көшірмесін жасау…</translation>
+ </message>
+ <message>
+ <source>&amp;Change Passphrase…</source>
+ <translation type="unfinished">&amp;Құпиясөйлемді өзгерту…</translation>
+ </message>
+ <message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">Хатқа &amp;қол қою…</translation>
+ </message>
+ <message>
+ <source>Sign messages with your Bitcoin addresses to prove you own them</source>
+ <translation type="unfinished">Хатқа Bitcoin мекенжайларын қосып, олар сізге тиесілі екенін дәлелдеу</translation>
+ </message>
+ <message>
+ <source>&amp;Verify message…</source>
+ <translation type="unfinished">&amp;Хат тексеру…</translation>
+ </message>
+ <message>
+ <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
+ <translation type="unfinished">Хат тексеріп, берілген Bitcoin мекенжайлары қосылғанына көз жеткізу</translation>
+ </message>
+ <message>
+ <source>&amp;Load PSBT from file…</source>
+ <translation type="unfinished">&amp;Файлдан PSBT жүктеу…</translation>
+ </message>
+ <message>
+ <source>Open &amp;URI…</source>
+ <translation type="unfinished">URI &amp;ашу…</translation>
+ </message>
+ <message>
+ <source>Close Wallet…</source>
+ <translation type="unfinished">Әмиянды жабу…</translation>
+ </message>
+ <message>
+ <source>Create Wallet…</source>
+ <translation type="unfinished">Әмиян құру…</translation>
+ </message>
+ <message>
+ <source>Close All Wallets…</source>
+ <translation type="unfinished">Барлық әмиянды жабу…</translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation type="unfinished">Файл</translation>
+ </message>
+ <message>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Баптау</translation>
+ </message>
+ <message>
+ <source>&amp;Help</source>
+ <translation type="unfinished">Көмек</translation>
+ </message>
+ <message>
+ <source>Tabs toolbar</source>
+ <translation type="unfinished">Қойынша құралдар тақтасы</translation>
+ </message>
+ <message>
+ <source>Syncing Headers (%1%)…</source>
+ <translation type="unfinished">Тақырыптар синхрондалуда (%1%)…</translation>
+ </message>
+ <message>
+ <source>Synchronizing with network…</source>
+ <translation type="unfinished">Желімен синхрондасуда…</translation>
+ </message>
+ <message>
+ <source>Indexing blocks on disk…</source>
+ <translation type="unfinished">Дискідегі блоктар инедекстелуде...</translation>
+ </message>
+ <message>
+ <source>Request payments (generates QR codes and bitcoin: URIs)</source>
+ <translation type="unfinished">Төлем талап ету (QR кодтары мен биткоин құрады: URI)</translation>
+ </message>
+ <message>
+ <source>Show the list of used sending addresses and labels</source>
+ <translation type="unfinished">Қолданылған жіберу мекенжайлары мен белгілер тізімін көрсету</translation>
+ </message>
+ <message>
+ <source>Show the list of used receiving addresses and labels</source>
+ <translation type="unfinished">Қолданылған қабылдау мекенжайлары мен белгілер тізімін көрсету</translation>
+ </message>
+ <message numerus="yes">
+ <source>Processed %n block(s) of transaction history.</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>%1 behind</source>
+ <translation type="unfinished">%1 артта</translation>
+ </message>
+ <message>
+ <source>Catching up…</source>
+ <translation type="unfinished">Синхрондауда...</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Қате</translation>
+ </message>
+ <message>
+ <source>Warning</source>
+ <translation type="unfinished">Ескерту</translation>
+ </message>
+ <message>
+ <source>Information</source>
+ <translation type="unfinished">Ақпарат</translation>
+ </message>
+ <message>
+ <source>Up to date</source>
+ <translation type="unfinished">Жаңартылған</translation>
+ </message>
+ <message>
+ <source>Open a wallet</source>
+ <translation type="unfinished">Әмиян ашу</translation>
+ </message>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Әмиянды жабу</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Барлық әмиянды жабу</translation>
+ </message>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;Терезе</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n active connection(s) to Bitcoin network.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Қате: %1</translation>
+ </message>
+ </context>
+<context>
+ <name>CoinControlDialog</name>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Саны</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">Комиссия</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">Комиссия алу кейін</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Сан</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Күні</translation>
+ </message>
+ <message>
+ <source>Confirmations</source>
+ <translation type="unfinished">Растау саны</translation>
+ </message>
+ <message>
+ <source>Confirmed</source>
+ <translation type="unfinished">Растық</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(белгі жоқ)</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletController</name>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Әмиянды жабу</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Барлық әмиянды жабу</translation>
+ </message>
+ </context>
+<context>
+ <name>CreateWalletDialog</name>
+ <message>
+ <source>Wallet</source>
+ <translation type="unfinished">Әмиян</translation>
+ </message>
+ </context>
+<context>
+ <name>EditAddressDialog</name>
+ <message>
+ <source>&amp;Label</source>
+ <translation type="unfinished">&amp;Белгі</translation>
+ </message>
+ <message>
+ <source>&amp;Address</source>
+ <translation type="unfinished">Адрес</translation>
+ </message>
+ </context>
+<context>
+ <name>Intro</name>
+ <message>
+ <source>Bitcoin</source>
+ <translation type="unfinished">Биткоин</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n GB of space available</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(of %n GB needed)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(%n GB needed for full chain)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(sufficient to restore backups %n day(s) old)</source>
+ <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>%1 will download and store a copy of the Bitcoin block chain.</source>
+ <translation type="unfinished">%1 Bitcoin блокчейнінің көшірмесін жүктеп сақтайды.</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Қате</translation>
+ </message>
+ <message>
+ <source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
+ <translation type="unfinished">Бастапқы синхронизация өте қымбат және компьютеріңіздің байқалмаған жабдық мәселелерін ашуы мүмкін. %1 қосылған сайын, жүктеу тоқтатылған жерден бастап жалғасады.</translation>
+ </message>
+ </context>
+<context>
+ <name>OptionsDialog</name>
+ <message>
+ <source>Options</source>
+ <translation type="unfinished">Баптау</translation>
+ </message>
+ <message>
+ <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
+ <translation type="unfinished">Проксидің IP мекенжайы (мысалы, IPv4: 127.0.0.1 / IPv6: ::1)</translation>
+ </message>
+ <message>
+ <source>W&amp;allet</source>
+ <translation type="unfinished">Әмиян</translation>
+ </message>
+ <message>
+ <source>Map port using &amp;UPnP</source>
+ <translation type="unfinished">UPnP арқылы порт &amp;сәйкестендіру</translation>
+ </message>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;Терезе</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Қате</translation>
+ </message>
+ </context>
+<context>
+ <name>PeerTableModel</name>
+ <message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">Мекенжай</translation>
+ </message>
+ </context>
+<context>
+ <name>QRImageWidget</name>
+ <message>
+ <source>Error encoding URI into QR Code.</source>
+ <translation type="unfinished">URI-дің QR кодына кодталу қатесі.</translation>
+ </message>
+ </context>
+<context>
+ <name>RPCConsole</name>
+ <message>
+ <source>&amp;Information</source>
+ <translation type="unfinished">Информация</translation>
+ </message>
+ <message>
+ <source>Number of connections</source>
+ <translation type="unfinished">Қосылымдар саны</translation>
+ </message>
+ <message>
+ <source>Decrease font size</source>
+ <translation type="unfinished">Қаріп өлшемін төмендету</translation>
+ </message>
+ <message>
+ <source>Executing command without any wallet</source>
+ <translation type="unfinished">Пәрмен әмиянсыз орындалуда</translation>
+ </message>
+ </context>
+<context>
+ <name>ReceiveCoinsDialog</name>
+ <message>
+ <source>&amp;Amount:</source>
+ <translation type="unfinished">Саны</translation>
+ </message>
+ <message>
+ <source>Requested payments history</source>
+ <translation type="unfinished">Төлемдер тарихы сұралды</translation>
+ </message>
+ </context>
+<context>
+ <name>ReceiveRequestDialog</name>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Саны</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Әмиян:</translation>
+ </message>
+ </context>
+<context>
+ <name>RecentRequestsTableModel</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Күні</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Белгі</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(белгі жоқ)</translation>
+ </message>
+ </context>
+<context>
+ <name>SendCoinsDialog</name>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Саны</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">Комиссия</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">Комиссия алу кейін</translation>
+ </message>
+ <message numerus="yes">
+ <source>Estimated to begin confirmation within %n block(s).</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(белгі жоқ)</translation>
+ </message>
+</context>
+<context>
+ <name>SendCoinsEntry</name>
+ <message>
+ <source>A&amp;mount:</source>
+ <translation type="unfinished">Саны</translation>
+ </message>
+ </context>
+<context>
+ <name>SignVerifyMessageDialog</name>
+ <message>
+ <source>Verify &amp;Message</source>
+ <translation type="unfinished">Хат &amp;тексеру</translation>
+ </message>
+ <message>
+ <source>Message verification failed.</source>
+ <translation type="unfinished">Хат тексерілмеді</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionDesc</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Күні</translation>
+ </message>
+ <message numerus="yes">
+ <source>matures in %n more block(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Сан</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionTableModel</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Күні</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Белгі</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(белгі жоқ)</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionView</name>
+ <message>
+ <source>Other</source>
+ <translation type="unfinished">Басқа</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Үтірмен бөлінген файл</translation>
+ </message>
+ <message>
+ <source>Confirmed</source>
+ <translation type="unfinished">Растық</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Күні</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Белгі</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Мекенжай</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Экспортталмады</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletFrame</name>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Жаңа әмиян құру</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Қате</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletView</name>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Экспорттау</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Қазіргі қойыншадағы деректерді файлға экспорттау</translation>
+ </message>
+ </context>
+<context>
+ <name>bitcoin-core</name>
+ <message>
+ <source>Transaction amount too small</source>
+ <translation type="unfinished">Транзакция өте кішкентай</translation>
+ </message>
+ <message>
+ <source>Transaction too large</source>
+ <translation type="unfinished">Транзакция өте үлкен</translation>
+ </message>
+ <message>
+ <source>Verifying wallet(s)…</source>
+ <translation type="unfinished">Әмиян(дар) тексерілуде…</translation>
+ </message>
+ </context>
+</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_km.ts b/src/qt/locale/bitcoin_km.ts
index 55de3ae8fd..fe83ac9a0f 100644
--- a/src/qt/locale/bitcoin_km.ts
+++ b/src/qt/locale/bitcoin_km.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">ជ្រើសរើស(&amp;h)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">អាសយដ្ឋានសម្រាប់ផ្ញើ</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">អាសយដ្ឋានសម្រាប់ទទួល</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">ទាំងនេះ​គឺជាអាសយដ្ឋាន Bitcoin របស់អ្នកសម្រាប់ធ្វើការផ្ញើការបង់ប្រាក់។ តែងតែពិនិត្យមើលចំនួនប្រាក់ និងអាសយដ្ឋានដែលទទួល មុនពេលផ្ញើប្រាក់។</translation>
</message>
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">មានបញ្ហាក្នុងការព្យាយាម រក្សាទុកបញ្ជីអាសយដ្ឋានដល់ %1។ សូមព្យាយាមម្ដងទៀត។</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">កំពុងផ្ញើអាសយដ្ឋាន%1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">ទទួលអាសយដ្ឋាន - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">ការនាំចេញបានបរាជ័យ</translation>
</message>
@@ -638,6 +638,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">បិទកាបូបអេឡិចត្រូនិចទាំងអស់</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">កាបូបMigrate</translation>
+ </message>
+ <message>
<source>No wallets available</source>
<translation type="unfinished">មិនមានកាបូបអេឡិចត្រូនិច</translation>
</message>
@@ -663,23 +667,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Window</source>
- <translation type="unfinished">វិនដូ(&amp;W)</translation>
- </message>
- <message>
- <source>Main Window</source>
- <translation type="unfinished">វិនដូចម្បង</translation>
- </message>
- <message>
- <source>%1 client</source>
- <translation type="unfinished">%1 អតិថិជន</translation>
+ <translation type="unfinished">&amp;វិនដូ</translation>
</message>
<message>
<source>&amp;Hide</source>
- <translation type="unfinished">លាក់(&amp;H)</translation>
+ <translation type="unfinished">&amp;លាក់</translation>
</message>
<message>
<source>S&amp;how</source>
- <translation type="unfinished">របៀប(&amp;S)</translation>
+ <translation type="unfinished">S&amp;របៀប</translation>
</message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
@@ -710,10 +706,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">បើកសកម្មភាពបណ្តាញ</translation>
</message>
<message>
- <source>Error: %1</source>
- <translation type="unfinished">កំហុស៖%1</translation>
- </message>
- <message>
<source>Warning: %1</source>
<translation type="unfinished">ប្រុងប្រយ័ត្នៈ %1</translation>
</message>
@@ -816,10 +808,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">តម្លៃសេវា៖</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">ធូលី៖</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">បន្ទាប់ពីតម្លៃសេវា៖</translation>
</message>
@@ -900,30 +888,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ចម្លងតម្លៃ</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">ចម្លងធូលី</translation>
- </message>
- <message>
- <source>Copy change</source>
- <translation type="unfinished">ចម្លងការផ្លាស់ប្តូរ</translation>
- </message>
- <message>
- <source>(%1 locked)</source>
- <translation type="unfinished">(%1បានចាក់សោរ)</translation>
- </message>
- <message>
- <source>yes</source>
- <translation type="unfinished">បាទ ឬ ចាស</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ទេ</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">ស្លាកសញ្ញានេះបង្ហាញពណ៌ក្រហម ប្រសិនបើអ្នកទទួល ទទួលបានចំនួនមួយតិចជាងចំនួនចាប់ផ្តើមបច្ចុប្បន្ន។</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">អាច +/- %1 satoshi(s)ច្រើនក្នុងការបញ្ជូលមួយ។</translation>
</message>
@@ -983,6 +947,13 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">កាបូបMigrate</translation>
+ </message>
+ </context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1433,7 +1404,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Window</source>
- <translation type="unfinished">វិនដូ(&amp;W)</translation>
+ <translation type="unfinished">&amp;វិនដូ</translation>
</message>
<message>
<source>&amp;Display</source>
@@ -1608,6 +1579,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">PSBT បានរក្សាទុកក្នុងឌីស។</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">អាសយដ្ឋានផ្ទាល់ខ្លួន</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">មិនអាចគណនាកម្រៃប្រត្តិបត្តិការ ឬ ចំនួនប្រត្តិបត្តិការសរុប។</translation>
</message>
@@ -1884,7 +1859,7 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<source>Last block time</source>
- <translation type="unfinished">ពេលវេលាប្លុកចុងក្រោយ</translation>
+ <translation type="unfinished">ពេវេលាប្លុកជុងក្រោយ</translation>
</message>
<message>
<source>&amp;Network Traffic</source>
@@ -2206,10 +2181,6 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">ធាតុចូល...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">ធូលី៖</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">ជ្រើសរើស…</translation>
</message>
@@ -2262,10 +2233,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">ចម្លងតម្លៃ</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">ចម្លងធូលី</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">ចម្លងការផ្លាស់ប្តូរ</translation>
</message>
@@ -2716,10 +2683,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">បានបញ្ចូនទៅកាន់</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">បង់ប្រាក់ទៅខ្លួនអ្នក</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">បានរុករករ៉ែ</translation>
</message>
@@ -2787,10 +2750,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">បានបញ្ចូនទៅកាន់</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">ទៅកាន់ខ្លូនអ្នក</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">បានរុករករ៉ែ</translation>
</message>
diff --git a/src/qt/locale/bitcoin_kn.ts b/src/qt/locale/bitcoin_kn.ts
index ea2cf0c50f..4adb852768 100644
--- a/src/qt/locale/bitcoin_kn.ts
+++ b/src/qt/locale/bitcoin_kn.ts
@@ -168,10 +168,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ಬ್ಲಾಕ್ ಡೇಟಾಬೇಸ್ ಭವಿಷ್ಯದಿಂದ ಬಂದಿರುವ ಬ್ಲಾಕ್ ಹೊಂದಿದೆ ಎಂದು ತೋರುತ್ತದೆ. ಇದು ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ನ ದಿನಾಂಕ ಮತ್ತು ಸಮಯವು ತಪ್ಪಾಗಿರಬಹುದು. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ನ ದಿನಾಂಕ ಮತ್ತು ಸಮಯ ಸರಿಯಾಗಿದ್ದರೆ, ಬ್ಲಾಕ್ ಡೇಟಾಬೇಸ್ ಮಾತ್ರವೇ ಪುನಃ ನಿರ್ಮಿಸಬೇಕು.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">ಬ್ಲಾಕ್ ಸೂಚಿ ಡೇಟಾಬೇಸ್ ಲೆಕ್ಕವಿದೆ, ಯಾವುದೋ ಭವಿಷ್ಯದಲ್ಲಿನ ಬ್ಲಾಕ್ ಸೇರಿದಂತೆ ತೋರುತ್ತದೆ. ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ ದಿನಾಂಕ ಮತ್ತು ಸಮಯವು ಸರಿಯಾಗಿ ಹೊಂದಿಕೊಂಡಿರಬಹುದು ಎಂದು ಈ ತಪ್ಪು ಉಂಟಾಗಬಹುದು. ದಯವಿಟ್ಟು ನಿಮ್ಮ ಕಂಪ್ಯೂಟರ್ ದಿನಾಂಕ ಮತ್ತು ಸಮಯ ಸರಿಯಾಗಿದ್ದರೆ ಬ್ಲಾಕ್ ಡೇಟಾಬೇಸ್ನ್ನು ಮರುಪ್ರಾರಂಭಿಸಿರಿ. ಮತ್ತಾಗಲಾಗಿ ನೆರವೇರಿಸಲು, ಕಡಿಮೆ ಆವರಣ ದಿಸೆಯಲ್ಲಿರುವ 'txindex' ತೊಡಿಸನ್ನು ನಿಲ್ಲಿಸಿ. ಈ ತಪ್ಪು ಸಂದೇಶವು ಮುಂದೆ ಪ್ರದರ್ಶಿಸಲ್ಪಡದು.</translation>
- </message>
- <message>
<source>This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet</source>
<translation type="unfinished">ಈ ದೋಷ ಕ್ರಿಯೆಗೆ ಕೊನೆಯಾಗಿದ್ದ ಬರ್ಕ್ಲಿ ಡಿಬಿಯುಂಟುವಿನ ಹೊಸ ಸಂಸ್ಕರಣವನ್ನು ಬಳಸಿದ್ದ ಬದಲಾವಣೆಯ ಸಂಗಡ ಈ ವಾಲೆಟ್ ಕ್ರಿಯೆಯನ್ನು ಶುಚಿಗೊಳಿಸಲು ಕೊನೆಗೆ ಆಯ್ಕೆಮಾಡಿದೆಯೇ ಎಂದಾದರೆ, ದಯವಿಟ್ಟು ಈ ವಾಲೆಟ್ ಸೋಫ್ಟ್‌ವೇರ್ ಬಳಸಿದ ಅಂತಿಮ ಬರ್ಷನ್ ಅನ್ನು ಬಳಸಿ.</translation>
</message>
@@ -188,20 +184,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ವಾಲೆಟ್ ಯಶಸ್ವಿಯಾಗಿ ರಚಿಸಲಾಗಿದೆ. ಲೆಗೆಸಿ ವಾಲೆಟ್ ಪ್ರಕಾರ ಅಳಿಸಲ್ಪಡುತ್ತಿದೆ ಮತ್ತು ಭವಿಷ್ಯದಲ್ಲಿ ಲೆಗೆಸಿ ವಾಲೆಟ್ಗಳನ್ನು ರಚಿಸಲೂ, ತೆರೆಯಲೂ ಬೆಂಬಲ ನೀಡಲಾಗುವುದಿಲ್ಲ.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate ಆಯ್ಕೆ ಆಯ್ಕೆಗೆ -blockfilterindex ಅಸಾಧ್ಯವಾಗಿದೆ. -reindex-chainstate ಬಳಸುವಾಗ ತಾತ್ಕಾಲಿಕವಾಗಿ blockfilterindex ಅನ್ನು ನಿಲ್ಲಿಸಿ ಅಥವಾ ಪೂರ್ಣವಾಗಿ ಎಲ್ಲಾ ಸೂಚಕಗಳನ್ನು ಮರುಸ್ಥಾಪಿಸಲು -reindex ಬಳಸಿ.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">ಬೆಳೆದಿನಿಂದಲೂ -coinstatsindex ಸಂಕೇತದೊಂದಿಗೆ -reindex-chainstate ಆಯ್ಕೆ ಹೊಂದಿದರೆ ಹೊಂದಿಕೆಗಳು ಸಂಪರ್ಕಾತ್ಮಕವಲ್ಲ. ದಯವಿಟ್ಟು -reindex-chainstate ಬಳಿಕ ಅದನ್ನು ಬಿಡುಗಡೆಗೊಳಿಸಲು coinstatsindex ಅನ್ನು ತಾತ್ಕಾಲಿಕವಾಗಿ ಅಡಿಮುಟ್ಟಿರಿ ಅಥವಾ -reindex ಬದಲಾಯಿಸಿ ಎಲ್ಲಾ ಸೂಚಕಗಳನ್ನು ಪೂರ್ಣವಾಗಿ ಪುನರ್ ನಿರ್ಮಿಸಿ.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">ಚೆನ್ನಾಗಿಲ್ಲ. -txindex ಅನ್ನು ಬಿಡಿ ಅಥವಾ -reindex-chainstate ಅನ್ನು -reindex ಗೆ ಬದಲಾಯಿಸಿ ಎಂದು ಸೂಚಿಸಲಾಗಿದೆ. ನೀವು -reindex-chainstate ಬಳಸುವ ಸಮಯದಲ್ಲಿ -txindex ಅನ್ನು ತಾತ್ಕಾಲಿಕವಾಗಿ ನಿಲ್ಲಿಸಿ.
- </translation>
- </message>
- <message>
<source>Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
<translation type="unfinished">ದೋಷ: ವರ್ಣನೆಗಳ ಪುನರ್ವಿನಿಮಯದ ಸಮಯದಲ್ಲಿ ನಕಲಿ ವರ್ಣನೆಗಳು ರಚಿಸಲಾಗಿವೆ. ನಿಮ್ಮ ಬಟ್ಟೆ ಹಾಕಿದ ಕಾರ್ಟೆಜ್ ಹಾಳಾಗಿರಬಹುದು.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ko.ts b/src/qt/locale/bitcoin_ko.ts
index c10422125e..53af80ddc3 100644
--- a/src/qt/locale/bitcoin_ko.ts
+++ b/src/qt/locale/bitcoin_ko.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;선택</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">보내는 주소들</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">받는 주소들</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">비트코인을 보내는 계좌 주소입니다. 코인을 보내기 전에 금액과 받는 주소를 항상 확인하십시오.</translation>
</message>
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">%1 으로 주소 리스트를 저장하는 동안 오류가 발생했습니다. 다시 시도해 주십시오.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">보내는 주소들 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">받는 주소들 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">내보내기 실패</translation>
</message>
@@ -224,6 +224,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">지갑 복호화를 위한 암호가 틀렸습니다.</translation>
</message>
<message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">지갑 암호화 해제를 위해 입력된 비밀문구가 정확하지 않습니다. 비밀문구가 공백 문자 (0 바이트)를 포함하고 있습니다. 만약 비밀문구가 25.0 버전 이전의 비트코인 코어 소프트웨어에 의해 설정되었다면, 비밀문구를 첫 공백 문자 이전까지 입력해보세요. 이렇게 해서 성공적으로 입력되었다면, 차후 이런 문제가 발생하지 않도록 비밀문구를 새로이 설정해 주세요.</translation>
+ </message>
+ <message>
<source>Wallet passphrase was successfully changed.</source>
<translation type="unfinished">지갑 암호가 성공적으로 변경되었습니다.</translation>
</message>
@@ -232,6 +236,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">암호 변경에 실패하였습니다.</translation>
</message>
<message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">지갑 암호화 해제를 위해 입력된 예전 비밀문구가 정확하지 않습니다. 비밀문구가 공백 문자 (0 바이트)를 포함하고 있습니다. 만약 비밀문구가 25.0 버전 이전의 비트코인 코어 소프트웨어에 의해 설정되었다면, 비밀문구를 첫 공백 문자 이전까지 입력해보세요.</translation>
+ </message>
+ <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">경고: Caps Lock키가 켜져있습니다!</translation>
</message>
@@ -737,7 +745,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Load Wallet Backup</source>
<extracomment>The title for Restore Wallet File Windows</extracomment>
- <translation type="unfinished">백업된 지갑 불러오기</translation>
+ <translation type="unfinished">백업된 지갑을 불러옵니다.</translation>
</message>
<message>
<source>Restore Wallet</source>
@@ -801,6 +809,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">네트워크 활성화 하기</translation>
</message>
<message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">블록 헤더들을 사전 동기화 중 (%1%)...</translation>
+ </message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">지갑 생성 오류</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">오류: %1</translation>
</message>
@@ -907,10 +923,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">수수료:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">더스트:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">수수료 이후:</translation>
</message>
@@ -999,10 +1011,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">bytes 복사</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">더스트 복사</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">잔돈 복사</translation>
</message>
@@ -1011,18 +1019,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 잠금)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">예</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">아니요</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">수령인이 현재 더스트 임계값보다 작은 양을 수신하면 이 라벨이 빨간색으로 변합니다.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">입력마다 +/- %1 사토시(satoshi)가 바뀔 수 있습니다.</translation>
</message>
@@ -1063,7 +1059,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Can't list signers</source>
<translation type="unfinished">서명자를 나열할 수 없습니다.</translation>
</message>
- </context>
+ <message>
+ <source>Too many external signers found</source>
+ <translation type="unfinished">너무 많은 외부 서명자들이 발견됨</translation>
+ </message>
+</context>
<context>
<name>LoadWalletsActivity</name>
<message>
@@ -1109,7 +1109,27 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
<translation type="unfinished">지갑 복원하기</translation>
</message>
- </context>
+ <message>
+ <source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
+ <translation type="unfinished">지갑 복구 중 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>Restore wallet failed</source>
+ <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
+ <translation type="unfinished">지갑 복구 실패</translation>
+ </message>
+ <message>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">경고 (지갑 복구)</translation>
+ </message>
+ <message>
+ <source>Restore wallet message</source>
+ <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
+ <translation type="unfinished">지갑 복구 관련 메세지</translation>
+ </message>
+</context>
<context>
<name>WalletController</name>
<message>
@@ -1176,14 +1196,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">빈 지갑 만들기</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">scriptPubKey 관리를 위해 디스크립터를 사용하세요.</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">디스크립터 지갑</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Hardware wallet과 같은 외부 서명 장치를 사용합니다. 지갑 기본 설정에서 외부 서명자 스크립트를 먼저 구성하십시오.</translation>
</message>
@@ -1196,10 +1208,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">생성</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">에스큐엘라이트 지원 없이 컴파일 되었습니다. (디스크립터 지갑에 요구됩니다.)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">외부 서명 지원 없이 컴파일됨 (외부 서명에 필요) 개발자 참고 사항 [from:developer] "외부 서명"은 하드웨어 지갑과 같은 장치를 사용하는 것을 의미합니다.</translation>
@@ -1308,6 +1316,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</translation>
</message>
<message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">데이터 디렉토리를 선택하세요</translation>
+ </message>
+ <message>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">최소 %1 GB의 데이터가 이 디렉토리에 저장되며 시간이 지남에 따라 증가할 것입니다.</translation>
</message>
@@ -1367,6 +1379,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">초기 동기화는 매우 오래 걸리며 이전에는 본 적 없는 하드웨어 문제를 발생시킬 수 있습니다. %1을 실행할 때마다 중단 된 곳에서 다시 계속 다운로드 됩니다.</translation>
</message>
<message>
+ <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
+ <translation type="unfinished">OK를 클릭하면, %1는 %4가 최초 출시된 %3에 있는 가장 오래된 트랜잭션들부터 시작하여 전체 %4 블록체인 (%2GB)을 내려 받고 처리하기 시작합니다.</translation>
+ </message>
+ <message>
<source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
<translation type="unfinished">블록 체인 저장 영역을 제한하도록 선택한 경우 (블록 정리), 이력 데이터는 계속해서 다운로드 및 처리 되지만, 차후 디스크 용량을 줄이기 위해 삭제됩니다.</translation>
</message>
@@ -1459,7 +1475,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Unknown. Syncing Headers (%1, %2%)…</source>
<translation type="unfinished">알 수 없음. 헤더 동기화 중(%1, %2)...</translation>
</message>
- </context>
+ <message>
+ <source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">알려지지 않음. 블록 헤더들을 사전 동기화 중 (%1, %2%)...</translation>
+ </message>
+</context>
<context>
<name>OpenURIDialog</name>
<message>
@@ -1503,6 +1523,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">스크립트 인증 쓰레드의 개수(&amp;V)</translation>
</message>
<message>
+ <source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
+ <translation type="unfinished">%1가 호환되는 스크립트가 있는 전체 경로 (예시 - C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). 주의: 멀웨어가 당신의 코인들을 훔쳐갈 수도 있습니다!</translation>
+ </message>
+ <message>
<source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
<translation type="unfinished">프록시 아이피 주소 (예: IPv4:127.0.0.1 / IPv6: ::1)</translation>
</message>
@@ -1965,6 +1989,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">* %1을 %2로 보냅니다.</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">자신의 주소</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">거래 수수료 또는 총 거래 금액을 계산할 수 없습니다.</translation>
</message>
@@ -2833,10 +2861,6 @@ For more information on using this console, type %6.
<translation type="unfinished">입력...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">더스트:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">선택...</translation>
</message>
@@ -2913,10 +2937,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">bytes 복사</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">더스트 복사</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">잔돈 복사</translation>
</message>
@@ -3544,10 +3564,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">받는 주소 :</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">자신에게 지불</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">채굴</translation>
</message>
@@ -3623,10 +3639,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">받는 주소 :</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">자기 거래</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">채굴</translation>
</message>
@@ -3840,6 +3852,11 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">PSBT 복사됨</translation>
</message>
<message>
+ <source>Copied to clipboard</source>
+ <comment>Fee-bump PSBT saved</comment>
+ <translation type="unfinished">클립보드로 복사됨</translation>
+ </message>
+ <message>
<source>Can't sign transaction.</source>
<translation type="unfinished">거래에 서명 할 수 없습니다.</translation>
</message>
@@ -3923,10 +3940,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">MIT 소프트웨어 라이센스에 따라 배포되었습니다. 첨부 파일 %s 또는 %s을 참조하십시오.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">%s 불러오기 오류! 주소 키는 모두 정확하게 로드되었으나 거래 데이터와 주소록 필드에서 누락이나 오류가 존재할 수 있습니다.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">%s를 읽는데 에러가 생겼습니다. 트랜잭션 데이터가 잘못되었거나 누락되었습니다. 지갑을 다시 스캐닝합니다.</translation>
</message>
@@ -3995,10 +4008,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">블록 데이터베이스에 미래의 블록이 포함되어 있습니다. 이것은 사용자의 컴퓨터의 날짜와 시간이 올바르게 설정되어 있지 않을때 나타날 수 있습니다. 블록 데이터 베이스의 재구성은 사용자의 컴퓨터의 날짜와 시간이 올바르다고 확신할 때에만 하십시오.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">udhdbfjfjdnbdjfjf hdhdbjcn2owkd. jjwbdbdof dkdbdnck wdkdj </translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">거래액이 수수료를 지불하기엔 너무 작습니다</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ku.ts b/src/qt/locale/bitcoin_ku.ts
index 9f8b5701a8..f8738fd9dc 100644
--- a/src/qt/locale/bitcoin_ku.ts
+++ b/src/qt/locale/bitcoin_ku.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">H&amp;ilbijêre</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Navnîşanên şandinê</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Navnîşanên stendinê</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">ئەمانە ناونیشانی بیتکۆبیتەکانی تۆنە بۆ ناردنی پارەدانەکان. هەمیشە بڕی و ناونیشانی وەرگرەکان بپشکنە پێش ناردنی دراوەکان.</translation>
</message>
@@ -286,7 +278,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<name>UnitDisplayStatusBarControl</name>
<message>
<source>Unit to show amounts in. Click to select another unit.</source>
- <translation type="unfinished">یەکە بۆ نیشاندانی بڕی کرتە بکە بۆ دیاریکردنی یەکەیەکی تر.</translation>
+ <translation type="unfinished">یەکە بۆ نیشاندانی بڕی لەناو. کرتە بکە بۆ دیاریکردنی یەکەیەکی تر.</translation>
</message>
</context>
<context>
@@ -308,14 +300,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Tarîx</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">بەڵێ</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">نەخێر</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(etîket tune)</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ku_IQ.ts b/src/qt/locale/bitcoin_ku_IQ.ts
index 14a254808b..adbdec36fb 100644
--- a/src/qt/locale/bitcoin_ku_IQ.ts
+++ b/src/qt/locale/bitcoin_ku_IQ.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;هەڵبژێرە</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">ناردنی ناونیشانەکان</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">وەرگرتنی ناونیشانەکان</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">ئەمانە ناونیشانی بیتکۆبیتەکانی تۆنە بۆ ناردنی پارەدانەکان. هەمیشە بڕی و ناونیشانی وەرگرەکان بپشکنە پێش ناردنی دراوەکان.</translation>
</message>
@@ -308,14 +300,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">رێکەت</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">بەڵێ</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">نەخێر</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(ناونیشان نییە)</translation>
</message>
diff --git a/src/qt/locale/bitcoin_la.ts b/src/qt/locale/bitcoin_la.ts
index eaf11ada6e..3d31ed8d79 100644
--- a/src/qt/locale/bitcoin_la.ts
+++ b/src/qt/locale/bitcoin_la.ts
@@ -633,6 +633,13 @@
</message>
</context>
<context>
+ <name>PSBTOperationsDialog</name>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">inscriptio propria</translation>
+ </message>
+ </context>
+<context>
<name>PaymentServer</name>
<message>
<source>Cannot start bitcoin: click-to-pay handler</source>
@@ -1154,10 +1161,6 @@
<translation type="unfinished">Missum ad</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pensitatio ad te ipsum</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Fossa</translation>
</message>
@@ -1217,10 +1220,6 @@
<translation type="unfinished">Missum ad</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Ad te ipsum</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Fossa</translation>
</message>
diff --git a/src/qt/locale/bitcoin_lb.ts b/src/qt/locale/bitcoin_lb.ts
new file mode 100644
index 0000000000..7e41cd0593
--- /dev/null
+++ b/src/qt/locale/bitcoin_lb.ts
@@ -0,0 +1,197 @@
+<TS version="2.1" language="lb">
+<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Right-click to edit address or label</source>
+ <translation type="unfinished">Riets-drécken fir Redaktioun adress oder label</translation>
+ </message>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">Erschaf een nei adress</translation>
+ </message>
+ <message>
+ <source>&amp;New</source>
+ <translation type="unfinished">&amp;Nei</translation>
+ </message>
+ <message>
+ <source>Copy the currently selected address to the system clipboard</source>
+ <translation type="unfinished">Kopéiert déi aktuell ausgewielte Adress an de System-Zwëschenofklaaf.</translation>
+ </message>
+ <message>
+ <source>Delete the currently selected address from the list</source>
+ <translation type="unfinished">Läscht déi aktuell ausgewielte Adress aus der Lëscht.</translation>
+ </message>
+ <message>
+ <source>Enter address or label to search</source>
+ <translation type="unfinished">Gitt d'Adress oder d'Etikett an fir ze sichen.</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Exportéiert déi Dateien op der aktueller Tabell an eng Datei.</translation>
+ </message>
+ <message>
+ <source>Choose the address to send coins to</source>
+ <translation type="unfinished">Wielt déi Adress, wou Dir d'Mënz hinschécken wëllt.</translation>
+ </message>
+ <message>
+ <source>Choose the address to receive coins with</source>
+ <translation type="unfinished">Wielt déi Adress, fir Mënz mat ze erhuelen.</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
+ <translation type="unfinished">Dat sinn är Bitcoin-Adressen fir Bezuelungen ze schécken. Iwwerpréift ëmmer de Betrag an d'Erhaltsadress virum Mënz ze schécken.</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
+Signing is only possible with addresses of the type 'legacy'.</source>
+ <translation type="unfinished">Dat sinn är Bitcoin-Adressen fir Zuelungen ze erhuelen. Benotzt de 'Nei Erhaltsadress erstellen' Knäppchen am 'Erhalts'-Tab, fir nei Adressen ze erstellen.
+D'Signatur ass nëmmen mat Adressen vum Typ 'legacy' méiglech.</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">Et gouf en Feeler beim Versuch, d'Adressenlëscht op %1 ze speichern. Versicht et w.e.g. nach eng Kéier.</translation>
+ </message>
+ </context>
+<context>
+ <name>AskPassphraseDialog</name>
+ <message>
+ <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
+ <translation type="unfinished">Warnung: Wann Dir Är Portemonnaie verschlësselt an Äert Passwort verléiert, da verléiert Dir 1ALLE ÄRE BITCOINS1!</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to encrypt your wallet?</source>
+ <translation type="unfinished">Sidd Dir sécher, dass Dir Är Portemonnaie verschlësselen wëllt?</translation>
+ </message>
+ <message>
+ <source>Enter the old passphrase and new passphrase for the wallet.</source>
+ <translation type="unfinished">Gitt deen alten Passwort an den neien Passwort fir d'Portemonnaie an</translation>
+ </message>
+ <message>
+ <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
+ <translation type="unfinished">Erënner Iech, dass d'Verschlësselung vun ärer Portemonnaie Är Bitcoins net vollstänneg vir Malware schützen kann, déi Äre Computer infizéiert.</translation>
+ </message>
+ </context>
+<context>
+ <name>QObject</name>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n week(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n year(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinGUI</name>
+ <message numerus="yes">
+ <source>Processed %n block(s) of transaction history.</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n active connection(s) to Bitcoin network.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>Intro</name>
+ <message numerus="yes">
+ <source>%n GB of space available</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(of %n GB needed)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(%n GB needed for full chain)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(sufficient to restore backups %n day(s) old)</source>
+ <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>SendCoinsDialog</name>
+ <message numerus="yes">
+ <source>Estimated to begin confirmation within %n block(s).</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionDesc</name>
+ <message numerus="yes">
+ <source>matures in %n more block(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>WalletView</name>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Exportéiert déi Dateien op der aktueller Tabell an eng Datei.</translation>
+ </message>
+ </context>
+</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_lt.ts b/src/qt/locale/bitcoin_lt.ts
index 06dc2f25a5..2e85cc60c8 100644
--- a/src/qt/locale/bitcoin_lt.ts
+++ b/src/qt/locale/bitcoin_lt.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">P&amp;asirinkti</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Išsiuntimo adresai</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Gavimo adresai</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Tai yra jūsų Bitcoin adresai išeinantiems mokėjimams. Visada pasitikrinkite sumą ir gavėjo adresą prieš siunčiant lėšas.</translation>
</message>
@@ -710,10 +702,6 @@ Pasirašymas galimas tik su 'legacy' tipo adresais.</translation>
<translation type="unfinished">Mokestis:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Dulkės:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Po mokesčio:</translation>
</message>
@@ -778,10 +766,6 @@ Pasirašymas galimas tik su 'legacy' tipo adresais.</translation>
<translation type="unfinished">Kopijuoti baitus</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopijuoti dulkę</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopijuoti keisti</translation>
</message>
@@ -790,18 +774,6 @@ Pasirašymas galimas tik su 'legacy' tipo adresais.</translation>
<translation type="unfinished">(%1 užrakinta)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">taip</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ne</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ši etiketė tampa raudona, jei bet kuris gavėjas gauna mažesnę sumą nei dabartinė dulkių slenkstis.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Gali svyruoti nuo +/-%1 satoshi(-ų) vienam įvedimui.</translation>
</message>
@@ -1483,6 +1455,10 @@ Pasirašymas galimas tik su 'legacy' tipo adresais.</translation>
<translation type="unfinished">Uždaryti</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">savo adresas</translation>
+ </message>
+ <message>
<source>Total Amount</source>
<translation type="unfinished">Visas kiekis</translation>
</message>
@@ -2077,10 +2053,6 @@ Pasirašymas galimas tik su 'legacy' tipo adresais.</translation>
<translation type="unfinished">Išvalykite visus formos laukus.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Dulkės:</translation>
- </message>
- <message>
<source>When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
<translation type="unfinished">Kai sandorių apimtis yra mažesnė nei erdvės blokuose, kasėjai ir perduodantys mazgai gali užtikrinti minimalų mokestį. Mokėti tik šį minimalų mokestį yra galima, tačiau atkreipkite dėmesį, kad dėl to gali atsirasti niekada nepatvirtinamas sandoris, kai bus daugiau paklausos bitcoin operacijoms, nei tinklas gali apdoroti.</translation>
</message>
@@ -2137,10 +2109,6 @@ Pasirašymas galimas tik su 'legacy' tipo adresais.</translation>
<translation type="unfinished">Kopijuoti baitus</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopijuoti dulkę</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopijuoti keisti</translation>
</message>
@@ -2640,10 +2608,6 @@ Pasirašymas galimas tik su 'legacy' tipo adresais.</translation>
<translation type="unfinished">Išsiųsta</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Mokėjimas sau</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Išgauta</translation>
</message>
@@ -2715,10 +2679,6 @@ Pasirašymas galimas tik su 'legacy' tipo adresais.</translation>
<translation type="unfinished">Išsiųsta</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Skirta sau</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Išgauta</translation>
</message>
diff --git a/src/qt/locale/bitcoin_lv.ts b/src/qt/locale/bitcoin_lv.ts
index e34c833524..6cea8ba1aa 100644
--- a/src/qt/locale/bitcoin_lv.ts
+++ b/src/qt/locale/bitcoin_lv.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Izvēlēties</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adrešu nosūtīšana</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adrešu saņemšana</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Šīs ir jūsu Bitcoin adreses, kuras izmantojamas maksājumu veikšanai. Vienmēr pārbaudiet summu un saņēmēja adresi pirms monētu nosūtīšanas.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_mg.ts b/src/qt/locale/bitcoin_mg.ts
index 29482e0303..08f3a10ea4 100644
--- a/src/qt/locale/bitcoin_mg.ts
+++ b/src/qt/locale/bitcoin_mg.ts
@@ -34,14 +34,6 @@
<translation type="unfinished">Fidio ny adiresy handraisana vola</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adiresy fandefasana</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adiresy fandraisana</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ireto ny adiresy Bitcoin natokana handefasanao vola. Hamarino hatrany ny tarehimarika sy ny adiresy handefasana alohan'ny handefa vola.</translation>
</message>
@@ -234,14 +226,6 @@
<source>&amp;Copy address</source>
<translation type="unfinished">&amp;Adikao ny adiresy</translation>
</message>
- <message>
- <source>yes</source>
- <translation type="unfinished">eny</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">tsia</translation>
- </message>
</context>
<context>
<name>CreateWalletActivity</name>
diff --git a/src/qt/locale/bitcoin_mi.ts b/src/qt/locale/bitcoin_mi.ts
new file mode 100644
index 0000000000..6a67a3e646
--- /dev/null
+++ b/src/qt/locale/bitcoin_mi.ts
@@ -0,0 +1,732 @@
+<TS version="2.1" language="mi">
+<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Right-click to edit address or label</source>
+ <translation type="unfinished">Tikiake matau ki te whakamāori i te kupu whakamāoritanga:
+Right-click to edit address or label</translation>
+ </message>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">Whakapūmau he wāhitau hōu</translation>
+ </message>
+ <message>
+ <source>&amp;New</source>
+ <translation type="unfinished">&amp;Hou</translation>
+ </message>
+ <message>
+ <source>Copy the currently selected address to the system clipboard</source>
+ <translation type="unfinished">Whakakopi te whiriwhiri i te wāhitau kua whiriwhirihia ki te papatohu rorohiko</translation>
+ </message>
+ <message>
+ <source>&amp;Copy</source>
+ <translation type="unfinished">&amp;Kape</translation>
+ </message>
+ <message>
+ <source>C&amp;lose</source>
+ <translation type="unfinished">&amp;Kati</translation>
+ </message>
+ <message>
+ <source>Delete the currently selected address from the list</source>
+ <translation type="unfinished">Mukua te whiriwhiri i te wāhitau kua whiriwhirihia i te rārangi</translation>
+ </message>
+ <message>
+ <source>Enter address or label to search</source>
+ <translation type="unfinished">Turiwhenua i te wāhitau, ingoa rānei ki te rapu.</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Whakapau kaha te raraunga i te whārangi o nāianei ki tētahi kōnae</translation>
+ </message>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Kaweake</translation>
+ </message>
+ <message>
+ <source>&amp;Delete</source>
+ <translation type="unfinished">&amp;Whakakore</translation>
+ </message>
+ <message>
+ <source>Choose the address to send coins to</source>
+ <translation type="unfinished">Whiriwhiria te wāhitau hei tuku moni ki.</translation>
+ </message>
+ <message>
+ <source>Choose the address to receive coins with</source>
+ <translation type="unfinished">Whiriwhiria te wāhitau hei whiwhi moni</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
+ <translation type="unfinished">Ko ēnei ngā whakamāoritanga mō ō whakamahi Bitcoin hei tuku moni. Tirohia i te moni me te wāhi whiwhi i mua i te tuku i ngā moni.</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
+Signing is only possible with addresses of the type 'legacy'.</source>
+ <translation type="unfinished">Ko ēnei ngā whakamāoritanga mō ō whakaaetanga Bitcoin hei whiwhi utu. Whakamahi i te pātene 'Waihanga whakaaronga hōu' i te pae whiwhi ki te whakapūmau i ngā whakaaronga hōu.
+Ko te whakakī i ēnei whakaaronga e taea ana anake ki ngā whakararuraru o te momo 'tawhito'.</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Address</source>
+ <translation type="unfinished">&amp;Tārua wāhitau</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Label</source>
+ <translation type="unfinished">Tātari &amp; Tapanga </translation>
+ </message>
+ <message>
+ <source>&amp;Edit</source>
+ <translation type="unfinished">&amp;Whakatika</translation>
+ </message>
+ <message>
+ <source>Export Address List</source>
+ <translation type="unfinished">Whakaputu Rārangi Wāhitau</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Taputapu whakawhiti kōma</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">I whakapā atu i te hapa i te whakaputa i te rārangi wāhitau ki %1. Whakamātau anō, koa.</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Kore te whakapau kore</translation>
+ </message>
+</context>
+<context>
+ <name>AddressTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Tapanga</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Wāhitau</translation>
+ </message>
+ </context>
+<context>
+ <name>AskPassphraseDialog</name>
+ <message>
+ <source>Passphrase Dialog</source>
+ <translation type="unfinished">Whakapātai Kōrero</translation>
+ </message>
+ <message>
+ <source>Enter passphrase</source>
+ <translation type="unfinished">Whakauru kupu whakapākehā</translation>
+ </message>
+ <message>
+ <source>New passphrase</source>
+ <translation type="unfinished">Tūtohi hōu</translation>
+ </message>
+ <message>
+ <source>Repeat new passphrase</source>
+ <translation type="unfinished">Tōaitia anō te kupu whakawhitiwhiti hōu</translation>
+ </message>
+ <message>
+ <source>Encrypt wallet</source>
+ <translation type="unfinished">Whakakino pūtea</translation>
+ </message>
+ <message>
+ <source>This operation needs your wallet passphrase to unlock the wallet.</source>
+ <translation type="unfinished">Kia whakapiri tēnei mahi ki tō whakapuaki moni hei whakawhiti i te whare moni.</translation>
+ </message>
+ <message>
+ <source>Unlock wallet</source>
+ <translation type="unfinished">Whakatangohia te pēke moni</translation>
+ </message>
+ <message>
+ <source>Change passphrase</source>
+ <translation type="unfinished">Whakarerekē kīanga</translation>
+ </message>
+ <message>
+ <source>Confirm wallet encryption</source>
+ <translation type="unfinished">Whakamana te whakakītanga pūtea</translation>
+ </message>
+ <message>
+ <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
+ <translation type="unfinished">Whakatūpato: Ki te whakakino i tō pēke moni me te ngaro i tō kupuhipa, ka &lt;b&gt;NGARO KATOA ŌU PĪNIHA BITCOIN&lt;/b&gt;!</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to encrypt your wallet?</source>
+ <translation type="unfinished">Kei te whakapau kaha koe ki te whakakino i to whare moni?</translation>
+ </message>
+ <message>
+ <source>Wallet encrypted</source>
+ <translation type="unfinished">Whakakorengia te wharetaonga</translation>
+ </message>
+ <message>
+ <source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
+ <translation type="unfinished">Whakauruhia te kīangahipa hou mo te putea. Whakamahia he kupu huna kia tekau, neke atu ranei nga tohu matapōkere 2, 3 waru neke atu ranei nga kupu 3</translation>
+ </message>
+ <message>
+ <source>Enter the old passphrase and new passphrase for the wallet.</source>
+ <translation type="unfinished">Whakauru te kupu whakapākehā me te kupu hōu mō te pēke moni.</translation>
+ </message>
+ <message>
+ <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
+ <translation type="unfinished">Mahara kia whakakorehia te whakakino i ō wharepukapuka kia whakararuraru i ō wharepūkoro.</translation>
+ </message>
+ <message>
+ <source>Wallet to be encrypted</source>
+ <translation type="unfinished">Whakakī i te pēke</translation>
+ </message>
+ <message>
+ <source>Your wallet is about to be encrypted. </source>
+ <translation type="unfinished">Kei te whakakorehia tō pēke moni.</translation>
+ </message>
+ <message>
+ <source>Your wallet is now encrypted. </source>
+ <translation type="unfinished">Kua whakakītia ināianei tō pēke.</translation>
+ </message>
+ <message>
+ <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
+ <translation type="unfinished">HEMENGĀ: Me whakakapi ngā tāruarau i mua i te whakaputa i te kōnae pēke whakamahi kē o tō wharemoni ki te kōnae pēke hōu, whakakapi. Hei ētahi take whakamarumaru, ka whakakore ngā tāruarau i mua i te kōnae pēke kore whakakapi, ka whiwhi whakamahi i te kōnae pēke hōu, whakakapi.</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed</source>
+ <translation type="unfinished">Kati te whakamātau i te whakakorenga wharetaonga</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
+ <translation type="unfinished">Kua whakakore te whakakītanga pūtea wharetaonga i te whakakoretanga ā-roto. Kāore i whakakītia tō pūtea wharetaonga.</translation>
+ </message>
+ <message>
+ <source>The supplied passphrases do not match.</source>
+ <translation type="unfinished">Kāore ngā kupu whakapāhohe i te rite.</translation>
+ </message>
+ <message>
+ <source>Wallet unlock failed</source>
+ <translation type="unfinished">Kati te whakakore i te whakatuwhera o te whareparakau</translation>
+ </message>
+ <message>
+ <source>The passphrase entered for the wallet decryption was incorrect.</source>
+ <translation type="unfinished">Ko te kupuhipa i whakauruhia mō te whakapau kōnae whakamāhukihuki, he hē.</translation>
+ </message>
+ <message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">Ko te kupu whakapā atu i whakauruhia mō te whakapau kōnae kore tika. Kei roto i te kupu whakapā he pūāhua kore (hei tauira - he tūmomo kore). Ki te whakapau kōnae te kupu whakapā i te wā i whakatūria ai tēnei whakamahi i mua i te 25.0, whakamātau anō ki te whakapau kōnae ki te whakakore i tēnei raruraru i te wā e whai ake nei.</translation>
+ </message>
+ <message>
+ <source>Wallet passphrase was successfully changed.</source>
+ <translation type="unfinished">Kua whakarerekētia te kupuhipa pūtea.</translation>
+ </message>
+ <message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Kua whakapau kē te whakarerekē i te kupu whakapākehā.</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">Ko te kupuhipa tawhito i whakauruhia mō te whakamāori i te wharetaonga he hē. Kei roto i te kupuhipa tētahi pūāhua kore (hei tauira - he tīmatanga kore). Ki te whakaritea te kupuhipa ki te whakamahi i tētahi wāhanga o tēnei wharepukapuka i mua i te 25.0, whakamātau anō ki te whakamahi anō me ngā pūāhua ki te — engari kāore i whakauruhia — te pūāhua tuatahi kore.</translation>
+ </message>
+ <message>
+ <source>Warning: The Caps Lock key is on!</source>
+ <translation type="unfinished">Whakatūpato: Kei te whakakā te pātuhi Caps Lock!</translation>
+ </message>
+</context>
+<context>
+ <name>BanTableModel</name>
+ <message>
+ <source>IP/Netmask</source>
+ <translation type="unfinished">IP/NetmaskIP/Netmask</translation>
+ </message>
+ <message>
+ <source>Banned Until</source>
+ <translation type="unfinished">Kati i te wa i whakakore ai</translation>
+ </message>
+</context>
+<context>
+ <name>BitcoinApplication</name>
+ <message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">Settings file %1 me whakapōrearea, me whakararuraru rānei.</translation>
+ </message>
+ <message>
+ <source>Runaway exception</source>
+ <translation type="unfinished">&lt;text_to_translate&gt;Tūkino whakawhiti&lt;/text_to_translate&gt;</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
+ <translation type="unfinished">I whakararuraru mate. Ka whakakore %1 i te whakararuraru haumaru, ka whakakore hoki.</translation>
+ </message>
+ <message>
+ <source>Internal error</source>
+ <translation type="unfinished">Hapa whaiaro</translation>
+ </message>
+ <message>
+ <source>An internal error occurred. %1 will attempt to continue safely. This is an unexpected bug which can be reported as described below.</source>
+ <translation type="unfinished">Kua puta he hapa ā-roto. Ka whakamātau a %1 ki te whakarite i te whakararuraru i te āhua haere tonu. He hē whakararuraru tēnei e whakapātaitia ana i raro i te whakamārama i raro nei.</translation>
+ </message>
+</context>
+<context>
+ <name>QObject</name>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n week(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n year(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinGUI</name>
+ <message numerus="yes">
+ <source>Processed %n block(s) of transaction history.</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n active connection(s) to Bitcoin network.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>Intro</name>
+ <message numerus="yes">
+ <source>%n GB of space available</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(of %n GB needed)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(%n GB needed for full chain)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(sufficient to restore backups %n day(s) old)</source>
+ <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>PeerTableModel</name>
+ <message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">Wāhitau</translation>
+ </message>
+ </context>
+<context>
+ <name>RecentRequestsTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Tapanga</translation>
+ </message>
+ </context>
+<context>
+ <name>SendCoinsDialog</name>
+ <message numerus="yes">
+ <source>Estimated to begin confirmation within %n block(s).</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionDesc</name>
+ <message numerus="yes">
+ <source>matures in %n more block(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Tapanga</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionView</name>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Taputapu whakawhiti kōma</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Tapanga</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Wāhitau</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Kore te whakapau kore</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletView</name>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Kaweake</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Whakapau kaha te raraunga i te whārangi o nāianei ki tētahi kōnae</translation>
+ </message>
+ </context>
+<context>
+ <name>bitcoin-core</name>
+ <message>
+ <source>Input not found or already spent</source>
+ <translation type="unfinished">Kāore i kitea te urupare, kua whiwhi i mua, kua whiwhi rānei.</translation>
+ </message>
+ <message>
+ <source>Insufficient dbcache for block verification</source>
+ <translation type="unfinished">Kore rawa i te nui te dbcache mō te whakamātau i te paraka</translation>
+ </message>
+ <message>
+ <source>Insufficient funds</source>
+ <translation type="unfinished">He iti te whiwhi moni</translation>
+ </message>
+ <message>
+ <source>Invalid -i2psam address or hostname: '%s'</source>
+ <translation type="unfinished">Kore whakaaetanga -i2psam wāhitau rite, ingoa wāhi: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid -onion address or hostname: '%s'</source>
+ <translation type="unfinished">Kore whakaaetanga -onion wāhitau, ingoa ranei: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid -proxy address or hostname: '%s'</source>
+ <translation type="unfinished">Kore whakaaetanga -proxy wāhitau ranei ingoa whare: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid P2P permission: '%s'</source>
+ <translation type="unfinished">Invalid P2P whakaaetanga: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least %s)</source>
+ <translation type="unfinished">He whakararuraru te whiwhinga mō %s = &lt;amount&gt;: '%s' (me whakarite i te mea atu i te %s)</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">Kore whiwhinga mō te %s=&lt;amount&gt;: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid amount for -%s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">Kore whiwhinga mō te -%s=&lt;amount&gt;: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid netmask specified in -whitelist: '%s'</source>
+ <translation type="unfinished">Kua whakapau kaha te netmask kore whaimana i whakarārangi i roto i te -whitelist: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid port specified in %s: '%s'</source>
+ <translation type="unfinished">Kua whakapātaitia te pōti korewhiwhi i roto i %s: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid pre-selected input %s</source>
+ <translation type="unfinished">Kāore i te tika te kōwhiri i tātari i te urupare %s</translation>
+ </message>
+ <message>
+ <source>Listening for incoming connections failed (listen returned error %s)</source>
+ <translation type="unfinished">Whakararuraru ana te whakarongo i ngā hononga e haere mai ana (kua whakahokia te hapa %s)</translation>
+ </message>
+ <message>
+ <source>Loading P2P addresses…</source>
+ <translation type="unfinished">Whakararuraru P2P addresses ...</translation>
+ </message>
+ <message>
+ <source>Loading banlist…</source>
+ <translation type="unfinished">Whakararuraru ana, ka whakapau kaha ki te whakamāori i te kupu whakamāoritanga.</translation>
+ </message>
+ <message>
+ <source>Loading block index…</source>
+ <translation type="unfinished">Whakaritea te rārangi whakaputa...</translation>
+ </message>
+ <message>
+ <source>Loading wallet…</source>
+ <translation type="unfinished">Whakararuraru pūtea...</translation>
+ </message>
+ <message>
+ <source>Missing amount</source>
+ <translation type="unfinished">Te moni i ngaro</translation>
+ </message>
+ <message>
+ <source>Missing solving data for estimating transaction size</source>
+ <translation type="unfinished">Kua ngaro ngā raraunga whakatikatika mō te whakarite i te rahi whakaritenga whakawhiti</translation>
+ </message>
+ <message>
+ <source>Need to specify a port with -whitebind: '%s'</source>
+ <translation type="unfinished">Me whakarite i tētahi pōti me te -whitebind: '%s'</translation>
+ </message>
+ <message>
+ <source>No addresses available</source>
+ <translation type="unfinished">Kāore he wāhitau wātea</translation>
+ </message>
+ <message>
+ <source>Rescanning…</source>
+ <translation type="unfinished">Whakarerekētia...</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to execute statement to verify database: %s</source>
+ <translation type="unfinished">SQLiteDatabase: Kua whakakorehia te whakahaere i te kōrero hei whakamana i te papakupu: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to prepare statement to verify database: %s</source>
+ <translation type="unfinished">SQLiteDatabase: Kua whakakorehia te whakarite i te kupu hei whakamāmā i te papakupu: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to read database verification error: %s</source>
+ <translation type="unfinished">SQLiteDatabase: Kua whakapau kaha te pānui i te hapa whakamātau o te papamahi: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Unexpected application id. Expected %u, got %u</source>
+ <translation type="unfinished">SQLiteDatabase: Tino whakararuraru te tuhinga whakamahi. Tūpono %u, ka whiwhi %u</translation>
+ </message>
+ <message>
+ <source>Section [%s] is not recognized.</source>
+ <translation type="unfinished">Kāore i whakaaetia te wāhanga [%s].</translation>
+ </message>
+ <message>
+ <source>Signing transaction failed</source>
+ <translation type="unfinished">Ko te whakakore i te whakauru i te whakaritenga</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" does not exist</source>
+ <translation type="unfinished">Kāore i te whiwhi i te -walletdir i whakaritea "%s"</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" is not a directory</source>
+ <translation type="unfinished">Kāore i te whare tūmatanui te -walletdir i whakaritea "%s"</translation>
+ </message>
+ <message>
+ <source>Specified blocks directory "%s" does not exist.</source>
+ <translation type="unfinished">Kāore te whare pūranga i whakaritea "%s" e whai wāhi.</translation>
+ </message>
+ <message>
+ <source>Specified data directory "%s" does not exist.</source>
+ <translation type="unfinished">Kāore te whare pūranga raraunga i whakaritea "%s" i te whiwhi.</translation>
+ </message>
+ <message>
+ <source>Starting network threads…</source>
+ <translation type="unfinished">Whakamāori i te tekau whakahaere whatunga...</translation>
+ </message>
+ <message>
+ <source>The source code is available from %s.</source>
+ <translation type="unfinished">Ko te kōnae pūnaha e wātea ana i te %s.</translation>
+ </message>
+ <message>
+ <source>The specified config file %s does not exist</source>
+ <translation type="unfinished">Kāore te kōnae whirihoranga i whiwhi i te %s i te wā e whakapau kore ana</translation>
+ </message>
+ <message>
+ <source>The transaction amount is too small to pay the fee</source>
+ <translation type="unfinished">Ko te moni whakaritenga he iti rawa hei utu i te utu</translation>
+ </message>
+ <message>
+ <source>The wallet will avoid paying less than the minimum relay fee.</source>
+ <translation type="unfinished">Ka whakakore te pōkeka i te utu iti ake i te utu tawhiti i te iti rawa.</translation>
+ </message>
+ <message>
+ <source>This is experimental software.</source>
+ <translation type="unfinished">He mea whakamātautau tēnei pūmanawa.</translation>
+ </message>
+ <message>
+ <source>This is the minimum transaction fee you pay on every transaction.</source>
+ <translation type="unfinished">Ko tēnei te utu whakaritenga iti rawa ka whiwhi koe i ia whakaritenga.</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you will pay if you send a transaction.</source>
+ <translation type="unfinished">Ko te utu whakawhiti tāuta tēnei ka utu e whiwhi ana koe ki te tuku i tētahi tāuta.</translation>
+ </message>
+ <message>
+ <source>Transaction amount too small</source>
+ <translation type="unfinished">He iti rawa te moni whakaritenga</translation>
+ </message>
+ <message>
+ <source>Transaction amounts must not be negative</source>
+ <translation type="unfinished">Kāore e whakaaetia ngā moni whakaritenga kia whakararuraru.</translation>
+ </message>
+ <message>
+ <source>Transaction change output index out of range</source>
+ <translation type="unfinished">He whakawhitiwhitinga whakaputanga hōputu whakararuraru te tūnga</translation>
+ </message>
+ <message>
+ <source>Transaction has too long of a mempool chain</source>
+ <translation type="unfinished">He whakawhitiwhitinga whakapau kaha te whakapau kaha o te whakapau kaha.</translation>
+ </message>
+ <message>
+ <source>Transaction must have at least one recipient</source>
+ <translation type="unfinished">Me whiwhi whakaritenga tātari tētahi whiwhi whakaritenga ki te kaiwhiwhi kotahi i te minimuma</translation>
+ </message>
+ <message>
+ <source>Transaction needs a change address, but we can't generate it.</source>
+ <translation type="unfinished">He hiahia te whakarerekē i te whakaritenga whakaritenga, engari kāore e taea e mātou te whakaputa.</translation>
+ </message>
+ <message>
+ <source>Transaction too large</source>
+ <translation type="unfinished">He whakawhitiwhitinga nui rawa te whakapau kaha</translation>
+ </message>
+ <message>
+ <source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
+ <translation type="unfinished">Kāore e taea te whakararuraru i te mahere mō te -maxsigcachesize: '%s' MiB</translation>
+ </message>
+ <message>
+ <source>Unable to bind to %s on this computer (bind returned error %s)</source>
+ <translation type="unfinished">Kāore e taea te whakakōtuitui ki %s i tēnei rorohiko (kua whakahoki te whakakōtuitui i te hapa %s)</translation>
+ </message>
+ <message>
+ <source>Unable to bind to %s on this computer. %s is probably already running.</source>
+ <translation type="unfinished">Kāore e taea te whakakōtuitui ki %s i tēnei rorohiko. E whakapau kē ana te %s e whakahaere ana.</translation>
+ </message>
+ <message>
+ <source>Unable to create the PID file '%s': %s</source>
+ <translation type="unfinished">Kāore e taea te hanga i te kōnae PID '%s': %s</translation>
+ </message>
+ <message>
+ <source>Unable to find UTXO for external input</source>
+ <translation type="unfinished">Kāore i te kite i te UTXO mō te whakauru ā-waho</translation>
+ </message>
+ <message>
+ <source>Unable to generate initial keys</source>
+ <translation type="unfinished">Kāore e taea te whakaputa i ngā kī tīmatanga</translation>
+ </message>
+ <message>
+ <source>Unable to generate keys</source>
+ <translation type="unfinished">Kāore e taea te whakaputa i ngā kī</translation>
+ </message>
+ <message>
+ <source>Unable to open %s for writing</source>
+ <translation type="unfinished">Kāore e taea te whakatuwhera i %s hei tuhi</translation>
+ </message>
+ <message>
+ <source>Unable to parse -maxuploadtarget: '%s'</source>
+ <translation type="unfinished">Kāore e taea te whakamāori i te -maxuploadtarget: '%s'</translation>
+ </message>
+ <message>
+ <source>Unable to start HTTP server. See debug log for details.</source>
+ <translation type="unfinished">Kāore e taea te whakahohe i te tūmau HTTP. Tirohia te rārangi whakararuraru mō ngā whakamārama.</translation>
+ </message>
+ <message>
+ <source>Unable to unload the wallet before migrating</source>
+ <translation type="unfinished">Kāore e taea te whakakore i te whareparakore i mua i te whakawhiti.</translation>
+ </message>
+ <message>
+ <source>Unknown -blockfilterindex value %s.</source>
+ <translation type="unfinished">-He mea kore te -blockfilterindex whiwhi %s.</translation>
+ </message>
+ <message>
+ <source>Unknown address type '%s'</source>
+ <translation type="unfinished">He aha te momo wāhitau kore mō '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown change type '%s'</source>
+ <translation type="unfinished">He whakararuraru, he momo hēhē '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown network specified in -onlynet: '%s'</source>
+ <translation type="unfinished">He whakamāoritia te tekau whakamāoritanga:
+'Unknown network specified in -onlynet: '%s''</translation>
+ </message>
+ <message>
+ <source>Unknown new rules activated (versionbit %i)</source>
+ <translation type="unfinished">He whakapau kaha hōu kua whakakāhoretia (wāhanga %i)</translation>
+ </message>
+ <message>
+ <source>Unsupported logging category %s=%s.</source>
+ <translation type="unfinished">Kāore i te tautoko te kāwai rorohiko %s=%s</translation>
+ </message>
+ <message>
+ <source>User Agent comment (%s) contains unsafe characters.</source>
+ <translation type="unfinished">Te korero a te kaihoko (%s) e whakararuraru ana i ngā tohu kore whakapau kaha.</translation>
+ </message>
+ <message>
+ <source>Verifying blocks…</source>
+ <translation type="unfinished">Whakamāramatia ngā paraka...</translation>
+ </message>
+ <message>
+ <source>Verifying wallet(s)…</source>
+ <translation type="unfinished">Whakamātau i te wharepukapuka...</translation>
+ </message>
+ <message>
+ <source>Wallet needed to be rewritten: restart %s to complete</source>
+ <translation type="unfinished">Me whakakore i te whare moni: whakamatau i te %s hei whakakore i te whakamutunga</translation>
+ </message>
+ <message>
+ <source>Settings file could not be read</source>
+ <translation type="unfinished">Kāore i taea te pānui i te kōnae tautuhinga</translation>
+ </message>
+ <message>
+ <source>Settings file could not be written</source>
+ <translation type="unfinished">Kāore i taea te tuhi i te kōnae tautuhinga</translation>
+ </message>
+</context>
+</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_mk.ts b/src/qt/locale/bitcoin_mk.ts
index 8558fe17ba..3f4ba90a9a 100644
--- a/src/qt/locale/bitcoin_mk.ts
+++ b/src/qt/locale/bitcoin_mk.ts
@@ -3,11 +3,11 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">Десен клик за уредување на адреса или етикета</translation>
+ <translation type="unfinished">Десно притискање за уредување на адреса или етикета</translation>
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">Креирај нова адреса</translation>
+ <translation type="unfinished">Создај нова адреса</translation>
</message>
<message>
<source>&amp;New</source>
@@ -30,6 +30,10 @@
<translation type="unfinished">Избриши ја избраната адреса од листата</translation>
</message>
<message>
+ <source>Enter address or label to search</source>
+ <translation type="unfinished">Пребарувајте по адреса или име</translation>
+ </message>
+ <message>
<source>Export the data in the current tab to a file</source>
<translation type="unfinished">Експортирај ги податоците од активното јазиче во датотека</translation>
</message>
@@ -41,10 +45,80 @@
<source>&amp;Delete</source>
<translation type="unfinished">&amp;Избриши</translation>
</message>
- </context>
+ <message>
+ <source>Choose the address to send coins to</source>
+ <translation type="unfinished">Извези ги податоците во избраниот дел кон датотека</translation>
+ </message>
+ <message>
+ <source>Choose the address to receive coins with</source>
+ <translation type="unfinished">Избери адреса за примање монети</translation>
+ </message>
+ <message>
+ <source>C&amp;hoose</source>
+ <translation type="unfinished">Избери</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
+ <translation type="unfinished">Ова се вашите Bitcoin-адреси за испраќање плаќања. Секогаш проверувајте ја количината и адресите за примање пред да испраќате монети.</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
+Signing is only possible with addresses of the type 'legacy'.</source>
+ <translation type="unfinished">Ова се вашите биткоин-адреси за примање плаќања. Користете го копчето „Создавање нови адреси“ во јазичето за примање за да создадете нови адреси. Потпишувањето е можно само со „наследни“ адреси.</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Address</source>
+ <translation type="unfinished">Копирај адреса</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Label</source>
+ <translation type="unfinished">Копирај етикета</translation>
+ </message>
+ <message>
+ <source>&amp;Edit</source>
+ <translation type="unfinished">Уредувај</translation>
+ </message>
+ <message>
+ <source>Export Address List</source>
+ <translation type="unfinished">Извадете список со адреси</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Датотека одвоена со запирка</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">Настана грешка при зачувувањето на списокот со адреси на %1. Ве молиме обидете се пак.</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Извозот не успеа</translation>
+ </message>
+</context>
+<context>
+ <name>AddressTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Етикета</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Адреса</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без етикета)</translation>
+ </message>
+</context>
<context>
<name>AskPassphraseDialog</name>
<message>
+ <source>Passphrase Dialog</source>
+ <translation type="unfinished">Прескокнувачки дијалог</translation>
+ </message>
+ <message>
<source>Enter passphrase</source>
<translation type="unfinished">Внеси тајна фраза</translation>
</message>
@@ -56,10 +130,154 @@
<source>Repeat new passphrase</source>
<translation type="unfinished">Повторете ја новата тајна фраза</translation>
</message>
- </context>
+ <message>
+ <source>Show passphrase</source>
+ <translation type="unfinished">Покажи ја лозинката</translation>
+ </message>
+ <message>
+ <source>Encrypt wallet</source>
+ <translation type="unfinished">Шифрирај паричник</translation>
+ </message>
+ <message>
+ <source>This operation needs your wallet passphrase to unlock the wallet.</source>
+ <translation type="unfinished">Операцијава бара лозинка од вашиот паричник за да го отклучи паричникот.</translation>
+ </message>
+ <message>
+ <source>Unlock wallet</source>
+ <translation type="unfinished">Отклучи паричник</translation>
+ </message>
+ <message>
+ <source>Change passphrase</source>
+ <translation type="unfinished">Промени лозинка</translation>
+ </message>
+ <message>
+ <source>Confirm wallet encryption</source>
+ <translation type="unfinished">Потврди шифрирање на паричникот</translation>
+ </message>
+ <message>
+ <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
+ <translation type="unfinished">ВНИМАНИЕ: Ако го шифрирате вашиот паричник и ја изгубите лозинката, &lt;b&gt;ЌЕ ГИ ИЗГУБИТЕ СИТЕ БИТКОИНИ&lt;/b&gt;!</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to encrypt your wallet?</source>
+ <translation type="unfinished">Навистина ли сакате да го шифрирате паричникот?</translation>
+ </message>
+ <message>
+ <source>Wallet encrypted</source>
+ <translation type="unfinished">Паричникот е шифриран</translation>
+ </message>
+ <message>
+ <source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
+ <translation type="unfinished">Внесете нова лозинка за паричникот. &lt;br/&gt;Користете лозинка од &lt;b&gt;десет или повеќе случајни знаци&lt;/b&gt; или &lt;b&gt;осум или повеќе збора&lt;/b&gt;.</translation>
+ </message>
+ <message>
+ <source>Enter the old passphrase and new passphrase for the wallet.</source>
+ <translation type="unfinished">Внесете ја старата и новата лозинка за паричникот.</translation>
+ </message>
+ <message>
+ <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
+ <translation type="unfinished">Запомнете дека шифрирањето на вашиот паричник не може целосно да ги заштити вашите биткоини од кражба од злонамерен софтвер, заразувајќи го вашиот сметач.</translation>
+ </message>
+ <message>
+ <source>Wallet to be encrypted</source>
+ <translation type="unfinished">Паричник за шифрирање</translation>
+ </message>
+ <message>
+ <source>Your wallet is about to be encrypted. </source>
+ <translation type="unfinished">Вашиот паричник ќе биде шифриран.</translation>
+ </message>
+ <message>
+ <source>Your wallet is now encrypted. </source>
+ <translation type="unfinished">Вашиот паричник сега е шифриран.</translation>
+ </message>
+ <message>
+ <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
+ <translation type="unfinished">ВАЖНО: Сите стари зачувувања што сте ги направиле на вашиот паричник мораат да се заменат со зачувувања на новопримениот шифриран паричник. Од безбедносни причини, претходните нешифрирани зачувувања на паричникот ќе станат неупотребливи веднаш штом ќе почнете да го користите новиот шифриран паричник.</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed</source>
+ <translation type="unfinished">Шифрирањето беше неуспешно</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
+ <translation type="unfinished">Шифрирањето на паричникот не успеа поради софтверски проблем. Паричникот не е шифриран.</translation>
+ </message>
+ <message>
+ <source>The supplied passphrases do not match.</source>
+ <translation type="unfinished">Лозинките не се совпаѓаат.</translation>
+ </message>
+ <message>
+ <source>Wallet unlock failed</source>
+ <translation type="unfinished">Отклучувањето беше неуспешно</translation>
+ </message>
+ <message>
+ <source>The passphrase entered for the wallet decryption was incorrect.</source>
+ <translation type="unfinished">Внесената лозинка за дешифрирање на паричникот е неточна.</translation>
+ </message>
+ <message>
+ <source>Wallet passphrase was successfully changed.</source>
+ <translation type="unfinished">Лозинката за паричник е успешно променета.</translation>
+ </message>
+ <message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Промената на лозинката беше неуспешна</translation>
+ </message>
+ <message>
+ <source>Warning: The Caps Lock key is on!</source>
+ <translation type="unfinished">Внимание: копчето Caps Lock е вклучено!</translation>
+ </message>
+</context>
+<context>
+ <name>BanTableModel</name>
+ <message>
+ <source>IP/Netmask</source>
+ <translation type="unfinished">IP/Мрежна маска</translation>
+ </message>
+ <message>
+ <source>Banned Until</source>
+ <translation type="unfinished">Блокиран до:</translation>
+ </message>
+</context>
+<context>
+ <name>BitcoinApplication</name>
+ <message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">Датотеката со поставки %1 може да е оштетена или неважечка.</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
+ <translation type="unfinished">Настана голема грешка. %1 не може безбедно да продолжи и ќе се затвори.</translation>
+ </message>
+ <message>
+ <source>Internal error</source>
+ <translation type="unfinished">Внатрешна грешка</translation>
+ </message>
+ <message>
+ <source>An internal error occurred. %1 will attempt to continue safely. This is an unexpected bug which can be reported as described below.</source>
+ <translation type="unfinished">Настана внатрешна грешка. %1 ќе се обиде да продолжи безбедно. Ова е неочекувана грешка што може да се пријави како што е опишано подолу.</translation>
+ </message>
+</context>
<context>
<name>QObject</name>
<message>
+ <source>Do you want to reset settings to default values, or to abort without making changes?</source>
+ <extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
+ <translation type="unfinished">Сакате ли да ги вратите поставките на нивните изворни вредности или да излезете без да направите никакви промени?</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
+ <extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
+ <translation type="unfinished">Настана голема грешка. Проверете дали датотеката со поставки може да се уредува или пробајте да започнете без поставки.</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Грешка: %1</translation>
+ </message>
+ <message>
+ <source>%1 didn't yet exit safely…</source>
+ <translation type="unfinished">%1не излезе безбедно...</translation>
+ </message>
+ <message>
<source>Amount</source>
<translation type="unfinished">Сума</translation>
</message>
@@ -155,6 +373,10 @@
<translation type="unfinished">&amp;Преглед</translation>
</message>
<message>
+ <source>Show general overview of wallet</source>
+ <translation type="unfinished">Прикажи општ преглед на паричникот</translation>
+ </message>
+ <message>
<source>&amp;Transactions</source>
<translation type="unfinished">&amp;Трансакции</translation>
</message>
@@ -171,6 +393,14 @@
<translation type="unfinished">Напушти ја апликацијата</translation>
</message>
<message>
+ <source>&amp;About %1</source>
+ <translation type="unfinished">За %1</translation>
+ </message>
+ <message>
+ <source>Show information about %1</source>
+ <translation type="unfinished">Покажи информација за %1</translation>
+ </message>
+ <message>
<source>About &amp;Qt</source>
<translation type="unfinished">За &amp;Qt</translation>
</message>
@@ -179,10 +409,43 @@
<translation type="unfinished">Прикажи информации за Qt</translation>
</message>
<message>
+ <source>Modify configuration options for %1</source>
+ <translation type="unfinished">Промени поставки за %1</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Создај нов паричник</translation>
+ </message>
+ <message>
+ <source>&amp;Minimize</source>
+ <translation type="unfinished">Намали</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Паричник</translation>
+ </message>
+ <message>
+ <source>Network activity disabled.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">Мрежата е исклучена</translation>
+ </message>
+ <message>
+ <source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
+ <translation type="unfinished">Проксито е &lt;b&gt;дозволено&lt;/b&gt;: %1</translation>
+ </message>
+ <message>
<source>Send coins to a Bitcoin address</source>
<translation type="unfinished">Испрати биткоини на Биткоин адреса</translation>
</message>
<message>
+ <source>Backup wallet to another location</source>
+ <translation type="unfinished">Зачувување на паричникот на друго место</translation>
+ </message>
+ <message>
+ <source>Change the passphrase used for wallet encryption</source>
+ <translation type="unfinished">Промена на лозинката за паричникот</translation>
+ </message>
+ <message>
<source>&amp;Send</source>
<translation type="unfinished">&amp;Испрати</translation>
</message>
@@ -191,10 +454,66 @@
<translation type="unfinished">&amp;Прими</translation>
</message>
<message>
+ <source>&amp;Options…</source>
+ <translation type="unfinished">Поставки...</translation>
+ </message>
+ <message>
+ <source>&amp;Encrypt Wallet…</source>
+ <translation type="unfinished">Шифрирај паричник...</translation>
+ </message>
+ <message>
<source>Encrypt the private keys that belong to your wallet</source>
<translation type="unfinished">Криптирај ги приватните клучеви кои припаѓаат на твојот паричник</translation>
</message>
<message>
+ <source>&amp;Backup Wallet…</source>
+ <translation type="unfinished">Сигурносен паричник...</translation>
+ </message>
+ <message>
+ <source>&amp;Change Passphrase…</source>
+ <translation type="unfinished">&amp;Промени лозинка...</translation>
+ </message>
+ <message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">Потпиши &amp;порака...</translation>
+ </message>
+ <message>
+ <source>Sign messages with your Bitcoin addresses to prove you own them</source>
+ <translation type="unfinished">Напишете пораки со вашата биткоин-адреса за да докажете дека е ваша.</translation>
+ </message>
+ <message>
+ <source>&amp;Verify message…</source>
+ <translation type="unfinished">&amp;Потврди порака...</translation>
+ </message>
+ <message>
+ <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
+ <translation type="unfinished">Потврдување на пораките за да се знае дека се напишани со дадените биткоин-адреси.</translation>
+ </message>
+ <message>
+ <source>&amp;Load PSBT from file…</source>
+ <translation type="unfinished">&amp;Вчитај PSBT од датотека…</translation>
+ </message>
+ <message>
+ <source>Open &amp;URI…</source>
+ <translation type="unfinished">Отвори &amp;URI…</translation>
+ </message>
+ <message>
+ <source>Close Wallet…</source>
+ <translation type="unfinished">Затвори паричник...</translation>
+ </message>
+ <message>
+ <source>Create Wallet…</source>
+ <translation type="unfinished">Создај паричник...</translation>
+ </message>
+ <message>
+ <source>Close All Wallets…</source>
+ <translation type="unfinished">Затвори ги сите паричници...</translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Датотека</translation>
+ </message>
+ <message>
<source>&amp;Settings</source>
<translation type="unfinished">&amp;Подесувања</translation>
</message>
@@ -202,6 +521,46 @@
<source>&amp;Help</source>
<translation type="unfinished">&amp;Помош</translation>
</message>
+ <message>
+ <source>Tabs toolbar</source>
+ <translation type="unfinished">Лента со алатки</translation>
+ </message>
+ <message>
+ <source>Syncing Headers (%1%)…</source>
+ <translation type="unfinished">Синхронизација на заглавијата (%1 %)</translation>
+ </message>
+ <message>
+ <source>Synchronizing with network…</source>
+ <translation type="unfinished">Мрежна синхронизација...</translation>
+ </message>
+ <message>
+ <source>Indexing blocks on disk…</source>
+ <translation type="unfinished">Индексирање на блокови од дискот...</translation>
+ </message>
+ <message>
+ <source>Processing blocks on disk…</source>
+ <translation type="unfinished">Обработување сектори на дискови...</translation>
+ </message>
+ <message>
+ <source>Connecting to peers…</source>
+ <translation type="unfinished">Поврзување со врсници...</translation>
+ </message>
+ <message>
+ <source>Request payments (generates QR codes and bitcoin: URIs)</source>
+ <translation type="unfinished">Барање за плаќања (создава QR-кодови и биткоин: URI)</translation>
+ </message>
+ <message>
+ <source>Show the list of used sending addresses and labels</source>
+ <translation type="unfinished">Прикажување на списокот со користени адреси и имиња</translation>
+ </message>
+ <message>
+ <source>Show the list of used receiving addresses and labels</source>
+ <translation type="unfinished">Прикажи список на користени адреси и имиња.</translation>
+ </message>
+ <message>
+ <source>&amp;Command-line options</source>
+ <translation type="unfinished">&amp;Достапни команди</translation>
+ </message>
<message numerus="yes">
<source>Processed %n block(s) of transaction history.</source>
<translation type="unfinished">
@@ -215,6 +574,18 @@
<translation type="unfinished">%1 позади</translation>
</message>
<message>
+ <source>Catching up…</source>
+ <translation type="unfinished">Стигнување...</translation>
+ </message>
+ <message>
+ <source>Last received block was generated %1 ago.</source>
+ <translation type="unfinished">Последниот примен блок беше создаден пред %1.</translation>
+ </message>
+ <message>
+ <source>Transactions after this will not yet be visible.</source>
+ <translation type="unfinished">Трансакции после тоа сѐ уште нема да бидат видливи.</translation>
+ </message>
+ <message>
<source>Error</source>
<translation type="unfinished">Грешка</translation>
</message>
@@ -223,13 +594,135 @@
<translation type="unfinished">Предупредување</translation>
</message>
<message>
+ <source>Information</source>
+ <translation type="unfinished">Информација</translation>
+ </message>
+ <message>
<source>Up to date</source>
<translation type="unfinished">Во тек</translation>
</message>
<message>
+ <source>Load Partially Signed Bitcoin Transaction</source>
+ <translation type="unfinished">Вчитајте делумно потпишана биткоин-трансакција</translation>
+ </message>
+ <message>
+ <source>Load PSBT from &amp;clipboard…</source>
+ <translation type="unfinished">Вчитај PSBT од &amp;клипбордот...</translation>
+ </message>
+ <message>
+ <source>Load Partially Signed Bitcoin Transaction from clipboard</source>
+ <translation type="unfinished">Вчитајте делумно потпишана биткоин-трансакција од клипбордот</translation>
+ </message>
+ <message>
+ <source>Node window</source>
+ <translation type="unfinished">Прозорец на јазолот</translation>
+ </message>
+ <message>
+ <source>Open node debugging and diagnostic console</source>
+ <translation type="unfinished">Отвори конзола за отстранување на грешки и дијагностика на јазли</translation>
+ </message>
+ <message>
+ <source>&amp;Sending addresses</source>
+ <translation type="unfinished">&amp;Испраќање на адреси</translation>
+ </message>
+ <message>
+ <source>&amp;Receiving addresses</source>
+ <translation type="unfinished">&amp;Примање на адреси</translation>
+ </message>
+ <message>
+ <source>Open a bitcoin: URI</source>
+ <translation type="unfinished">Отвори биткоин: URI</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <translation type="unfinished">Отвори паричник</translation>
+ </message>
+ <message>
+ <source>Open a wallet</source>
+ <translation type="unfinished">Отвори паричник</translation>
+ </message>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Затвори паричник</translation>
+ </message>
+ <message>
+ <source>Restore Wallet…</source>
+ <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
+ <translation type="unfinished">Обнови паричник...</translation>
+ </message>
+ <message>
+ <source>Restore a wallet from a backup file</source>
+ <extracomment>Status tip for Restore Wallet menu item</extracomment>
+ <translation type="unfinished">Обновување паричник од сигурносна датотека</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Затвори ги сите паричници</translation>
+ </message>
+ <message>
+ <source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
+ <translation type="unfinished">Прикажи %1 помошна порака за да добиеш список на можни биткоин-команди.</translation>
+ </message>
+ <message>
+ <source>&amp;Mask values</source>
+ <translation type="unfinished">Прикриј ги вредностите</translation>
+ </message>
+ <message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Прикриј ги вредностите во разделот Преглед</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">Паричник по подразбирање</translation>
+ </message>
+ <message>
+ <source>No wallets available</source>
+ <translation type="unfinished">Нема достапни паричници</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Податоци за паричникот</translation>
+ </message>
+ <message>
+ <source>Load Wallet Backup</source>
+ <extracomment>The title for Restore Wallet File Windows</extracomment>
+ <translation type="unfinished">Вчитување на сигурносната копија на паричникот</translation>
+ </message>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">Обновување на паричникот</translation>
+ </message>
+ <message>
+ <source>Wallet Name</source>
+ <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
+ <translation type="unfinished">Име на паричникот</translation>
+ </message>
+ <message>
<source>&amp;Window</source>
<translation type="unfinished">&amp;Прозорец</translation>
</message>
+ <message>
+ <source>Zoom</source>
+ <translation type="unfinished">Зголеми</translation>
+ </message>
+ <message>
+ <source>Main Window</source>
+ <translation type="unfinished">Главен прозорец</translation>
+ </message>
+ <message>
+ <source>%1 client</source>
+ <translation type="unfinished">%1 клиент</translation>
+ </message>
+ <message>
+ <source>&amp;Hide</source>
+ <translation type="unfinished">&amp;Скриј</translation>
+ </message>
+ <message>
+ <source>S&amp;how</source>
+ <translation type="unfinished">&amp;Покажи</translation>
+ </message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
@@ -240,6 +733,34 @@
</translation>
</message>
<message>
+ <source>Click for more actions.</source>
+ <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
+ <translation type="unfinished">Допрете за повеќе дејства.</translation>
+ </message>
+ <message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">Исклучи ја мрежната активност</translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">Исклучи ја мрежната активност</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">Вклучи ја мрежната активност</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Грешка: %1</translation>
+ </message>
+ <message>
+ <source>Warning: %1</source>
+ <translation type="unfinished">Внимание: %1</translation>
+ </message>
+ <message>
<source>Date: %1
</source>
<translation type="unfinished">Дата: %1
@@ -252,6 +773,12 @@
</translation>
</message>
<message>
+ <source>Wallet: %1
+</source>
+ <translation type="unfinished">Паричник: %1
+</translation>
+ </message>
+ <message>
<source>Type: %1
</source>
<translation type="unfinished">Тип: %1
@@ -269,10 +796,57 @@
<translation type="unfinished">Адреса: %1
</translation>
</message>
- </context>
+ <message>
+ <source>Sent transaction</source>
+ <translation type="unfinished">Испратена трансакција</translation>
+ </message>
+ <message>
+ <source>Incoming transaction</source>
+ <translation type="unfinished">Дојдовна трансакција</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
+ <translation type="unfinished">Создавањето на HD-клуч е &lt;b&gt;вклучено&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">Создавањето на HD-клуч е &lt;b&gt;исклучено&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">Личниот клуч е &lt;b&gt;исклучен&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
+ <translation type="unfinished">Паричникот е &lt;b&gt;шифриран&lt;/b&gt; и &lt;b&gt;отклучен&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;locked&lt;/b&gt;</source>
+ <translation type="unfinished">Паричникот е &lt;b&gt;шифриран&lt;/b&gt; и &lt;b&gt;заклучен&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Original message:</source>
+ <translation type="unfinished">Изворна порака:</translation>
+ </message>
+</context>
+<context>
+ <name>UnitDisplayStatusBarControl</name>
+ <message>
+ <source>Unit to show amounts in. Click to select another unit.</source>
+ <translation type="unfinished">Ставка за прикажување суми. Притиснете за да изберете друга единица.</translation>
+ </message>
+</context>
<context>
<name>CoinControlDialog</name>
<message>
+ <source>Coin Selection</source>
+ <translation type="unfinished">Избор на монети</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Количество:</translation>
+ </message>
+ <message>
<source>Bytes:</source>
<translation type="unfinished">Бајти:</translation>
</message>
@@ -285,10 +859,6 @@
<translation type="unfinished">Провизија:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Прашина:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">После Провизија:</translation>
</message>
@@ -297,6 +867,18 @@
<translation type="unfinished">Кусур:</translation>
</message>
<message>
+ <source>(un)select all</source>
+ <translation type="unfinished">(од)означи сѐ</translation>
+ </message>
+ <message>
+ <source>Tree mode</source>
+ <translation type="unfinished">Дрвовиден режим</translation>
+ </message>
+ <message>
+ <source>List mode</source>
+ <translation type="unfinished">список Режим</translation>
+ </message>
+ <message>
<source>Amount</source>
<translation type="unfinished">Сума</translation>
</message>
@@ -304,10 +886,49 @@
<source>Date</source>
<translation type="unfinished">Дата</translation>
</message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без етикета)</translation>
+ </message>
+ </context>
+<context>
+ <name>OpenWalletActivity</name>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">Паричник по подразбирање</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
+ <translation type="unfinished">Отвори паричник</translation>
+ </message>
+ </context>
+<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">Обновување на паричникот</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletController</name>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Затвори паричник</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Затвори ги сите паричници</translation>
+ </message>
</context>
<context>
<name>CreateWalletDialog</name>
<message>
+ <source>Wallet Name</source>
+ <translation type="unfinished">Име на паричникот</translation>
+ </message>
+ <message>
<source>Wallet</source>
<translation type="unfinished">Паричник</translation>
</message>
@@ -423,6 +1044,10 @@
<context>
<name>OverviewPage</name>
<message>
+ <source>Watch-only:</source>
+ <translation type="unfinished">Само гледање</translation>
+ </message>
+ <message>
<source>Total:</source>
<translation type="unfinished">Вкупно:</translation>
</message>
@@ -435,6 +1060,11 @@
<translation type="unfinished">Испратени</translation>
</message>
<message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">Адреса</translation>
+ </message>
+ <message>
<source>Network</source>
<extracomment>Title of Peers Table column which states the network the peer connected through.</extracomment>
<translation type="unfinished">Мрежа</translation>
@@ -463,9 +1093,21 @@
<translation type="unfinished">Верзија</translation>
</message>
<message>
+ <source>Node window</source>
+ <translation type="unfinished">Прозорец на јазолот</translation>
+ </message>
+ <message>
<source>&amp;Console</source>
<translation type="unfinished">&amp;Конзола</translation>
</message>
+ <message>
+ <source>Yes</source>
+ <translation type="unfinished">Да</translation>
+ </message>
+ <message>
+ <source>No</source>
+ <translation type="unfinished">Не</translation>
+ </message>
</context>
<context>
<name>ReceiveCoinsDialog</name>
@@ -493,14 +1135,26 @@
<context>
<name>ReceiveRequestDialog</name>
<message>
+ <source>Address:</source>
+ <translation type="unfinished">Адреса:</translation>
+ </message>
+ <message>
<source>Amount:</source>
<translation type="unfinished">Сума:</translation>
</message>
<message>
+ <source>Label:</source>
+ <translation type="unfinished">Етикета:</translation>
+ </message>
+ <message>
<source>Message:</source>
<translation type="unfinished">Порака:</translation>
</message>
<message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Паричник</translation>
+ </message>
+ <message>
<source>Copy &amp;URI</source>
<translation type="unfinished">Копирај &amp;URI</translation>
</message>
@@ -515,10 +1169,26 @@
<source>Date</source>
<translation type="unfinished">Дата</translation>
</message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Етикета</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без етикета)</translation>
+ </message>
</context>
<context>
<name>SendCoinsDialog</name>
<message>
+ <source>Send Coins</source>
+ <translation type="unfinished">Испраќање</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Количество:</translation>
+ </message>
+ <message>
<source>Bytes:</source>
<translation type="unfinished">Бајти:</translation>
</message>
@@ -538,10 +1208,6 @@
<source>Change:</source>
<translation type="unfinished">Кусур:</translation>
</message>
- <message>
- <source>Dust:</source>
- <translation type="unfinished">Прашина:</translation>
- </message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
@@ -550,7 +1216,11 @@
<numerusform />
</translation>
</message>
- </context>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без етикета)</translation>
+ </message>
+</context>
<context>
<name>SendCoinsEntry</name>
<message>
@@ -591,22 +1261,94 @@
<source>Date</source>
<translation type="unfinished">Дата</translation>
</message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Етикета</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">Примено</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без етикета)</translation>
+ </message>
+ <message>
+ <source>Type of transaction.</source>
+ <translation type="unfinished">Вид трансакција:</translation>
+ </message>
</context>
<context>
<name>TransactionView</name>
<message>
+ <source>This month</source>
+ <translation type="unfinished">Овој месец</translation>
+ </message>
+ <message>
+ <source>Last month</source>
+ <translation type="unfinished">Претходниот месец</translation>
+ </message>
+ <message>
+ <source>This year</source>
+ <translation type="unfinished">Оваа година</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">Примено</translation>
+ </message>
+ <message>
+ <source>Other</source>
+ <translation type="unfinished">Други</translation>
+ </message>
+ <message>
+ <source>Min amount</source>
+ <translation type="unfinished">Минимална сума</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Датотека одвоена со запирка</translation>
+ </message>
+ <message>
<source>Date</source>
<translation type="unfinished">Дата</translation>
</message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Етикета</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Адреса</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Извозот не успеа</translation>
+ </message>
</context>
<context>
<name>WalletFrame</name>
<message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Создај нов паричник</translation>
+ </message>
+ <message>
<source>Error</source>
<translation type="unfinished">Грешка</translation>
</message>
</context>
<context>
+ <name>WalletModel</name>
+ <message>
+ <source>Send Coins</source>
+ <translation type="unfinished">Испраќање</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">Паричник по подразбирање</translation>
+ </message>
+</context>
+<context>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
@@ -616,5 +1358,17 @@
<source>Export the data in the current tab to a file</source>
<translation type="unfinished">Експортирај ги податоците од активното јазиче во датотека</translation>
</message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Податоци за паричникот</translation>
+ </message>
+ </context>
+<context>
+ <name>bitcoin-core</name>
+ <message>
+ <source>Insufficient funds</source>
+ <translation type="unfinished">Недоволно средства</translation>
+ </message>
</context>
</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_ml.ts b/src/qt/locale/bitcoin_ml.ts
index 944081fed2..de58050abd 100644
--- a/src/qt/locale/bitcoin_ml.ts
+++ b/src/qt/locale/bitcoin_ml.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">തി&amp;രഞ്ഞെടുക്കുക</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">അയക്കേണ്ട വിലാസങ്ങൾ</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">സ്വീകരിക്കുന്ന വിലാസങ്ങൾ</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">പൈസ അയയ്ക്കുന്നതിനുള്ള നിങ്ങളുടെ ബിറ്റ് കോയിൻ വിലാസങ്ങളാണ് ഇവ. നാണയങ്ങൾ അയയ്ക്കുന്നതിനുമുമ്പ് എല്ലായ്പ്പോഴും തുകയും സ്വീകരിക്കുന്ന വിലാസവും പരിശോധിക്കുക.</translation>
</message>
@@ -259,6 +251,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Enter a Bitcoin address (e.g. %1)</source>
<translation type="unfinished">ഒരു ബിറ്റ്കോയിൻ വിലാസം നൽകുക(e.g. %1)</translation>
</message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</extracomment>
+ <translation type="unfinished">അകത്തേക്കു വരുന്ന</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An outbound connection to a peer. An outbound connection is a connection initiated by us.</extracomment>
+ <translation type="unfinished">പുറത്തേക് പോകുന്ന </translation>
+ </message>
<message numerus="yes">
<source>%n second(s)</source>
<translation type="unfinished">
@@ -386,6 +388,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">&amp;സ്വീകരിക്കുക</translation>
</message>
<message>
+ <source>&amp;Options…</source>
+ <translation type="unfinished">ഇഷ്‌ടമുള്ളത്‌ തിരഞ്ഞെടുക്കല്‍</translation>
+ </message>
+ <message>
<source>Encrypt the private keys that belong to your wallet</source>
<translation type="unfinished">നിങ്ങളുടെ വാലറ്റിന്റെ സ്വകാര്യ കീകൾ എൻ‌ക്രിപ്റ്റ് ചെയ്യുക</translation>
</message>
@@ -653,10 +659,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ഫീസ്‌ / പ്രതിഫലം :</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">പൊടി:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">ഫീസ് കഴിഞ്ഞ്:</translation>
</message>
@@ -721,10 +723,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ബൈറ്റ്സ് പകർത്തു</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">ഡസ്ട് പകർത്തു</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">ചേഞ്ച് പകർത്തു</translation>
</message>
@@ -733,18 +731,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 ലോക്ക് ആക്കിയിരിക്കുന്നു)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">അതെ / ശരി</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ഇല്ല</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">ഏതെങ്കിലും സ്വീകർത്താവിന് നിലവിലെ ഡസ്ട് പരിധിയേക്കാൾ ചെറിയ തുക ലഭിക്കുകയാണെങ്കിൽ ഈ ലേബൽ ചുവപ്പായി മാറുന്നു.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">ഒരു ഇൻപുട്ടിന് +/-%1 സതോഷി(കൾ) വ്യത്യാസം ഉണ്ടാകാം.</translation>
</message>
@@ -988,6 +974,22 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ലഭ്യമായ</translation>
</message>
<message>
+ <source>Pending:</source>
+ <translation type="unfinished">തീരുമാനിക്കപ്പെടാത്ത</translation>
+ </message>
+ <message>
+ <source>Balances</source>
+ <translation type="unfinished">മിച്ചം ഉള്ള തുക </translation>
+ </message>
+ <message>
+ <source>Total:</source>
+ <translation type="unfinished">മൊത്തം</translation>
+ </message>
+ <message>
+ <source>Your current total balance</source>
+ <translation type="unfinished">നിങ്ങളുടെ നിലവിൽ ഉള്ള മുഴുവൻ തുക </translation>
+ </message>
+ <message>
<source>Spendable:</source>
<translation type="unfinished">വിനിയോഗിക്കാവുന്നത് / ചെലവാക്കാവുന്നത് </translation>
</message>
@@ -999,13 +1001,29 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>PSBTOperationsDialog</name>
<message>
+ <source>Save…</source>
+ <translation type="unfinished">സൂക്ഷിക്കുക</translation>
+ </message>
+ <message>
+ <source>Close</source>
+ <translation type="unfinished">അവസാനിപ്പിക്കുക</translation>
+ </message>
+ <message>
<source>Signed transaction successfully. Transaction is ready to broadcast.</source>
<translation type="unfinished">ഇടപാട് വിജയകരമായി ഒപ്പിട്ടു. ഇടപാട് പ്രക്ഷേപണത്തിന് തയ്യാറാണ്</translation>
</message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">മുഴുവന്‍ തുക </translation>
+ </message>
</context>
<context>
<name>PaymentServer</name>
<message>
+ <source>Payment request error</source>
+ <translation type="unfinished">പണം അഭ്യര്‍ത്ഥന പിശക്‌</translation>
+ </message>
+ <message>
<source>URI handling</source>
<translation type="unfinished">യു‌ആർ‌ഐ കൈകാര്യം ചെയ്യൽ</translation>
</message>
@@ -1035,6 +1053,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">പിംഗ് </translation>
</message>
<message>
+ <source>Age</source>
+ <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
+ <translation type="unfinished">പ്രായം</translation>
+ </message>
+ <message>
<source>Sent</source>
<extracomment>Title of Peers Table column which indicates the total amount of network information we have sent to the peer.</extracomment>
<translation type="unfinished">അയക്കുക </translation>
@@ -1049,10 +1072,61 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
<translation type="unfinished">വിലാസം</translation>
</message>
+ <message>
+ <source>Type</source>
+ <extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
+ <translation type="unfinished">തരം</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <extracomment>Title of Peers Table column which states the network the peer connected through.</extracomment>
+ <translation type="unfinished">ശൃംഖല</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An Inbound Connection from a Peer.</extracomment>
+ <translation type="unfinished">അകത്തേക്കു വരുന്ന</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An Outbound Connection to a Peer.</extracomment>
+ <translation type="unfinished">പുറത്തേക് പോകുന്ന </translation>
+ </message>
+</context>
+<context>
+ <name>QRImageWidget</name>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">ചിത്രം സൂക്ഷിക്കുക</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Image</source>
+ <translation type="unfinished">ചിത്രം പകര്‍ത്തുക</translation>
+ </message>
</context>
<context>
<name>RPCConsole</name>
<message>
+ <source>&amp;Information</source>
+ <translation type="unfinished">അറിയിപ്പ്</translation>
+ </message>
+ <message>
+ <source>General</source>
+ <translation type="unfinished">പൊതുവായ</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <translation type="unfinished">ശൃംഖല</translation>
+ </message>
+ <message>
+ <source>Name</source>
+ <translation type="unfinished">നാമപദം</translation>
+ </message>
+ <message>
+ <source>Wallet: </source>
+ <translation type="unfinished">പണസഞ്ചി</translation>
+ </message>
+ <message>
<source>Received</source>
<translation type="unfinished">ലഭിച്ചവ </translation>
</message>
@@ -1094,6 +1168,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Wallet:</source>
<translation type="unfinished">വാലറ്റ്:</translation>
</message>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">ചിത്രം സൂക്ഷിക്കുക</translation>
+ </message>
</context>
<context>
<name>RecentRequestsTableModel</name>
@@ -1137,10 +1215,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">മാറ്റം</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">പൊടി:</translation>
- </message>
- <message>
<source>Copy quantity</source>
<translation type="unfinished">നിര്‍ദ്ധിഷ്‌ടസംഖ്യ / അളവ് പകർത്തുക</translation>
</message>
@@ -1161,13 +1235,13 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ബൈറ്റ്സ് പകർത്തു</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">ഡസ്ട് പകർത്തു</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">ചേഞ്ച് പകർത്തു</translation>
</message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">മുഴുവന്‍ തുക </translation>
+ </message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
@@ -1228,6 +1302,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">തീയതി </translation>
</message>
<message>
+ <source>Type</source>
+ <translation type="unfinished">തരം</translation>
+ </message>
+ <message>
<source>Label</source>
<translation type="unfinished">ലേബൽ</translation>
</message>
@@ -1247,6 +1325,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">തീയതി </translation>
</message>
<message>
+ <source>Type</source>
+ <translation type="unfinished">തരം</translation>
+ </message>
+ <message>
<source>Label</source>
<translation type="unfinished">ലേബൽ</translation>
</message>
diff --git a/src/qt/locale/bitcoin_mn.ts b/src/qt/locale/bitcoin_mn.ts
index d6c18c0df6..222018e036 100644
--- a/src/qt/locale/bitcoin_mn.ts
+++ b/src/qt/locale/bitcoin_mn.ts
@@ -54,14 +54,6 @@
<translation type="unfinished">С&amp;онго</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Илгээх хаягууд</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Хүлээн авах хаяг</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Эдгээр Биткойн хаягууд нь илгээх хаягууд. Хүлээн авах хаяг болон тоо хэмжээг илгээхээсээ өмнө сайн нягталж үзэж байна уу</translation>
</message>
@@ -956,10 +948,6 @@
<translation type="unfinished">Явуулсан хаяг</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Ѳѳрлүүгээ хийсэн тѳлбѳр</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Олборлогдсон</translation>
</message>
@@ -1023,10 +1011,6 @@
<translation type="unfinished">Явуулсан хаяг</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Ѳѳрлүүгээ</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Олборлогдсон</translation>
</message>
diff --git a/src/qt/locale/bitcoin_mr.ts b/src/qt/locale/bitcoin_mr.ts
index f6aa22c712..7e9d3055dc 100644
--- a/src/qt/locale/bitcoin_mr.ts
+++ b/src/qt/locale/bitcoin_mr.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;निवडा</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">प्रेषक पत्ते</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">स्वीकृती पत्ते</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">पैसे पाठविण्यासाठीचे हे तुमचे बिटकॉईन पत्त्ते आहेत. नाणी पाठविण्यापूर्वी नेहमी रक्कम आणि प्राप्त होणारा पत्ता तपासून पहा.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_mr_IN.ts b/src/qt/locale/bitcoin_mr_IN.ts
index 18d08c2816..b8ae2fa29b 100644
--- a/src/qt/locale/bitcoin_mr_IN.ts
+++ b/src/qt/locale/bitcoin_mr_IN.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;निवडा</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">प्रेषक पत्ते</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">स्वीकृती पत्ते</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">पैसे पाठविण्यासाठीचे हे तुमचे बिटकॉईन पत्त्ते आहेत. नाणी पाठविण्यापूर्वी नेहमी रक्कम आणि प्राप्त होणारा पत्ता तपासून पहा.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ms.ts b/src/qt/locale/bitcoin_ms.ts
index 645528d491..9d20510264 100644
--- a/src/qt/locale/bitcoin_ms.ts
+++ b/src/qt/locale/bitcoin_ms.ts
@@ -60,14 +60,6 @@ Alihkan fail data ke dalam tab semasa</translation>
<translation type="unfinished">&amp;Pilih</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">alamat-alamat penghantaran</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">alamat-alamat penerimaan</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ini adalah alamat Bitcoin anda untuk pembayaran. Periksa jumlah dan alamat penerima sebelum membuat penghantaran koin sentiasa.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_mt.ts b/src/qt/locale/bitcoin_mt.ts
new file mode 100644
index 0000000000..e26087fe80
--- /dev/null
+++ b/src/qt/locale/bitcoin_mt.ts
@@ -0,0 +1,1082 @@
+<TS version="2.1" language="mt">
+<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Right-click to edit address or label</source>
+ <translation type="unfinished">Ikklikkja bil-lemin tal-maws biex teditja l-indirizz jew it-tikketta</translation>
+ </message>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">Oħloq indirizz ġdid</translation>
+ </message>
+ <message>
+ <source>&amp;New</source>
+ <translation type="unfinished">&amp;Ġdid</translation>
+ </message>
+ <message>
+ <source>Copy the currently selected address to the system clipboard</source>
+ <translation type="unfinished">Ikkopja l-indirizz magħżul bħalissa fil-clipboard tas-sistema</translation>
+ </message>
+ <message>
+ <source>&amp;Copy</source>
+ <translation type="unfinished">&amp;Kopja</translation>
+ </message>
+ <message>
+ <source>C&amp;lose</source>
+ <translation type="unfinished">Qrib</translation>
+ </message>
+ <message>
+ <source>Delete the currently selected address from the list</source>
+ <translation type="unfinished">Ħassar l-indirizz magħżul bħalissa mil-lista</translation>
+ </message>
+ <message>
+ <source>Enter address or label to search</source>
+ <translation type="unfinished">Daħħal l-indirizz jew it-tikketta biex tfittex</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Esporta d-dejta fit-tab kurrenti għal fajl</translation>
+ </message>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Esportazzjoni</translation>
+ </message>
+ <message>
+ <source>&amp;Delete</source>
+ <translation type="unfinished">&amp;Ħassar</translation>
+ </message>
+ <message>
+ <source>Choose the address to send coins to</source>
+ <translation type="unfinished">Agħżel l-indirizz fejn tibgħat il-muniti</translation>
+ </message>
+ <message>
+ <source>Choose the address to receive coins with</source>
+ <translation type="unfinished">Agħżel l-indirizz fejn tirċievi l-muniti</translation>
+ </message>
+ <message>
+ <source>C&amp;hoose</source>
+ <translation type="unfinished">Agħżel</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
+ <translation type="unfinished">Dawn huma l-indirizzi Bitcoin tiegħek biex tibgħat il-ħlasijiet. Dejjem iċċekkja l-ammont u l-indirizz li tirċievi qabel ma tibgħat muniti.</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
+Signing is only possible with addresses of the type 'legacy'.</source>
+ <translation type="unfinished">Dawn huma l-indirizzi Bitcoin tiegħek biex tirċievi ħlasijiet. Uża l-buttuna 'Oħloq indirizz riċevitur ġdid' fit-tab tar-riċeviment biex toħloq indirizzi ġodda.
+L-iffirmar huwa possibbli biss b'indirizzi tat-tip 'legacy'.</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Address</source>
+ <translation type="unfinished">&amp;Kopja l-Indirizz</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Label</source>
+ <translation type="unfinished">Kopja &amp; Tikketta</translation>
+ </message>
+ <message>
+ <source>&amp;Edit</source>
+ <translation type="unfinished">&amp;Editja</translation>
+ </message>
+ <message>
+ <source>Export Address List</source>
+ <translation type="unfinished">Lista ta' Indirizzi ta' Esportazzjoni</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Fajl separat bil-virgola</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">Kien hemm żball meta ppruvaw issalva l-lista tal-indirizzi f'%1. Jekk jogħġbok erġa pprova.</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">L-esportazzjoni falliet</translation>
+ </message>
+</context>
+<context>
+ <name>AddressTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Tikketta</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Indirizz</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(l-ebda tikketta)</translation>
+ </message>
+</context>
+<context>
+ <name>AskPassphraseDialog</name>
+ <message>
+ <source>Passphrase Dialog</source>
+ <translation type="unfinished">Passphrase Djalogu</translation>
+ </message>
+ <message>
+ <source>Enter passphrase</source>
+ <translation type="unfinished">Daħħal passphrase</translation>
+ </message>
+ <message>
+ <source>New passphrase</source>
+ <translation type="unfinished">Passphrase ġdida</translation>
+ </message>
+ <message>
+ <source>Repeat new passphrase</source>
+ <translation type="unfinished">Irrepeti passphrase ġdida</translation>
+ </message>
+ <message>
+ <source>Show passphrase</source>
+ <translation type="unfinished">Uri passphrase</translation>
+ </message>
+ <message>
+ <source>Encrypt wallet</source>
+ <translation type="unfinished">Kriptaġġ kartiera</translation>
+ </message>
+ <message>
+ <source>This operation needs your wallet passphrase to unlock the wallet.</source>
+ <translation type="unfinished">Din l-operazzjoni teħtieġ passphrase tal-kartiera tiegħek biex tiftaħ il-kartiera.</translation>
+ </message>
+ <message>
+ <source>Unlock wallet</source>
+ <translation type="unfinished">Nisfruttaw il-kartiera</translation>
+ </message>
+ <message>
+ <source>Change passphrase</source>
+ <translation type="unfinished">Ibdel passphrase</translation>
+ </message>
+ <message>
+ <source>Confirm wallet encryption</source>
+ <translation type="unfinished">Ikkonferma l-kriptaġġ tal-kartiera</translation>
+ </message>
+ <message>
+ <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
+ <translation type="unfinished">Twissija: Jekk tikkodifika l-kartiera tiegħek u titlef il-passphrase tiegħek, int se &lt;b&gt;TILEF IL-BITCOINS KOLLHA TIEGĦEK&lt;/b&gt;!</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to encrypt your wallet?</source>
+ <translation type="unfinished">Int żgur li tixtieq tikkodifika l-kartiera tiegħek?</translation>
+ </message>
+ <message>
+ <source>Wallet encrypted</source>
+ <translation type="unfinished">Kartiera encrypted</translation>
+ </message>
+ <message>
+ <source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
+ <translation type="unfinished">Daħħal il-passphrase l-ġdida għall-kartiera.&lt;br/&gt;Jekk jogħġbok uża passphrase ta' &lt;b&gt;għaxar karattri jew aktar każwali&lt;/b&gt;, jew &lt;b&gt; tmien kelmiet jew aktar&lt;/b&gt;.</translation>
+ </message>
+ <message>
+ <source>Enter the old passphrase and new passphrase for the wallet.</source>
+ <translation type="unfinished">Daħħal il-passphrase l-antika u l-passphrase ġdida għall-kartiera.</translation>
+ </message>
+ <message>
+ <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
+ <translation type="unfinished">Ftakar li l-kriptaġġ tal-kartiera tiegħek ma jistax jipproteġi bis-sħiħ il-bitcoins tiegħek milli jinsterqu minn malware li jinfetta l-kompjuter tiegħek.</translation>
+ </message>
+ <message>
+ <source>Wallet to be encrypted</source>
+ <translation type="unfinished">Kartiera għandha tiġi encrypted</translation>
+ </message>
+ <message>
+ <source>Your wallet is about to be encrypted. </source>
+ <translation type="unfinished">Il-kartiera tiegħek waslet biex tiġi encrypted.</translation>
+ </message>
+ <message>
+ <source>Your wallet is now encrypted. </source>
+ <translation type="unfinished">Il-kartiera tiegħek issa hija kriptata.</translation>
+ </message>
+ <message>
+ <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
+ <translation type="unfinished">IMPORTANTI: Kwalunkwe backups preċedenti li għamilt tal-fajl tal-kartiera tiegħek għandhom jiġu sostitwiti bil-fajl tal-kartiera iġġenerat ġdid u kriptat. Għal raġunijiet ta' sigurtà, backups preċedenti tal-fajl tal-kartiera mhux kriptat se jsiru inutli hekk kif tibda tuża l-kartiera l-ġdida u kriptata.</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed</source>
+ <translation type="unfinished">Il-kriptaġġ tal-kartiera falla</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
+ <translation type="unfinished">Il-kriptaġġ tal-kartiera falla minħabba żball intern. Il-kartiera tiegħek ma kinitx encrypted.</translation>
+ </message>
+ <message>
+ <source>The supplied passphrases do not match.</source>
+ <translation type="unfinished">Il-passphrases fornuti ma jaqblux.</translation>
+ </message>
+ <message>
+ <source>Wallet unlock failed</source>
+ <translation type="unfinished">Il-ftuħ tal-kartiera falla</translation>
+ </message>
+ <message>
+ <source>The passphrase entered for the wallet decryption was incorrect.</source>
+ <translation type="unfinished">Il-passphrase mdaħħla għad-deċifrar tal-kartiera ma kinitx korretta.</translation>
+ </message>
+ <message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">Il-passphrase mdaħħla għad-decryption tal-kartiera mhix korretta. Fiha karattru null (jiġifieri - byte żero). Jekk il-passphrase ġiet issettjata b'verżjoni ta' dan is-software qabel 25.0, jekk jogħġbok erġa' pprova bil-karattri biss sa — iżda mhux inkluż — l-ewwel karattru null. Jekk dan jirnexxi, jekk jogħġbok waqqaf passphrase ġdida biex tevita din il-kwistjoni fil-futur.</translation>
+ </message>
+ <message>
+ <source>Wallet passphrase was successfully changed.</source>
+ <translation type="unfinished">Il-passphrase tal-kartiera nbidlet b'suċċess.</translation>
+ </message>
+ <message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Il-bidla fil-passphrase falliet</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">Il-passphrase l-antika mdaħħla għad-decryption tal-kartiera mhix korretta. Fiha karattru null (jiġifieri - byte żero). Jekk il-passphrase ġiet issettjata b'verżjoni ta' dan is-software qabel 25.0, jekk jogħġbok erġa' pprova bil-karattri biss sa — iżda mhux inkluż — l-ewwel karattru null.</translation>
+ </message>
+ <message>
+ <source>Warning: The Caps Lock key is on!</source>
+ <translation type="unfinished">Twissija: Iċ-ċavetta Caps Lock hija mixgħula!</translation>
+ </message>
+</context>
+<context>
+ <name>BanTableModel</name>
+ <message>
+ <source>Banned Until</source>
+ <translation type="unfinished">Ipprojbit Sa</translation>
+ </message>
+</context>
+<context>
+ <name>BitcoinApplication</name>
+ <message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">Il-fajl tas-settings %1jista' jkun korrott jew invalidu.</translation>
+ </message>
+ <message>
+ <source>Runaway exception</source>
+ <translation type="unfinished">Eċċezzjoni maħruba</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
+ <translation type="unfinished">Sar żball fatali. %1ma tistax tkompli b'mod sigur u se tieqaf.</translation>
+ </message>
+ <message>
+ <source>Internal error</source>
+ <translation type="unfinished">Żball intern</translation>
+ </message>
+ <message>
+ <source>An internal error occurred. %1 will attempt to continue safely. This is an unexpected bug which can be reported as described below.</source>
+ <translation type="unfinished">Sar żball intern. %1se jipprova jkompli mingħajr periklu. Dan huwa bug mhux mistenni li jista 'jiġi rrappurtat kif deskritt hawn taħt.</translation>
+ </message>
+</context>
+<context>
+ <name>QObject</name>
+ <message>
+ <source>Do you want to reset settings to default values, or to abort without making changes?</source>
+ <extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
+ <translation type="unfinished">Trid tirrisettja s-settings għal valuri awtomatiċi, jew taborta mingħajr ma tagħmel bidliet?</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
+ <extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
+ <translation type="unfinished">Sar żball fatali. Iċċekkja li l-fajl tas-settings jista' jinkiteb, jew ipprova taħdem b'-nosettings.</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Żball:%1</translation>
+ </message>
+ <message>
+ <source>%1 didn't yet exit safely…</source>
+ <translation type="unfinished">%1għadu ma ħariġx b'mod sikur...</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n week(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n year(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinGUI</name>
+ <message>
+ <source>&amp;Overview</source>
+ <translation type="unfinished">&amp;Ħarsa ġenerali</translation>
+ </message>
+ <message>
+ <source>Show general overview of wallet</source>
+ <translation type="unfinished">Uri ħarsa ġenerali ġenerali tal-kartiera</translation>
+ </message>
+ <message>
+ <source>&amp;Transactions</source>
+ <translation type="unfinished">&amp;Transazzjonijiet</translation>
+ </message>
+ <message>
+ <source>Browse transaction history</source>
+ <translation type="unfinished">Fittex l-istorja tat-tranżazzjonijiet</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation type="unfinished">Ħruġ</translation>
+ </message>
+ <message>
+ <source>Quit application</source>
+ <translation type="unfinished">Nieqaf applikazzjoni</translation>
+ </message>
+ <message>
+ <source>&amp;About %1</source>
+ <translation type="unfinished">&amp;Dwar%1</translation>
+ </message>
+ <message>
+ <source>Show information about %1</source>
+ <translation type="unfinished">Uri informazzjoni dwar%1</translation>
+ </message>
+ <message>
+ <source>About &amp;Qt</source>
+ <translation type="unfinished">Dwar &amp;Qt</translation>
+ </message>
+ <message>
+ <source>Show information about Qt</source>
+ <translation type="unfinished">Uri informazzjoni dwar Qt</translation>
+ </message>
+ <message>
+ <source>Modify configuration options for %1</source>
+ <translation type="unfinished">Immodifika l-għażliet tal-konfigurazzjoni għal%1</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Oħloq kartiera ġdida</translation>
+ </message>
+ <message>
+ <source>&amp;Minimize</source>
+ <translation type="unfinished">&amp;Imminimizza</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Kartiera:</translation>
+ </message>
+ <message>
+ <source>Network activity disabled.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">Attività tan-netwerk diżattivata.</translation>
+ </message>
+ <message>
+ <source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
+ <translation type="unfinished">Proxy huwa &lt;b&gt;attivat&lt;/b&gt;:%1</translation>
+ </message>
+ <message>
+ <source>Send coins to a Bitcoin address</source>
+ <translation type="unfinished">Ibgħat muniti f'indirizz Bitcoin</translation>
+ </message>
+ <message>
+ <source>Backup wallet to another location</source>
+ <translation type="unfinished">Kartiera backup għal post ieħor</translation>
+ </message>
+ <message>
+ <source>Change the passphrase used for wallet encryption</source>
+ <translation type="unfinished">Ibdel il-passphrase użata għall-kriptaġġ tal-kartiera</translation>
+ </message>
+ <message>
+ <source>&amp;Send</source>
+ <translation type="unfinished">&amp;Ibgħat</translation>
+ </message>
+ <message>
+ <source>&amp;Receive</source>
+ <translation type="unfinished">&amp;Irċievi</translation>
+ </message>
+ <message>
+ <source>&amp;Options…</source>
+ <translation type="unfinished">&amp;Għażliet...</translation>
+ </message>
+ <message>
+ <source>&amp;Encrypt Wallet…</source>
+ <translation type="unfinished">&amp;Encrypt Wallet...</translation>
+ </message>
+ <message>
+ <source>Encrypt the private keys that belong to your wallet</source>
+ <translation type="unfinished">Kriptaġġ iċ-ċwievet privati li jappartjenu għall-kartiera tiegħek</translation>
+ </message>
+ <message>
+ <source>&amp;Backup Wallet…</source>
+ <translation type="unfinished">Kartiera &amp;Backup...</translation>
+ </message>
+ <message>
+ <source>&amp;Change Passphrase…</source>
+ <translation type="unfinished">&amp;Ibdel il-passphrase...</translation>
+ </message>
+ <message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">Iffirma &amp;messaġġ...</translation>
+ </message>
+ <message>
+ <source>Sign messages with your Bitcoin addresses to prove you own them</source>
+ <translation type="unfinished">Iffirma messaġġi bl-indirizzi Bitcoin tiegħek biex tipprova li inti stess</translation>
+ </message>
+ <message>
+ <source>&amp;Verify message…</source>
+ <translation type="unfinished">&amp;Ivverifika l-messaġġ...</translation>
+ </message>
+ <message>
+ <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
+ <translation type="unfinished">Ivverifika l-messaġġi biex tiżgura li ġew iffirmati b'indirizzi Bitcoin speċifikati</translation>
+ </message>
+ <message>
+ <source>&amp;Load PSBT from file…</source>
+ <translation type="unfinished">&amp;Tagħbija PSBT mill-fajl...</translation>
+ </message>
+ <message>
+ <source>Open &amp;URI…</source>
+ <translation type="unfinished">Iftaħ &amp;URI...</translation>
+ </message>
+ <message>
+ <source>Close Wallet…</source>
+ <translation type="unfinished">Agħlaq Kartiera...</translation>
+ </message>
+ <message>
+ <source>Create Wallet…</source>
+ <translation type="unfinished">Oħloq Kartiera...</translation>
+ </message>
+ <message>
+ <source>Close All Wallets…</source>
+ <translation type="unfinished">Agħlaq il-Kartieri Kollha...</translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Fajl</translation>
+ </message>
+ <message>
+ <source>&amp;Help</source>
+ <translation type="unfinished">&amp;Għajnuna</translation>
+ </message>
+ <message>
+ <source>Syncing Headers (%1%)…</source>
+ <translation type="unfinished">Tissinkronizza l-headers (%1%)...</translation>
+ </message>
+ <message>
+ <source>Synchronizing with network…</source>
+ <translation type="unfinished">Sinkronizzazzjoni man-netwerk...</translation>
+ </message>
+ <message>
+ <source>Indexing blocks on disk…</source>
+ <translation type="unfinished">Indiċjar ta' blokki fuq disk...</translation>
+ </message>
+ <message>
+ <source>Processing blocks on disk…</source>
+ <translation type="unfinished">Ipproċessa blokki fuq disk...</translation>
+ </message>
+ <message>
+ <source>Connecting to peers…</source>
+ <translation type="unfinished">Konnessjoni ma' sħabhom...</translation>
+ </message>
+ <message>
+ <source>Request payments (generates QR codes and bitcoin: URIs)</source>
+ <translation type="unfinished">Itlob ħlasijiet (jiġġenera kodiċijiet QR u bitcoin: URIs)</translation>
+ </message>
+ <message>
+ <source>Show the list of used sending addresses and labels</source>
+ <translation type="unfinished">Uri l-lista tal-indirizzi u t-tikketti li jintbagħtu użati</translation>
+ </message>
+ <message>
+ <source>Show the list of used receiving addresses and labels</source>
+ <translation type="unfinished">Uri l-lista ta' indirizzi u tikketti riċevituri użati</translation>
+ </message>
+ <message>
+ <source>&amp;Command-line options</source>
+ <translation type="unfinished">&amp; Għażliet tal-linja tal-kmand</translation>
+ </message>
+ <message numerus="yes">
+ <source>Processed %n block(s) of transaction history.</source>
+ <translation type="unfinished">
+ <numerusform>Blokk(i) ipproċessat%n tal-istorja tat-tranżazzjonijiet.</numerusform>
+ <numerusform>Blokk(i) ipproċessat%n tal-istorja tat-tranżazzjonijiet.</numerusform>
+ <numerusform>Blokk(i) ipproċessat%n tal-istorja tat-tranżazzjonijiet.</numerusform>
+ <numerusform>Blokk(i) ipproċessat%ntal-istorja tat-tranżazzjonijiet.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>%1 behind</source>
+ <translation type="unfinished">%1wara</translation>
+ </message>
+ <message>
+ <source>Catching up…</source>
+ <translation type="unfinished">Ilaħħqu...</translation>
+ </message>
+ <message>
+ <source>Last received block was generated %1 ago.</source>
+ <translation type="unfinished">L-aħħar blokk riċevut ġie ġġenerat %1ilu.</translation>
+ </message>
+ <message>
+ <source>Transactions after this will not yet be visible.</source>
+ <translation type="unfinished">Transazzjonijiet wara dan għadhom mhux se jkunu viżibbli.</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Żball</translation>
+ </message>
+ <message>
+ <source>Warning</source>
+ <translation type="unfinished">Twissija</translation>
+ </message>
+ <message>
+ <source>Information</source>
+ <translation type="unfinished">Informazzjoni</translation>
+ </message>
+ <message>
+ <source>Up to date</source>
+ <translation type="unfinished">Aġġornat</translation>
+ </message>
+ <message>
+ <source>Load Partially Signed Bitcoin Transaction</source>
+ <translation type="unfinished">Tagħbija Transazzjoni Bitcoin iffirmata parzjalment</translation>
+ </message>
+ <message>
+ <source>Load PSBT from &amp;clipboard…</source>
+ <translation type="unfinished">Tagħbija PSBT minn &amp;clipboard...</translation>
+ </message>
+ <message>
+ <source>Load Partially Signed Bitcoin Transaction from clipboard</source>
+ <translation type="unfinished">Tagħbija Transazzjoni Bitcoin iffirmata parzjalment mill-clipboard</translation>
+ </message>
+ <message>
+ <source>Node window</source>
+ <translation type="unfinished">Tieqa tan-node</translation>
+ </message>
+ <message>
+ <source>Open node debugging and diagnostic console</source>
+ <translation type="unfinished">Iftaħ node debugging u console dijanjostika</translation>
+ </message>
+ <message>
+ <source>&amp;Sending addresses</source>
+ <translation type="unfinished">&amp; Tibgħat indirizzi</translation>
+ </message>
+ <message>
+ <source>&amp;Receiving addresses</source>
+ <translation type="unfinished">&amp;Riċeviment indirizzi</translation>
+ </message>
+ <message>
+ <source>Open a bitcoin: URI</source>
+ <translation type="unfinished">Iftaħ bitcoin: URI</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <translation type="unfinished">Iftaħ Kartiera</translation>
+ </message>
+ <message>
+ <source>Open a wallet</source>
+ <translation type="unfinished">Iftaħ kartiera</translation>
+ </message>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Agħlaq il-kartiera</translation>
+ </message>
+ <message>
+ <source>Restore Wallet…</source>
+ <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
+ <translation type="unfinished">Irrestawra l-Kartiera...</translation>
+ </message>
+ <message>
+ <source>Restore a wallet from a backup file</source>
+ <extracomment>Status tip for Restore Wallet menu item</extracomment>
+ <translation type="unfinished">Irrestawra kartiera minn fajl backup</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Agħlaq il-kartieri kollha</translation>
+ </message>
+ <message>
+ <source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
+ <translation type="unfinished">Uri %1l-messaġġ ta 'għajnuna biex tikseb lista b'għażliet possibbli tal-linja tal-kmand Bitcoin</translation>
+ </message>
+ <message>
+ <source>&amp;Mask values</source>
+ <translation type="unfinished">&amp;Valuri tal-maskra</translation>
+ </message>
+ <message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Maskra l-valuri fit-tab Ħarsa ġenerali</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">kartiera default</translation>
+ </message>
+ <message>
+ <source>No wallets available</source>
+ <translation type="unfinished">Ebda kartieri disponibbli</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Dejta tal-Kartiera</translation>
+ </message>
+ <message>
+ <source>Load Wallet Backup</source>
+ <extracomment>The title for Restore Wallet File Windows</extracomment>
+ <translation type="unfinished">Tagħbija Backup tal-Kartiera</translation>
+ </message>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">Irrestawra Kartiera</translation>
+ </message>
+ <message>
+ <source>Wallet Name</source>
+ <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
+ <translation type="unfinished">Isem tal-Kartiera</translation>
+ </message>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp; Tieqa</translation>
+ </message>
+ <message>
+ <source>Main Window</source>
+ <translation type="unfinished">Tieqa Prinċipali</translation>
+ </message>
+ <message>
+ <source>%1 client</source>
+ <translation type="unfinished">%1klijent</translation>
+ </message>
+ <message>
+ <source>&amp;Hide</source>
+ <translation type="unfinished">&amp;Aħbi</translation>
+ </message>
+ <message>
+ <source>S&amp;how</source>
+ <translation type="unfinished">Uri</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n active connection(s) to Bitcoin network.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">
+ <numerusform>%nkonnessjoni(jiet) attiva(i) man-netwerk Bitcoin.</numerusform>
+ <numerusform>%nkonnessjoni(jiet) attiva(i) man-netwerk Bitcoin.</numerusform>
+ <numerusform>%nkonnessjoni(jiet) attiva(i) man-netwerk Bitcoin.</numerusform>
+ <numerusform>%nkonnessjoni(jiet) attiva(i) man-netwerk Bitcoin.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Click for more actions.</source>
+ <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
+ <translation type="unfinished">Ikklikkja għal aktar azzjonijiet.</translation>
+ </message>
+ <message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">Uri tab Peers</translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">Iddiżattiva l-attività tan-netwerk</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">Ippermetti l-attività tan-netwerk</translation>
+ </message>
+ <message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">Intestaturi ta' qabel is-sinkronizzazzjoni (%1%)...</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Żball:%1</translation>
+ </message>
+ <message>
+ <source>Warning: %1</source>
+ <translation type="unfinished">Twissija:%1</translation>
+ </message>
+ <message>
+ <source>Date: %1
+</source>
+ <translation type="unfinished">Data:%1
+</translation>
+ </message>
+ <message>
+ <source>Amount: %1
+</source>
+ <translation type="unfinished">Ammont:%1
+</translation>
+ </message>
+ <message>
+ <source>Wallet: %1
+</source>
+ <translation type="unfinished">Kartiera:%1
+</translation>
+ </message>
+ <message>
+ <source>Type: %1
+</source>
+ <translation type="unfinished">Tip:%1
+</translation>
+ </message>
+ <message>
+ <source>Label: %1
+</source>
+ <translation type="unfinished">Tikketta:%1
+</translation>
+ </message>
+ <message>
+ <source>Address: %1
+</source>
+ <translation type="unfinished">Indirizz:%1
+</translation>
+ </message>
+ <message>
+ <source>Sent transaction</source>
+ <translation type="unfinished">Transazzjoni mibgħuta</translation>
+ </message>
+ <message>
+ <source>Incoming transaction</source>
+ <translation type="unfinished">Transazzjoni deħlin</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
+ <translation type="unfinished">Il-ġenerazzjoni taċ-ċavetta HD hija &lt;b&gt;ppermettiet&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">HD key ġenerazzjoni hija&lt;b&gt;b'diżabilità&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">Ċavetta privata&lt;b&gt;b'diżabilità&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
+ <translation type="unfinished">Kartiera hija&lt;b&gt;encrypted&lt;/b&gt;u bħalissa&lt;b&gt;jinfetaħ&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;locked&lt;/b&gt;</source>
+ <translation type="unfinished">Kartiera hija&lt;b&gt;encrypted&lt;/b&gt;u bħalissa&lt;b&gt;msakkra&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Original message:</source>
+ <translation type="unfinished">Messaġġ oriġinali:</translation>
+ </message>
+</context>
+<context>
+ <name>UnitDisplayStatusBarControl</name>
+ <message>
+ <source>Unit to show amounts in. Click to select another unit.</source>
+ <translation type="unfinished">Unità biex turi l-ammonti pulzieri Ikklikkja biex tagħżel unità oħra.</translation>
+ </message>
+</context>
+<context>
+ <name>CoinControlDialog</name>
+ <message>
+ <source>Coin Selection</source>
+ <translation type="unfinished">Għażla tal-Muniti</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Kwantità:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Ammont:</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">Tariffa:</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">Wara Ħlas:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">Bidla:</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(l-ebda tikketta)</translation>
+ </message>
+ </context>
+<context>
+ <name>OpenWalletActivity</name>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">kartiera default</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
+ <translation type="unfinished">Iftaħ Kartiera</translation>
+ </message>
+ </context>
+<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">Irrestawra Kartiera</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletController</name>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Agħlaq il-kartiera</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Agħlaq il-kartieri kollha</translation>
+ </message>
+ </context>
+<context>
+ <name>CreateWalletDialog</name>
+ <message>
+ <source>Wallet Name</source>
+ <translation type="unfinished">Isem tal-Kartiera</translation>
+ </message>
+ </context>
+<context>
+ <name>Intro</name>
+ <message numerus="yes">
+ <source>%n GB of space available</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(of %n GB needed)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(%n GB needed for full chain)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(sufficient to restore backups %n day(s) old)</source>
+ <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Żball</translation>
+ </message>
+ </context>
+<context>
+ <name>OptionsDialog</name>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp; Tieqa</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Żball</translation>
+ </message>
+ </context>
+<context>
+ <name>PeerTableModel</name>
+ <message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">Indirizz</translation>
+ </message>
+ </context>
+<context>
+ <name>RPCConsole</name>
+ <message>
+ <source>Node window</source>
+ <translation type="unfinished">Tieqa tan-node</translation>
+ </message>
+ </context>
+<context>
+ <name>ReceiveRequestDialog</name>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Ammont:</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Kartiera:</translation>
+ </message>
+ </context>
+<context>
+ <name>RecentRequestsTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Tikketta</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(l-ebda tikketta)</translation>
+ </message>
+ </context>
+<context>
+ <name>SendCoinsDialog</name>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Kwantità:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Ammont:</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">Tariffa:</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">Wara Ħlas:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">Bidla:</translation>
+ </message>
+ <message numerus="yes">
+ <source>Estimated to begin confirmation within %n block(s).</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(l-ebda tikketta)</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionDesc</name>
+ <message numerus="yes">
+ <source>matures in %n more block(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Tikketta</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(l-ebda tikketta)</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionView</name>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Fajl separat bil-virgola</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Tikketta</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Indirizz</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">L-esportazzjoni falliet</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletFrame</name>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Oħloq kartiera ġdida</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Żball</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletModel</name>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">kartiera default</translation>
+ </message>
+</context>
+<context>
+ <name>WalletView</name>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Esportazzjoni</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Esporta d-dejta fit-tab kurrenti għal fajl</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Dejta tal-Kartiera</translation>
+ </message>
+ </context>
+</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_my.ts b/src/qt/locale/bitcoin_my.ts
index 54711d381f..0e546f3741 100644
--- a/src/qt/locale/bitcoin_my.ts
+++ b/src/qt/locale/bitcoin_my.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">​ရွေးပါ</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">လိပ်စာပေးပို့နေသည်</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">လိပ်စာလက်ခံရရှိသည်</translation>
- </message>
- <message>
<source>&amp;Edit</source>
<translation type="unfinished">&amp;ပြင်ဆင်</translation>
</message>
@@ -174,14 +166,6 @@
<source>Date</source>
<translation type="unfinished">နေ့စွဲ</translation>
</message>
- <message>
- <source>yes</source>
- <translation type="unfinished">ဟုတ်တယ်</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">မဟုတ်ဘူး</translation>
- </message>
</context>
<context>
<name>Intro</name>
diff --git a/src/qt/locale/bitcoin_nb.ts b/src/qt/locale/bitcoin_nb.ts
index bb0ed7a135..eb6d5993c6 100644
--- a/src/qt/locale/bitcoin_nb.ts
+++ b/src/qt/locale/bitcoin_nb.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Velg</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Avsender adresser</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Mottager adresser</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Dette er dine Bitcoin adresser for å sende å sende betalinger. Husk å sjekke beløp og mottager adresser før du sender mynter.</translation>
</message>
@@ -856,10 +848,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Gebyr:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Støv:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Totalt:</translation>
</message>
@@ -944,10 +932,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopiér bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiér støv</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopier veksel</translation>
</message>
@@ -956,18 +940,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 låst)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ja</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nei</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Denne merkelappen blir rød hvis en mottaker får mindre enn gjeldende støvterskel.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Kan variere +/- %1 satoshi(er) per input.</translation>
</message>
@@ -1117,14 +1089,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Lag Tom Lommebok</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Bruk deskriptorer for scriptPubKey styring</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptor lommebok</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Bruk en ekstern undertegningsenhet, som en fysisk lommebok. Konfigurer det eksterne undertegningskriptet i lommebokinnstillingene først.</translation>
</message>
@@ -1137,10 +1101,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Opprett</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Kompilert uten sqlite støtte (kreves for deskriptor lommebok)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Kompilert uten støtte for ekstern undertegning (kreves for ekstern undertegning)</translation>
@@ -1833,6 +1793,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">* Sender %1 til %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">egen adresse</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Klarte ikke å kalkulere transaksjonsavgift eller totalt transaksjonsbeløp.</translation>
</message>
@@ -2647,10 +2611,6 @@ Hvis du får denne feilen burde du be forretningsdrivende om å tilby en BIP21 k
<translation type="unfinished">Inputs...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Støv:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Velg...</translation>
</message>
@@ -2715,10 +2675,6 @@ Hvis du får denne feilen burde du be forretningsdrivende om å tilby en BIP21 k
<translation type="unfinished">Kopiér bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiér støv</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopier veksel</translation>
</message>
@@ -3306,10 +3262,6 @@ Hvis du får denne feilen burde du be forretningsdrivende om å tilby en BIP21 k
<translation type="unfinished">Sendt til</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Betaling til deg selv</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Utvunnet</translation>
</message>
@@ -3381,10 +3333,6 @@ Hvis du får denne feilen burde du be forretningsdrivende om å tilby en BIP21 k
<translation type="unfinished">Sendt til</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Til deg selv</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Utvunnet</translation>
</message>
@@ -3660,10 +3608,6 @@ Gå til Fil &gt; Åpne lommebok for å laste en lommebok.
<translation type="unfinished">Lisensiert MIT. Se tilhørende fil %s eller %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Feil under lesing av %s! Alle nøkler har blitt lest rett, men transaksjonsdata eller adressebokoppføringer kan mangle eller være uriktige.</translation>
- </message>
- <message>
<source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
<translation type="unfinished">Feil: Dumpfil formatoppføring stemmer ikke. Fikk "%s", forventet "format".</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ne.ts b/src/qt/locale/bitcoin_ne.ts
index 10e8b8202f..fae4ee4ecb 100644
--- a/src/qt/locale/bitcoin_ne.ts
+++ b/src/qt/locale/bitcoin_ne.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">छनौट गर्नुहोस्...</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">पठाउने ठेगानाहरू</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">प्राप्त गर्ने ठेगानाहरू...</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">यी भुक्तानी गर्नका लागि तपाइका बिट्कोइन ठेगानाहरू हुन्। सिक्काहरू पठाउनुअघि रकम र प्राप्त गर्ने ठेगाना जाँच गर्नुहोस।</translation>
</message>
@@ -441,14 +433,6 @@
<source>Confirmed</source>
<translation type="unfinished">पुष्टि भयो</translation>
</message>
- <message>
- <source>yes</source>
- <translation type="unfinished">हो</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">होइन</translation>
- </message>
</context>
<context>
<name>CreateWalletDialog</name>
@@ -469,7 +453,7 @@
</message>
<message>
<source>&amp;Address</source>
- <translation type="unfinished">&amp;ठेगाना </translation>
+ <translation type="unfinished">&amp;ठेगाना</translation>
</message>
<message>
<source>Could not unlock wallet.</source>
@@ -539,7 +523,7 @@
</message>
<message>
<source>Unknown…</source>
- <translation type="unfinished">थाहा नभाको</translation>
+ <translation type="unfinished">थाहा नभाको...</translation>
</message>
<message>
<source>calculating…</source>
@@ -656,7 +640,7 @@
</message>
<message>
<source>Close</source>
- <translation type="unfinished">बन्द गर्नुहोस् </translation>
+ <translation type="unfinished">बन्द गर्नुहोस्</translation>
</message>
</context>
<context>
diff --git a/src/qt/locale/bitcoin_nl.ts b/src/qt/locale/bitcoin_nl.ts
index bee5febb2a..bbe789f474 100644
--- a/src/qt/locale/bitcoin_nl.ts
+++ b/src/qt/locale/bitcoin_nl.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">K&amp;iezen</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Verzendadressen</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Ontvangstadressen</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Dit zijn uw Bitcoin adressen om betalingen mee te verzenden. Controleer altijd het bedrag en het ontvangstadres voordat u uw bitcoins verzendt.</translation>
</message>
@@ -873,10 +865,6 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.</translation
<translation type="unfinished">Vergoeding:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Stof:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Naheffing:</translation>
</message>
@@ -965,10 +953,6 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.</translation
<translation type="unfinished">Kopieer bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopieër stof</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopieer wijziging</translation>
</message>
@@ -977,18 +961,6 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.</translation
<translation type="unfinished">(%1 geblokkeerd)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ja</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nee</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Dit label wordt rood, als een ontvanger een bedrag van minder dan de huidige dust drempel gekregen heeft.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Kan per input +/- %1 satoshi(s) variëren.</translation>
</message>
@@ -1059,12 +1031,12 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.</translation
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">standaard wallet</translation>
+ <translation type="unfinished">standaard portemonnee</translation>
</message>
<message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Wallet openen</translation>
+ <translation type="unfinished">Portemonnee Openen</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -1104,7 +1076,7 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.</translation
<name>WalletController</name>
<message>
<source>Close wallet</source>
- <translation type="unfinished">Wallet sluiten</translation>
+ <translation type="unfinished">Portemonnee Sluiten</translation>
</message>
<message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
@@ -1116,7 +1088,7 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.</translation
</message>
<message>
<source>Close all wallets</source>
- <translation type="unfinished">Alle wallets sluiten</translation>
+ <translation type="unfinished">Sluit alle portemonnees</translation>
</message>
<message>
<source>Are you sure you wish to close all wallets?</source>
@@ -1162,14 +1134,6 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.</translation
<translation type="unfinished">Lege wallet aanmaken</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Gebruik descriptors voor scriptPubKey-beheer</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Descriptorwallet</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Gebruik een externe signing device zoals een hardware wallet. Configureer eerst het externe signer script in de wallet voorkeuren.</translation>
</message>
@@ -1182,10 +1146,6 @@ Ondertekenen is alleen mogelijk met adressen van het type 'legacy'.</translation
<translation type="unfinished">Creëer</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Gecompileerd zonder sqlite-ondersteuning (nodig voor descriptor wallets)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Gecompileerd zonder ondersteuning voor externe ondertekenaars (vereist voor extern ondertekenen)</translation>
@@ -1977,6 +1937,10 @@ Ongebruikte mempool geheugen is gedeeld voor deze cache.</translation>
<translation type="unfinished">Verstuur %1 naar %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">eigen adres</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Onmogelijk om de transactie kost of totale bedrag te berekenen.</translation>
</message>
@@ -2807,10 +2771,6 @@ Voor meer informatie over het gebruik van deze console, type %6.
<translation type="unfinished">Wis alle velden op het formulier.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Stof:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Kies...</translation>
</message>
@@ -2887,10 +2847,6 @@ Notitie: Omdat de vergoeding per byte wordt gerekend, zal een vergoeding van "10
<translation type="unfinished">Kopieer bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopieër stof</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopieer wijziging</translation>
</message>
@@ -3512,10 +3468,6 @@ Notitie: Omdat de vergoeding per byte wordt gerekend, zal een vergoeding van "10
<translation type="unfinished">Verzonden aan</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Betaling aan uzelf</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Gedolven</translation>
</message>
@@ -3591,10 +3543,6 @@ Notitie: Omdat de vergoeding per byte wordt gerekend, zal een vergoeding van "10
<translation type="unfinished">Verzonden aan</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Aan uzelf</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Gedolven</translation>
</message>
@@ -3686,7 +3634,7 @@ Notitie: Omdat de vergoeding per byte wordt gerekend, zal een vergoeding van "10
</message>
<message>
<source>Exporting Failed</source>
- <translation type="unfinished">Exporteren mislukt</translation>
+ <translation type="unfinished">Exporteren Mislukt</translation>
</message>
<message>
<source>There was an error trying to save the transaction history to %1.</source>
@@ -3721,7 +3669,7 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
</message>
<message>
<source>Create a new wallet</source>
- <translation type="unfinished">Nieuwe wallet aanmaken</translation>
+ <translation type="unfinished">Nieuwe wallet creëren</translation>
</message>
<message>
<source>Error</source>
@@ -3814,7 +3762,7 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">standaard wallet</translation>
+ <translation type="unfinished">standaard portemonnee</translation>
</message>
</context>
<context>
@@ -3868,6 +3816,10 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
<translation type="unfinished">%s beschadigd. Probeer de wallet tool bitcoin-wallet voor herstel of een backup terug te zetten.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s kon de momentopnamestatus -assumeutxo niet valideren. Dit duidt op een hardwareprobleem, een fout in de software of een slechte softwarewijziging waardoor een ongeldige momentopname kon worden geladen. Als gevolg hiervan wordt het node afgesloten en stopt het met het gebruik van elke status die op de momentopname is gebouwd, waardoor de ketenhoogte wordt gereset van %d naar %d. Bij de volgende herstart hervat het node de synchronisatie vanaf %d zonder momentopnamegegevens te gebruiken. Rapporteer dit incident aan %s, inclusief hoe u aan de momentopname bent gekomen. De kettingstatus van de ongeldige momentopname is op schijf achtergelaten voor het geval dit nuttig is bij het diagnosticeren van het probleem dat deze fout heeft veroorzaakt.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s verzoekt om te luisteren op poort %u. Deze poort wordt als "slecht" beschouwd en het is daarom onwaarschijnlijk dat Bitcoin Core peers er verbinding mee maken. Zie doc/p2p-bad-ports.md voor details en een volledige lijst.</translation>
</message>
@@ -3896,10 +3848,6 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
<translation type="unfinished">Fout bij het laden van portemonnee. Portemonnee vereist dat blokken worden gedownload en de software ondersteunt momenteel het laden van portemonnees terwijl blokken niet in de juiste volgorde worden gedownload bij gebruik van assumeutxo momentopnames. Portemonnee zou met succes moeten kunnen worden geladen nadat de synchronisatie de hoogte %s heeft bereikt</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Waarschuwing: Fout bij het lezen van %s! Alle sleutels zijn in goede orde uitgelezen, maar transactiedata of adresboeklemma's zouden kunnen ontbreken of fouten bevatten.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Fout bij het lezen van %s! Transactiegegevens kunnen ontbreken of onjuist zijn. Wallet opnieuw scannen.</translation>
</message>
@@ -3968,6 +3916,10 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
<translation type="unfinished">Prune: laatste wallet synchronisatie gaat verder terug dan de pruned gegevens. Je moet herindexeren met -reindex (de hele blokketen opnieuw downloaden in geval van een pruned node)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Hernoemen van '%s' -&gt; '%s' mislukt. U moet dit oplossen door de ongeldige snapshot-map %shandmatig te verplaatsen of te verwijderen, anders zult u bij de volgende keer opstarten dezelfde fout opnieuw tegenkomen.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: Onbekende sqlite wallet schema versie %d. Alleen versie %d wordt ondersteund.</translation>
</message>
@@ -3976,10 +3928,6 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
<translation type="unfinished">De blokdatabase bevat een blok dat lijkt uit de toekomst te komen. Dit kan gebeuren omdat de datum en tijd van uw computer niet goed staat. Herbouw de blokdatabase pas nadat u de datum en tijd van uw computer correct heeft ingesteld.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">De blokindex db bevat een legacy 'txindex'. Om de bezette schijfruimte vrij te maken, voert u een volledige -reindex uit, anders negeert u deze fout. Deze foutmelding wordt niet meer weergegeven.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Het transactiebedrag is te klein om te versturen nadat de transactievergoeding in mindering is gebracht</translation>
</message>
@@ -4016,6 +3964,10 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
<translation type="unfinished">Onbekend walletbestandsformaat "%s" opgegeven. Kies aub voor "bdb" of "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Niet-ondersteund categoriespecifiek logboekniveau %1$s=%2$s. Verwacht %1$s=&lt;category&gt;:&lt;loglevel&gt;. Geldige categorieën: %3$s. Geldige logniveaus: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Niet ondersteund chainstate databaseformaat gevonden. Herstart aub met -reindex-chainstate. Dit zal de chainstate database opnieuw opbouwen.</translation>
</message>
@@ -4024,6 +3976,10 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
<translation type="unfinished">Wallet succesvol aangemaakt. Het oude wallettype wordt uitgefaseerd en ondersteuning voor het maken en openen van verouderde wallets zal in de toekomst komen te vervallen.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Wallet succesvol aangemaakt. Het oude wallettype wordt uitgefaseerd en ondersteuning voor het maken en openen van verouderde wallets zal in de toekomst komen te vervallen. Oude wallettypes kan gemigreerd worden naar een descriptor wallet met migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Waarschuwing: Dumpbestand walletformaat "%s" komt niet overeen met het op de command line gespecificeerde formaat "%s".</translation>
</message>
@@ -4072,30 +4028,10 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
<translation type="unfinished">Mag niet schrijven naar gegevensmap '%s'; controleer bestandsrechten.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">De -txindex upgrade die door een eerdere versie is gestart, kan niet worden voltooid. Herstart opnieuw met de vorige versie of voer een volledige -reindex uit.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s kon de momentopnamestatus -assumeutxo niet valideren. Dit duidt op een hardwareprobleem, een fout in de software of een slechte softwarewijziging waardoor een ongeldige momentopname kon worden geladen. Als gevolg hiervan wordt het node afgesloten en stopt het met het gebruik van elke status die op de momentopname is gebouwd, waardoor de ketenhoogte wordt gereset van %d naar %d. Bij de volgende herstart hervat het node de synchronisatie vanaf %d zonder momentopnamegegevens te gebruiken. Rapporteer dit incident aan %s, inclusief hoe u aan de momentopname bent gekomen. De kettingstatus van de ongeldige momentopname is op schijf achtergelaten voor het geval dit nuttig is bij het diagnosticeren van het probleem dat deze fout heeft veroorzaakt.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s is erg hoog ingesteld! Dergelijke hoge vergoedingen kunnen worden betaald voor een enkele transactie.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate optie is niet compatibel met -blockfilterindex. Schakel -blockfilterindex tijdelijk uit aub en gebruik -reindex-chainstate, of vervang -reindex-chainstate met -reindex om alle indices volledig opnieuw op te bouwen.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate optie is niet compatibel met -coinstatsindex. Schakel -coinstatsindex tijdelijk uit aub en gebruik -reindex-chainstate, of vervang -reindex-chainstate met -reindex om alle indices volledig opnieuw op te bouwen.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate optie is niet compatibel met -txindex. Schakel -txindex tijdelijk uit aub en gebruik -reindex-chainstate, of vervang -reindex-chainstate met -reindex om alle indices volledig opnieuw op te bouwen.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Kan geen specifieke verbindingen verstrekken en addrman tegelijkertijd uitgaande verbindingen laten vinden.</translation>
</message>
@@ -4104,6 +4040,10 @@ Ga naar Bestand &gt; Wallet openen om een wallet te laden.
<translation type="unfinished">Fout bij laden %s: Externe signer wallet wordt geladen zonder gecompileerde ondersteuning voor externe signers</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Fout bij het lezen van %s! Alle sleutels zijn in goede orde uitgelezen, maar transactiedata of adresboek metagegevens zouden kunnen ontbreken of fouten bevatten.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Fout: adresboekgegevens in portemonnee kunnen niet worden geïdentificeerd als behorend tot gemigreerde portemonnees</translation>
</message>
@@ -4376,6 +4316,10 @@ Kan mislukte migratie niet opschonen</translation>
<translation type="unfinished">Herscannen van de wallet tijdens initialisatie mislukt</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Kan de indexen niet starten, wordt afgesloten..</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Mislukt om de databank te controleren</translation>
</message>
@@ -4692,8 +4636,12 @@ Kan mislukte migratie niet opschonen</translation>
<translation type="unfinished">Onbekende nieuwe regels geactiveerd (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Niet ondersteund globaal logboekregistratieniveau -loglevel=%s. Geldige waarden: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Niet-ondersteund globaal logniveau %s=%s. Geldige waarden: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates worden niet ondersteund in de %s keten.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
@@ -4717,11 +4665,11 @@ Kan mislukte migratie niet opschonen</translation>
</message>
<message>
<source>Settings file could not be read</source>
- <translation type="unfinished">Instellingen bestand kon niet worden gelezen</translation>
+ <translation type="unfinished">Instellingen bestand kan niet gelezen worden</translation>
</message>
<message>
<source>Settings file could not be written</source>
- <translation type="unfinished">Instellingen bestand kon niet worden geschreven</translation>
+ <translation type="unfinished">Instelling bestand kan niet opgeschreven worden</translation>
</message>
</context>
</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_no.ts b/src/qt/locale/bitcoin_no.ts
index bfd524d525..de2afe47b9 100644
--- a/src/qt/locale/bitcoin_no.ts
+++ b/src/qt/locale/bitcoin_no.ts
@@ -55,14 +55,6 @@
<translation type="unfinished">Velg adressen du vil motta mynter med </translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Sender adresser </translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Mottar adresser </translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Dette er dine Bitcoin adresser for å sende betalinger.Alltid sjekk mengden og mottaker adressen før du sender mynter. </translation>
</message>
diff --git a/src/qt/locale/bitcoin_pa.ts b/src/qt/locale/bitcoin_pa.ts
index 299b6f5915..5ca8207abd 100644
--- a/src/qt/locale/bitcoin_pa.ts
+++ b/src/qt/locale/bitcoin_pa.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">ਚੁਣੋ </translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">ਪ੍ਰਾਪਤ ਕਰਨ ਵਾਲੇ ਪਤੇ </translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">ਆਉਣ ਵਾਲੇ ਪਤੇ </translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">ਇਹ ਭੁਗਤਾਨ ਭੇਜਣ ਲਈ ਤੁਹਾਡੇ ਬਿਟਕੋਇਨ ਪਤੇ ਹਨ। ਸਿੱਕੇ ਭੇਜਣ ਤੋਂ ਪਹਿਲਾਂ ਹਮੇਸ਼ਾਂ ਰਕਮ ਅਤੇ ਪ੍ਰਾਪਤ ਕਰਨ ਵਾਲੇ ਪਤੇ ਦੀ ਜਾਂਚ ਕਰੋ।</translation>
</message>
diff --git a/src/qt/locale/bitcoin_pam.ts b/src/qt/locale/bitcoin_pam.ts
index 72391391bd..6f8ef5ad2b 100644
--- a/src/qt/locale/bitcoin_pam.ts
+++ b/src/qt/locale/bitcoin_pam.ts
@@ -50,14 +50,6 @@
<translation type="unfinished">P&amp;ilinan</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Address king pamag-Send</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Address king pamag-Tanggap</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Reni reng kekang Bitcoin address king pamagpadalang kabayaran. Lawan mulang masalese reng alaga ampo ing address na ning tumanggap bayu ka magpadalang barya.</translation>
</message>
@@ -542,6 +534,13 @@
</message>
</context>
<context>
+ <name>PSBTOperationsDialog</name>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">sariling address</translation>
+ </message>
+ </context>
+<context>
<name>PeerTableModel</name>
<message>
<source>Type</source>
@@ -969,10 +968,6 @@
<translation type="unfinished">Mipadala kang</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Kabayaran keka</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Me-mina</translation>
</message>
@@ -1032,10 +1027,6 @@
<translation type="unfinished">Mipadala kang</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Keng sarili mu</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Me-mina</translation>
</message>
diff --git a/src/qt/locale/bitcoin_pl.ts b/src/qt/locale/bitcoin_pl.ts
index b10d068403..5730fd0b58 100644
--- a/src/qt/locale/bitcoin_pl.ts
+++ b/src/qt/locale/bitcoin_pl.ts
@@ -46,62 +46,16 @@
<translation type="unfinished">&amp;Usuń</translation>
</message>
<message>
- <source>Choose the address to send coins to</source>
- <translation type="unfinished">Wybierz adres, na który chcesz wysyłać monety</translation>
- </message>
- <message>
- <source>Choose the address to receive coins with</source>
- <translation type="unfinished">Wybierz adres, na który chcesz otrzymywać monety</translation>
- </message>
- <message>
<source>C&amp;hoose</source>
<translation type="unfinished">Wybierz</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">&amp;Adresy wysyłania8f0451c0-ec7d-4357-a370-eff72fb0685f</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Odbierające adresy</translation>
- </message>
- <message>
- <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
- <translation type="unfinished">Tutaj znajdują się adresy Bitcoin na które wysyłasz płatności. Zawsze sprawdzaj ilość i adres odbiorcy przed wysyłką monet. </translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">To są twoje adresy Bitcoin do otrzymywania płatności. Użyj przycisku 'Utwórz nowy adres odbioru' na karcie odbioru, aby utworzyć nowe adresy.
Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
</message>
<message>
- <source>&amp;Copy Address</source>
- <translation type="unfinished">Kopiuj adres</translation>
- </message>
- <message>
- <source>Copy &amp;Label</source>
- <translation type="unfinished">Kopiuj etykietę</translation>
- </message>
- <message>
- <source>&amp;Edit</source>
- <translation type="unfinished">&amp;Edytuj</translation>
- </message>
- <message>
- <source>Export Address List</source>
- <translation type="unfinished">Eksportuj listę adresów </translation>
- </message>
- <message>
- <source>Comma separated file</source>
- <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">Plik *.CSV rozdzielany pzrecinkami</translation>
- </message>
- <message>
- <source>There was an error trying to save the address list to %1. Please try again.</source>
- <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
- <translation type="unfinished">Wystąpił błąd podczas próby zapisu listy adresów do %1. Proszę spróbować ponownie.</translation>
- </message>
- <message>
<source>Exporting Failed</source>
<translation type="unfinished">Eksportowanie nie powiodło się </translation>
</message>
@@ -148,14 +102,6 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
<translation type="unfinished">Zaszyfruj portfel </translation>
</message>
<message>
- <source>This operation needs your wallet passphrase to unlock the wallet.</source>
- <translation type="unfinished">Ta operacja wymaga hasła do portfela aby odblokować portfel. </translation>
- </message>
- <message>
- <source>Unlock wallet</source>
- <translation type="unfinished">Odblokuj portfel</translation>
- </message>
- <message>
<source>Change passphrase</source>
<translation type="unfinished">Zmień hasło </translation>
</message>
@@ -165,7 +111,7 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
</message>
<message>
<source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
- <translation type="unfinished">Ostrzeżenie: Jeśli zaszyfrujesz swój portfel i zgubisz hasło - &lt;b&gt;STRACISZ WSZYSTKIE SWOJE BITCONY&lt;/b&gt;!</translation>
+ <translation type="unfinished">hasłoOstrzeżenie: Jeśli zaszyfrujesz swój portfel i zgubisz hasło - &lt;b&gt;STRACISZ WSZYSTKIE SWOJE BITCONY&lt;/b&gt;!</translation>
</message>
<message>
<source>Are you sure you wish to encrypt your wallet?</source>
@@ -789,6 +735,10 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
<translation type="unfinished">Synchronizuję nagłówki (%1%)…</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Błąd podczas tworzenia portfela</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Błąd: %1</translation>
</message>
@@ -895,10 +845,6 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
<translation type="unfinished">Opłata:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Pył:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Po opłacie:</translation>
</message>
@@ -987,10 +933,6 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
<translation type="unfinished">Skopiuj ilość bajtów</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiuj pył</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Skopiuj resztę</translation>
</message>
@@ -999,18 +941,6 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
<translation type="unfinished">(%1 zablokowane)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">tak</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nie</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ta etykieta staje się czerwona jeżeli którykolwiek odbiorca otrzymuje kwotę mniejszą niż obecny próg pyłu.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Waha się +/- %1 satoshi na wejście.</translation>
</message>
@@ -1188,14 +1118,6 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
<translation type="unfinished">Stwórz czysty portfel</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Użyj deskryptorów do zarządzania scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Portfel deskryptora</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Użyj zewnętrznego urządzenia podpisującego, takiego jak portfel sprzętowy. Najpierw skonfiguruj zewnętrzny skrypt podpisujący w preferencjach portfela.</translation>
</message>
@@ -1208,10 +1130,6 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
<translation type="unfinished">Stwórz</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Skompilowano bez wsparcia sqlite (wymaganego dla deskryptorów potfeli)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Skompilowany bez obsługi podpisywania zewnętrznego (wymagany do podpisywania zewnętrzengo)</translation>
@@ -2000,6 +1918,10 @@ Podpisywanie jest możliwe tylko z adresami typu 'legacy'.</translation>
<translation type="unfinished">Wysyłanie %1 do %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">własny adres</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Nie można obliczyć opłaty za transakcję lub łącznej kwoty transakcji.</translation>
</message>
@@ -2881,10 +2803,6 @@ Korzystanie z opłaty domyślnej może skutkować wysłaniem transakcji, która
<translation type="unfinished">Wejścia…</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Pył:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Wybierz...</translation>
</message>
@@ -2961,10 +2879,6 @@ Uwaga: Ponieważ opłata jest naliczana za każdy bajt, opłata "100 satoshi za
<translation type="unfinished">Skopiuj ilość bajtów</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiuj pył</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Skopiuj resztę</translation>
</message>
@@ -3617,10 +3531,6 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw
<translation type="unfinished">Wysłane do</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Płatność do siebie</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Wydobyto</translation>
</message>
@@ -3696,10 +3606,6 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw
<translation type="unfinished">Wysłane do</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Do siebie</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Wydobyto</translation>
</message>
@@ -3733,7 +3639,7 @@ Zwróć uwagę, że poprawnie zweryfikowana wiadomość potwierdza to, że nadaw
</message>
<message>
<source>Copy transaction &amp;ID</source>
- <translation type="unfinished">Skopiuj &amp;ID transakcji</translation>
+ <translation type="unfinished">transakcjaSkopiuj &amp;ID transakcji</translation>
</message>
<message>
<source>Copy &amp;raw transaction</source>
@@ -3992,10 +3898,6 @@ Przejdź do Plik &gt; Otwórz Portfel aby wgrać portfel.
<translation type="unfinished">Rozprowadzane na licencji MIT, zobacz dołączony plik %s lub %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Błąd odczytu %s! Wszystkie klucze zostały odczytane poprawnie, ale może brakować danych transakcji lub wpisów w książce adresowej, lub mogą one być nieprawidłowe.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Błąd odczytu 1%s! Może brakować danych transakcji lub mogą być one nieprawidłowe. Ponowne skanowanie portfela.</translation>
</message>
@@ -4064,10 +3966,6 @@ Przejdź do Plik &gt; Otwórz Portfel aby wgrać portfel.
<translation type="unfinished">Baza bloków zawiera blok, który wydaje się pochodzić z przyszłości. Może to wynikać z nieprawidłowego ustawienia daty i godziny Twojego komputera. Bazę danych bloków dobuduj tylko, jeśli masz pewność, że data i godzina twojego komputera są poprawne</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Baza danych indeksu bloku zawiera odziedziczony „txindex”. Aby wyczyścić zajęte miejsce na dysku, uruchom pełną indeksację, w przeciwnym razie zignoruj ten błąd. Ten komunikat o błędzie nie zostanie ponownie wyświetlony.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Zbyt niska kwota transakcji do wysłania po odjęciu opłaty</translation>
</message>
@@ -4140,18 +4038,6 @@ Przejdź do Plik &gt; Otwórz Portfel aby wgrać portfel.
<translation type="unfinished">Nie mogę zapisać do katalogu danych '%s'; sprawdź uprawnienia.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Opcja -reindex-chainstate nie jest kompatybilna z -blockfilterindex. Proszę tymczasowo wyłączyć opcję blockfilterindex podczas używania -reindex-chainstate lub zastąpić -reindex-chainstate opcją -reindex, aby w pełni przebudować wszystkie indeksy.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Opcja -reindex-chainstate nie jest kompatybilna z -coinstatsindex. Proszę tymczasowo wyłączyć opcję coinstatsindex podczas używania -reindex-chainstate lub zastąpić -reindex-chainstate opcją -reindex, aby w pełni przebudować wszystkie indeksy.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Opcja -reindex-chainstate nie jest kompatybilna z -txindex. Proszę tymczasowo wyłączyć opcję txindex podczas używania -reindex-chainstate lub zastąpić -reindex-chainstate opcją -reindex, aby w pełni przebudować wszystkie indeksy.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Nie można jednocześnie określić konkretnych połączeń oraz pozwolić procesowi addrman na wyszukiwanie wychodzących połączeń.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_pt.ts b/src/qt/locale/bitcoin_pt.ts
index 2c8c574ad1..252916494e 100644
--- a/src/qt/locale/bitcoin_pt.ts
+++ b/src/qt/locale/bitcoin_pt.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Escol&amp;her</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Endereços de envio</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Endereços de receção</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estes são os seus endereços Bitcoin para enviar pagamentos. Verifique sempre o valor e o endereço de receção antes de enviar moedas.</translation>
</message>
@@ -102,6 +94,14 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">Ocorreu um erro ao tentar guardar a lista de endereços para %1. Por favor, tente novamente.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Enviando endereços - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Recebendo endereços - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Exportação Falhou</translation>
</message>
@@ -692,6 +692,14 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">Fechar todas carteiras.</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar carteira</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar uma carteira</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Mostrar a mensagem de ajuda %1 para obter uma lista com possíveis opções a usar na linha de comandos.</translation>
</message>
@@ -788,6 +796,14 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">A pré-sincronizar cabeçalhos (%1%)…</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Erro ao criar a carteira</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Não foi possível criar uma nova carteira, o programa foi compilado sem suporte a sqlite (necessário para carteiras com descritores)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Erro: %1</translation>
</message>
@@ -890,10 +906,6 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">Taxa:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Lixo:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Depois da taxa:</translation>
</message>
@@ -982,10 +994,6 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar pó</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar troco</translation>
</message>
@@ -994,18 +1002,6 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">(%1 bloqueado)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">sim</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">não</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Esta etiqueta fica vermelha se qualquer destinatário recebe um valor menor que o limite de dinheiro.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Pode variar +/- %1 satoshi(s) por input.</translation>
</message>
@@ -1065,6 +1061,57 @@ Assinar só é possível com endereços do tipo "legado".</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar carteira</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Tem certeza que deseja migrar a carteira &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">A migração irá converter esta carteira em uma ou mais carteiras com descritores. Será necessário realizar um novo backup da carteira.
+Se esta carteira contiver scripts watchonly, uma carteira nova será criada contendo estes scripts watchonly.
+Se esta carteira contiver algum script solucionável, mas não monitorado, uma carteira nova e diferente será criada contendo esses scripts.
+
+O processo de migração criará um backup da carteira antes da migração. Este arquivo de backup será nomeado &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak e pode ser encontrado no diretório desta carteira. No caso de uma migração incorreta, o backup pode ser restaurado com a funcionalidade “Restaurar Carteira”.</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar carteira</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando Carteira &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">A carteira '%1' foi migrada com sucesso.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Os scripts watchonly foram migrados para uma nova carteira chamada '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Os scripts solucionáveis, mas não monitorados, forammigrados para uma nova carteira chamada '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Falha na migração</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Êxito na migração</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1147,6 +1194,14 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">Criar Carteira</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Você está a um passo de criar a sua nova carteira!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Forneça um nome e, se desejar, ative quaisquer opções avançadas</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Nome da Carteira</translation>
</message>
@@ -1183,14 +1238,6 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">Fazer Carteira em Branco</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Use descritores para o gerenciamento de chaves públicas de script</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Carteira de descritor</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Utilize um dispositivo de assinatura externo tal com uma carteira de hardware. Configure primeiro o script de assinatura nas preferências da carteira.</translation>
</message>
@@ -1203,10 +1250,6 @@ Assinar só é possível com endereços do tipo "legado".</translation>
<translation type="unfinished">Criar</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilado sem suporte para sqlite (requerido para carteiras de descritor)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Compilado sem suporte de assinatura externa. (necessário para assinatura externa)</translation>
@@ -2004,6 +2047,10 @@ ID transação: %1</translation>
<translation type="unfinished">Envia %1 para %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">endereço próprio</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Incapaz de calcular a taxa de transação ou o valor total da transação.</translation>
</message>
@@ -2268,6 +2315,22 @@ Se está a receber este erro, deverá pedir ao comerciante para fornecer um URI
<translation type="unfinished">Selecione um par para ver informação detalhada.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versão da camada de transporte: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">A string do ID da sessão BIP324 em hexadecimal, se houver.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID de sessão</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">Versão</translation>
</message>
@@ -2464,6 +2527,21 @@ Se está a receber este erro, deverá pedir ao comerciante para fornecer um URI
<translation type="unfinished">Entrando: iniciado por par</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">detectando: o par pode ser v1 ou v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simples não criptografado</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte criptografado BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">selecionámos o par para uma retransmissão de alta banda larga</translation>
</message>
@@ -2868,10 +2946,6 @@ Para mais informação acerca da utilização desta consola, escreva %6.
<translation type="unfinished">Entradas...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Lixo:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Escolher…</translation>
</message>
@@ -2948,10 +3022,6 @@ Nota: Como a taxa é calculada por byte, uma taxa de "100 satoshis por kvB" para
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar pó</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar troco</translation>
</message>
@@ -3605,10 +3675,6 @@ Nota: Como a taxa é calculada por byte, uma taxa de "100 satoshis por kvB" para
<translation type="unfinished">Enviado para</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pagamento para si mesmo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minada</translation>
</message>
@@ -3684,10 +3750,6 @@ Nota: Como a taxa é calculada por byte, uma taxa de "100 satoshis por kvB" para
<translation type="unfinished">Enviado para</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Para si mesmo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minada</translation>
</message>
@@ -3969,6 +4031,10 @@ Ir para o arquivo &gt; Abrir carteira para carregar a carteira
<translation type="unfinished">%s corrompido. Tente usar a ferramenta de carteira bitcoin-wallet para salvar ou restaurar um backup.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s falhou ao validar o estado da cópia -assumeutxo. Isso indica um problema de hardware, um bug no software ou uma modificação incorreta do software que permitiu o carregamento de uma cópia inválida. Como resultado disso, o nó será desligado e parará de usar qualquer estado criado na cópia, redefinindo a altura da corrente de %d para %d. Na próxima reinicialização, o nó retomará a sincronização de%d sem usar nenhum dado da cópia. Por favor, reporte este incidente para %s, incluindo como você obteve a cópia. A cópia inválida do estado de cadeia será deixada no disco caso sirva para diagnosticar o problema que causou esse erro.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">1%s solicitação para escutar na porta 2%u. Esta porta é considerada "ruim" e, portanto, é improvável que qualquer ponto se conecte-se a ela. Consulte doc/p2p-bad-ports.md para obter detalhes e uma lista completa.</translation>
</message>
@@ -3993,10 +4059,6 @@ Ir para o arquivo &gt; Abrir carteira para carregar a carteira
<translation type="unfinished">Erro ao carregar a carteira. A carteira requer que os blocos sejam baixados e o software atualmente não suporta o carregamento de carteiras enquanto os blocos estão sendo baixados fora de ordem ao usar instantâneos assumeutxo. A carteira deve ser carregada com êxito após a sincronização do nó atingir o patamar 1%s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Erro ao ler %s! Todas as chaves foram lidas corretamente, mas os dados de transação ou as entradas no livro de endereços podem não existir ou estarem incorretos.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Erro ao ler %s! Dados de transações podem estar incorretos ou faltando. Reescaneando a carteira.</translation>
</message>
@@ -4042,6 +4104,10 @@ deve ser fornecido.</translation>
<translation type="unfinished">Poda: a última sincronização da carteira vai além dos dados podados. Precisa de -reindex (descarregar novamente a cadeia de blocos completa em caso de nó podado)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Falha ao renomear '%s' -&gt; '%s'. Você deve resolver este problema manualmente movendo ou removendo o diretório de cópia inválido %s, caso contrário o mesmo erro ocorrerá novamente na próxima inicialização.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: Versão %d do esquema de carteira sqlite desconhecido. Apenas a versão %d é suportada</translation>
</message>
@@ -4050,10 +4116,6 @@ deve ser fornecido.</translation>
<translation type="unfinished">A base de dados de blocos contém um bloco que aparenta ser do futuro. Isto pode ser causado por uma data incorreta definida no seu computador. Reconstrua apenas a base de dados de blocos caso tenha a certeza de que a data e hora do seu computador estão corretos.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">O banco de dados de índices de bloco contém um 'txindex' antigo. Faça um -reindex completo para liberar espaço em disco, se desejar. Este erro não será exibido novamente.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">O montante da transação é demasiado baixo após a dedução da taxa</translation>
</message>
@@ -4086,6 +4148,10 @@ deve ser fornecido.</translation>
<translation type="unfinished">Não é possível reproduzir os blocos. Terá de reconstruir a base de dados utilizando -reindex-chainstate.</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Categoria especificada no nível de log não suportada %1$s=%2$s. Esperado %1$s=&lt;category&gt;:&lt;loglevel&gt;. Categorias validas: %3$s. Níveis de log válidos: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Formato de banco de dados incompatível na chainstate. Por favor reinicie com a opção "-reindex-chainstate". Isto irá recriar o banco de dados da chainstate.</translation>
</message>
@@ -4094,6 +4160,10 @@ deve ser fornecido.</translation>
<translation type="unfinished">Carteira criada com sucesso. As carteiras antigas estão sendo descontinuadas e o suporte para a criação de abertura de carteiras antigas será removido no futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Carteira carregada com sucesso. As carteiras legadas estão sendo descontinuadas e o suporte para a criação e abertura de carteiras legadas será removido no futuro. Carteiras legadas podem ser migradas para uma carteira com descritor com a ferramenta migratewallet. </translation>
+ </message>
+ <message>
<source>Warning: Private keys detected in wallet {%s} with disabled private keys</source>
<translation type="unfinished">Aviso: chaves privadas detetadas na carteira {%s} com chaves privadas desativadas</translation>
</message>
@@ -4138,22 +4208,6 @@ deve ser fornecido.</translation>
<translation type="unfinished">Não foi possível escrever na pasta de dados '%s': verifique as permissões.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">O processo de atualização do -txindex iniciado por uma versão anterior não foi concluído. Reinicie com a versão antiga ou faça um -reindex completo.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">a opção "-reindex-chainstate" não é compatível com "-blockfilterindex". Por favor, desabilite temporariamente a opção "blockfilterindex" enquanto utilizar a opção "-reindex-chainstate", ou troque "-reindex-chainstate" por "-reindex" para recriar completamente todos os índices. </translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">a opção "-reindex-chainstate" não é compatível com a opção "-coinstatsindex". Por favor desative temporariamente a opção "coinstatsindex" enquanto estiver utilizando "-reindex-chainstate", ou troque "-reindex-chainstate" por "-reindex" para recriar completamente todos os índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">a opção "-reindex-chainstate" não é compatível com a opção "-coinstatsindex". Por favor desative temporariamente a opção "coinstatsindex" enquanto estiver utilizando "-reindex-chainstate", ou troque "-reindex-chainstate" por "-reindex" para recriar completamente todos os índices.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Não é possível fornecer conexões específicas e ter addrman procurando conexões ao mesmo tempo.</translation>
</message>
@@ -4162,6 +4216,10 @@ deve ser fornecido.</translation>
<translation type="unfinished">Erro ao abrir %s: Carteira com assinador externo. Não foi compilado suporte para assinadores externos</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Erro ao ler arquivo %s! Todas as chaves foram lidas corretamente, mas os dados de transação ou os metadados de endereço podem estar incorretos ou faltando.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Erro: Os dados do livro de endereços da carteira não puderam ser identificados por pertencerem a carteiras migradas</translation>
</message>
@@ -4174,6 +4232,10 @@ deve ser fornecido.</translation>
<translation type="unfinished">Erro: A transação %s na carteira não pôde ser identificada por pertencer a carteiras migradas</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Falha ao calcular as taxas de colisão porque os UTXOs não confirmados dependem de um enorme conjunto de transações não confirmadas.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Impossível renomear o arquivo peers.dat (inválido). Por favor mova-o ou delete-o e tente novamente.</translation>
</message>
@@ -4202,10 +4264,6 @@ Por favor tente atualizar o software para a última versão.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Categoria especificada no nível de log não suportada "-loglevel=%s". Esperado "-loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorias validas: %s. Níveis de log válidos: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4378,6 +4436,10 @@ Impossível restaurar backup da carteira.</translation>
<translation type="unfinished">Reexaminação da carteira falhou durante a inicialização</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Falha ao iniciar índices, desligando..</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Falha ao verificar base de dados</translation>
</message>
@@ -4664,8 +4726,8 @@ A pasta de blocos especificados "%s" não existe.</translation>
<translation type="unfinished">Ativadas novas regras desconhecidas (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Nível de log global inválido "-loglevel=%s". Valores válidos: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nível de registo global não suportado %s=%s. Valores válidos: %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_pt@qtfiletype.ts b/src/qt/locale/bitcoin_pt@qtfiletype.ts
deleted file mode 100644
index d45049760e..0000000000
--- a/src/qt/locale/bitcoin_pt@qtfiletype.ts
+++ /dev/null
@@ -1,250 +0,0 @@
-<TS version="2.1" language="pt@qtfiletype">
-<context>
- <name>QObject</name>
- <message numerus="yes">
- <source>%n second(s)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>%n minute(s)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>%n hour(s)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>%n day(s)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>%n week(s)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>%n year(s)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- </context>
-<context>
- <name>BitcoinGUI</name>
- <message numerus="yes">
- <source>Processed %n block(s) of transaction history.</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>%n active connection(s) to Bitcoin network.</source>
- <extracomment>A substring of the tooltip.</extracomment>
- <translation type="unfinished">
- <numerusform>%n conexão ativa na rede Bitcoin.</numerusform>
- <numerusform>%n conexões ativas na rede Bitcoin.</numerusform>
- </translation>
- </message>
- </context>
-<context>
- <name>Intro</name>
- <message numerus="yes">
- <source>%n GB of space available</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>(of %n GB needed)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>(%n GB needed for full chain)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- <message numerus="yes">
- <source>(sufficient to restore backups %n day(s) old)</source>
- <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- </context>
-<context>
- <name>PeerTableModel</name>
- <message>
- <source>Age</source>
- <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
- <translation type="unfinished">Tempo</translation>
- </message>
- </context>
-<context>
- <name>RPCConsole</name>
- <message>
- <source>Welcome to the %1 RPC console.
-Use up and down arrows to navigate history, and %2 to clear screen.
-Use %3 and %4 to increase or decrease the font size.
-Type %5 for an overview of available commands.
-For more information on using this console, type %6.
-
-%7WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command.%8</source>
- <extracomment>RPC console welcome message. Placeholders %7 and %8 are style tags for the warning content, and they are not space separated from the rest of the text intentionally.</extracomment>
- <translation type="unfinished">Bem vindo ao %1 console de RPC.
-Utilize as setas para cima e para baixo para navegar no histórico, e %2 para limpar a tela.
-Utilize %3 e %4 para aumentar ou diminuir a tamanho da fonte.
-Digite %5 para ver os comandos disponíveis.
-Para mais informações sobre a utilização desse console. digite %6.
-
-%7 AVISO: Scammers estão ativamente influenciando usuário a digitarem comandos aqui e roubando os conteúdos de suas carteiras; Não use este terminal sem pleno conhecimento dos efeitos de cada comando.%8</translation>
- </message>
- </context>
-<context>
- <name>SendCoinsDialog</name>
- <message numerus="yes">
- <source>Estimated to begin confirmation within %n block(s).</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- </context>
-<context>
- <name>TransactionDesc</name>
- <message numerus="yes">
- <source>matures in %n more block(s)</source>
- <translation type="unfinished">
- <numerusform />
- <numerusform />
- </translation>
- </message>
- </context>
-<context>
- <name>bitcoin-core</name>
- <message>
- <source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
- <translation type="unfinished">Erro: Não foi possível produzir descritores para esta carteira antiga. Certifique-se que a carteira foi desbloqueada antes</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s falhou ao validar o estado da cópia -assumeutxo. Isso indica um problema de hardware, um bug no software ou uma modificação incorreta do software que permitiu o carregamento de uma cópia inválida. Como resultado disso, o nó será desligado e parará de usar qualquer estado criado na cópia, redefinindo a altura da corrente de %d para %d. Na próxima reinicialização, o nó retomará a sincronização de%d sem usar nenhum dado da cópia. Por favor, reporte este incidente para %s, incluindo como você obteve a cópia. A cópia inválida do estado de cadeia foi deixado no disco caso sirva para diagnosticar o problema que causou esse erro.</translation>
- </message>
- <message>
- <source>%s is set very high! Fees this large could be paid on a single transaction.</source>
- <translation type="unfinished">%s está muito alto! Essa quantia poderia ser paga em uma única transação.</translation>
- </message>
- <message>
- <source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
- <translation type="unfinished">Falha na estimativa de taxa. Fallbackfee desativada. Espere alguns blocos ou ative %s.</translation>
- </message>
- <message>
- <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
- <translation type="unfinished">Montante inválido para %s=&lt;amount&gt;: '%s' (precisa ser pelo menos a taxa de minrelay de %s para prevenir que a transação nunca seja confirmada)</translation>
- </message>
- <message>
- <source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
- <translation type="unfinished">Conexões de saída limitadas a rede CJDNS (-onlynet=cjdns), mas -cjdnsreachable não foi configurado</translation>
- </message>
- <message>
- <source>Outbound connections restricted to i2p (-onlynet=i2p) but -i2psam is not provided</source>
- <translation type="unfinished">Conexões de saída limitadas a rede i2p (-onlynet=i2p), mas -i2psam não foi configurado</translation>
- </message>
- <message>
- <source>The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet's UTXOs</source>
- <translation type="unfinished">O tamanho das entradas excede o peso máximo. Por favor, tente enviar uma quantia menor ou consolidar manualmente os UTXOs da sua carteira</translation>
- </message>
- <message>
- <source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
- <translation type="unfinished">O montante total das moedas pré-selecionadas não cobre a meta da transação. Permita que outras entradas sejam selecionadas automaticamente ou inclua mais moedas manualmente</translation>
- </message>
- <message>
- <source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
- <translation type="unfinished">A transação requer um destino com montante diferente de 0, uma taxa diferente de 0 ou uma entrada pré-selecionada</translation>
- </message>
- <message>
- <source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
- <translation type="unfinished">Falha ao validar cópia do UTXO. Reinicie para retomar normalmente o download inicial de blocos ou tente carregar uma cópia diferente.</translation>
- </message>
- <message>
- <source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
- <translation type="unfinished">UTXOs não confirmados estão disponíveis, mas gastá-los gera uma cadeia de transações que será rejeitada pela mempool</translation>
- </message>
- <message>
- <source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
-
-The wallet might have been tampered with or created with malicious intent.
-</source>
- <translation type="unfinished">Entrada antiga e inesperada foi encontrada na carteira do descritor. Carregando carteira %s
-
-A carteira pode ter sido adulterada ou criada com intenção maliciosa.
-</translation>
- </message>
- <message>
- <source>Block verification was interrupted</source>
- <translation type="unfinished">A verificação dos blocos foi interrompida</translation>
- </message>
- <message>
- <source>Error reading configuration file: %s</source>
- <translation type="unfinished">Erro ao ler o arquivo de configuração: %s</translation>
- </message>
- <message>
- <source>Error: Cannot extract destination from the generated scriptpubkey</source>
- <translation type="unfinished">Erro: não é possível extrair a destinação do scriptpubkey gerado</translation>
- </message>
- <message>
- <source>Insufficient dbcache for block verification</source>
- <translation type="unfinished">Dbcache insuficiente para verificação de bloco</translation>
- </message>
- <message>
- <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least %s)</source>
- <translation type="unfinished">Valor inválido para %s=&lt;amount&gt;: '%s' (precisa ser no mínimo %s)</translation>
- </message>
- <message>
- <source>Invalid amount for %s=&lt;amount&gt;: '%s'</source>
- <translation type="unfinished">Valor inválido para %s=&lt;amount&gt;: '%s'</translation>
- </message>
- <message>
- <source>Invalid port specified in %s: '%s'</source>
- <translation type="unfinished">Porta inválida especificada em %s: '%s'</translation>
- </message>
- <message>
- <source>Invalid pre-selected input %s</source>
- <translation type="unfinished">Entrada pré-selecionada inválida %s</translation>
- </message>
- <message>
- <source>Not found pre-selected input %s</source>
- <translation type="unfinished">Entrada pré-selecionada não encontrada %s</translation>
- </message>
- <message>
- <source>Not solvable pre-selected input %s</source>
- <translation type="unfinished">Não há solução para entrada pré-selecionada %s</translation>
- </message>
- <message>
- <source>Specified data directory "%s" does not exist.</source>
- <translation type="unfinished">O diretório de dados especificado "%s" não existe.</translation>
- </message>
- </context>
-</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_pt_BR.ts b/src/qt/locale/bitcoin_pt_BR.ts
index bea48adaca..994ea31ea1 100644
--- a/src/qt/locale/bitcoin_pt_BR.ts
+++ b/src/qt/locale/bitcoin_pt_BR.ts
@@ -7,7 +7,7 @@
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">Criar um novo endereço</translation>
+ <translation type="unfinished">Criar um novo endereço.</translation>
</message>
<message>
<source>&amp;New</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">E&amp;scolher</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Endereços de envio</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Endereço de recebimento</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Estes são seus endereços para enviar pagamentos. Sempre confira o valor e o endereço do destinatário antes de enviar moedas.</translation>
</message>
@@ -102,6 +94,14 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Erro ao salvar a lista de endereço para %1. Tente novamente.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Enviando endereços - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Recebendo endereços - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Falha na exportação</translation>
</message>
@@ -664,6 +664,14 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Fechar todas as carteiras</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar carteira</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrar uma carteira</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Mostrar a mensagem de ajuda do %1 para obter uma lista com possíveis opções de linha de comando Bitcoin</translation>
</message>
@@ -755,6 +763,14 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Pré-Sincronizando cabeçalhos (%1%)...</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Erro ao criar a carteira</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Não foi possível criar uma nova carteira, o programa foi compilado sem suporte a sqlite (necessário para carteiras com descritores)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Erro: %1</translation>
</message>
@@ -857,10 +873,6 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Taxa:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Poeira:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Depois da taxa:</translation>
</message>
@@ -941,30 +953,14 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar poeira</translation>
- </message>
- <message>
<source>Copy change</source>
- <translation type="unfinished">Copiar alteração</translation>
+ <translation type="unfinished">Copiar troco</translation>
</message>
<message>
<source>(%1 locked)</source>
<translation type="unfinished">(%1 bloqueada)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">sim</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">não</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Este texto fica vermelho se qualquer destinatário receber uma quantidade menor que o limite atual para poeira.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Pode variar +/- %1 satoshi(s) por entrada</translation>
</message>
@@ -1024,6 +1020,57 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrar carteira</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Tem certeza que deseja migrar a carteira &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">A migração irá converter esta carteira em uma ou mais carteiras com descritores. Será necessário realizar um novo backup da carteira.
+Se esta carteira contiver scripts watchonly, uma carteira nova será criada contendo estes scripts watchonly.
+Se esta carteira contiver algum script solucionável, mas não monitorado, uma carteira nova e diferente será criada contendo esses scripts.
+
+O processo de migração criará um backup da carteira antes da migração. Este arquivo de backup será nomeado &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak e pode ser encontrado no diretório desta carteira. No caso de uma migração incorreta, o backup pode ser restaurado com a funcionalidade “Restaurar Carteira”.</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrar Carteira</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrando Carteira &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">A carteira '%1' foi migrada com sucesso.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Os scripts watchonly foram migrados para uma nova carteira chamada '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Os scripts solucionáveis, mas não monitorados, forammigrados para uma nova carteira chamada '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Falha na migração</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Êxito na migração</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1106,6 +1153,14 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Criar Carteira</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Você está a um passo de criar a sua nova carteira!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Forneça um nome e, se desejar, ative quaisquer opções avançadas</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Nome da Carteira</translation>
</message>
@@ -1142,21 +1197,9 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Criar Carteira Vazia</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Utilize os descritores para gerenciamento do scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Carteira descritora.</translation>
- </message>
- <message>
<source>Create</source>
<translation type="unfinished">Criar</translation>
</message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilado sem suporte a sqlite (requerido para carteiras descritoras)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1899,6 +1942,10 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">* Envia %1 para %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">endereço próprio</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Não foi possível calcular a taxa de transação ou quantidade total da transação.</translation>
</message>
@@ -2149,6 +2196,22 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Selecione um nó para ver informações detalhadas.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Versão da camada de transporte: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Transporte</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">A string do ID da sessão BIP324 em hexadecimal, se houver.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID de sessão</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">Versão</translation>
</message>
@@ -2307,6 +2370,21 @@ Só é possível assinar com endereços do tipo 'legado'.</translation>
<translation type="unfinished">Saída:</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">detectando: o par pode ser v1 ou v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: protocolo de transporte de texto simples não criptografado</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: protocolo de transporte criptografado BIP324</translation>
+ </message>
+ <message>
<source>&amp;Copy address</source>
<extracomment>Context menu action to copy the address of a peer.</extracomment>
<translation type="unfinished">&amp;Copiar endereço</translation>
@@ -2695,10 +2773,6 @@ Para mais informações sobre a utilização desse console. digite %6.
<translation type="unfinished">Entradas...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Poeira:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Escolher...</translation>
</message>
@@ -2775,10 +2849,6 @@ Nota: Como a taxa é calculada por byte, uma taxa de "100 satoshis por kvB" para
<translation type="unfinished">Copiar bytes</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiar poeira</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiar alteração</translation>
</message>
@@ -3395,10 +3465,6 @@ Nota: Como a taxa é calculada por byte, uma taxa de "100 satoshis por kvB" para
<translation type="unfinished">Enviado para</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pagamento para você mesmo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minerado</translation>
</message>
@@ -3470,10 +3536,6 @@ Nota: Como a taxa é calculada por byte, uma taxa de "100 satoshis por kvB" para
<translation type="unfinished">Enviado para</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Para você mesmo</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minerado</translation>
</message>
@@ -3712,6 +3774,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s está corrompido. Tente usar a ferramenta de carteira bitcoin-wallet para salvamento ou restauração de backup.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s falhou ao validar o estado da cópia -assumeutxo. Isso indica um problema de hardware, um bug no software ou uma modificação incorreta do software que permitiu o carregamento de uma cópia inválida. Como resultado disso, o nó será desligado e parará de usar qualquer estado criado na cópia, redefinindo a altura da corrente de %d para %d. Na próxima reinicialização, o nó retomará a sincronização de%d sem usar nenhum dado da cópia. Por favor, reporte este incidente para %s, incluindo como você obteve a cópia. A cópia inválida do estado de cadeia será deixada no disco caso sirva para diagnosticar o problema que causou esse erro.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">1%s solicita para escutar na porta 2%u. Esta porta é considerada "ruim" e, portanto, é improvável que qualquer ponto se conecte-se a ela. Consulte doc/p2p-bad-ports.md para obter detalhes e uma lista completa.</translation>
</message>
@@ -3732,10 +3798,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Erro ao carregar a carteira. A carteira requer que os blocos sejam baixados e o software atualmente não suporta o carregamento de carteiras enquanto os blocos estão sendo baixados fora de ordem ao usar instantâneos assumeutxo. A carteira deve ser carregada com êxito após a sincronização do nó atingir o patamar 1%s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Erro ao ler arquivo %s! Todas as chaves privadas foram lidas corretamente, mas os dados de transação ou o livro de endereços podem estar faltando ou incorretos.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Erro ao ler %s! Dados de transações podem estar incorretos ou faltando. Reescaneando a carteira.</translation>
</message>
@@ -3772,6 +3834,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Prune: A ultima sincronização da carteira foi além dos dados podados. Você precisa usar -reindex (fazer o download de toda a blockchain novamente no caso de nós com prune)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Falha ao renomear '%s' -&gt; '%s'. Você deve resolver este problema manualmente movendo ou removendo o diretório de cópia inválido %s, caso contrário o mesmo erro ocorrerá novamente na próxima inicialização.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: Desconhecida a versão %d do programa da carteira sqlite. Apenas a versão %d é suportada</translation>
</message>
@@ -3780,10 +3846,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">O banco de dados de blocos contém um bloco que parece ser do futuro. Isso pode ser devido à data e hora do seu computador estarem configuradas incorretamente. Apenas reconstrua o banco de dados de blocos se você estiver certo de que a data e hora de seu computador estão corretas.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">O banco de dados de índices de bloco contém um 'txindex' antigo. Faça um -reindex completo para liberar espaço em disco, se desejar. Este erro não será exibido novamente.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">A quantia da transação é muito pequena para mandar depois de deduzida a taxa</translation>
</message>
@@ -3816,6 +3878,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Não é possível reproduzir blocos. Você precisará reconstruir o banco de dados usando -reindex-chainstate.</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Categoria especificada no nível de log não suportada %1$s=%2$s. Esperado %1$s=&lt;category&gt;:&lt;loglevel&gt;. Categorias validas: %3$s. Níveis de log válidos: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Formato de banco de dados incompatível na chainstate. Por favor reinicie com a opção "-reindex-chainstate". Isto irá recriar o banco de dados da chainstate.</translation>
</message>
@@ -3824,6 +3890,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Carteira criada com sucesso. As carteiras antigas estão sendo descontinuadas e o suporte para a criação de abertura de carteiras antigas será removido no futuro.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Carteira carregada com sucesso. As carteiras legadas estão sendo descontinuadas e o suporte para a criação e abertura de carteiras legadas será removido no futuro. Carteiras legadas podem ser migradas para uma carteira com descritor com a ferramenta migratewallet. </translation>
+ </message>
+ <message>
<source>Warning: Private keys detected in wallet {%s} with disabled private keys</source>
<translation type="unfinished">Aviso: Chaves privadas detectadas na carteira {%s} com chaves privadas desativadas</translation>
</message>
@@ -3868,30 +3938,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Não foi possível escrever no diretório '%s': verifique as permissões.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">O processo de atualização do -txindex iniciado por uma versão anterior não foi concluído. Reinicie com a versão antiga ou faça um -reindex completo.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s falhou ao validar o estado da cópia -assumeutxo. Isso indica um problema de hardware, um bug no software ou uma modificação incorreta do software que permitiu o carregamento de uma cópia inválida. Como resultado disso, o nó será desligado e parará de usar qualquer estado criado na cópia, redefinindo a altura da corrente de %d para %d. Na próxima reinicialização, o nó retomará a sincronização de%d sem usar nenhum dado da cópia. Por favor, reporte este incidente para %s, incluindo como você obteve a cópia. A cópia inválida do estado de cadeia foi deixado no disco caso sirva para diagnosticar o problema que causou esse erro.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s está muito alto! Essa quantia poderia ser paga em uma única transação.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">a opção "-reindex-chainstate" não é compatível com "-blockfilterindex". Por favor, desabilite temporariamente a opção "blockfilterindex" enquanto utilizar a opção "-reindex-chainstate", ou troque "-reindex-chainstate" por "-reindex" para recriar completamente todos os índices. </translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">a opção "-reindex-chainstate" não é compatível com a opção "-coinstatsindex". Por favor desative temporariamente a opção "coinstatsindex" enquanto estiver utilizando "-reindex-chainstate", ou troque "-reindex-chainstate" por "-reindex" para recriar completamente todos os índices.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">a opção "-reindex-chainstate" não é compatível com a opção "-coinstatsindex". Por favor desative temporariamente a opção "coinstatsindex" enquanto estiver utilizando "-reindex-chainstate", ou troque "-reindex-chainstate" por "-reindex" para recriar completamente todos os índices.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Não é possível fornecer conexões específicas e ter addrman procurando conexões ao mesmo tempo.</translation>
</message>
@@ -3900,6 +3950,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Erro ao abrir %s: Carteira com assinador externo. Não foi compilado suporte para assinadores externos</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Erro ao ler arquivo %s! Todas as chaves foram lidas corretamente, mas os dados de transação ou os metadados de endereço podem estar incorretos ou faltando.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Erro: Os dados do livro de endereços da carteira não puderam ser identificados por pertencerem a carteiras migradas</translation>
</message>
@@ -3912,6 +3966,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Erro: A transação %s na carteira não pôde ser identificada por pertencer a carteiras migradas</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Falha ao calcular as taxas de colisão porque os UTXOs não confirmados dependem de um enorme conjunto de transações não confirmadas.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Impossível renomear o arquivo peers.dat (inválido). Por favor mova-o ou delete-o e tente novamente.</translation>
</message>
@@ -3986,10 +4044,6 @@ Por favor tente atualizar o software para a última versão.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Categoria especificada no nível de log não suportada "-loglevel=%s". Esperado "-loglevel=&lt;category&gt;:&lt;loglevel&gt;. Categorias validas: %s. Níveis de log válidos: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4138,6 +4192,10 @@ Impossível restaurar backup da carteira.</translation>
<translation type="unfinished">Falha ao escanear novamente a carteira durante a inicialização</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Falha ao iniciar índices, desligando..</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Falha ao verificar a base de dados</translation>
</message>
@@ -4438,8 +4496,8 @@ Impossível restaurar backup da carteira.</translation>
<translation type="unfinished">Rede desconhecida especificada em -onlynet: '%s'</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Nível de log global inválido "-loglevel=%s". Valores válidos: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Nível de registo global não suportado %s=%s. Valores válidos: %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_ro.ts b/src/qt/locale/bitcoin_ro.ts
index 14739e0cdb..ded10d751a 100644
--- a/src/qt/locale/bitcoin_ro.ts
+++ b/src/qt/locale/bitcoin_ro.ts
@@ -54,14 +54,6 @@
<translation type="unfinished">A&amp;lege</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adresa de trimitere</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adresa de primire</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Acestea sunt adresele tale Bitcoin pentru efectuarea platilor. Intotdeauna verifica atent suma de plata si adresa beneficiarului inainte de a trimite monede.</translation>
</message>
@@ -98,6 +90,14 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">A apărut o eroare la salvarea listei de adrese la %1. Vă rugăm să încercaţi din nou.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Adresa de trimitere-%1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Adresa de primire - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Export nereusit</translation>
</message>
@@ -672,6 +672,11 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Încarcă backup-ul portmoneului</translation>
</message>
<message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">Restaurare portofel</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
<translation type="unfinished">Numele portofelului</translation>
@@ -809,10 +814,6 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Comision:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Praf:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">După taxă:</translation>
</message>
@@ -877,10 +878,6 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Copiază octeţi</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiază praf</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiază rest</translation>
</message>
@@ -889,18 +886,6 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">(%1 blocat)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">da</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nu</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Această etichetă devine roşie, dacă orice beneficiar primeşte o sumă mai mică decât pragul curent pentru praf.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Poate varia +/- %1 satoshi pentru fiecare intrare.</translation>
</message>
@@ -967,6 +952,29 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
</message>
</context>
<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">Restaurare portofel</translation>
+ </message>
+ <message>
+ <source>Restore wallet failed</source>
+ <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
+ <translation type="unfinished">Restaurarea portofelului nereusita</translation>
+ </message>
+ <message>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">Avertisment restaurare portofel</translation>
+ </message>
+ <message>
+ <source>Restore wallet message</source>
+ <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
+ <translation type="unfinished">Mesaj restaurare portofel</translation>
+ </message>
+</context>
+<context>
<name>WalletController</name>
<message>
<source>Close wallet</source>
@@ -1028,21 +1036,17 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Faceți Portofel gol</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Utilizați descriptori pentru gestionarea scriptPubKey</translation>
+ <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
+ <translation type="unfinished">Utilizeaza un dispozitiv de semnare a tranzactiilor, de exemplu un portofel hardware. Mai intai, configureaza software-ul pentru dispozitivul extern din preferintele portofelului.</translation>
</message>
<message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished"> Descriptor Portofel</translation>
+ <source>External signer</source>
+ <translation type="unfinished">Semnator extern</translation>
</message>
<message>
<source>Create</source>
<translation type="unfinished">Creează</translation>
</message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Compilat fără suport sqlite (necesar pentru portofele descriptor)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1149,6 +1153,10 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
</translation>
</message>
<message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">Alege directorul de date</translation>
+ </message>
+ <message>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">Cel putin %1GB de date vor fi stocate in acest director, si aceasta valoare va creste in timp.</translation>
</message>
@@ -1194,6 +1202,10 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Deoarece este prima lansare a programului poți alege unde %1 va stoca datele sale.</translation>
</message>
<message>
+ <source>Limit block chain storage to</source>
+ <translation type="unfinished">Limiteaza stocarea blockchainul-ui la</translation>
+ </message>
+ <message>
<source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
<translation type="unfinished">Revenirea la această setare necesită re-descărcarea întregului blockchain. Este mai rapid să descărcați mai întâi rețeaua complet și să o fragmentați mai târziu. Dezactivează unele funcții avansate.</translation>
</message>
@@ -1255,6 +1267,14 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Numarul de blocuri ramase</translation>
</message>
<message>
+ <source>Unknown…</source>
+ <translation type="unfinished">Necunoscut...</translation>
+ </message>
+ <message>
+ <source>calculating…</source>
+ <translation type="unfinished">Se calculeaza...</translation>
+ </message>
+ <message>
<source>Last block time</source>
<translation type="unfinished">Data ultimului bloc</translation>
</message>
@@ -1366,6 +1386,11 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">(0 = automat, &lt;0 = lasă atîtea nuclee libere)</translation>
</message>
<message>
+ <source>Enable R&amp;PC server</source>
+ <extracomment>An Options window setting to enable the RPC server.</extracomment>
+ <translation type="unfinished">Permite server-ul R&amp;PC</translation>
+ </message>
+ <message>
<source>W&amp;allet</source>
<translation type="unfinished">Portofel</translation>
</message>
@@ -1382,6 +1407,11 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Cheltuire rest neconfirmat</translation>
</message>
<message>
+ <source>Enable &amp;PSBT controls</source>
+ <extracomment>An options window setting to enable PSBT controls.</extracomment>
+ <translation type="unfinished">Permite controalele &amp;PSBT</translation>
+ </message>
+ <message>
<source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
<translation type="unfinished">Deschide automat în router portul aferent clientului Bitcoin. Funcţionează doar dacă routerul duportă UPnP şi e activat.</translation>
</message>
@@ -1418,6 +1448,10 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">&amp;Fereastră</translation>
</message>
<message>
+ <source>Show the icon in the system tray.</source>
+ <translation type="unfinished">Arata pictograma in zona de notificare</translation>
+ </message>
+ <message>
<source>Show only a tray icon after minimizing the window.</source>
<translation type="unfinished">Arată doar un icon în tray la ascunderea ferestrei</translation>
</message>
@@ -1495,6 +1529,10 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Fisierul de configurare e folosit pentru a specifica optiuni utilizator avansate care modifica setarile din GUI. In plus orice optiune din linia de comanda va modifica acest fisier de configurare.</translation>
</message>
<message>
+ <source>Continue</source>
+ <translation type="unfinished">Continua</translation>
+ </message>
+ <message>
<source>Cancel</source>
<translation type="unfinished">Anulare</translation>
</message>
@@ -1589,6 +1627,10 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Copiați în clipboard</translation>
</message>
<message>
+ <source>Save…</source>
+ <translation type="unfinished">Salveaza</translation>
+ </message>
+ <message>
<source>Close</source>
<translation type="unfinished">Inchide</translation>
</message>
@@ -1597,6 +1639,10 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Salvați datele tranzacției</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">adresa proprie</translation>
+ </message>
+ <message>
<source>Total Amount</source>
<translation type="unfinished">Suma totală</translation>
</message>
@@ -2170,10 +2216,6 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Şterge toate câmpurile formularului.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Praf:</translation>
- </message>
- <message>
<source>Confirmation time target:</source>
<translation type="unfinished">Timp confirmare tinta:</translation>
</message>
@@ -2222,10 +2264,6 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Copiază octeţi</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Copiază praf</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Copiază rest</translation>
</message>
@@ -2737,10 +2775,6 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Trimis către</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Plată către dvs.</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minat</translation>
</message>
@@ -2816,10 +2850,6 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Trimis către</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Către dvs.</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minat</translation>
</message>
@@ -3003,10 +3033,6 @@ Semnarea este posibilă numai cu adrese de tip "legacy".</translation>
<translation type="unfinished">Distribuit sub licenţa de programe MIT, vezi fişierul însoţitor %s sau %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Eroare la citirea %s! Toate cheile sînt citite corect, dar datele tranzactiei sau anumite intrări din agenda sînt incorecte sau lipsesc.</translation>
- </message>
- <message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
<translation type="unfinished">Vă rugăm verificaţi dacă data/timpul calculatorului dvs. sînt corecte! Dacă ceasul calcultorului este gresit, %s nu va funcţiona corect.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ru.ts b/src/qt/locale/bitcoin_ru.ts
index 1f728430fe..d27439c00a 100644
--- a/src/qt/locale/bitcoin_ru.ts
+++ b/src/qt/locale/bitcoin_ru.ts
@@ -3,11 +3,11 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">Нажмите правую кнопку мыши, чтобы изменить адрес или метку</translation>
+ <translation type="unfinished">Щелкните правой кнопкой мыши, чтобы отредактировать адрес или этикетку</translation>
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">создать новый адрес</translation>
+ <translation type="unfinished">Создать новый адрес</translation>
</message>
<message>
<source>&amp;New</source>
@@ -15,7 +15,7 @@
</message>
<message>
<source>Copy the currently selected address to the system clipboard</source>
- <translation type="unfinished">Copia la dirección seleccionada al portapapeles</translation>
+ <translation type="unfinished">Копирование выбранного адреса в системный буфер обмена</translation>
</message>
<message>
<source>&amp;Copy</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Выбрать</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Адреса отправки</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Адреса получения</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Это ваши биткоин-адреса для отправки платежей. Всегда проверяйте сумму и адрес получателя перед отправкой перевода.</translation>
</message>
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Произошла ошибка при попытке сохранить список адресов в %1. Пожалуйста, попробуйте еще раз.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Адреса отправки - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Адреса получения - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Ошибка при экспорте</translation>
</message>
@@ -181,11 +181,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Enter the old passphrase and new passphrase for the wallet.</source>
- <translation type="unfinished">Введите старую и новую парольные фразы для кошелька</translation>
+ <translation type="unfinished">Введите старую и новую парольные фразы для кошелька.</translation>
</message>
<message>
<source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
- <translation type="unfinished">Помните, что шифрование кошелька не может полностью защитить ваши биткоины от кражи вредоносными программами, заразившими ваш компьютер.</translation>
+ <translation type="unfinished">Помните, что шифрование кошелька не может полностью защитить ваши биткоины от кражи вредоносным ПО, заразившим ваш компьютер.</translation>
</message>
<message>
<source>Wallet to be encrypted</source>
@@ -193,11 +193,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Your wallet is about to be encrypted. </source>
- <translation type="unfinished">Ваш кошелёк будет зашифрован.</translation>
+ <translation type="unfinished">Ваш кошелёк будет зашифрован. </translation>
</message>
<message>
<source>Your wallet is now encrypted. </source>
- <translation type="unfinished">Сейчас ваш кошелёк зашифрован.</translation>
+ <translation type="unfinished">Сейчас ваш кошелёк зашифрован. </translation>
</message>
<message>
<source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
@@ -205,15 +205,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Wallet encryption failed</source>
- <translation type="unfinished">Не удалось зашифровать кошелёк</translation>
+ <translation type="unfinished">Шифрование кошелька не удалось</translation>
</message>
<message>
<source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
- <translation type="unfinished">Сбой шифрования кошелька из-за внутренней ошибки. Ваш кошелёк не был зашифрован.</translation>
+ <translation type="unfinished">Шифрование кошелька не удалось из-за внутренней ошибки. Ваш кошелек не был зашифрован.</translation>
</message>
<message>
<source>The supplied passphrases do not match.</source>
- <translation type="unfinished">Введённые парольные фразы не совпадают.</translation>
+ <translation type="unfinished">Введенные пароли не совпадают.</translation>
</message>
<message>
<source>Wallet unlock failed</source>
@@ -267,8 +267,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
- <translation type="unfinished">Произошла критическая ошибка. %1 больше не может продолжать безопасную работу и будет закрыт.
- </translation>
+ <translation type="unfinished">Произошла критическая ошибка. %1 больше не может продолжать безопасную работу и будет закрыт.</translation>
</message>
<message>
<source>Internal error</source>
@@ -536,11 +535,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Options…</source>
- <translation type="unfinished">&amp;Параметры...</translation>
+ <translation type="unfinished">&amp;Параметры…</translation>
</message>
<message>
<source>&amp;Encrypt Wallet…</source>
- <translation type="unfinished">&amp;Зашифровать Кошелёк...</translation>
+ <translation type="unfinished">&amp;Зашифровать Кошелёк…</translation>
</message>
<message>
<source>Encrypt the private keys that belong to your wallet</source>
@@ -548,15 +547,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Backup Wallet…</source>
- <translation type="unfinished">&amp;Создать резервную копию кошелька...</translation>
+ <translation type="unfinished">&amp;Создать резервную копию кошелька…</translation>
</message>
<message>
<source>&amp;Change Passphrase…</source>
- <translation type="unfinished">&amp;Изменить пароль...</translation>
+ <translation type="unfinished">&amp;Изменить пароль…</translation>
</message>
<message>
<source>Sign &amp;message…</source>
- <translation type="unfinished">Подписать &amp;сообщение...</translation>
+ <translation type="unfinished">Подписать &amp;сообщение…</translation>
</message>
<message>
<source>Sign messages with your Bitcoin addresses to prove you own them</source>
@@ -564,7 +563,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Verify message…</source>
- <translation type="unfinished">&amp;Проверить сообщение</translation>
+ <translation type="unfinished">&amp;Проверить сообщение…</translation>
</message>
<message>
<source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
@@ -572,23 +571,23 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Load PSBT from file…</source>
- <translation type="unfinished">&amp;Загрузить PSBT из файла...</translation>
+ <translation type="unfinished">&amp;Загрузить PSBT из файла…</translation>
</message>
<message>
<source>Open &amp;URI…</source>
- <translation type="unfinished">О&amp;ткрыть URI...</translation>
+ <translation type="unfinished">Открыть &amp;URI…</translation>
</message>
<message>
<source>Close Wallet…</source>
- <translation type="unfinished">Закрыть кошелёк...</translation>
+ <translation type="unfinished">Закрыть кошелёк…</translation>
</message>
<message>
<source>Create Wallet…</source>
- <translation type="unfinished">Создать кошелёк...</translation>
+ <translation type="unfinished">Создать кошелёк…</translation>
</message>
<message>
<source>Close All Wallets…</source>
- <translation type="unfinished">Закрыть все кошельки...</translation>
+ <translation type="unfinished">Закрыть все кошельки…</translation>
</message>
<message>
<source>&amp;File</source>
@@ -608,23 +607,23 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Syncing Headers (%1%)…</source>
- <translation type="unfinished">Синхронизация заголовков (%1%)...</translation>
+ <translation type="unfinished">Синхронизация заголовков (%1%)…</translation>
</message>
<message>
<source>Synchronizing with network…</source>
- <translation type="unfinished">Синхронизация с сетью...</translation>
+ <translation type="unfinished">Синхронизация с сетью…</translation>
</message>
<message>
<source>Indexing blocks on disk…</source>
- <translation type="unfinished">Индексация блоков на диске...</translation>
+ <translation type="unfinished">Индексация блоков на диске…</translation>
</message>
<message>
<source>Processing blocks on disk…</source>
- <translation type="unfinished">Обработка блоков на диске...</translation>
+ <translation type="unfinished">Обработка блоков на диске…</translation>
</message>
<message>
<source>Connecting to peers…</source>
- <translation type="unfinished">Подключение к узлам...</translation>
+ <translation type="unfinished">Подключение к узлам…</translation>
</message>
<message>
<source>Request payments (generates QR codes and bitcoin: URIs)</source>
@@ -656,7 +655,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Catching up…</source>
- <translation type="unfinished">Синхронизация...</translation>
+ <translation type="unfinished">Синхронизация…</translation>
</message>
<message>
<source>Last received block was generated %1 ago.</source>
@@ -680,7 +679,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Up to date</source>
- <translation type="unfinished">До настоящего времени </translation>
+ <translation type="unfinished">До настоящего времени</translation>
</message>
<message>
<source>Load Partially Signed Bitcoin Transaction</source>
@@ -688,7 +687,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Load PSBT from &amp;clipboard…</source>
- <translation type="unfinished">Загрузить PSBT из &amp;буфера обмена...</translation>
+ <translation type="unfinished">Загрузить PSBT из &amp;буфера обмена…</translation>
</message>
<message>
<source>Load Partially Signed Bitcoin Transaction from clipboard</source>
@@ -712,7 +711,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Open a bitcoin: URI</source>
- <translation type="unfinished">Открыть URI протокола bitcoin:</translation>
+ <translation type="unfinished">Открыть биткойн: URI</translation>
</message>
<message>
<source>Open Wallet</source>
@@ -741,8 +740,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Закрыть все кошельки</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Перенести кошелек</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Перенос кошелька</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">Показать помощь по %1, чтобы получить список доступных параметров командной строки</translation>
+ <translation type="unfinished">Показать справку %1 со списком доступных параметров командной строки</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -838,6 +845,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Предсинхронизация заголовков (%1%)…</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Ошибка создания кошелька</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Невозможно создать новый кошелек, программа была скомпилирована без поддержки sqlite (требуется для дескрипторных кошельков)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Ошибка: %1</translation>
</message>
@@ -933,7 +948,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Bytes:</source>
- <translation type="unfinished">Байтов:</translation>
+ <translation type="unfinished">Байты:</translation>
</message>
<message>
<source>Amount:</source>
@@ -944,10 +959,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Комиссия:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Пыль:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">После комиссии:</translation>
</message>
@@ -1036,10 +1047,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Копировать байты</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копировать пыль</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копировать сдачу</translation>
</message>
@@ -1048,18 +1055,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 заблокирован)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">да</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">нет</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Эта метка становится красной, если получатель получит сумму меньше, чем текущий порог пыли.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Может меняться на +/- %1 сатоши за каждый вход.</translation>
</message>
@@ -1115,14 +1110,65 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Loading wallets…</source>
<extracomment>Descriptive text of the load wallets progress window which indicates to the user that wallets are currently being loaded.</extracomment>
- <translation type="unfinished">Загрузка кошельков...</translation>
+ <translation type="unfinished">Загрузка кошельков…</translation>
+ </message>
+</context>
+<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Перенести кошелек</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Вы уверены, что хотите перенести кошелек &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">Миграция кошелька преобразует этот кошелек в один или несколько дескрипторных кошельков. Необходимо создать новую резервную копию кошелька.
+Если этот кошелек содержит какие-либо скрипты только для просмотра, будет создан новый кошелек, который содержит эти скрипты только для просмотра.
+Если этот кошелек содержит какие-либо решаемые, но не отслеживаемые скрипты, будет создан другой и новый кошелек, который содержит эти скрипты.
+
+В процессе миграции будет создана резервная копия кошелька. Файл резервной копии будет называться &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak и может быть найден в каталоге для этого кошелька. В случае неправильной миграции резервная копия может быть восстановлена с помощью функциональности "Восстановить кошелек".</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Перенести Кошелек</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Перенос кошелька &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Кошелек '%1' был успешно перенесён.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Скрипты Watchonly были перенесены на новый кошелек под названием '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Решаемые, но не наблюдаемые сценарии были перенесены на новый кошелек под названием '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Перенос не удался</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Перенос успешно завершен</translation>
</message>
</context>
<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
- <translation type="unfinished">Не удалось открыть кошелёк </translation>
+ <translation type="unfinished">Не удалось открыть кошелёк</translation>
</message>
<message>
<source>Open wallet warning</source>
@@ -1140,7 +1186,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
- <translation type="unfinished">Открывается кошелёк &lt;b&gt;%1&lt;/b&gt;...</translation>
+ <translation type="unfinished">Открывается кошелёк &lt;b&gt;%1&lt;/b&gt;…</translation>
</message>
</context>
<context>
@@ -1153,7 +1199,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
- <translation type="unfinished">Восстановление кошелька &lt;b&gt;%1&lt;/b&gt;...</translation>
+ <translation type="unfinished">Восстановление кошелька &lt;b&gt;%1&lt;/b&gt;…</translation>
</message>
<message>
<source>Restore wallet failed</source>
@@ -1165,12 +1211,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
<translation type="unfinished">Предупреждение при восстановлении кошелька</translation>
</message>
- <message>
- <source>Restore wallet message</source>
- <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
- <translation type="unfinished">Сообщение при восстановлении кошелька</translation>
- </message>
-</context>
+ </context>
<context>
<name>WalletController</name>
<message>
@@ -1201,6 +1242,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Создать кошелёк</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Вы в одном шаге от создания своего нового кошелька!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Укажите имя и, при желании, включите дополнительные опции</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Название кошелька</translation>
</message>
@@ -1237,14 +1286,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Создать пустой кошелёк</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Использовать дескрипторы для управления scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Дескрипторный кошелёк</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Использовать внешнее устройство для подписи, например аппаратный кошелек. Сначала настройте сценарий внешней подписи в настройках кошелька.</translation>
</message>
@@ -1257,10 +1298,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Создать</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Скомпилирован без поддержки SQLite (он необходим для дескрипторных кошельков)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Скомпилирован без поддержки внешней подписи (требуется для внешней подписи)</translation>
@@ -1393,7 +1430,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>%1 will download and store a copy of the Bitcoin block chain.</source>
- <translation type="unfinished">%1будет скачано и сохранит копию цепи блоков Bitcoin</translation>
+ <translation type="unfinished">%1 загрузит и сохранит копию цепочки блоков Bitcoin.</translation>
</message>
<message>
<source>The wallet will also be stored in this directory.</source>
@@ -1425,11 +1462,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
- <translation type="unfinished">Возврат этого параметра в прежнее положение потребует повторного скачивания всей цепочки блоков. Быстрее будет сначала скачать полную цепочку и обрезать позднее. Отключает некоторые расширенные функции. </translation>
+ <translation type="unfinished">Возврат этого параметра в прежнее положение потребует повторного скачивания всей цепочки блоков. Быстрее будет сначала скачать полную цепочку и обрезать позднее. Отключает некоторые расширенные функции.</translation>
</message>
<message>
<source> GB</source>
- <translation type="unfinished">ГБ</translation>
+ <translation type="unfinished"> ГБ</translation>
</message>
<message>
<source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
@@ -1498,11 +1535,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Unknown…</source>
- <translation type="unfinished">Неизвестно...</translation>
+ <translation type="unfinished">Неизвестно…</translation>
</message>
<message>
<source>calculating…</source>
- <translation type="unfinished">вычисляется...</translation>
+ <translation type="unfinished">вычисляется…</translation>
</message>
<message>
<source>Last block time</source>
@@ -1534,7 +1571,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Unknown. Syncing Headers (%1, %2%)…</source>
- <translation type="unfinished">Неизвестно. Синхронизируются заголовки (%1, %2%)...</translation>
+ <translation type="unfinished">Неизвестно. Синхронизируются заголовки (%1, %2%)…</translation>
</message>
<message>
<source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
@@ -1765,7 +1802,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Show the icon in the system tray.</source>
- <translation type="unfinished">Показывать значок в области уведомлений</translation>
+ <translation type="unfinished">Показывать значок в области уведомлений.</translation>
</message>
<message>
<source>&amp;Show tray icon</source>
@@ -1867,11 +1904,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Для активации изменений необходим перезапуск клиента.</translation>
</message>
<message>
- <source>Current settings will be backed up at "%1".</source>
- <extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
- <translation type="unfinished">Резервная копия текущих настроек будет сохранена в "%1".</translation>
- </message>
- <message>
<source>Client will be shut down. Do you want to proceed?</source>
<extracomment>Text asking the user to confirm if they would like to proceed with a client shutdown.</extracomment>
<translation type="unfinished">Клиент будет закрыт. Продолжить?</translation>
@@ -2033,7 +2065,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Cannot sign inputs while wallet is locked.</source>
- <translation type="unfinished">Невозможно подписать входы пока кошелёк заблокирован</translation>
+ <translation type="unfinished">Невозможно подписать входы пока кошелёк заблокирован.</translation>
</message>
<message>
<source>Could not sign any more inputs.</source>
@@ -2061,7 +2093,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>PSBT copied to clipboard.</source>
- <translation type="unfinished">PSBT скопирована в буфер обмена</translation>
+ <translation type="unfinished">PSBT скопирована в буфер обмена.</translation>
</message>
<message>
<source>Save Transaction Data</source>
@@ -2078,7 +2110,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source> * Sends %1 to %2</source>
- <translation type="unfinished">* Отправляет %1 на %2</translation>
+ <translation type="unfinished"> * Отправляет %1 на %2</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">свой адрес</translation>
</message>
<message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
@@ -2086,7 +2122,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Pays transaction fee: </source>
- <translation type="unfinished">Платит комиссию:</translation>
+ <translation type="unfinished">Платит комиссию: </translation>
</message>
<message>
<source>Total Amount</source>
@@ -2137,7 +2173,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Cannot start bitcoin: click-to-pay handler</source>
- <translation type="unfinished">Не удаётся запустить обработчик click-to-pay для протокола bitcoin:</translation>
+ <translation type="unfinished">Не удаётся запустить обработчик click-to-pay для протокола bitcoin</translation>
</message>
<message>
<source>URI handling</source>
@@ -2327,7 +2363,7 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<source>Wallet: </source>
- <translation type="unfinished">Кошелёк:</translation>
+ <translation type="unfinished">Кошелёк: </translation>
</message>
<message>
<source>(none)</source>
@@ -2358,6 +2394,22 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Выберите узел для просмотра подробностей.</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Версия транспортного протокола:%1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Транспортный протокол</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Строка идентификатора сеанса BIP324 в шестнадцатеричном формате, если таковой имеется.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID сессии</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">Версия</translation>
</message>
@@ -2468,10 +2520,6 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Службы</translation>
</message>
<message>
- <source>High bandwidth BIP152 compact block relay: %1</source>
- <translation type="unfinished">Широкополосный ретранслятор компактных блоков BIP152: %1</translation>
- </message>
- <message>
<source>High Bandwidth</source>
<translation type="unfinished">Широкая полоса</translation>
</message>
@@ -2587,6 +2635,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Исходящий для получения адресов: короткое время жизни, для запроса адресов</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">обнаружение: пир может быть v1 или v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: незашифрованный транспортный протокол с открытым текстом</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: Зашифрованный транспортный протокол BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">мы выбрали этот узел для широкополосной передачи</translation>
</message>
@@ -3003,10 +3066,6 @@ For more information on using this console, type %6.
<translation type="unfinished">Входы…</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Пыль:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Выбрать…</translation>
</message>
@@ -3083,10 +3142,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Копировать байты</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копировать пыль</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копировать сдачу</translation>
</message>
@@ -3118,7 +3173,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source> from wallet '%1'</source>
- <translation type="unfinished">с кошелька "%1"</translation>
+ <translation type="unfinished"> с кошелька "%1"</translation>
</message>
<message>
<source>%1 to '%2'</source>
@@ -3511,7 +3566,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<name>TrafficGraphWidget</name>
<message>
<source>kB/s</source>
- <translation type="unfinished">КБ/с</translation>
+ <translation type="unfinished">кБ/с</translation>
</message>
</context>
<context>
@@ -3648,7 +3703,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source> (Certificate was not verified)</source>
- <translation type="unfinished">(Сертификат не был проверен)</translation>
+ <translation type="unfinished"> (Сертификат не был проверен)</translation>
</message>
<message>
<source>Merchant</source>
@@ -3749,10 +3804,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Отправлено на</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Платёж себе</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Добыто</translation>
</message>
@@ -3828,10 +3879,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Отправлено на</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Себе</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Добыто</translation>
</message>
@@ -3849,7 +3896,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Range…</source>
- <translation type="unfinished">Диапазон...</translation>
+ <translation type="unfinished">Диапазон…</translation>
</message>
<message>
<source>&amp;Copy address</source>
@@ -4051,7 +4098,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Can't sign transaction.</source>
- <translation type="unfinished">Невозможно подписать транзакцию</translation>
+ <translation type="unfinished">Невозможно подписать транзакцию.</translation>
</message>
<message>
<source>Could not commit transaction</source>
@@ -4117,6 +4164,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s испорчен. Попробуйте восстановить его с помощью инструмента bitcoin-wallet или из резервной копии.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s не удалось подтвердить состояние моментального снимка -assumeutxo. Это указывает на аппаратную проблему, или ошибку в программном обеспечении, или неудачную модификацию программного обеспечения, которая позволила загрузить недопустимый снимок. В результате этого узел выключится и перестанет использовать любое состояние, которое было построено на основе моментального снимка, сбросив высоту цепочки с %d на %d. При следующем перезапуске узел возобновит синхронизацию с %d без использования данных моментального снимка. Сообщите об этом инциденте по адресу %s, указав, как вы получили снимок. Состояние цепи недействительного снимка будет оставлено на диске, если оно поможет в диагностике проблемы, вызвавшей эту ошибку.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s хочет открыть порт %u на прослушивание. Этот порт считается "плохим", и другие узлы, скорее всего, не захотят общаться через этот порт. Список портов и подробности можно узнать в документе doc/p2p-bad-ports.md.</translation>
</message>
@@ -4145,10 +4196,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Не удалось загрузить кошелёк. Для кошелька требуется, чтобы блоки были загружены. Но в данный момент программа не поддерживает загрузку кошелька с одновременной загрузкой блоков не по порядку с использованием снимков assumeutxo. Кошелёк должен успешно загрузиться после того, как узел синхронизирует блок %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Ошибка чтения %s! Все ключи прочитаны верно, но данные транзакций или записи адресной книги могут отсутствовать или быть неправильными.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Ошибка чтения %s! Данные транзакций отсутствуют или неправильны. Кошелёк сканируется заново.</translation>
</message>
@@ -4166,7 +4213,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
- <translation type="unfinished">Ошибка: устаревшие кошельки поддерживают только следующие типы адресов: "legacy", "p2sh-segwit", и "bech32".</translation>
+ <translation type="unfinished">Ошибка: устаревшие кошельки поддерживают только следующие типы адресов: "legacy", "p2sh-segwit", и "bech32"</translation>
</message>
<message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
@@ -4186,15 +4233,15 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>No dump file provided. To use createfromdump, -dumpfile=&lt;filename&gt; must be provided.</source>
- <translation type="unfinished">Не указан дамп-файл. Чтобы использовать createfromdump, необходимо указать -dumpfile=&lt;filename&gt;</translation>
+ <translation type="unfinished">Не указан дамп-файл. Чтобы использовать createfromdump, необходимо указать -dumpfile=&lt;filename&gt;.</translation>
</message>
<message>
<source>No dump file provided. To use dump, -dumpfile=&lt;filename&gt; must be provided.</source>
- <translation type="unfinished">Не указан дамп-файл. Чтобы использовать dump, необходимо указать -dumpfile=&lt;filename&gt;</translation>
+ <translation type="unfinished">Не указан дамп-файл. Чтобы использовать dump, необходимо указать -dumpfile=&lt;filename&gt;.</translation>
</message>
<message>
<source>No wallet file format provided. To use createfromdump, -format=&lt;format&gt; must be provided.</source>
- <translation type="unfinished">Не указан формат файла кошелька. Чтобы использовать createfromdump, необходимо указать -format=&lt;format&gt;</translation>
+ <translation type="unfinished">Не указан формат файла кошелька. Чтобы использовать createfromdump, необходимо указать -format=&lt;format&gt;.</translation>
</message>
<message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
@@ -4217,16 +4264,16 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Обрезка: последняя синхронизация кошелька вышла за рамки обрезанных данных. Необходимо сделать -reindex (снова скачать всю цепочку блоков, если у вас узел с обрезкой)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Не удалось выполнить переименование '%s' -&gt; '%s'. Вы должны решить эту проблему, вручную переместив или удалив недействительный каталог моментальных снимков %s, иначе при следующем запуске вы снова столкнетесь с той же ошибкой.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: неизвестная версия схемы SQLite кошелька: %d. Поддерживается только версия %d</translation>
</message>
<message>
<source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
- <translation type="unfinished">В базе данных блоков найден блок из будущего. Это может произойти из-за неверно установленных даты и времени на вашем компьютере. Перестраивайте базу данных блоков только если вы уверены, что дата и время установлены верно.</translation>
- </message>
- <message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">База данных индексации блоков содержит устаревший "txindex". Чтобы освободить место на диске, выполните полный -reindex, или игнорируйте эту ошибку. Это сообщение об ошибке больше показано не будет.</translation>
+ <translation type="unfinished">В базе данных блоков найден блок из будущего. Это может произойти из-за неверно установленных даты и времени на вашем компьютере. Перестраивайте базу данных блоков только если вы уверены, что дата и время установлены верно</translation>
</message>
<message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
@@ -4265,6 +4312,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Указан неизвестный формат файла кошелька "%s". Укажите "bdb" либо "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Неподдерживаемый уровень регистрации по категориям %1$s=%2$s. Ожидается %1$s=&lt;category&gt;:&lt;loglevel&gt;. Допустимые категории: %3$s. Допустимые уровни регистрации: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Обнаружен неподдерживаемый формат базы данных состояния цепочки блоков. Пожалуйста, перезапустите программу с ключом -reindex-chainstate. Это перестроит базу данных состояния цепочки блоков.</translation>
</message>
@@ -4273,6 +4324,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Кошелёк успешно создан. Старый формат кошелька признан устаревшим. Поддержка создания кошелька в этом формате и его открытие в будущем будут удалены.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Кошелек успешно загружен. Устаревший тип кошелька, поддержка создания и открытия устаревших кошельков будет удалена в будущем. Устаревшие кошельки можно перенести на дескрипторный кошелек с помощью функции migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Внимание: формат дамп-файла кошелька "%s" не соответствует указанному в командной строке формату "%s".</translation>
</message>
@@ -4321,26 +4376,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Не удается выполнить запись в каталог данных "%s"; проверьте разрешения.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Обновление -txindex, запущенное при предыдущей версии не может быть завершено. Перезапустите с предыдущей версией или запустите весь процесс заново с ключом -reindex.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s слишком много! Комиссии такого объёма могут быть оплачены за одну транзакцию.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Опция -reindex-chainstate не совместима с -blockfilterindex. Пожалуйста, выключите на время blockfilterindex, пока используется -reindex-chainstate, либо замените -reindex-chainstate на -reindex для полной перестройки всех индексов.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Опция -reindex-chainstate не совместима с -coinstatsindex. Пожалуйста, выключите на время coinstatsindex, пока используется -reindex-chainstate, либо замените -reindex-chainstate на -reindex для полной перестройки всех индексов.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Опция -reindex-chainstate не совместима с -txindex. Пожалуйста, выключите на время txindex, пока используется -reindex-chainstate, либо замените -reindex-chainstate на -reindex для полной перестройки всех индексов.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Не удаётся предоставить определённые соединения, чтобы при этом addrman нашёл в них исходящие соединения.</translation>
</message>
@@ -4349,6 +4388,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Ошибка загрузки %s: не удалось загрузить кошелёк с внешней подписью, так как эта версия программы собрана без поддержки внешней подписи</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Ошибка при чтении %s! Все ключи прочитаны правильно, но данные транзакции или метаданные адреса могут отсутствовать или быть неверными.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Ошибка: адресная книга в кошельке не принадлежит к мигрируемым кошелькам</translation>
</message>
@@ -4361,14 +4404,26 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Ошибка: транзакция %s не принадлежит к мигрируемым кошелькам</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Не удалось рассчитать комиссионные за бамп, поскольку неподтвержденные UTXO зависят от огромного скопления неподтвержденных транзакций.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Не удалось переименовать файл peers.dat. Пожалуйста, переместите или удалите его и попробуйте снова.</translation>
</message>
<message>
+ <source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
+ <translation type="unfinished">Оценка вознаграждения не удалась. Fallbackfee отключен. Подождите несколько блоков или включите %s.</translation>
+ </message>
+ <message>
<source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
<translation type="unfinished">Несовместимые ключи: был явно указан -dnsseed=1, но -onlynet не разрешены соединения через IPv4/IPv6</translation>
</message>
<message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
+ <translation type="unfinished">Неверная сумма для %s=&lt;amount&gt;: '%s' (должна быть не менее минимальной комиссии %s, чтобы предотвратить застревание транзакций)</translation>
+ </message>
+ <message>
<source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
<translation type="unfinished">Исходящие соединения ограничены сетью CJDNS (-onlynet=cjdns), но -cjdnsreachable не задан</translation>
</message>
@@ -4386,7 +4441,23 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet's UTXOs</source>
- <translation type="unfinished">Размер входов превысил максимальный вес. Пожалуйста, попробуйте отправить меньшую сумму или объедините UTXO в вашем кошельке вручную.</translation>
+ <translation type="unfinished">Размер входов превысил максимальный вес. Пожалуйста, попробуйте отправить меньшую сумму или объедините UTXO в вашем кошельке вручную</translation>
+ </message>
+ <message>
+ <source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
+ <translation type="unfinished">Общая сумма предварительно выбранных монет не покрывает цель транзакции. Пожалуйста, разрешите автоматический выбор других входов или включите больше монет вручную</translation>
+ </message>
+ <message>
+ <source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
+ <translation type="unfinished">Для транзакции требуется одно место назначения с не-0 значением, не-0 feerate или предварительно выбранный вход</translation>
+ </message>
+ <message>
+ <source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
+ <translation type="unfinished">Снимок UTXO не прошел проверку. Перезапустите, чтобы возобновить нормальную загрузку начального блока, или попробуйте загрузить другой снимок.</translation>
+ </message>
+ <message>
+ <source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
+ <translation type="unfinished">Неподтвержденные UTXO доступны, но их расходование создает цепочку транзакций, которые будут отклонены мемпулом</translation>
</message>
<message>
<source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
@@ -4411,10 +4482,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Неподдерживаемый уровень подробности журнала для категории -loglevel=%s. Ожидалось -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Доступные категории: %s. Доступные уровни подробности журнала: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4536,7 +4603,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Dumpfile checksum does not match. Computed %s, expected %s</source>
- <translation type="unfinished">Ошибка: контрольные суммы дамп-файла не совпадают. Вычислено %s, ожидалось %s.</translation>
+ <translation type="unfinished">Ошибка: контрольные суммы дамп-файла не совпадают. Вычислено %s, ожидалось %s</translation>
</message>
<message>
<source>Error: Failed to create new watchonly wallet</source>
@@ -4607,6 +4674,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">Не удалось пересканировать кошелёк во время инициализации</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Не удалось запустить индексы, завершение работы...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Не удалось проверить базу данных</translation>
</message>
@@ -4679,6 +4750,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">Неверный порт указан в %s: '%s'</translation>
</message>
<message>
+ <source>Invalid pre-selected input %s</source>
+ <translation type="unfinished">Недопустимый предварительно выбранный ввод %s</translation>
+ </message>
+ <message>
<source>Listening for incoming connections failed (listen returned error %s)</source>
<translation type="unfinished">Ошибка при прослушивании входящих подключений (%s)</translation>
</message>
@@ -4719,6 +4794,14 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">Недостаточно доступных файловых дескрипторов.</translation>
</message>
<message>
+ <source>Not found pre-selected input %s</source>
+ <translation type="unfinished">Не найден предварительно выбранный ввод %s</translation>
+ </message>
+ <message>
+ <source>Not solvable pre-selected input %s</source>
+ <translation type="unfinished">Не решаемый заранее выбранный ввод %s</translation>
+ </message>
+ <message>
<source>Prune cannot be configured with a negative value.</source>
<translation type="unfinished">Обрезка блоков не может использовать отрицательное значение.</translation>
</message>
@@ -4812,11 +4895,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>This is the minimum transaction fee you pay on every transaction.</source>
- <translation type="unfinished">Это минимальная комиссия, которую вы платите для любой транзакции</translation>
+ <translation type="unfinished">Это минимальная комиссия, которую вы платите для любой транзакции.</translation>
</message>
<message>
<source>This is the transaction fee you will pay if you send a transaction.</source>
- <translation type="unfinished">Это размер комиссии, которую вы заплатите при отправке транзакции</translation>
+ <translation type="unfinished">Это размер комиссии, которую вы заплатите при отправке транзакции.</translation>
</message>
<message>
<source>Transaction amount too small</source>
@@ -4911,8 +4994,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">В силу вступили неизвестные правила (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Неподдерживаемый уровень подробности ведения журнала -loglevel=%s. Доступные значения: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Неподдерживаемый уровень глобального протоколирования %s=%s. Допустимые значения: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates не поддерживается в цепочке %s.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_ru_RU.ts b/src/qt/locale/bitcoin_ru_RU.ts
new file mode 100644
index 0000000000..e46fe34622
--- /dev/null
+++ b/src/qt/locale/bitcoin_ru_RU.ts
@@ -0,0 +1,4858 @@
+<TS version="2.1" language="ru_RU">
+<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Right-click to edit address or label</source>
+ <translation type="unfinished">Щелкните правой кнопкой мыши, чтобы отредактировать адрес или этикетку</translation>
+ </message>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">Создать новый адрес</translation>
+ </message>
+ <message>
+ <source>&amp;New</source>
+ <translation type="unfinished">&amp;Новый</translation>
+ </message>
+ <message>
+ <source>Copy the currently selected address to the system clipboard</source>
+ <translation type="unfinished">Копирование выбранного адреса в системный буфер обмена</translation>
+ </message>
+ <message>
+ <source>&amp;Copy</source>
+ <translation type="unfinished">&amp;Копировать</translation>
+ </message>
+ <message>
+ <source>C&amp;lose</source>
+ <translation type="unfinished">За&amp;крыть</translation>
+ </message>
+ <message>
+ <source>Delete the currently selected address from the list</source>
+ <translation type="unfinished">Удаление текущего выбранного адреса из списка</translation>
+ </message>
+ <message>
+ <source>Enter address or label to search</source>
+ <translation type="unfinished">Введите адрес или метку для поиска</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Экспорт данных на текущей вкладке в файл</translation>
+ </message>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Экспорт</translation>
+ </message>
+ <message>
+ <source>&amp;Delete</source>
+ <translation type="unfinished">&amp;Удалить</translation>
+ </message>
+ <message>
+ <source>Choose the address to send coins to</source>
+ <translation type="unfinished">Выберите адрес, на который нужно отправить монеты</translation>
+ </message>
+ <message>
+ <source>Choose the address to receive coins with</source>
+ <translation type="unfinished">Выберите адрес, по которому вы будете получать монеты</translation>
+ </message>
+ <message>
+ <source>C&amp;hoose</source>
+ <translation type="unfinished">Гусь</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
+ <translation type="unfinished">Это ваши Bitcoin-адреса для отправки платежей. Всегда проверяйте сумму и адрес получателя перед отправкой монет.</translation>
+ </message>
+ <message>
+ <source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
+Signing is only possible with addresses of the type 'legacy'.</source>
+ <translation type="unfinished">Это ваши адреса Bitcoin для получения платежей. Для создания новых адресов используйте кнопку "Создать новый адрес получения" на вкладке "Получение".
+Подписание возможно только для адресов типа "legacy".</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Address</source>
+ <translation type="unfinished">&amp;Копия адреса</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Label</source>
+ <translation type="unfinished">Копировать &amp;Label</translation>
+ </message>
+ <message>
+ <source>&amp;Edit</source>
+ <translation type="unfinished">&amp;Редактировать</translation>
+ </message>
+ <message>
+ <source>Export Address List</source>
+ <translation type="unfinished">Экспорт списка адресов</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Файл, разделенный запятыми</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">При попытке сохранить список адресов в %1 произошла ошибка. Пожалуйста, попробуйте еще раз.</translation>
+ </message>
+ <message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Адреса отправки - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Получение адресов - %1</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Ошибка экспорта</translation>
+ </message>
+</context>
+<context>
+ <name>AddressTableModel</name>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Метка</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Адрес</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без ярлыка)</translation>
+ </message>
+</context>
+<context>
+ <name>AskPassphraseDialog</name>
+ <message>
+ <source>Passphrase Dialog</source>
+ <translation type="unfinished">Диалог парольной фразы</translation>
+ </message>
+ <message>
+ <source>Enter passphrase</source>
+ <translation type="unfinished">Введите парольную фразу</translation>
+ </message>
+ <message>
+ <source>New passphrase</source>
+ <translation type="unfinished">Новая парольная фраза</translation>
+ </message>
+ <message>
+ <source>Repeat new passphrase</source>
+ <translation type="unfinished">Повторите новую кодовую фразу</translation>
+ </message>
+ <message>
+ <source>Show passphrase</source>
+ <translation type="unfinished">Показать парольную фразу</translation>
+ </message>
+ <message>
+ <source>Encrypt wallet</source>
+ <translation type="unfinished">Зашифровать кошелек</translation>
+ </message>
+ <message>
+ <source>This operation needs your wallet passphrase to unlock the wallet.</source>
+ <translation type="unfinished">Для разблокировки кошелька требуется парольная фраза вашего кошелька.</translation>
+ </message>
+ <message>
+ <source>Unlock wallet</source>
+ <translation type="unfinished">Разблокировать кошелек</translation>
+ </message>
+ <message>
+ <source>Change passphrase</source>
+ <translation type="unfinished">Изменение парольной фразы</translation>
+ </message>
+ <message>
+ <source>Confirm wallet encryption</source>
+ <translation type="unfinished">Подтвердите шифрование кошелька</translation>
+ </message>
+ <message>
+ <source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
+ <translation type="unfinished">Предупреждение: Если вы зашифруете свой кошелек и потеряете кодовую фразу, вы &lt;b&gt;потеряете все свои биткоины&lt;/b&gt;!</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to encrypt your wallet?</source>
+ <translation type="unfinished">Вы уверены, что хотите зашифровать свой кошелек?</translation>
+ </message>
+ <message>
+ <source>Wallet encrypted</source>
+ <translation type="unfinished">Кошелек зашифрован</translation>
+ </message>
+ <message>
+ <source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
+ <translation type="unfinished">Введите новую парольную фразу для кошелька.&lt;br/&gt;Пожалуйста, используйте парольную фразу из &lt;b&gt;десяти или более случайных символов&lt;/b&gt; или &lt;b&gt;восьми или более слов&lt;/b&gt;.</translation>
+ </message>
+ <message>
+ <source>Enter the old passphrase and new passphrase for the wallet.</source>
+ <translation type="unfinished">Введите старую и новую парольные фразы для кошелька.</translation>
+ </message>
+ <message>
+ <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
+ <translation type="unfinished">Помните, что шифрование кошелька не может полностью защитить ваши биткоины от кражи вредоносным ПО, заразившим ваш компьютер.</translation>
+ </message>
+ <message>
+ <source>Wallet to be encrypted</source>
+ <translation type="unfinished">Кошелек для шифрования</translation>
+ </message>
+ <message>
+ <source>Your wallet is about to be encrypted. </source>
+ <translation type="unfinished">Ваш кошелёк будет зашифрован. </translation>
+ </message>
+ <message>
+ <source>Your wallet is now encrypted. </source>
+ <translation type="unfinished">Сейчас ваш кошелёк зашифрован. </translation>
+ </message>
+ <message>
+ <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
+ <translation type="unfinished">ВАЖНО: Все предыдущие резервные копии файла кошелька должны быть заменены новым зашифрованным файлом кошелька. В целях безопасности предыдущие резервные копии незашифрованного файла кошелька станут бесполезными, как только вы начнете использовать новый, зашифрованный кошелек.</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed</source>
+ <translation type="unfinished">Шифрование кошелька не удалось</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
+ <translation type="unfinished">Шифрование кошелька не удалось из-за внутренней ошибки. Ваш кошелек не был зашифрован.</translation>
+ </message>
+ <message>
+ <source>The supplied passphrases do not match.</source>
+ <translation type="unfinished">Введенные пароли не совпадают.</translation>
+ </message>
+ <message>
+ <source>Wallet unlock failed</source>
+ <translation type="unfinished">Не удалось разблокировать кошелек</translation>
+ </message>
+ <message>
+ <source>The passphrase entered for the wallet decryption was incorrect.</source>
+ <translation type="unfinished">Введена неверная парольная фраза для расшифровки кошелька.</translation>
+ </message>
+ <message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">Введенная для расшифровки кошелька парольная фраза неверна. Она содержит нулевой символ (то есть нулевой байт). Если парольная фраза была задана в версии программы до 25.0, попробуйте ввести только символы до первого нулевого символа, но не включая его. Если это удалось, задайте новую кодовую фразу, чтобы избежать этой проблемы в будущем.</translation>
+ </message>
+ <message>
+ <source>Wallet passphrase was successfully changed.</source>
+ <translation type="unfinished">Пароль кошелька успешно изменен.</translation>
+ </message>
+ <message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Не удалось изменить парольную фразу</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">Старая парольная фраза, введенная для расшифровки кошелька, неверна. Она содержит нулевой символ (то есть нулевой байт). Если парольная фраза была задана в версии программы, предшествующей 25.0, повторите попытку, используя только символы до первого нулевого символа, но не включая его.</translation>
+ </message>
+ <message>
+ <source>Warning: The Caps Lock key is on!</source>
+ <translation type="unfinished">Внимание: Клавиша Caps Lock включена!</translation>
+ </message>
+</context>
+<context>
+ <name>BanTableModel</name>
+ <message>
+ <source>Banned Until</source>
+ <translation type="unfinished">Запрещено до</translation>
+ </message>
+</context>
+<context>
+ <name>BitcoinApplication</name>
+ <message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">Файл настроек %1 может быть поврежден или недействителен.</translation>
+ </message>
+ <message>
+ <source>Runaway exception</source>
+ <translation type="unfinished">Исключение из правил</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
+ <translation type="unfinished">Произошла критическая ошибка. %1 больше не может продолжать безопасную работу и будет закрыт.</translation>
+ </message>
+ <message>
+ <source>Internal error</source>
+ <translation type="unfinished">Неизвестная ошибка</translation>
+ </message>
+ <message>
+ <source>An internal error occurred. %1 will attempt to continue safely. This is an unexpected bug which can be reported as described below.</source>
+ <translation type="unfinished">Произошла внутренняя ошибка. %1 попытается продолжить работу в безопасном режиме. Это неожиданная ошибка, о которой можно сообщить, как описано ниже.</translation>
+ </message>
+</context>
+<context>
+ <name>QObject</name>
+ <message>
+ <source>Do you want to reset settings to default values, or to abort without making changes?</source>
+ <extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
+ <translation type="unfinished">Вы хотите сбросить настройки до значений по умолчанию или прервать процесс без внесения изменений?</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
+ <extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
+ <translation type="unfinished">Произошла фатальная ошибка. Проверьте, что файл настроек доступен для записи, или попробуйте запустить его с параметром -nosettings.</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Ошибка: %1</translation>
+ </message>
+ <message>
+ <source>%1 didn't yet exit safely…</source>
+ <translation type="unfinished">%1 dпока не удается выйти безопасно…</translation>
+ </message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">неизвестно</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Сумма</translation>
+ </message>
+ <message>
+ <source>Enter a Bitcoin address (e.g. %1)</source>
+ <translation type="unfinished">Введите адрес Bitcoin (например, %1)</translation>
+ </message>
+ <message>
+ <source>Unroutable</source>
+ <translation type="unfinished">Непроходимый</translation>
+ </message>
+ <message>
+ <source>Onion</source>
+ <comment>network name</comment>
+ <extracomment>Name of Tor network in peer info</extracomment>
+ <translation type="unfinished">Лук</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</extracomment>
+ <translation type="unfinished">Входящие</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An outbound connection to a peer. An outbound connection is a connection initiated by us.</extracomment>
+ <translation type="unfinished">Исходящие</translation>
+ </message>
+ <message>
+ <source>Full Relay</source>
+ <extracomment>Peer connection type that relays all network information.</extracomment>
+ <translation type="unfinished">Полная эстафета</translation>
+ </message>
+ <message>
+ <source>Block Relay</source>
+ <extracomment>Peer connection type that relays network information about blocks and not transactions or addresses.</extracomment>
+ <translation type="unfinished">Блочное реле</translation>
+ </message>
+ <message>
+ <source>Manual</source>
+ <extracomment>Peer connection type established manually through one of several methods.</extracomment>
+ <translation type="unfinished">Руководство</translation>
+ </message>
+ <message>
+ <source>Address Fetch</source>
+ <extracomment>Short-lived peer connection type that solicits known addresses from a peer.</extracomment>
+ <translation type="unfinished">Выборка адреса</translation>
+ </message>
+ <message>
+ <source>None</source>
+ <translation type="unfinished">Нет</translation>
+ </message>
+ <message>
+ <source>N/A</source>
+ <translation type="unfinished">Н/Д</translation>
+ </message>
+ <message>
+ <source>%1 ms</source>
+ <translation type="unfinished">%1 мс</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n секунда(ы)</numerusform>
+ <numerusform>%n секунда(ы)</numerusform>
+ <numerusform>%n секунда(ы)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n минута(ы)</numerusform>
+ <numerusform>%n минута(ы)</numerusform>
+ <numerusform>%n минута(ы)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n час(ы)</numerusform>
+ <numerusform>%n час(ы)</numerusform>
+ <numerusform>%n час(ы)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n день(ы)</numerusform>
+ <numerusform>%n день(ы)</numerusform>
+ <numerusform>%n день(ы)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n week(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n неделя(ы)</numerusform>
+ <numerusform>%n неделя(ы)</numerusform>
+ <numerusform>%n неделя(ы)</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>%1 and %2</source>
+ <translation type="unfinished">%1 и %2</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n year(s)</source>
+ <translation type="unfinished">
+ <numerusform>%n год(ы)</numerusform>
+ <numerusform>%n год(ы)</numerusform>
+ <numerusform>%n год(ы)</numerusform>
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinGUI</name>
+ <message>
+ <source>&amp;Overview</source>
+ <translation type="unfinished">&amp;Обзор</translation>
+ </message>
+ <message>
+ <source>Show general overview of wallet</source>
+ <translation type="unfinished">Показать общий обзор кошелька</translation>
+ </message>
+ <message>
+ <source>Browse transaction history</source>
+ <translation type="unfinished">Просмотр истории транзакций</translation>
+ </message>
+ <message>
+ <source>E&amp;xit</source>
+ <translation type="unfinished">В&amp;ыход</translation>
+ </message>
+ <message>
+ <source>Quit application</source>
+ <translation type="unfinished">Выйти из приложения</translation>
+ </message>
+ <message>
+ <source>&amp;About %1</source>
+ <translation type="unfinished">&amp;О %1</translation>
+ </message>
+ <message>
+ <source>Show information about %1</source>
+ <translation type="unfinished">Показать информацию о %1</translation>
+ </message>
+ <message>
+ <source>About &amp;Qt</source>
+ <translation type="unfinished">О компании &amp;Qt</translation>
+ </message>
+ <message>
+ <source>Show information about Qt</source>
+ <translation type="unfinished">Показать информацию о Qt</translation>
+ </message>
+ <message>
+ <source>Modify configuration options for %1</source>
+ <translation type="unfinished">Изменение параметров конфигурации для %1</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Создайте новый кошелек</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Кошелек:</translation>
+ </message>
+ <message>
+ <source>Network activity disabled.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">Сетевая активность отключена.</translation>
+ </message>
+ <message>
+ <source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
+ <translation type="unfinished">Прокси &lt;b&gt;включен&lt;/b&gt;: %1</translation>
+ </message>
+ <message>
+ <source>Send coins to a Bitcoin address</source>
+ <translation type="unfinished">Отправляйте монеты на адрес Bitcoin</translation>
+ </message>
+ <message>
+ <source>Backup wallet to another location</source>
+ <translation type="unfinished">Резервное копирование кошелька в другое место</translation>
+ </message>
+ <message>
+ <source>Change the passphrase used for wallet encryption</source>
+ <translation type="unfinished">Измените парольную фразу, используемую для шифрования кошелька</translation>
+ </message>
+ <message>
+ <source>&amp;Send</source>
+ <translation type="unfinished">Отправить</translation>
+ </message>
+ <message>
+ <source>&amp;Options…</source>
+ <translation type="unfinished">&amp;Параметры…</translation>
+ </message>
+ <message>
+ <source>&amp;Encrypt Wallet…</source>
+ <translation type="unfinished">&amp;Зашифровать Кошелёк…</translation>
+ </message>
+ <message>
+ <source>Encrypt the private keys that belong to your wallet</source>
+ <translation type="unfinished">Шифруйте закрытые ключи, принадлежащие вашему кошельку</translation>
+ </message>
+ <message>
+ <source>&amp;Backup Wallet…</source>
+ <translation type="unfinished">&amp;Создать резервную копию кошелька…</translation>
+ </message>
+ <message>
+ <source>&amp;Change Passphrase…</source>
+ <translation type="unfinished">&amp;Изменить пароль…</translation>
+ </message>
+ <message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">Подписать &amp;сообщение…</translation>
+ </message>
+ <message>
+ <source>Sign messages with your Bitcoin addresses to prove you own them</source>
+ <translation type="unfinished">Подписывайте сообщения своими адресами биткойнов, чтобы доказать, что они вам принадлежат</translation>
+ </message>
+ <message>
+ <source>&amp;Verify message…</source>
+ <translation type="unfinished">&amp;Проверить сообщение…</translation>
+ </message>
+ <message>
+ <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
+ <translation type="unfinished">Проверка сообщений на предмет того, что они были подписаны указанными адресами Bitcoin</translation>
+ </message>
+ <message>
+ <source>&amp;Load PSBT from file…</source>
+ <translation type="unfinished">&amp;Загрузить PSBT из файла…</translation>
+ </message>
+ <message>
+ <source>Open &amp;URI…</source>
+ <translation type="unfinished">Открыть &amp;URI…</translation>
+ </message>
+ <message>
+ <source>Close Wallet…</source>
+ <translation type="unfinished">Закрыть кошелёк…</translation>
+ </message>
+ <message>
+ <source>Create Wallet…</source>
+ <translation type="unfinished">Создать кошелёк…</translation>
+ </message>
+ <message>
+ <source>Close All Wallets…</source>
+ <translation type="unfinished">Закрыть все кошельки…</translation>
+ </message>
+ <message>
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Файл</translation>
+ </message>
+ <message>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Настройки</translation>
+ </message>
+ <message>
+ <source>&amp;Help</source>
+ <translation type="unfinished">&amp;Помощь</translation>
+ </message>
+ <message>
+ <source>Tabs toolbar</source>
+ <translation type="unfinished">Панель инструментов "Вкладки</translation>
+ </message>
+ <message>
+ <source>Syncing Headers (%1%)…</source>
+ <translation type="unfinished">Синхронизация заголовков (%1%)…</translation>
+ </message>
+ <message>
+ <source>Synchronizing with network…</source>
+ <translation type="unfinished">Синхронизация с сетью…</translation>
+ </message>
+ <message>
+ <source>Indexing blocks on disk…</source>
+ <translation type="unfinished">Индексация блоков на диске…</translation>
+ </message>
+ <message>
+ <source>Processing blocks on disk…</source>
+ <translation type="unfinished">Обработка блоков на диске…</translation>
+ </message>
+ <message>
+ <source>Connecting to peers…</source>
+ <translation type="unfinished">Подключение к узлам…</translation>
+ </message>
+ <message>
+ <source>Request payments (generates QR codes and bitcoin: URIs)</source>
+ <translation type="unfinished">Запрос платежей (генерирует QR-коды и bitcoin: URI)</translation>
+ </message>
+ <message>
+ <source>Show the list of used sending addresses and labels</source>
+ <translation type="unfinished">Показать список используемых адресов отправки и этикеток</translation>
+ </message>
+ <message>
+ <source>Show the list of used receiving addresses and labels</source>
+ <translation type="unfinished">Показать список используемых адресов получения и этикеток</translation>
+ </message>
+ <message>
+ <source>&amp;Command-line options</source>
+ <translation type="unfinished">&amp;Опции командной строки</translation>
+ </message>
+ <message numerus="yes">
+ <source>Processed %n block(s) of transaction history.</source>
+ <translation type="unfinished">
+ <numerusform>Обработано %n блок(ов) истории транзакций.</numerusform>
+ <numerusform>Обработано %n блок(ов) истории транзакций.</numerusform>
+ <numerusform>Обработано %n блок(ов) истории транзакций.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Catching up…</source>
+ <translation type="unfinished">Синхронизация…</translation>
+ </message>
+ <message>
+ <source>Last received block was generated %1 ago.</source>
+ <translation type="unfinished">Последний полученный блок был сгенерирован %1 назад.</translation>
+ </message>
+ <message>
+ <source>Transactions after this will not yet be visible.</source>
+ <translation type="unfinished">Транзакции после этого еще не будут видны.</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Ошибка</translation>
+ </message>
+ <message>
+ <source>Warning</source>
+ <translation type="unfinished">Предупреждение</translation>
+ </message>
+ <message>
+ <source>Information</source>
+ <translation type="unfinished">Информация</translation>
+ </message>
+ <message>
+ <source>Up to date</source>
+ <translation type="unfinished">Обновлено</translation>
+ </message>
+ <message>
+ <source>Load Partially Signed Bitcoin Transaction</source>
+ <translation type="unfinished">Загрузка частично подписанной транзакции биткойна</translation>
+ </message>
+ <message>
+ <source>Load PSBT from &amp;clipboard…</source>
+ <translation type="unfinished">Загрузить PSBT из &amp;буфера обмена…</translation>
+ </message>
+ <message>
+ <source>Load Partially Signed Bitcoin Transaction from clipboard</source>
+ <translation type="unfinished">Загрузка частично подписанной транзакции Bitcoin из буфера обмена</translation>
+ </message>
+ <message>
+ <source>Node window</source>
+ <translation type="unfinished">Окно узла</translation>
+ </message>
+ <message>
+ <source>Open node debugging and diagnostic console</source>
+ <translation type="unfinished">Откройте консоль отладки и диагностики узла</translation>
+ </message>
+ <message>
+ <source>&amp;Sending addresses</source>
+ <translation type="unfinished">&amp;Адреса отправки</translation>
+ </message>
+ <message>
+ <source>&amp;Receiving addresses</source>
+ <translation type="unfinished">&amp;Адреса приема</translation>
+ </message>
+ <message>
+ <source>Open a bitcoin: URI</source>
+ <translation type="unfinished">Открыть биткойн: URI</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <translation type="unfinished">Открытый кошелек</translation>
+ </message>
+ <message>
+ <source>Open a wallet</source>
+ <translation type="unfinished">Откройте кошелек</translation>
+ </message>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Закрыть кошелек</translation>
+ </message>
+ <message>
+ <source>Restore Wallet…</source>
+ <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
+ <translation type="unfinished">Восстановить кошелек…</translation>
+ </message>
+ <message>
+ <source>Restore a wallet from a backup file</source>
+ <extracomment>Status tip for Restore Wallet menu item</extracomment>
+ <translation type="unfinished">Восстановление кошелька из файла резервной копии</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Закройте все кошельки</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Перенести Кошелек</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Перенос кошелька</translation>
+ </message>
+ <message>
+ <source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
+ <translation type="unfinished">Покажите сообщение справки %1, чтобы получить список возможных опций командной строки Bitcoin</translation>
+ </message>
+ <message>
+ <source>&amp;Mask values</source>
+ <translation type="unfinished">значения &amp;Mask</translation>
+ </message>
+ <message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Замаскируйте значения на вкладке Обзор</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">основной кошелёк</translation>
+ </message>
+ <message>
+ <source>No wallets available</source>
+ <translation type="unfinished">Кошельки отсутствуют</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Данные кошелька</translation>
+ </message>
+ <message>
+ <source>Load Wallet Backup</source>
+ <extracomment>The title for Restore Wallet File Windows</extracomment>
+ <translation type="unfinished">Загрузка резервной копии кошелька</translation>
+ </message>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">Восстановить кошелек</translation>
+ </message>
+ <message>
+ <source>Wallet Name</source>
+ <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
+ <translation type="unfinished">Имя кошелька</translation>
+ </message>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;Окно</translation>
+ </message>
+ <message>
+ <source>Zoom</source>
+ <translation type="unfinished">Увеличить</translation>
+ </message>
+ <message>
+ <source>Main Window</source>
+ <translation type="unfinished">Главное окно</translation>
+ </message>
+ <message>
+ <source>&amp;Hide</source>
+ <translation type="unfinished">Скрыть все группы</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n active connection(s) to Bitcoin network.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">
+ <numerusform>%n активное соединение(я) с сетью Bitcoin.</numerusform>
+ <numerusform>%n активное соединение(я) с сетью Bitcoin.</numerusform>
+ <numerusform>%n активное соединение(я) с сетью Bitcoin.</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Click for more actions.</source>
+ <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
+ <translation type="unfinished">Нажмите, чтобы узнать о дальнейших действиях.</translation>
+ </message>
+ <message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">Вкладка "Показать коллег</translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">Отключить сетевую активность</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">Включить сетевую активность</translation>
+ </message>
+ <message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">Предварительная синхронизация заголовков (%1%)…</translation>
+ </message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Ошибка при создании кошелька</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Невозможно создать новый кошелек, программа была скомпилирована без поддержки sqlite (требуется для дескрипторных кошельков)</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Ошибка: %1</translation>
+ </message>
+ <message>
+ <source>Warning: %1</source>
+ <translation type="unfinished">Предупреждение: %1</translation>
+ </message>
+ <message>
+ <source>Date: %1
+</source>
+ <translation type="unfinished">Дата: %1
+</translation>
+ </message>
+ <message>
+ <source>Amount: %1
+</source>
+ <translation type="unfinished">Сумма: %1
+</translation>
+ </message>
+ <message>
+ <source>Wallet: %1
+</source>
+ <translation type="unfinished">Кошелек: %1
+</translation>
+ </message>
+ <message>
+ <source>Type: %1
+</source>
+ <translation type="unfinished">Тип: %1
+</translation>
+ </message>
+ <message>
+ <source>Label: %1
+</source>
+ <translation type="unfinished">Ярлык: %1
+</translation>
+ </message>
+ <message>
+ <source>Address: %1
+</source>
+ <translation type="unfinished">Адрес: %1
+</translation>
+ </message>
+ <message>
+ <source>Sent transaction</source>
+ <translation type="unfinished">Отправленная транзакция</translation>
+ </message>
+ <message>
+ <source>Incoming transaction</source>
+ <translation type="unfinished">Входящая транзакция</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
+ <translation type="unfinished">Генерация ключей HD &lt;b&gt;включена&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">Генерация ключей HD &lt;b&gt;отключена&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">Закрытый ключ &lt;b&gt;отключен&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
+ <translation type="unfinished">Кошелек &lt;b&gt;зашифрован&lt;/b&gt; и в настоящее время &lt;b&gt;разблокирован&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;locked&lt;/b&gt;</source>
+ <translation type="unfinished">Кошелек &lt;b&gt;зашифрован&lt;/b&gt; и в настоящее время &lt;b&gt;заблокирован&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Original message:</source>
+ <translation type="unfinished">Оригинальное сообщение:</translation>
+ </message>
+</context>
+<context>
+ <name>UnitDisplayStatusBarControl</name>
+ <message>
+ <source>Unit to show amounts in. Click to select another unit.</source>
+ <translation type="unfinished">Единица измерения, в которой будут отображаться суммы. Нажмите, чтобы выбрать другую единицу измерения.</translation>
+ </message>
+</context>
+<context>
+ <name>CoinControlDialog</name>
+ <message>
+ <source>Coin Selection</source>
+ <translation type="unfinished">Выбор монеты</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Количество:</translation>
+ </message>
+ <message>
+ <source>Bytes:</source>
+ <translation type="unfinished">Байты:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Сумма:</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">Стоимость:</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">После оплаты:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">Изменить:</translation>
+ </message>
+ <message>
+ <source>(un)select all</source>
+ <translation type="unfinished">(Не)выбрать все</translation>
+ </message>
+ <message>
+ <source>Tree mode</source>
+ <translation type="unfinished">Режим дерева</translation>
+ </message>
+ <message>
+ <source>List mode</source>
+ <translation type="unfinished">Режим списка</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Сумма</translation>
+ </message>
+ <message>
+ <source>Received with label</source>
+ <translation type="unfinished">Получено с этикеткой</translation>
+ </message>
+ <message>
+ <source>Received with address</source>
+ <translation type="unfinished">Получено с адресом</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Дата</translation>
+ </message>
+ <message>
+ <source>Confirmations</source>
+ <translation type="unfinished">Подтверждения</translation>
+ </message>
+ <message>
+ <source>Confirmed</source>
+ <translation type="unfinished">Подтверждено</translation>
+ </message>
+ <message>
+ <source>Copy amount</source>
+ <translation type="unfinished">Количество копий</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Копировать адрес</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">Копия и этикетка</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">Копия &amp;amount</translation>
+ </message>
+ <message>
+ <source>Copy transaction &amp;ID and output index</source>
+ <translation type="unfinished">Копирование &amp;ID транзакции и выходного индекса</translation>
+ </message>
+ <message>
+ <source>L&amp;ock unspent</source>
+ <translation type="unfinished">L&amp;ock неиспользованный</translation>
+ </message>
+ <message>
+ <source>Copy quantity</source>
+ <translation type="unfinished">Количество копий</translation>
+ </message>
+ <message>
+ <source>Copy fee</source>
+ <translation type="unfinished">Плата за копирование</translation>
+ </message>
+ <message>
+ <source>Copy after fee</source>
+ <translation type="unfinished">Копия после оплаты</translation>
+ </message>
+ <message>
+ <source>Copy bytes</source>
+ <translation type="unfinished">Копирование байтов</translation>
+ </message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">Копирование изменений</translation>
+ </message>
+ <message>
+ <source>(%1 locked)</source>
+ <translation type="unfinished">(%1 заблокирован)</translation>
+ </message>
+ <message>
+ <source>Can vary +/- %1 satoshi(s) per input.</source>
+ <translation type="unfinished">Может варьироваться +/- %1 sатоши(ы) на каждый вход.</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без ярлыка)</translation>
+ </message>
+ <message>
+ <source>change from %1 (%2)</source>
+ <translation type="unfinished">изменение с %1 (%2)</translation>
+ </message>
+ <message>
+ <source>(change)</source>
+ <translation type="unfinished">(изменение)</translation>
+ </message>
+</context>
+<context>
+ <name>CreateWalletActivity</name>
+ <message>
+ <source>Create Wallet</source>
+ <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
+ <translation type="unfinished">Создать кошелек</translation>
+ </message>
+ <message>
+ <source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the create wallet progress window which indicates to the user which wallet is currently being created.</extracomment>
+ <translation type="unfinished">Создание кошелька &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>Create wallet failed</source>
+ <translation type="unfinished">Не удалось создать кошелек</translation>
+ </message>
+ <message>
+ <source>Create wallet warning</source>
+ <translation type="unfinished">Создать предупреждение о кошельке</translation>
+ </message>
+ <message>
+ <source>Can't list signers</source>
+ <translation type="unfinished">Не могу перечислить подписавших</translation>
+ </message>
+ <message>
+ <source>Too many external signers found</source>
+ <translation type="unfinished">Найдено слишком много внешних подписчиков</translation>
+ </message>
+</context>
+<context>
+ <name>LoadWalletsActivity</name>
+ <message>
+ <source>Load Wallets</source>
+ <extracomment>Title of progress window which is displayed when wallets are being loaded.</extracomment>
+ <translation type="unfinished">Загрузить кошельки</translation>
+ </message>
+ <message>
+ <source>Loading wallets…</source>
+ <extracomment>Descriptive text of the load wallets progress window which indicates to the user that wallets are currently being loaded.</extracomment>
+ <translation type="unfinished">Загрузка кошельков…</translation>
+ </message>
+</context>
+<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Перенести кошелек</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Вы уверены, что хотите перенести кошелек &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">Миграция кошелька преобразует его в один или несколько дескрипторных кошельков. Необходимо будет создать резервную копию нового кошелька.
+Если этот кошелек содержит скрипты, за которыми можно следить, будет создан новый кошелек, содержащий эти скрипты, за которыми можно следить.
+Если этот кошелек содержит решаемые, но не наблюдаемые скрипты, будет создан другой, новый кошелек, содержащий эти скрипты.
+
+В процессе миграции будет создана резервная копия кошелька перед миграцией. Этот файл резервной копии будет иметь имя &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak и будет находиться в директории этого кошелька. В случае некорректной миграции резервная копия может быть восстановлена с помощью функции "Восстановить кошелек".</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Перенести Кошелек</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Перенос кошелька &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Кошелек '%1' был успешно перенесён.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Скрипты Watchonly были перенесены на новый кошелек под названием '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Решаемые, но не наблюдаемые сценарии были перенесены на новый кошелек под названием '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Перенос не удался</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Миграция успешно завершена</translation>
+ </message>
+</context>
+<context>
+ <name>OpenWalletActivity</name>
+ <message>
+ <source>Open wallet failed</source>
+ <translation type="unfinished">Не удалось открыть кошелёк</translation>
+ </message>
+ <message>
+ <source>Open wallet warning</source>
+ <translation type="unfinished">Предупреждение об открытом кошельке</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">основной кошелёк</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
+ <translation type="unfinished">Открытый кошелек</translation>
+ </message>
+ <message>
+ <source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
+ <translation type="unfinished">Открывается кошелёк &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+</context>
+<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">Восстановить кошелек</translation>
+ </message>
+ <message>
+ <source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
+ <translation type="unfinished">Восстановление кошелька &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>Restore wallet failed</source>
+ <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
+ <translation type="unfinished">Восстановление кошелька не удалось</translation>
+ </message>
+ <message>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">Предупреждение о восстановлении кошелька</translation>
+ </message>
+ <message>
+ <source>Restore wallet message</source>
+ <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
+ <translation type="unfinished">Восстановить сообщение кошелька</translation>
+ </message>
+</context>
+<context>
+ <name>WalletController</name>
+ <message>
+ <source>Close wallet</source>
+ <translation type="unfinished">Закрыть кошелек</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Вы уверены, что хотите закрыть кошелек &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
+ <translation type="unfinished">Слишком долгое закрытие кошелька может привести к необходимости повторной синхронизации всей цепочки, если обрезка включена.</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Закройте все кошельки</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to close all wallets?</source>
+ <translation type="unfinished">Вы уверены, что хотите закрыть все кошельки?</translation>
+ </message>
+</context>
+<context>
+ <name>CreateWalletDialog</name>
+ <message>
+ <source>Create Wallet</source>
+ <translation type="unfinished">Создать кошелек</translation>
+ </message>
+ <message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Вы в одном шаге от создания своего нового кошелька!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Укажите имя и, при желании, включите дополнительные опции</translation>
+ </message>
+ <message>
+ <source>Wallet Name</source>
+ <translation type="unfinished">Имя кошелька</translation>
+ </message>
+ <message>
+ <source>Wallet</source>
+ <translation type="unfinished">Кошелек</translation>
+ </message>
+ <message>
+ <source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
+ <translation type="unfinished">Зашифруйте кошелек. Кошелек будет зашифрован с помощью выбранной вами парольной фразы.</translation>
+ </message>
+ <message>
+ <source>Encrypt Wallet</source>
+ <translation type="unfinished">Шифрованный кошелек</translation>
+ </message>
+ <message>
+ <source>Advanced Options</source>
+ <translation type="unfinished">Расширенные опции</translation>
+ </message>
+ <message>
+ <source>Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets.</source>
+ <translation type="unfinished">Отключить приватные ключи для этого кошелька. Кошельки с отключенными приватными ключами не будут иметь приватных ключей и не смогут иметь HD seed или импортированные приватные ключи. Это идеальный вариант для кошельков, предназначенных только для часов.</translation>
+ </message>
+ <message>
+ <source>Disable Private Keys</source>
+ <translation type="unfinished">Отключить личные ключи</translation>
+ </message>
+ <message>
+ <source>Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time.</source>
+ <translation type="unfinished">Создайте пустой кошелек. Пустые кошельки изначально не имеют приватных ключей или криптовалют. Приватные ключи и адреса можно импортировать или установить HD seed позже.</translation>
+ </message>
+ <message>
+ <source>Make Blank Wallet</source>
+ <translation type="unfinished">Сделайте пустой кошелек</translation>
+ </message>
+ <message>
+ <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
+ <translation type="unfinished">Используйте внешнее устройство подписи, например аппаратный кошелек. Сначала настройте скрипт внешнего подписывающего устройства в настройках кошелька.</translation>
+ </message>
+ <message>
+ <source>External signer</source>
+ <translation type="unfinished">Внешний подписант</translation>
+ </message>
+ <message>
+ <source>Create</source>
+ <translation type="unfinished">Создать</translation>
+ </message>
+ <message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Компилируется без поддержки внешней подписи (требуется для внешней подписи)</translation>
+ </message>
+</context>
+<context>
+ <name>EditAddressDialog</name>
+ <message>
+ <source>Edit Address</source>
+ <translation type="unfinished">Изменить адрес</translation>
+ </message>
+ <message>
+ <source>The label associated with this address list entry</source>
+ <translation type="unfinished">Метка, связанная с этой записью списка адресов</translation>
+ </message>
+ <message>
+ <source>The address associated with this address list entry. This can only be modified for sending addresses.</source>
+ <translation type="unfinished">Адрес, связанный с этой записью списка адресов. Этот параметр можно изменить только для адресов отправки.</translation>
+ </message>
+ <message>
+ <source>New sending address</source>
+ <translation type="unfinished">Новый адрес отправки</translation>
+ </message>
+ <message>
+ <source>Edit receiving address</source>
+ <translation type="unfinished">Редактирование адреса получения</translation>
+ </message>
+ <message>
+ <source>Edit sending address</source>
+ <translation type="unfinished">Редактирование адреса отправки</translation>
+ </message>
+ <message>
+ <source>The entered address "%1" is not a valid Bitcoin address.</source>
+ <translation type="unfinished">Введенный адрес "%1" не является действительным адресом Bitcoin.</translation>
+ </message>
+ <message>
+ <source>Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address.</source>
+ <translation type="unfinished">Адрес "%1" уже существует в качестве адреса получения с меткой "%2" и поэтому не может быть добавлен в качестве адреса отправки.</translation>
+ </message>
+ <message>
+ <source>The entered address "%1" is already in the address book with label "%2".</source>
+ <translation type="unfinished">Введенный адрес "%1" уже находится в адресной книге с меткой "%2".</translation>
+ </message>
+ <message>
+ <source>Could not unlock wallet.</source>
+ <translation type="unfinished">Не удалось разблокировать кошелек.</translation>
+ </message>
+ <message>
+ <source>New key generation failed.</source>
+ <translation type="unfinished">Генерация нового ключа не удалась.</translation>
+ </message>
+</context>
+<context>
+ <name>FreespaceChecker</name>
+ <message>
+ <source>A new data directory will be created.</source>
+ <translation type="unfinished">Будет создан новый каталог данных.</translation>
+ </message>
+ <message>
+ <source>name</source>
+ <translation type="unfinished">имя</translation>
+ </message>
+ <message>
+ <source>Directory already exists. Add %1 if you intend to create a new directory here.</source>
+ <translation type="unfinished">Каталог уже существует. Добавьте %1, если вы собираетесь создать здесь новый каталог.</translation>
+ </message>
+ <message>
+ <source>Path already exists, and is not a directory.</source>
+ <translation type="unfinished">Путь уже существует и не является каталогом.</translation>
+ </message>
+ <message>
+ <source>Cannot create data directory here.</source>
+ <translation type="unfinished">Невозможно создать здесь каталог данных.</translation>
+ </message>
+</context>
+<context>
+ <name>Intro</name>
+ <message>
+ <source>Bitcoin</source>
+ <translation type="unfinished">Биткоин</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n GB of space available</source>
+ <translation type="unfinished">
+ <numerusform>%n ГБ свободного места</numerusform>
+ <numerusform>%n ГБ свободного места</numerusform>
+ <numerusform>%n ГБ свободного места</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(of %n GB needed)</source>
+ <translation type="unfinished">
+ <numerusform>(из %n ГБ необходимых)</numerusform>
+ <numerusform>(из %n ГБ необходимых)</numerusform>
+ <numerusform>(из %n ГБ необходимых)</numerusform>
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(%n GB needed for full chain)</source>
+ <translation type="unfinished">
+ <numerusform>(%n ГБ необходимо для полной цепочки)</numerusform>
+ <numerusform>(%n ГБ необходимо для полной цепочки)</numerusform>
+ <numerusform>(%n ГБ необходимо для полной цепочки)</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">Выберите каталог данных</translation>
+ </message>
+ <message>
+ <source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
+ <translation type="unfinished">В этой директории будет храниться не менее %1 GБ данных, и со временем она будет увеличиваться.</translation>
+ </message>
+ <message>
+ <source>Approximately %1 GB of data will be stored in this directory.</source>
+ <translation type="unfinished">В этом каталоге будет храниться около %1 GБ данных.</translation>
+ </message>
+ <message numerus="yes">
+ <source>(sufficient to restore backups %n day(s) old)</source>
+ <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
+ <translation type="unfinished">
+ <numerusform>(достаточно для восстановления резервных копий %n дня(ов) давности)</numerusform>
+ <numerusform>(достаточно для восстановления резервных копий %n дня(ов) давности)</numerusform>
+ <numerusform>(достаточно для восстановления резервных копий %n дня(ов) давности)</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>%1 will download and store a copy of the Bitcoin block chain.</source>
+ <translation type="unfinished">%1будет скачано и сохранит копию цепи блоков Bitcoin.</translation>
+ </message>
+ <message>
+ <source>The wallet will also be stored in this directory.</source>
+ <translation type="unfinished">Кошелек также будет храниться в этой директории.</translation>
+ </message>
+ <message>
+ <source>Error: Specified data directory "%1" cannot be created.</source>
+ <translation type="unfinished">Ошибка: Указанный каталог данных "%1" не может быть создан.</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Ошибка</translation>
+ </message>
+ <message>
+ <source>Welcome</source>
+ <translation type="unfinished">Добро пожаловать</translation>
+ </message>
+ <message>
+ <source>Welcome to %1.</source>
+ <translation type="unfinished">Добро пожаловать в %1.</translation>
+ </message>
+ <message>
+ <source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
+ <translation type="unfinished">Поскольку программа запускается впервые, вы можете выбрать, где %1 будет хранить свои данные.</translation>
+ </message>
+ <message>
+ <source>Limit block chain storage to</source>
+ <translation type="unfinished">Ограничьте хранение цепочки блоков до</translation>
+ </message>
+ <message>
+ <source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
+ <translation type="unfinished">Возврат этого параметра в прежнее положение потребует повторного скачивания всей цепочки блоков. Быстрее будет сначала скачать полную цепочку и обрезать позднее. Отключает некоторые расширенные функции.</translation>
+ </message>
+ <message>
+ <source> GB</source>
+ <translation type="unfinished"> ГБ</translation>
+ </message>
+ <message>
+ <source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
+ <translation type="unfinished">Эта начальная синхронизация очень требовательна и может выявить аппаратные проблемы вашего компьютера, которые раньше оставались незамеченными. Каждый раз, когда вы запускаете %1, он будет продолжать загрузку с того места, на котором остановился.</translation>
+ </message>
+ <message>
+ <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
+ <translation type="unfinished">Когда вы нажмете OK, %1 начнет загружать и обрабатывать полную цепочку %4 bблокировок (%2 GB), начиная с самых ранних транзакций в %3 при первоначальном запуске %4.</translation>
+ </message>
+ <message>
+ <source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
+ <translation type="unfinished">Если вы решили ограничить хранение цепочки блоков (обрезка), исторические данные все равно должны быть загружены и обработаны, но после этого они будут удалены, чтобы не занимать много места на диске.</translation>
+ </message>
+ <message>
+ <source>Use the default data directory</source>
+ <translation type="unfinished">Используйте каталог данных по умолчанию</translation>
+ </message>
+ <message>
+ <source>Use a custom data directory:</source>
+ <translation type="unfinished">Используйте пользовательский каталог данных:</translation>
+ </message>
+</context>
+<context>
+ <name>HelpMessageDialog</name>
+ <message>
+ <source>version</source>
+ <translation type="unfinished">версия</translation>
+ </message>
+ <message>
+ <source>About %1</source>
+ <translation type="unfinished">О компании %1</translation>
+ </message>
+ <message>
+ <source>Command-line options</source>
+ <translation type="unfinished">Параметры командной строки</translation>
+ </message>
+</context>
+<context>
+ <name>ShutdownWindow</name>
+ <message>
+ <source>%1 is shutting down…</source>
+ <translation type="unfinished">%1 отключается…</translation>
+ </message>
+ <message>
+ <source>Do not shut down the computer until this window disappears.</source>
+ <translation type="unfinished">Не выключайте компьютер, пока это окно не исчезнет.</translation>
+ </message>
+</context>
+<context>
+ <name>ModalOverlay</name>
+ <message>
+ <source>Form</source>
+ <translation type="unfinished">Форма</translation>
+ </message>
+ <message>
+ <source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
+ <translation type="unfinished">Последние транзакции могут быть еще не видны, и поэтому баланс вашего кошелька может быть неверным. Эта информация станет верной после того, как ваш кошелек завершит синхронизацию с сетью биткоина, как описано ниже.</translation>
+ </message>
+ <message>
+ <source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
+ <translation type="unfinished">Попытки потратить биткоины, затронутые еще не отображенными транзакциями, не будут приняты сетью.</translation>
+ </message>
+ <message>
+ <source>Number of blocks left</source>
+ <translation type="unfinished">Количество оставшихся блоков</translation>
+ </message>
+ <message>
+ <source>Unknown…</source>
+ <translation type="unfinished">Неизвестно…</translation>
+ </message>
+ <message>
+ <source>calculating…</source>
+ <translation type="unfinished">вычисляется…</translation>
+ </message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">Время последнего блока</translation>
+ </message>
+ <message>
+ <source>Progress</source>
+ <translation type="unfinished">Прогресс</translation>
+ </message>
+ <message>
+ <source>Progress increase per hour</source>
+ <translation type="unfinished">Увеличение прогресса в час</translation>
+ </message>
+ <message>
+ <source>Estimated time left until synced</source>
+ <translation type="unfinished">Предполагаемое время, оставшееся до синхронизации</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">Скрыть</translation>
+ </message>
+ <message>
+ <source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
+ <translation type="unfinished">в настоящее время происходит синхронизация %1. Он будет загружать заголовки и блоки от пиров и проверять их, пока не достигнет вершины цепочки блоков.</translation>
+ </message>
+ <message>
+ <source>Unknown. Syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">Неизвестно. Синхронизируются заголовки (%1, %2%)…</translation>
+ </message>
+ <message>
+ <source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">Неизвестно. Предварительная синхронизация заголовков (%1, %2%)…</translation>
+ </message>
+</context>
+<context>
+ <name>OpenURIDialog</name>
+ <message>
+ <source>Open bitcoin URI</source>
+ <translation type="unfinished">Открытый URI биткойна</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <extracomment>Tooltip text for button that allows you to paste an address that is in your clipboard.</extracomment>
+ <translation type="unfinished">Вставить адрес из буфера обмена</translation>
+ </message>
+</context>
+<context>
+ <name>OptionsDialog</name>
+ <message>
+ <source>Options</source>
+ <translation type="unfinished">Опции</translation>
+ </message>
+ <message>
+ <source>Automatically start %1 after logging in to the system.</source>
+ <translation type="unfinished">Автоматический запуск %1 после входа в систему.</translation>
+ </message>
+ <message>
+ <source>&amp;Start %1 on system login</source>
+ <translation type="unfinished">&amp;Start %1 on вход в систему</translation>
+ </message>
+ <message>
+ <source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
+ <translation type="unfinished">Включение обрезки значительно сокращает дисковое пространство, необходимое для хранения транзакций. Все блоки по-прежнему полностью проверяются. Отмена этой настройки требует повторной загрузки всего блокчейна.</translation>
+ </message>
+ <message>
+ <source>Size of &amp;database cache</source>
+ <translation type="unfinished">Размер кэша базы данных &amp;database</translation>
+ </message>
+ <message>
+ <source>Number of script &amp;verification threads</source>
+ <translation type="unfinished">Количество потоков сценариев и проверок</translation>
+ </message>
+ <message>
+ <source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
+ <translation type="unfinished">Полный путь к %1 cсовместимому скрипту (например, C:\Downloads\hwi.exe или /Users/you/Downloads/hwi.py). Остерегайтесь: вредоносное ПО может украсть ваши монеты!</translation>
+ </message>
+ <message>
+ <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
+ <translation type="unfinished">IP-адрес прокси-сервера (например, IPv4: 127.0.0.1 / IPv6: ::1)</translation>
+ </message>
+ <message>
+ <source>Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source>
+ <translation type="unfinished">Показывает, используется ли поставляемый по умолчанию прокси-сервер SOCKS5 для связи с пирами через данный тип сети.</translation>
+ </message>
+ <message>
+ <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source>
+ <translation type="unfinished">Минимизация вместо выхода из приложения при закрытии окна. Если эта опция включена, приложение будет закрыто только после выбора пункта Выход в меню.</translation>
+ </message>
+ <message>
+ <source>Options set in this dialog are overridden by the command line:</source>
+ <translation type="unfinished">Параметры, заданные в этом диалоге, отменяются командной строкой:</translation>
+ </message>
+ <message>
+ <source>Open the %1 configuration file from the working directory.</source>
+ <translation type="unfinished">Откройте файл %1 configuration из рабочей директории.</translation>
+ </message>
+ <message>
+ <source>Open Configuration File</source>
+ <translation type="unfinished">Открыть файл конфигурации</translation>
+ </message>
+ <message>
+ <source>Reset all client options to default.</source>
+ <translation type="unfinished">Сбросьте все параметры клиента на значения по умолчанию.</translation>
+ </message>
+ <message>
+ <source>&amp;Network</source>
+ <translation type="unfinished">&amp;Сеть</translation>
+ </message>
+ <message>
+ <source>Prune &amp;block storage to</source>
+ <translation type="unfinished">Обрезка и блокировка хранилища для</translation>
+ </message>
+ <message>
+ <source>GB</source>
+ <translation type="unfinished">Гб</translation>
+ </message>
+ <message>
+ <source>Reverting this setting requires re-downloading the entire blockchain.</source>
+ <translation type="unfinished">Для изменения этой настройки требуется повторная загрузка всего блокчейна.</translation>
+ </message>
+ <message>
+ <source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
+ <extracomment>Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</extracomment>
+ <translation type="unfinished">Максимальный размер кэша базы данных. Увеличение размера кэша может способствовать более быстрой синхронизации, однако в большинстве случаев это преимущество не так заметно. Уменьшение размера кэша снизит потребление памяти. Неиспользуемая память mempool используется совместно с этим кэшем.</translation>
+ </message>
+ <message>
+ <source>MiB</source>
+ <translation type="unfinished">Мб</translation>
+ </message>
+ <message>
+ <source>Set the number of script verification threads. Negative values correspond to the number of cores you want to leave free to the system.</source>
+ <extracomment>Tooltip text for Options window setting that sets the number of script verification threads. Explains that negative values mean to leave these many cores free to the system.</extracomment>
+ <translation type="unfinished">Задайте количество потоков проверки сценария. Отрицательные значения соответствуют количеству ядер, которые вы хотите оставить свободными для системы.</translation>
+ </message>
+ <message>
+ <source>(0 = auto, &lt;0 = leave that many cores free)</source>
+ <translation type="unfinished">(0 = авто, &lt;0 = оставить столько ядер свободными)</translation>
+ </message>
+ <message>
+ <source>This allows you or a third party tool to communicate with the node through command-line and JSON-RPC commands.</source>
+ <extracomment>Tooltip text for Options window setting that enables the RPC server.</extracomment>
+ <translation type="unfinished">Это позволит вам или стороннему инструменту взаимодействовать с узлом через команды командной строки и JSON-RPC.</translation>
+ </message>
+ <message>
+ <source>Enable R&amp;PC server</source>
+ <extracomment>An Options window setting to enable the RPC server.</extracomment>
+ <translation type="unfinished">Включить сервер R&amp;PC</translation>
+ </message>
+ <message>
+ <source>Whether to set subtract fee from amount as default or not.</source>
+ <extracomment>Tooltip text for Options window setting that sets subtracting the fee from a sending amount as default.</extracomment>
+ <translation type="unfinished">Устанавливать вычитание комиссии из суммы по умолчанию или нет.</translation>
+ </message>
+ <message>
+ <source>Subtract &amp;fee from amount by default</source>
+ <extracomment>An Options window setting to set subtracting the fee from a sending amount as default.</extracomment>
+ <translation type="unfinished">По умолчанию вычитайте &amp;fee из суммы</translation>
+ </message>
+ <message>
+ <source>Expert</source>
+ <translation type="unfinished">Эксперт</translation>
+ </message>
+ <message>
+ <source>Enable coin &amp;control features</source>
+ <translation type="unfinished">Включите функции монет и управления</translation>
+ </message>
+ <message>
+ <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
+ <translation type="unfinished">Если вы отключите расходование неподтвержденных изменений, изменения от операции не могут быть использованы до тех пор, пока эта операция не получит хотя бы одно подтверждение. Это также влияет на то, как рассчитывается ваш баланс.</translation>
+ </message>
+ <message>
+ <source>&amp;Spend unconfirmed change</source>
+ <translation type="unfinished">&amp;Spend неподтвержденное изменение</translation>
+ </message>
+ <message>
+ <source>Enable &amp;PSBT controls</source>
+ <extracomment>An options window setting to enable PSBT controls.</extracomment>
+ <translation type="unfinished">Включить управление &amp;PSBT</translation>
+ </message>
+ <message>
+ <source>Whether to show PSBT controls.</source>
+ <extracomment>Tooltip text for options window setting that enables PSBT controls.</extracomment>
+ <translation type="unfinished">Показывать ли элементы управления PSBT.</translation>
+ </message>
+ <message>
+ <source>External Signer (e.g. hardware wallet)</source>
+ <translation type="unfinished">Внешний подписывающий агент (например, аппаратный кошелек)</translation>
+ </message>
+ <message>
+ <source>&amp;External signer script path</source>
+ <translation type="unfinished">&amp;Путь к сценарию внешнего подписывающего устройства</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
+ <translation type="unfinished">Автоматически откройте порт клиента Bitcoin на маршрутизаторе. Это работает, только если ваш маршрутизатор поддерживает UPnP и он включен.</translation>
+ </message>
+ <message>
+ <source>Map port using &amp;UPnP</source>
+ <translation type="unfinished">Сопоставление портов с помощью &amp;UPnP</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
+ <translation type="unfinished">Автоматически откройте порт клиента Bitcoin на маршрутизаторе. Это работает только в том случае, если ваш маршрутизатор поддерживает NAT-PMP и он включен. Внешний порт может быть произвольным.</translation>
+ </message>
+ <message>
+ <source>Map port using NA&amp;T-PMP</source>
+ <translation type="unfinished">Порт карты с использованием NA&amp;T-PMP</translation>
+ </message>
+ <message>
+ <source>Accept connections from outside.</source>
+ <translation type="unfinished">Принимайте соединения извне.</translation>
+ </message>
+ <message>
+ <source>Allow incomin&amp;g connections</source>
+ <translation type="unfinished">Разрешить входящие соединения</translation>
+ </message>
+ <message>
+ <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source>
+ <translation type="unfinished">Подключитесь к сети Bitcoin через прокси-сервер SOCKS5.</translation>
+ </message>
+ <message>
+ <source>&amp;Connect through SOCKS5 proxy (default proxy):</source>
+ <translation type="unfinished">&amp;Подключение через прокси-сервер SOCKS5 (прокси-сервер по умолчанию):</translation>
+ </message>
+ <message>
+ <source>Proxy &amp;IP:</source>
+ <translation type="unfinished">Прокси &amp;IP:</translation>
+ </message>
+ <message>
+ <source>&amp;Port:</source>
+ <translation type="unfinished">&amp;Порт:</translation>
+ </message>
+ <message>
+ <source>Port of the proxy (e.g. 9050)</source>
+ <translation type="unfinished">Порт прокси-сервера (например, 9050)</translation>
+ </message>
+ <message>
+ <source>Used for reaching peers via:</source>
+ <translation type="unfinished">Используется для связи с коллегами по сети:</translation>
+ </message>
+ <message>
+ <source>Tor</source>
+ <translation type="unfinished">Тор</translation>
+ </message>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;Окно</translation>
+ </message>
+ <message>
+ <source>Show the icon in the system tray.</source>
+ <translation type="unfinished">Показывать значок в области уведомлений.</translation>
+ </message>
+ <message>
+ <source>&amp;Show tray icon</source>
+ <translation type="unfinished">&amp;Показать значок в трее</translation>
+ </message>
+ <message>
+ <source>Show only a tray icon after minimizing the window.</source>
+ <translation type="unfinished">Показывать только значок в трее после сворачивания окна.</translation>
+ </message>
+ <message>
+ <source>&amp;Minimize to the tray instead of the taskbar</source>
+ <translation type="unfinished">&amp;Minimize в трей вместо панели задач</translation>
+ </message>
+ <message>
+ <source>&amp;Display</source>
+ <translation type="unfinished">&amp;Отображение</translation>
+ </message>
+ <message>
+ <source>User Interface &amp;language:</source>
+ <translation type="unfinished">Пользовательский интерфейс и язык:</translation>
+ </message>
+ <message>
+ <source>The user interface language can be set here. This setting will take effect after restarting %1.</source>
+ <translation type="unfinished">Здесь можно установить язык пользовательского интерфейса. Эта настройка вступит в силу после перезапуска %1.</translation>
+ </message>
+ <message>
+ <source>&amp;Unit to show amounts in:</source>
+ <translation type="unfinished">&amp;Unit для отображения сумм в единицах измерения:</translation>
+ </message>
+ <message>
+ <source>Choose the default subdivision unit to show in the interface and when sending coins.</source>
+ <translation type="unfinished">Выберите подразделение по умолчанию, которое будет отображаться в интерфейсе и при отправке монет.</translation>
+ </message>
+ <message>
+ <source>Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
+ <translation type="unfinished">Сторонние URL-адреса (например, в проводнике блоков), которые появляются на вкладке транзакций как пункты контекстного меню. %s в URL заменяется хэшем транзакции. Несколько URL-адресов разделяются вертикальной полосой |.</translation>
+ </message>
+ <message>
+ <source>&amp;Third-party transaction URLs</source>
+ <translation type="unfinished">uRL-адреса сторонних транзакций</translation>
+ </message>
+ <message>
+ <source>Whether to show coin control features or not.</source>
+ <translation type="unfinished">Показывать или нет функции управления монетами.</translation>
+ </message>
+ <message>
+ <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services.</source>
+ <translation type="unfinished">Подключайтесь к сети Bitcoin через отдельный прокси-сервер SOCKS5 для луковых сервисов Tor.</translation>
+ </message>
+ <message>
+ <source>Use separate SOCKS&amp;5 proxy to reach peers via Tor onion services:</source>
+ <translation type="unfinished">Используйте отдельный прокси-сервер SOCKS&amp;5 для доступа к пирам через луковые сервисы Tor:</translation>
+ </message>
+ <message>
+ <source>Monospaced font in the Overview tab:</source>
+ <translation type="unfinished">Шрифт с моноширинным начертанием на вкладке "Обзор":</translation>
+ </message>
+ <message>
+ <source>closest matching "%1"</source>
+ <translation type="unfinished">ближайшее соответствие "%1"</translation>
+ </message>
+ <message>
+ <source>&amp;OK</source>
+ <translation type="unfinished">&amp;ОК</translation>
+ </message>
+ <message>
+ <source>&amp;Cancel</source>
+ <translation type="unfinished">&amp;Отмена</translation>
+ </message>
+ <message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Компилируется без поддержки внешней подписи (требуется для внешней подписи)</translation>
+ </message>
+ <message>
+ <source>default</source>
+ <translation type="unfinished">по умолчанию</translation>
+ </message>
+ <message>
+ <source>none</source>
+ <translation type="unfinished">нет</translation>
+ </message>
+ <message>
+ <source>Confirm options reset</source>
+ <extracomment>Window title text of pop-up window shown when the user has chosen to reset options.</extracomment>
+ <translation type="unfinished">Подтвердите сброс настроек</translation>
+ </message>
+ <message>
+ <source>Client restart required to activate changes.</source>
+ <extracomment>Text explaining that the settings changed will not come into effect until the client is restarted.</extracomment>
+ <translation type="unfinished">Для активации изменений требуется перезагрузка клиента.</translation>
+ </message>
+ <message>
+ <source>Current settings will be backed up at "%1".</source>
+ <extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
+ <translation type="unfinished">Текущие настройки будут сохранены по адресу "%1".</translation>
+ </message>
+ <message>
+ <source>Client will be shut down. Do you want to proceed?</source>
+ <extracomment>Text asking the user to confirm if they would like to proceed with a client shutdown.</extracomment>
+ <translation type="unfinished">Клиент будет закрыт. Вы хотите продолжить?</translation>
+ </message>
+ <message>
+ <source>Configuration options</source>
+ <extracomment>Window title text of pop-up box that allows opening up of configuration file.</extracomment>
+ <translation type="unfinished">Параметры конфигурации</translation>
+ </message>
+ <message>
+ <source>The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file.</source>
+ <extracomment>Explanatory text about the priority order of instructions considered by client. The order from high to low being: command-line, configuration file, GUI settings.</extracomment>
+ <translation type="unfinished">Конфигурационный файл используется для указания расширенных пользовательских опций, которые отменяют настройки графического интерфейса. Кроме того, любые параметры командной строки будут переопределять этот файл конфигурации.</translation>
+ </message>
+ <message>
+ <source>Continue</source>
+ <translation type="unfinished">Продолжить</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">Отмена</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Ошибка</translation>
+ </message>
+ <message>
+ <source>The configuration file could not be opened.</source>
+ <translation type="unfinished">Не удалось открыть файл конфигурации.</translation>
+ </message>
+ <message>
+ <source>This change would require a client restart.</source>
+ <translation type="unfinished">Это изменение потребует перезапуска клиента.</translation>
+ </message>
+ <message>
+ <source>The supplied proxy address is invalid.</source>
+ <translation type="unfinished">Указанный адрес прокси-сервера недействителен.</translation>
+ </message>
+</context>
+<context>
+ <name>OptionsModel</name>
+ <message>
+ <source>Could not read setting "%1", %2.</source>
+ <translation type="unfinished">Не удалось прочитать настройку "%1", %2.</translation>
+ </message>
+</context>
+<context>
+ <name>OverviewPage</name>
+ <message>
+ <source>Form</source>
+ <translation type="unfinished">Форма</translation>
+ </message>
+ <message>
+ <source>The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet.</source>
+ <translation type="unfinished">Отображаемая информация может быть устаревшей. Ваш кошелек автоматически синхронизируется с сетью Биткойн после установления соединения, но этот процесс еще не завершен.</translation>
+ </message>
+ <message>
+ <source>Watch-only:</source>
+ <translation type="unfinished">Только для просмотра:</translation>
+ </message>
+ <message>
+ <source>Available:</source>
+ <translation type="unfinished">Доступно:</translation>
+ </message>
+ <message>
+ <source>Your current spendable balance</source>
+ <translation type="unfinished">Ваш текущий расходный баланс</translation>
+ </message>
+ <message>
+ <source>Pending:</source>
+ <translation type="unfinished">В ожидании:</translation>
+ </message>
+ <message>
+ <source>Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source>
+ <translation type="unfinished">Общее количество транзакций, которые еще не подтверждены и пока не учитываются при расходовании средств</translation>
+ </message>
+ <message>
+ <source>Immature:</source>
+ <translation type="unfinished">Незрелый:</translation>
+ </message>
+ <message>
+ <source>Mined balance that has not yet matured</source>
+ <translation type="unfinished">Добытый остаток, который еще не созрел</translation>
+ </message>
+ <message>
+ <source>Balances</source>
+ <translation type="unfinished">Балансы</translation>
+ </message>
+ <message>
+ <source>Total:</source>
+ <translation type="unfinished">Итого:</translation>
+ </message>
+ <message>
+ <source>Your current total balance</source>
+ <translation type="unfinished">Ваш текущий общий баланс</translation>
+ </message>
+ <message>
+ <source>Your current balance in watch-only addresses</source>
+ <translation type="unfinished">Ваш текущий баланс в адресах, доступных только через часы</translation>
+ </message>
+ <message>
+ <source>Spendable:</source>
+ <translation type="unfinished">Можно тратить:</translation>
+ </message>
+ <message>
+ <source>Recent transactions</source>
+ <translation type="unfinished">Последние сделки</translation>
+ </message>
+ <message>
+ <source>Unconfirmed transactions to watch-only addresses</source>
+ <translation type="unfinished">Неподтвержденные транзакции по адресам, доступным только для наблюдения</translation>
+ </message>
+ <message>
+ <source>Mined balance in watch-only addresses that has not yet matured</source>
+ <translation type="unfinished">Добытый баланс в адресах "только для просмотра", который еще не созрел</translation>
+ </message>
+ <message>
+ <source>Current total balance in watch-only addresses</source>
+ <translation type="unfinished">Текущий общий баланс в адресах, доступных только для просмотра</translation>
+ </message>
+ <message>
+ <source>Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings-&gt;Mask values.</source>
+ <translation type="unfinished">Для вкладки Обзор активирован режим конфиденциальности. Чтобы снять маскировку значений, снимите флажок Настройки-&gt;Маскировать значения.</translation>
+ </message>
+</context>
+<context>
+ <name>PSBTOperationsDialog</name>
+ <message>
+ <source>PSBT Operations</source>
+ <translation type="unfinished">Операции PSBT</translation>
+ </message>
+ <message>
+ <source>Sign Tx</source>
+ <translation type="unfinished">Знак Tx</translation>
+ </message>
+ <message>
+ <source>Broadcast Tx</source>
+ <translation type="unfinished">Трансляция Tx</translation>
+ </message>
+ <message>
+ <source>Copy to Clipboard</source>
+ <translation type="unfinished">Копировать в буфер обмена</translation>
+ </message>
+ <message>
+ <source>Save…</source>
+ <translation type="unfinished">Спасти…</translation>
+ </message>
+ <message>
+ <source>Close</source>
+ <translation type="unfinished">Закрыть</translation>
+ </message>
+ <message>
+ <source>Failed to load transaction: %1</source>
+ <translation type="unfinished">Не удалось загрузить транзакцию: %1</translation>
+ </message>
+ <message>
+ <source>Failed to sign transaction: %1</source>
+ <translation type="unfinished">Не удалось подписать транзакцию: %1</translation>
+ </message>
+ <message>
+ <source>Cannot sign inputs while wallet is locked.</source>
+ <translation type="unfinished">Невозможно подписать входы пока кошелёк заблокирован.</translation>
+ </message>
+ <message>
+ <source>Could not sign any more inputs.</source>
+ <translation type="unfinished">Не мог подписать больше ни одного входа.</translation>
+ </message>
+ <message>
+ <source>Signed %1 inputs, but more signatures are still required.</source>
+ <translation type="unfinished">Подписан %1 входных данных, но требуется еще несколько подписей.</translation>
+ </message>
+ <message>
+ <source>Signed transaction successfully. Transaction is ready to broadcast.</source>
+ <translation type="unfinished">Транзакция успешно подписана. Транзакция готова к трансляции.</translation>
+ </message>
+ <message>
+ <source>Unknown error processing transaction.</source>
+ <translation type="unfinished">Неизвестная ошибка при обработке транзакции.</translation>
+ </message>
+ <message>
+ <source>Transaction broadcast successfully! Transaction ID: %1</source>
+ <translation type="unfinished">Трансляция транзакции прошла успешно! Идентификатор транзакции: %1</translation>
+ </message>
+ <message>
+ <source>Transaction broadcast failed: %1</source>
+ <translation type="unfinished">Трансляция транзакции не удалась: %1</translation>
+ </message>
+ <message>
+ <source>PSBT copied to clipboard.</source>
+ <translation type="unfinished">PSBT скопирована в буфер обмена.</translation>
+ </message>
+ <message>
+ <source>Save Transaction Data</source>
+ <translation type="unfinished">Сохранить данные транзакции</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (Binary)</source>
+ <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
+ <translation type="unfinished">Частично подписанная транзакция (двоичная)</translation>
+ </message>
+ <message>
+ <source>PSBT saved to disk.</source>
+ <translation type="unfinished">PSBT сохраняется на диск.</translation>
+ </message>
+ <message>
+ <source> * Sends %1 to %2</source>
+ <translation type="unfinished"> * Отправляет %1 на %2</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">собственный адрес</translation>
+ </message>
+ <message>
+ <source>Unable to calculate transaction fee or total transaction amount.</source>
+ <translation type="unfinished">Невозможно рассчитать комиссию за транзакцию или общую сумму транзакции.</translation>
+ </message>
+ <message>
+ <source>Pays transaction fee: </source>
+ <translation type="unfinished">Платит комиссию: </translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">Общая сумма</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">или</translation>
+ </message>
+ <message>
+ <source>Transaction has %1 unsigned inputs.</source>
+ <translation type="unfinished">Транзакция имеет %1 uбеззнаковые входы.</translation>
+ </message>
+ <message>
+ <source>Transaction is missing some information about inputs.</source>
+ <translation type="unfinished">В транзакции отсутствует некоторая информация о входах.</translation>
+ </message>
+ <message>
+ <source>Transaction still needs signature(s).</source>
+ <translation type="unfinished">Транзакция все еще нуждается в подписи (подписях).</translation>
+ </message>
+ <message>
+ <source>(But no wallet is loaded.)</source>
+ <translation type="unfinished">(Но кошелек не загружен)</translation>
+ </message>
+ <message>
+ <source>(But this wallet cannot sign transactions.)</source>
+ <translation type="unfinished">(Но этот кошелек не может подписывать транзакции)</translation>
+ </message>
+ <message>
+ <source>(But this wallet does not have the right keys.)</source>
+ <translation type="unfinished">(Но в этом бумажнике нет нужных ключей)</translation>
+ </message>
+ <message>
+ <source>Transaction is fully signed and ready for broadcast.</source>
+ <translation type="unfinished">Сделка полностью подписана и готова к трансляции.</translation>
+ </message>
+ <message>
+ <source>Transaction status is unknown.</source>
+ <translation type="unfinished">Статус транзакции неизвестен.</translation>
+ </message>
+</context>
+<context>
+ <name>PaymentServer</name>
+ <message>
+ <source>Payment request error</source>
+ <translation type="unfinished">Ошибка запроса на оплату</translation>
+ </message>
+ <message>
+ <source>Cannot start bitcoin: click-to-pay handler</source>
+ <translation type="unfinished">Не удаётся запустить обработчик click-to-pay для протокола bitcoin</translation>
+ </message>
+ <message>
+ <source>URI handling</source>
+ <translation type="unfinished">Работа с URI</translation>
+ </message>
+ <message>
+ <source>'bitcoin://' is not a valid URI. Use 'bitcoin:' instead.</source>
+ <translation type="unfinished">'bitcoin://' не является правильным URI. Вместо этого используйте 'bitcoin:'.</translation>
+ </message>
+ <message>
+ <source>Cannot process payment request because BIP70 is not supported.
+Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
+If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
+ <translation type="unfinished">Невозможно обработать запрос на платеж, поскольку BIP70 не поддерживается.
+Из-за широко распространенных недостатков безопасности в BIP70 настоятельно рекомендуется игнорировать любые инструкции продавцов по переключению кошельков.
+Если вы получаете эту ошибку, вам следует попросить продавца предоставить URI, совместимый с BIP21.</translation>
+ </message>
+ <message>
+ <source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source>
+ <translation type="unfinished">URI не может быть разобран! Это может быть вызвано недействительным адресом Bitcoin или неправильно сформированными параметрами URI.</translation>
+ </message>
+ <message>
+ <source>Payment request file handling</source>
+ <translation type="unfinished">Обработка файлов платежных запросов</translation>
+ </message>
+</context>
+<context>
+ <name>PeerTableModel</name>
+ <message>
+ <source>User Agent</source>
+ <extracomment>Title of Peers Table column which contains the peer's User Agent string.</extracomment>
+ <translation type="unfinished">Агент пользователя</translation>
+ </message>
+ <message>
+ <source>Ping</source>
+ <extracomment>Title of Peers Table column which indicates the current latency of the connection with the peer.</extracomment>
+ <translation type="unfinished">Пинг</translation>
+ </message>
+ <message>
+ <source>Peer</source>
+ <extracomment>Title of Peers Table column which contains a unique number used to identify a connection.</extracomment>
+ <translation type="unfinished">Сверстник</translation>
+ </message>
+ <message>
+ <source>Age</source>
+ <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
+ <translation type="unfinished">Возраст</translation>
+ </message>
+ <message>
+ <source>Direction</source>
+ <extracomment>Title of Peers Table column which indicates the direction the peer connection was initiated from.</extracomment>
+ <translation type="unfinished">Направление</translation>
+ </message>
+ <message>
+ <source>Sent</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have sent to the peer.</extracomment>
+ <translation type="unfinished">Отправлено</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have received from the peer.</extracomment>
+ <translation type="unfinished">Получено</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">Адрес</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
+ <translation type="unfinished">Тип</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <extracomment>Title of Peers Table column which states the network the peer connected through.</extracomment>
+ <translation type="unfinished">Сеть</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An Inbound Connection from a Peer.</extracomment>
+ <translation type="unfinished">Входящие</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An Outbound Connection to a Peer.</extracomment>
+ <translation type="unfinished">Исходящие</translation>
+ </message>
+</context>
+<context>
+ <name>QRImageWidget</name>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">&amp;Сохранить изображение…</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Image</source>
+ <translation type="unfinished">&amp;Копировать изображение</translation>
+ </message>
+ <message>
+ <source>Resulting URI too long, try to reduce the text for label / message.</source>
+ <translation type="unfinished">Получаемый URI слишком длинный, попробуйте уменьшить текст для метки/сообщения.</translation>
+ </message>
+ <message>
+ <source>Error encoding URI into QR Code.</source>
+ <translation type="unfinished">Ошибка при кодировании URI в QR-код.</translation>
+ </message>
+ <message>
+ <source>QR code support not available.</source>
+ <translation type="unfinished">Поддержка QR-кодов недоступна.</translation>
+ </message>
+ <message>
+ <source>Save QR Code</source>
+ <translation type="unfinished">Сохранить QR-код</translation>
+ </message>
+ <message>
+ <source>PNG Image</source>
+ <extracomment>Expanded name of the PNG file format. See: https://en.wikipedia.org/wiki/Portable_Network_Graphics.</extracomment>
+ <translation type="unfinished">PNG-изображение</translation>
+ </message>
+</context>
+<context>
+ <name>RPCConsole</name>
+ <message>
+ <source>N/A</source>
+ <translation type="unfinished">Н/Д</translation>
+ </message>
+ <message>
+ <source>Client version</source>
+ <translation type="unfinished">Клиентская версия</translation>
+ </message>
+ <message>
+ <source>General</source>
+ <translation type="unfinished">Общие</translation>
+ </message>
+ <message>
+ <source>To specify a non-default location of the data directory use the '%1' option.</source>
+ <translation type="unfinished">Чтобы указать местоположение каталога данных, отличное от заданного по умолчанию, используйте опцию '%1'.</translation>
+ </message>
+ <message>
+ <source>To specify a non-default location of the blocks directory use the '%1' option.</source>
+ <translation type="unfinished">Чтобы указать расположение каталога блоков, отличное от заданного по умолчанию, используйте опцию '%1'.</translation>
+ </message>
+ <message>
+ <source>Startup time</source>
+ <translation type="unfinished">Время запуска</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <translation type="unfinished">Сеть</translation>
+ </message>
+ <message>
+ <source>Name</source>
+ <translation type="unfinished">Имя</translation>
+ </message>
+ <message>
+ <source>Number of connections</source>
+ <translation type="unfinished">Количество соединений</translation>
+ </message>
+ <message>
+ <source>Block chain</source>
+ <translation type="unfinished">Цепочка блоков</translation>
+ </message>
+ <message>
+ <source>Memory Pool</source>
+ <translation type="unfinished">Пул памяти</translation>
+ </message>
+ <message>
+ <source>Current number of transactions</source>
+ <translation type="unfinished">Текущее количество транзакций</translation>
+ </message>
+ <message>
+ <source>Memory usage</source>
+ <translation type="unfinished">Использовано памяти</translation>
+ </message>
+ <message>
+ <source>Wallet: </source>
+ <translation type="unfinished">Кошелёк: </translation>
+ </message>
+ <message>
+ <source>(none)</source>
+ <translation type="unfinished">(никто)</translation>
+ </message>
+ <message>
+ <source>&amp;Reset</source>
+ <translation type="unfinished">&amp;Сброс</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <translation type="unfinished">Получено</translation>
+ </message>
+ <message>
+ <source>Sent</source>
+ <translation type="unfinished">Отправлено</translation>
+ </message>
+ <message>
+ <source>Banned peers</source>
+ <translation type="unfinished">Запрещенные сверстники</translation>
+ </message>
+ <message>
+ <source>Select a peer to view detailed information.</source>
+ <translation type="unfinished">Выберите одноранговую сеть, чтобы просмотреть подробную информацию.</translation>
+ </message>
+ <message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Версия транспортного уровня: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Транспорт</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Строка идентификатора сеанса BIP324 в шестнадцатеричном формате, если таковой имеется.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">Сессия ID</translation>
+ </message>
+ <message>
+ <source>Version</source>
+ <translation type="unfinished">Версия</translation>
+ </message>
+ <message>
+ <source>Whether we relay transactions to this peer.</source>
+ <translation type="unfinished">Передаем ли мы транзакции этому сверстнику.</translation>
+ </message>
+ <message>
+ <source>Transaction Relay</source>
+ <translation type="unfinished">Реле транзакций</translation>
+ </message>
+ <message>
+ <source>Starting Block</source>
+ <translation type="unfinished">Стартовый блок</translation>
+ </message>
+ <message>
+ <source>Synced Headers</source>
+ <translation type="unfinished">Синхронизированные заголовки</translation>
+ </message>
+ <message>
+ <source>Synced Blocks</source>
+ <translation type="unfinished">Синхронизированные блоки</translation>
+ </message>
+ <message>
+ <source>Last Transaction</source>
+ <translation type="unfinished">Последняя Тразакция</translation>
+ </message>
+ <message>
+ <source>The mapped Autonomous System used for diversifying peer selection.</source>
+ <translation type="unfinished">Сопоставленная автономная система, используемая для диверсификации выбора пиров.</translation>
+ </message>
+ <message>
+ <source>Mapped AS</source>
+ <translation type="unfinished">Сопоставление AS</translation>
+ </message>
+ <message>
+ <source>Whether we relay addresses to this peer.</source>
+ <extracomment>Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
+ <translation type="unfinished">Будем ли мы передавать адреса этому пиру.</translation>
+ </message>
+ <message>
+ <source>Address Relay</source>
+ <extracomment>Text title for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
+ <translation type="unfinished">Адресное реле</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
+ <extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Общее количество адресов, полученных от этого пира, которые были обработаны (исключая адреса, которые были отброшены из-за ограничения скорости).</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
+ <extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
+ <translation type="unfinished">Общее количество адресов, полученных от данного пира, которые были отброшены (не обработаны) из-за ограничения скорости.</translation>
+ </message>
+ <message>
+ <source>Addresses Processed</source>
+ <extracomment>Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Обработанные адреса</translation>
+ </message>
+ <message>
+ <source>Addresses Rate-Limited</source>
+ <extracomment>Text title for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
+ <translation type="unfinished">Адреса с ограничением скорости</translation>
+ </message>
+ <message>
+ <source>User Agent</source>
+ <translation type="unfinished">Агент пользователя</translation>
+ </message>
+ <message>
+ <source>Node window</source>
+ <translation type="unfinished">Окно узла</translation>
+ </message>
+ <message>
+ <source>Current block height</source>
+ <translation type="unfinished">Текущая высота блока</translation>
+ </message>
+ <message>
+ <source>Open the %1 debug log file from the current data directory. This can take a few seconds for large log files.</source>
+ <translation type="unfinished">Откройте файл журнала %1 debug из текущего каталога данных. Для больших файлов журнала это может занять несколько секунд.</translation>
+ </message>
+ <message>
+ <source>Decrease font size</source>
+ <translation type="unfinished">Уменьшить размер шрифта</translation>
+ </message>
+ <message>
+ <source>Increase font size</source>
+ <translation type="unfinished">Увеличить размер шрифта</translation>
+ </message>
+ <message>
+ <source>Permissions</source>
+ <translation type="unfinished">Разрешения</translation>
+ </message>
+ <message>
+ <source>The direction and type of peer connection: %1</source>
+ <translation type="unfinished">Направление и тип пирингового соединения: %1</translation>
+ </message>
+ <message>
+ <source>Direction/Type</source>
+ <translation type="unfinished">Направление/Тип</translation>
+ </message>
+ <message>
+ <source>The network protocol this peer is connected through: IPv4, IPv6, Onion, I2P, or CJDNS.</source>
+ <translation type="unfinished">Сетевой протокол, по которому подключен данный пир: IPv4, IPv6, Onion, I2P или CJDNS.</translation>
+ </message>
+ <message>
+ <source>Services</source>
+ <translation type="unfinished">Услуги</translation>
+ </message>
+ <message>
+ <source>High bandwidth BIP152 compact block relay: %1</source>
+ <translation type="unfinished">Компактное блочное реле BIP152 с высокой пропускной способностью: %1</translation>
+ </message>
+ <message>
+ <source>High Bandwidth</source>
+ <translation type="unfinished">Высокая пропускная способность</translation>
+ </message>
+ <message>
+ <source>Connection Time</source>
+ <translation type="unfinished">Время соединения</translation>
+ </message>
+ <message>
+ <source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
+ <translation type="unfinished">Время, прошедшее с момента получения от этого пира нового блока, прошедшего начальную проверку на валидность.</translation>
+ </message>
+ <message>
+ <source>Last Block</source>
+ <translation type="unfinished">Последний блок</translation>
+ </message>
+ <message>
+ <source>Elapsed time since a novel transaction accepted into our mempool was received from this peer.</source>
+ <extracomment>Tooltip text for the Last Transaction field in the peer details area.</extracomment>
+ <translation type="unfinished">Время, прошедшее с момента получения от этого пира новой транзакции, принятой в наш mempool.</translation>
+ </message>
+ <message>
+ <source>Last Send</source>
+ <translation type="unfinished">Последняя отправка</translation>
+ </message>
+ <message>
+ <source>Last Receive</source>
+ <translation type="unfinished">Последнее получение</translation>
+ </message>
+ <message>
+ <source>Ping Time</source>
+ <translation type="unfinished">Время пинга</translation>
+ </message>
+ <message>
+ <source>The duration of a currently outstanding ping.</source>
+ <translation type="unfinished">Длительность текущего пинга.</translation>
+ </message>
+ <message>
+ <source>Min Ping</source>
+ <translation type="unfinished">Минь Пин</translation>
+ </message>
+ <message>
+ <source>Time Offset</source>
+ <translation type="unfinished">Смещение времени</translation>
+ </message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">Время последнего блока</translation>
+ </message>
+ <message>
+ <source>&amp;Open</source>
+ <translation type="unfinished">&amp;Открыть</translation>
+ </message>
+ <message>
+ <source>&amp;Console</source>
+ <translation type="unfinished">Консоль</translation>
+ </message>
+ <message>
+ <source>&amp;Network Traffic</source>
+ <translation type="unfinished">&amp;Сетевой трафик</translation>
+ </message>
+ <message>
+ <source>Totals</source>
+ <translation type="unfinished">Итого</translation>
+ </message>
+ <message>
+ <source>Debug log file</source>
+ <translation type="unfinished">Файл журнала отладки</translation>
+ </message>
+ <message>
+ <source>Clear console</source>
+ <translation type="unfinished">Прозрачная консоль</translation>
+ </message>
+ <message>
+ <source>In:</source>
+ <translation type="unfinished">В:</translation>
+ </message>
+ <message>
+ <source>Out:</source>
+ <translation type="unfinished">Вых. :</translation>
+ </message>
+ <message>
+ <source>Inbound: initiated by peer</source>
+ <extracomment>Explanatory text for an inbound peer connection.</extracomment>
+ <translation type="unfinished">Входящие: инициируются сверстником</translation>
+ </message>
+ <message>
+ <source>Outbound Full Relay: default</source>
+ <extracomment>Explanatory text for an outbound peer connection that relays all network information. This is the default behavior for outbound connections.</extracomment>
+ <translation type="unfinished">Исходящая полная ретрансляция: по умолчанию</translation>
+ </message>
+ <message>
+ <source>Outbound Block Relay: does not relay transactions or addresses</source>
+ <extracomment>Explanatory text for an outbound peer connection that relays network information about blocks and not transactions or addresses.</extracomment>
+ <translation type="unfinished">Ретрансляция исходящих блоков: не ретранслирует транзакции или адреса</translation>
+ </message>
+ <message>
+ <source>Outbound Manual: added using RPC %1 or %2/%3 configuration options</source>
+ <extracomment>Explanatory text for an outbound peer connection that was established manually through one of several methods. The numbered arguments are stand-ins for the methods available to establish manual connections.</extracomment>
+ <translation type="unfinished">Исходящее руководство: добавлено использование опций RPC %1 or %2/%3 configuration</translation>
+ </message>
+ <message>
+ <source>Outbound Feeler: short-lived, for testing addresses</source>
+ <extracomment>Explanatory text for a short-lived outbound peer connection that is used to test the aliveness of known addresses.</extracomment>
+ <translation type="unfinished">Исходящий Feeler: недолговечен, для тестирования адресов</translation>
+ </message>
+ <message>
+ <source>Outbound Address Fetch: short-lived, for soliciting addresses</source>
+ <extracomment>Explanatory text for a short-lived outbound peer connection that is used to request addresses from a peer.</extracomment>
+ <translation type="unfinished">Выборка исходящих адресов: недолговечна, предназначена для получения адресов</translation>
+ </message>
+ <message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">обнаружение: пир может быть v1 или v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: незашифрованный транспортный протокол с открытым текстом</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: Зашифрованный транспортный протокол BIP324</translation>
+ </message>
+ <message>
+ <source>we selected the peer for high bandwidth relay</source>
+ <translation type="unfinished">мы выбрали пир для ретрансляции с высокой пропускной способностью</translation>
+ </message>
+ <message>
+ <source>the peer selected us for high bandwidth relay</source>
+ <translation type="unfinished">пир выбрал нас для ретрансляции с высокой пропускной способностью</translation>
+ </message>
+ <message>
+ <source>no high bandwidth relay selected</source>
+ <translation type="unfinished">не выбрано реле с высокой пропускной способностью</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <extracomment>Context menu action to copy the address of a peer.</extracomment>
+ <translation type="unfinished">&amp;Копировать адрес</translation>
+ </message>
+ <message>
+ <source>Network activity disabled</source>
+ <translation type="unfinished">Сетевая активность отключена</translation>
+ </message>
+ <message>
+ <source>Executing command without any wallet</source>
+ <translation type="unfinished">Выполнение команды без кошелька</translation>
+ </message>
+ <message>
+ <source>Executing command using "%1" wallet</source>
+ <translation type="unfinished">Выполнение команды с использованием кошелька "%1"</translation>
+ </message>
+ <message>
+ <source>Welcome to the %1 RPC console.
+Use up and down arrows to navigate history, and %2 to clear screen.
+Use %3 and %4 to increase or decrease the font size.
+Type %5 for an overview of available commands.
+For more information on using this console, type %6.
+
+%7WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command.%8</source>
+ <extracomment>RPC console welcome message. Placeholders %7 and %8 are style tags for the warning content, and they are not space separated from the rest of the text intentionally.</extracomment>
+ <translation type="unfinished">Добро пожаловать в консоль %1 RPC.
+Используйте стрелки вверх и вниз для перемещения по истории, а %2 - для очистки экрана.
+Используйте %3 и %4 для увеличения или уменьшения размера шрифта.
+Введите %5 fили обзор доступных команд.
+Для получения дополнительной информации об использовании этой консоли введите %6.
+
+%7ПРЕДУПРЕЖДЕНИЕ: Мошенники активно действуют, предлагая пользователям ввести здесь команды и похищая содержимое их кошельков. Не используйте эту консоль, не понимая всех последствий той или иной команды.%8</translation>
+ </message>
+ <message>
+ <source>Executing…</source>
+ <extracomment>A console message indicating an entered command is currently being executed.</extracomment>
+ <translation type="unfinished">Выполнение…</translation>
+ </message>
+ <message>
+ <source>(peer: %1)</source>
+ <translation type="unfinished">(аналог: %1)</translation>
+ </message>
+ <message>
+ <source>via %1</source>
+ <translation type="unfinished">через %1</translation>
+ </message>
+ <message>
+ <source>Yes</source>
+ <translation type="unfinished">Да</translation>
+ </message>
+ <message>
+ <source>No</source>
+ <translation type="unfinished">Нет</translation>
+ </message>
+ <message>
+ <source>To</source>
+ <translation type="unfinished">Кому</translation>
+ </message>
+ <message>
+ <source>From</source>
+ <translation type="unfinished">От</translation>
+ </message>
+ <message>
+ <source>Ban for</source>
+ <translation type="unfinished">Забанен на</translation>
+ </message>
+ <message>
+ <source>Never</source>
+ <translation type="unfinished">Никогда</translation>
+ </message>
+ <message>
+ <source>Unknown</source>
+ <translation type="unfinished">Неизвестно</translation>
+ </message>
+</context>
+<context>
+ <name>ReceiveCoinsDialog</name>
+ <message>
+ <source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source>
+ <translation type="unfinished">Необязательное сообщение для прикрепления к платежному запросу, которое будет отображаться при открытии запроса. Примечание: Сообщение не будет отправлено вместе с платежом через сеть Bitcoin.</translation>
+ </message>
+ <message>
+ <source>An optional label to associate with the new receiving address.</source>
+ <translation type="unfinished">Необязательная метка, которую нужно связать с новым адресом получения.</translation>
+ </message>
+ <message>
+ <source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
+ <translation type="unfinished">Используйте эту форму для запроса платежей. Все поля являются &lt;b&gt;необязательными&lt;/b&gt;.</translation>
+ </message>
+ <message>
+ <source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
+ <translation type="unfinished">Необязательная сумма для запроса. Оставьте это значение пустым или нулевым, чтобы не запрашивать определенную сумму.</translation>
+ </message>
+ <message>
+ <source>An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request.</source>
+ <translation type="unfinished">Необязательная метка, которую нужно связать с новым адресом получения (используется для идентификации счета-фактуры). Она также прикрепляется к запросу на оплату.</translation>
+ </message>
+ <message>
+ <source>An optional message that is attached to the payment request and may be displayed to the sender.</source>
+ <translation type="unfinished">Необязательное сообщение, которое прикрепляется к платежному запросу и может быть показано отправителю.</translation>
+ </message>
+ <message>
+ <source>&amp;Create new receiving address</source>
+ <translation type="unfinished">&amp;Создать новый адрес получения</translation>
+ </message>
+ <message>
+ <source>Clear all fields of the form.</source>
+ <translation type="unfinished">Очистите все поля формы.</translation>
+ </message>
+ <message>
+ <source>Clear</source>
+ <translation type="unfinished">Очистить</translation>
+ </message>
+ <message>
+ <source>Requested payments history</source>
+ <translation type="unfinished">История запрошенных платежей</translation>
+ </message>
+ <message>
+ <source>Show the selected request (does the same as double clicking an entry)</source>
+ <translation type="unfinished">Показать выбранный запрос (то же самое, что и двойной щелчок по записи)</translation>
+ </message>
+ <message>
+ <source>Show</source>
+ <translation type="unfinished">Показать</translation>
+ </message>
+ <message>
+ <source>Remove the selected entries from the list</source>
+ <translation type="unfinished">Удалить выбранные записи из списка</translation>
+ </message>
+ <message>
+ <source>Remove</source>
+ <translation type="unfinished">Удалить</translation>
+ </message>
+ <message>
+ <source>Copy &amp;URI</source>
+ <translation type="unfinished">Скопируйте &amp;URI</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Копировать адрес</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">Копия и этикетка</translation>
+ </message>
+ <message>
+ <source>Copy &amp;message</source>
+ <translation type="unfinished">Скопируйте &amp;сообщение</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">Копия &amp;amount</translation>
+ </message>
+ <message>
+ <source>Not recommended due to higher fees and less protection against typos.</source>
+ <translation type="unfinished">Не рекомендуется из-за более высокой платы и меньшей защиты от опечаток.</translation>
+ </message>
+ <message>
+ <source>Generates an address compatible with older wallets.</source>
+ <translation type="unfinished">Генерирует адрес, совместимый со старыми кошельками.</translation>
+ </message>
+ <message>
+ <source>Generates a native segwit address (BIP-173). Some old wallets don't support it.</source>
+ <translation type="unfinished">Генерирует собственный сегвит-адрес (BIP-173). Некоторые старые кошельки его не поддерживают.</translation>
+ </message>
+ <message>
+ <source>Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
+ <translation type="unfinished">Bech32m (BIP-350) - это обновление Bech32, поддержка кошельков по-прежнему ограничена.</translation>
+ </message>
+ <message>
+ <source>Could not unlock wallet.</source>
+ <translation type="unfinished">Не удалось разблокировать кошелек.</translation>
+ </message>
+ <message>
+ <source>Could not generate new %1 address</source>
+ <translation type="unfinished">Не удалось сгенерировать новый адрес %1</translation>
+ </message>
+</context>
+<context>
+ <name>ReceiveRequestDialog</name>
+ <message>
+ <source>Request payment to …</source>
+ <translation type="unfinished">Запросите оплату …</translation>
+ </message>
+ <message>
+ <source>Address:</source>
+ <translation type="unfinished">Адрес:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Сумма:</translation>
+ </message>
+ <message>
+ <source>Label:</source>
+ <translation type="unfinished">Метка:</translation>
+ </message>
+ <message>
+ <source>Message:</source>
+ <translation type="unfinished">Сообщение:</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Кошелек:</translation>
+ </message>
+ <message>
+ <source>Copy &amp;URI</source>
+ <translation type="unfinished">Скопируйте &amp;URI</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Address</source>
+ <translation type="unfinished">Копия и адрес</translation>
+ </message>
+ <message>
+ <source>Verify this address on e.g. a hardware wallet screen</source>
+ <translation type="unfinished">Проверьте этот адрес, например, на экране аппаратного кошелька</translation>
+ </message>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">&amp;Сохранить изображение…</translation>
+ </message>
+ <message>
+ <source>Payment information</source>
+ <translation type="unfinished">Платежная информация</translation>
+ </message>
+ <message>
+ <source>Request payment to %1</source>
+ <translation type="unfinished">Запросите платеж на %1</translation>
+ </message>
+</context>
+<context>
+ <name>RecentRequestsTableModel</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Дата</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Метка</translation>
+ </message>
+ <message>
+ <source>Message</source>
+ <translation type="unfinished">Сообщение</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без ярлыка)</translation>
+ </message>
+ <message>
+ <source>(no message)</source>
+ <translation type="unfinished">(нет сообщения)</translation>
+ </message>
+ <message>
+ <source>(no amount requested)</source>
+ <translation type="unfinished">(сумма не запрашивается)</translation>
+ </message>
+ <message>
+ <source>Requested</source>
+ <translation type="unfinished">Запрошенный</translation>
+ </message>
+</context>
+<context>
+ <name>SendCoinsDialog</name>
+ <message>
+ <source>Send Coins</source>
+ <translation type="unfinished">Отправить монеты</translation>
+ </message>
+ <message>
+ <source>Coin Control Features</source>
+ <translation type="unfinished">Особенности управления монетами</translation>
+ </message>
+ <message>
+ <source>automatically selected</source>
+ <translation type="unfinished">выбрано автоматически</translation>
+ </message>
+ <message>
+ <source>Insufficient funds!</source>
+ <translation type="unfinished">Недостаточно средств!</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">Количество:</translation>
+ </message>
+ <message>
+ <source>Bytes:</source>
+ <translation type="unfinished">Байты:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">Сумма:</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">Стоимость:</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">После оплаты:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">Изменить:</translation>
+ </message>
+ <message>
+ <source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source>
+ <translation type="unfinished">Если эта функция активирована, но адрес изменения пуст или недействителен, изменения будут отправлены на вновь созданный адрес.</translation>
+ </message>
+ <message>
+ <source>Custom change address</source>
+ <translation type="unfinished">Пользовательское изменение адреса</translation>
+ </message>
+ <message>
+ <source>Transaction Fee:</source>
+ <translation type="unfinished">Плата за транзакцию:</translation>
+ </message>
+ <message>
+ <source>Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain.</source>
+ <translation type="unfinished">Использование комиссии за откат может привести к отправке транзакции, подтверждение которой займет несколько часов или дней (или вообще никогда). Подумайте о том, чтобы выбрать комиссию вручную или подождать, пока вы не подтвердите всю цепочку.</translation>
+ </message>
+ <message>
+ <source>Warning: Fee estimation is currently not possible.</source>
+ <translation type="unfinished">Предупреждение: В настоящее время оценка гонорара невозможна.</translation>
+ </message>
+ <message>
+ <source>per kilobyte</source>
+ <translation type="unfinished">за килобайт</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">Скрыть</translation>
+ </message>
+ <message>
+ <source>Recommended:</source>
+ <translation type="unfinished">Рекомендуемые:</translation>
+ </message>
+ <message>
+ <source>Custom:</source>
+ <translation type="unfinished">Пользовательский:</translation>
+ </message>
+ <message>
+ <source>Send to multiple recipients at once</source>
+ <translation type="unfinished">Отправляйте сразу нескольким адресатам</translation>
+ </message>
+ <message>
+ <source>Add &amp;Recipient</source>
+ <translation type="unfinished">Добавить &amp;Получатель</translation>
+ </message>
+ <message>
+ <source>Clear all fields of the form.</source>
+ <translation type="unfinished">Очистите все поля формы.</translation>
+ </message>
+ <message>
+ <source>Inputs…</source>
+ <translation type="unfinished">Входы…</translation>
+ </message>
+ <message>
+ <source>Choose…</source>
+ <translation type="unfinished">Выбирайте…</translation>
+ </message>
+ <message>
+ <source>Hide transaction fee settings</source>
+ <translation type="unfinished">Скрыть настройки комиссии за транзакции</translation>
+ </message>
+ <message>
+ <source>Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size.
+
+Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satoshis per kvB" for a transaction size of 500 virtual bytes (half of 1 kvB) would ultimately yield a fee of only 50 satoshis.</source>
+ <translation type="unfinished">Укажите пользовательскую плату за кБ (1 000 байт) виртуального размера транзакции.
+
+Примечание: Поскольку плата рассчитывается на основе каждого байта, ставка платы "100 сатоши за кб" для транзакции размером 500 виртуальных байт (половина 1 кб) в конечном итоге даст плату всего в 50 сатоши.</translation>
+ </message>
+ <message>
+ <source>When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
+ <translation type="unfinished">Когда объем транзакций меньше, чем место в блоках, майнеры, а также узлы ретрансляции могут установить минимальную плату. Платить только минимальную комиссию - это прекрасно, но имейте в виду, что это может привести к тому, что транзакция никогда не будет подтверждена, когда спрос на транзакции биткоина будет больше, чем может обработать сеть.</translation>
+ </message>
+ <message>
+ <source>A too low fee might result in a never confirming transaction (read the tooltip)</source>
+ <translation type="unfinished">Слишком низкая комиссия может привести к тому, что транзакция не будет подтверждена (читайте всплывающую подсказку)</translation>
+ </message>
+ <message>
+ <source>(Smart fee not initialized yet. This usually takes a few blocks…)</source>
+ <translation type="unfinished">(Смарт-плата еще не инициализирована. Обычно это занимает несколько блоков...)</translation>
+ </message>
+ <message>
+ <source>Confirmation time target:</source>
+ <translation type="unfinished">Цель по времени подтверждения:</translation>
+ </message>
+ <message>
+ <source>Enable Replace-By-Fee</source>
+ <translation type="unfinished">Разрешить замену по цене</translation>
+ </message>
+ <message>
+ <source>With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk.</source>
+ <translation type="unfinished">С помощью функции Replace-By-Fee (BIP-125) вы можете увеличить комиссию за транзакцию после ее отправки. Без этого можно рекомендовать более высокую комиссию, чтобы компенсировать повышенный риск задержки транзакции.</translation>
+ </message>
+ <message>
+ <source>Clear &amp;All</source>
+ <translation type="unfinished">Очистить &amp;всё</translation>
+ </message>
+ <message>
+ <source>Balance:</source>
+ <translation type="unfinished">Баланс:</translation>
+ </message>
+ <message>
+ <source>Confirm the send action</source>
+ <translation type="unfinished">Подтвердите действие отправки</translation>
+ </message>
+ <message>
+ <source>Copy quantity</source>
+ <translation type="unfinished">Количество копий</translation>
+ </message>
+ <message>
+ <source>Copy amount</source>
+ <translation type="unfinished">Количество копий</translation>
+ </message>
+ <message>
+ <source>Copy fee</source>
+ <translation type="unfinished">Плата за копирование</translation>
+ </message>
+ <message>
+ <source>Copy after fee</source>
+ <translation type="unfinished">Копия после оплаты</translation>
+ </message>
+ <message>
+ <source>Copy bytes</source>
+ <translation type="unfinished">Копирование байтов</translation>
+ </message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">Копирование изменений</translation>
+ </message>
+ <message>
+ <source>%1 (%2 blocks)</source>
+ <translation type="unfinished">%1 (%2 bзамки)</translation>
+ </message>
+ <message>
+ <source>Sign on device</source>
+ <extracomment>"device" usually means a hardware wallet.</extracomment>
+ <translation type="unfinished">Вход на устройство</translation>
+ </message>
+ <message>
+ <source>Connect your hardware wallet first.</source>
+ <translation type="unfinished">Сначала подключите аппаратный кошелек.</translation>
+ </message>
+ <message>
+ <source>Set external signer script path in Options -&gt; Wallet</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Установите путь к скрипту внешнего подписчика в меню Параметры -&gt; Кошелек</translation>
+ </message>
+ <message>
+ <source>Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
+ <translation type="unfinished">Создает частично подписанную транзакцию биткоина (PSBT) для использования, например, с офлайн-кошельком %1 или аппаратным кошельком, совместимым с PSBT.</translation>
+ </message>
+ <message>
+ <source> from wallet '%1'</source>
+ <translation type="unfinished"> с кошелька "%1"</translation>
+ </message>
+ <message>
+ <source>%1 to '%2'</source>
+ <translation type="unfinished">%1 - '%2'</translation>
+ </message>
+ <message>
+ <source>%1 to %2</source>
+ <translation type="unfinished">от %1 до %2</translation>
+ </message>
+ <message>
+ <source>To review recipient list click "Show Details…"</source>
+ <translation type="unfinished">Чтобы просмотреть список получателей, нажмите "Показать детали..."</translation>
+ </message>
+ <message>
+ <source>Sign failed</source>
+ <translation type="unfinished">Знак не удался</translation>
+ </message>
+ <message>
+ <source>External signer not found</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Внешний подписант не найден</translation>
+ </message>
+ <message>
+ <source>External signer failure</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Отказ внешнего подписанта</translation>
+ </message>
+ <message>
+ <source>Save Transaction Data</source>
+ <translation type="unfinished">Сохранить данные транзакции</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (Binary)</source>
+ <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
+ <translation type="unfinished">Частично подписанная транзакция (двоичная)</translation>
+ </message>
+ <message>
+ <source>PSBT saved</source>
+ <extracomment>Popup message when a PSBT has been saved to a file</extracomment>
+ <translation type="unfinished">PSBT сохранен</translation>
+ </message>
+ <message>
+ <source>External balance:</source>
+ <translation type="unfinished">Внешний баланс:</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">или</translation>
+ </message>
+ <message>
+ <source>You can increase the fee later (signals Replace-By-Fee, BIP-125).</source>
+ <translation type="unfinished">Вы можете увеличить плату позже (сигналы Replace-By-Fee, BIP-125).</translation>
+ </message>
+ <message>
+ <source>Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
+ <extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can only create a PSBT. This string is displayed when private keys are disabled and an external signer is not available.</extracomment>
+ <translation type="unfinished">Пожалуйста, ознакомьтесь с вашим предложением по транзакции. В результате будет создана частично подписанная транзакция биткоина (PSBT), которую вы можете сохранить или скопировать, а затем подписать, например, с помощью офлайн-кошелька %1 или аппаратного кошелька, совместимого с PSBT.</translation>
+ </message>
+ <message>
+ <source>Do you want to create this transaction?</source>
+ <extracomment>Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</extracomment>
+ <translation type="unfinished">Хотите ли вы создать эту транзакцию?</translation>
+ </message>
+ <message>
+ <source>Please, review your transaction. You can create and send this transaction or create a Partially Signed Bitcoin Transaction (PSBT), which you can save or copy and then sign with, e.g., an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
+ <extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can send their transaction or create a PSBT. This string is displayed when both private keys and PSBT controls are enabled.</extracomment>
+ <translation type="unfinished">Пожалуйста, просмотрите вашу транзакцию. Вы можете создать и отправить эту транзакцию или создать частично подписанную транзакцию Биткойна (PSBT), которую вы можете сохранить или скопировать, а затем подписать, например, с помощью офлайн-кошелька %1 или аппаратного кошелька, совместимого с PSBT.</translation>
+ </message>
+ <message>
+ <source>Please, review your transaction.</source>
+ <extracomment>Text to prompt a user to review the details of the transaction they are attempting to send.</extracomment>
+ <translation type="unfinished">Пожалуйста, пересмотрите свою сделку.</translation>
+ </message>
+ <message>
+ <source>Transaction fee</source>
+ <translation type="unfinished">Плата за транзакцию</translation>
+ </message>
+ <message>
+ <source>Not signalling Replace-By-Fee, BIP-125.</source>
+ <translation type="unfinished">Не сигнализирует о замене, BIP-125.</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">Общая сумма</translation>
+ </message>
+ <message>
+ <source>Unsigned Transaction</source>
+ <comment>PSBT copied</comment>
+ <extracomment>Caption of "PSBT has been copied" messagebox</extracomment>
+ <translation type="unfinished">Беззнаковая транзакция</translation>
+ </message>
+ <message>
+ <source>The PSBT has been copied to the clipboard. You can also save it.</source>
+ <translation type="unfinished">PSBT был скопирован в буфер обмена. Вы также можете сохранить его.</translation>
+ </message>
+ <message>
+ <source>PSBT saved to disk</source>
+ <translation type="unfinished">Сохранение PSBT на диск</translation>
+ </message>
+ <message>
+ <source>Confirm send coins</source>
+ <translation type="unfinished">Подтвердите отправку монет</translation>
+ </message>
+ <message>
+ <source>Watch-only balance:</source>
+ <translation type="unfinished">Баланс только для часов:</translation>
+ </message>
+ <message>
+ <source>The recipient address is not valid. Please recheck.</source>
+ <translation type="unfinished">Адрес получателя недействителен. Пожалуйста, перепроверьте.</translation>
+ </message>
+ <message>
+ <source>The amount to pay must be larger than 0.</source>
+ <translation type="unfinished">Сумма к оплате должна быть больше 0.</translation>
+ </message>
+ <message>
+ <source>The amount exceeds your balance.</source>
+ <translation type="unfinished">Сумма превышает ваш баланс.</translation>
+ </message>
+ <message>
+ <source>The total exceeds your balance when the %1 transaction fee is included.</source>
+ <translation type="unfinished">Общая сумма превышает ваш баланс с учетом комиссии за транзакцию %1.</translation>
+ </message>
+ <message>
+ <source>Duplicate address found: addresses should only be used once each.</source>
+ <translation type="unfinished">Найден дубликат адреса: адреса должны использоваться только один раз.</translation>
+ </message>
+ <message>
+ <source>Transaction creation failed!</source>
+ <translation type="unfinished">Создание транзакции не удалось!</translation>
+ </message>
+ <message>
+ <source>A fee higher than %1 is considered an absurdly high fee.</source>
+ <translation type="unfinished">Плата, превышающая %1, считается абсурдно высокой.</translation>
+ </message>
+ <message numerus="yes">
+ <source>Estimated to begin confirmation within %n block(s).</source>
+ <translation type="unfinished">
+ <numerusform>Предполагается начать подтверждение в течение %n квартала(ов).</numerusform>
+ <numerusform>Предполагается начать подтверждение в течение %n квартала(ов).</numerusform>
+ <numerusform>Предполагается начать подтверждение в течение %n квартала(ов).</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>Warning: Invalid Bitcoin address</source>
+ <translation type="unfinished">Предупреждение: Недействительный адрес Bitcoin</translation>
+ </message>
+ <message>
+ <source>Warning: Unknown change address</source>
+ <translation type="unfinished">Предупреждение: Неизвестный адрес изменения</translation>
+ </message>
+ <message>
+ <source>Confirm custom change address</source>
+ <translation type="unfinished">Подтверждение изменения пользовательского адреса</translation>
+ </message>
+ <message>
+ <source>The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure?</source>
+ <translation type="unfinished">Адрес, выбранный вами для изменения, не является частью этого кошелька. Все или все средства в вашем кошельке могут быть отправлены на этот адрес. Вы уверены?</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без ярлыка)</translation>
+ </message>
+</context>
+<context>
+ <name>SendCoinsEntry</name>
+ <message>
+ <source>Pay &amp;To:</source>
+ <translation type="unfinished">Оплатить и получить:</translation>
+ </message>
+ <message>
+ <source>Choose previously used address</source>
+ <translation type="unfinished">Выберите ранее использовавшийся адрес</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address to send the payment to</source>
+ <translation type="unfinished">Адрес Bitcoin для отправки платежа</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <translation type="unfinished">Вставить адрес из буфера обмена</translation>
+ </message>
+ <message>
+ <source>Remove this entry</source>
+ <translation type="unfinished">Удалить эту запись</translation>
+ </message>
+ <message>
+ <source>The amount to send in the selected unit</source>
+ <translation type="unfinished">Сумма для отправки в выбранных единицах измерения</translation>
+ </message>
+ <message>
+ <source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source>
+ <translation type="unfinished">Комиссия будет вычтена из отправляемой суммы. Получатель получит меньше биткоинов, чем вы указали в поле "Сумма". Если выбрано несколько получателей, комиссия делится поровну.</translation>
+ </message>
+ <message>
+ <source>S&amp;ubtract fee from amount</source>
+ <translation type="unfinished">Вычесть комиссию из суммы</translation>
+ </message>
+ <message>
+ <source>Use available balance</source>
+ <translation type="unfinished">Использовать свободный остаток</translation>
+ </message>
+ <message>
+ <source>Message:</source>
+ <translation type="unfinished">Сообщение:</translation>
+ </message>
+ <message>
+ <source>Enter a label for this address to add it to the list of used addresses</source>
+ <translation type="unfinished">Введите метку для этого адреса, чтобы добавить его в список используемых адресов</translation>
+ </message>
+ <message>
+ <source>A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network.</source>
+ <translation type="unfinished">Сообщение, прикрепленное к bitcoin: URI, которое будет сохранено вместе с транзакцией для справки. Примечание: Это сообщение не будет отправлено по сети Bitcoin.</translation>
+ </message>
+</context>
+<context>
+ <name>SendConfirmationDialog</name>
+ <message>
+ <source>Send</source>
+ <translation type="unfinished">Отправить</translation>
+ </message>
+ <message>
+ <source>Create Unsigned</source>
+ <translation type="unfinished">Создать без знака</translation>
+ </message>
+</context>
+<context>
+ <name>SignVerifyMessageDialog</name>
+ <message>
+ <source>Signatures - Sign / Verify a Message</source>
+ <translation type="unfinished">Подписи - Подписать/проверить сообщение</translation>
+ </message>
+ <message>
+ <source>&amp;Sign Message</source>
+ <translation type="unfinished">&amp;Подписать сообщение</translation>
+ </message>
+ <message>
+ <source>You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source>
+ <translation type="unfinished">Вы можете подписывать сообщения/соглашения со своими адресами, чтобы подтвердить, что можете получать отправленные на них биткоины. Будьте осторожны и не подписывайте ничего расплывчатого или случайного, так как фишинговые атаки могут попытаться обмануть вас, чтобы вы передали им свои данные. Подписывайте только полностью подробные заявления, с которыми вы согласны.</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address to sign the message with</source>
+ <translation type="unfinished">Адрес Bitcoin для подписи сообщения</translation>
+ </message>
+ <message>
+ <source>Choose previously used address</source>
+ <translation type="unfinished">Выберите ранее использовавшийся адрес</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <translation type="unfinished">Вставить адрес из буфера обмена</translation>
+ </message>
+ <message>
+ <source>Enter the message you want to sign here</source>
+ <translation type="unfinished">Введите сообщение, которое вы хотите подписать</translation>
+ </message>
+ <message>
+ <source>Signature</source>
+ <translation type="unfinished">Подпись</translation>
+ </message>
+ <message>
+ <source>Copy the current signature to the system clipboard</source>
+ <translation type="unfinished">Копирование текущей подписи в системный буфер обмена</translation>
+ </message>
+ <message>
+ <source>Sign the message to prove you own this Bitcoin address</source>
+ <translation type="unfinished">Подпишите сообщение, чтобы доказать, что вы являетесь владельцем этого адреса Bitcoin</translation>
+ </message>
+ <message>
+ <source>Sign &amp;Message</source>
+ <translation type="unfinished">Подпись и сообщение</translation>
+ </message>
+ <message>
+ <source>Reset all sign message fields</source>
+ <translation type="unfinished">Сброс всех полей сообщения знака</translation>
+ </message>
+ <message>
+ <source>Clear &amp;All</source>
+ <translation type="unfinished">Очистить &amp;всё</translation>
+ </message>
+ <message>
+ <source>&amp;Verify Message</source>
+ <translation type="unfinished">&amp;Верьте сообщение</translation>
+ </message>
+ <message>
+ <source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source>
+ <translation type="unfinished">Введите адрес получателя, сообщение (убедитесь, что вы точно скопировали переносы строк, пробелы, табуляции и т. д.) и подпись ниже, чтобы проверить сообщение. Будьте осторожны и не читайте в подписи больше, чем содержится в самом подписанном сообщении, чтобы избежать обмана при атаке "человек посередине". Обратите внимание, что подпись подтверждает только получение адреса стороной, подписавшей сообщение, и не может служить доказательством отправки какой-либо транзакции!</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address the message was signed with</source>
+ <translation type="unfinished">Bitcoin-адрес, которым было подписано сообщение</translation>
+ </message>
+ <message>
+ <source>The signed message to verify</source>
+ <translation type="unfinished">Подписанное сообщение для проверки</translation>
+ </message>
+ <message>
+ <source>The signature given when the message was signed</source>
+ <translation type="unfinished">Подпись, поставленная при подписании сообщения</translation>
+ </message>
+ <message>
+ <source>Verify the message to ensure it was signed with the specified Bitcoin address</source>
+ <translation type="unfinished">Проверьте сообщение, чтобы убедиться, что оно было подписано указанным Bitcoin-адресом</translation>
+ </message>
+ <message>
+ <source>Verify &amp;Message</source>
+ <translation type="unfinished">Проверить &amp;Сообщение</translation>
+ </message>
+ <message>
+ <source>Reset all verify message fields</source>
+ <translation type="unfinished">Сброс всех полей сообщения о проверке</translation>
+ </message>
+ <message>
+ <source>Click "Sign Message" to generate signature</source>
+ <translation type="unfinished">Нажмите "Подписать сообщение", чтобы создать подпись</translation>
+ </message>
+ <message>
+ <source>The entered address is invalid.</source>
+ <translation type="unfinished">Введенный адрес недействителен.</translation>
+ </message>
+ <message>
+ <source>Please check the address and try again.</source>
+ <translation type="unfinished">Пожалуйста, проверьте адрес и повторите попытку.</translation>
+ </message>
+ <message>
+ <source>The entered address does not refer to a key.</source>
+ <translation type="unfinished">Введенный адрес не относится к ключу.</translation>
+ </message>
+ <message>
+ <source>Wallet unlock was cancelled.</source>
+ <translation type="unfinished">Разблокировка кошелька была отменена.</translation>
+ </message>
+ <message>
+ <source>No error</source>
+ <translation type="unfinished">Нет ошибки</translation>
+ </message>
+ <message>
+ <source>Private key for the entered address is not available.</source>
+ <translation type="unfinished">Закрытый ключ для введенного адреса недоступен.</translation>
+ </message>
+ <message>
+ <source>Message signing failed.</source>
+ <translation type="unfinished">Не удалось подписать сообщение.</translation>
+ </message>
+ <message>
+ <source>Message signed.</source>
+ <translation type="unfinished">Сообщение подписано.</translation>
+ </message>
+ <message>
+ <source>The signature could not be decoded.</source>
+ <translation type="unfinished">Подпись не удалось расшифровать.</translation>
+ </message>
+ <message>
+ <source>Please check the signature and try again.</source>
+ <translation type="unfinished">Пожалуйста, проверьте подпись и повторите попытку.</translation>
+ </message>
+ <message>
+ <source>The signature did not match the message digest.</source>
+ <translation type="unfinished">Подпись не совпадает с дайджестом сообщения.</translation>
+ </message>
+ <message>
+ <source>Message verification failed.</source>
+ <translation type="unfinished">Проверка сообщения не удалась.</translation>
+ </message>
+ <message>
+ <source>Message verified.</source>
+ <translation type="unfinished">Сообщение проверено.</translation>
+ </message>
+</context>
+<context>
+ <name>SplashScreen</name>
+ <message>
+ <source>(press q to shutdown and continue later)</source>
+ <translation type="unfinished">(нажмите q, чтобы выключить и продолжить позже)</translation>
+ </message>
+ <message>
+ <source>press q to shutdown</source>
+ <translation type="unfinished">нажмите q для выключения</translation>
+ </message>
+</context>
+<context>
+ <name>TrafficGraphWidget</name>
+ <message>
+ <source>kB/s</source>
+ <translation type="unfinished">кБ/с</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionDesc</name>
+ <message>
+ <source>conflicted with a transaction with %1 confirmations</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that conflicts with a confirmed transaction.</extracomment>
+ <translation type="unfinished">вступил в конфликт с транзакцией с %1 cонфармацией</translation>
+ </message>
+ <message>
+ <source>0/unconfirmed, in memory pool</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
+ <translation type="unfinished">0/не подтверждено, в пуле памяти</translation>
+ </message>
+ <message>
+ <source>0/unconfirmed, not in memory pool</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
+ <translation type="unfinished">0/не подтверждено, нет в пуле памяти</translation>
+ </message>
+ <message>
+ <source>abandoned</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an abandoned transaction.</extracomment>
+ <translation type="unfinished">заброшенный</translation>
+ </message>
+ <message>
+ <source>%1/unconfirmed</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in at least one block, but less than 6 blocks.</extracomment>
+ <translation type="unfinished">%1/не подтверждено</translation>
+ </message>
+ <message>
+ <source>Status</source>
+ <translation type="unfinished">Статус</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Дата</translation>
+ </message>
+ <message>
+ <source>Source</source>
+ <translation type="unfinished">Источник</translation>
+ </message>
+ <message>
+ <source>Generated</source>
+ <translation type="unfinished">Сформировано</translation>
+ </message>
+ <message>
+ <source>From</source>
+ <translation type="unfinished">От</translation>
+ </message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">неизвестно</translation>
+ </message>
+ <message>
+ <source>To</source>
+ <translation type="unfinished">Кому</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">собственный адрес</translation>
+ </message>
+ <message>
+ <source>watch-only</source>
+ <translation type="unfinished">только для просмотра</translation>
+ </message>
+ <message>
+ <source>label</source>
+ <translation type="unfinished">метка</translation>
+ </message>
+ <message>
+ <source>Credit</source>
+ <translation type="unfinished">Кредит</translation>
+ </message>
+ <message numerus="yes">
+ <source>matures in %n more block(s)</source>
+ <translation type="unfinished">
+ <numerusform>созревает в %n большем количестве блоков</numerusform>
+ <numerusform>созревает в %n большем количестве блоков</numerusform>
+ <numerusform>созревает в %n большем количестве блоков</numerusform>
+ </translation>
+ </message>
+ <message>
+ <source>not accepted</source>
+ <translation type="unfinished">не принято</translation>
+ </message>
+ <message>
+ <source>Debit</source>
+ <translation type="unfinished">Дебет</translation>
+ </message>
+ <message>
+ <source>Total debit</source>
+ <translation type="unfinished">Итого по дебету</translation>
+ </message>
+ <message>
+ <source>Total credit</source>
+ <translation type="unfinished">Общий кредит</translation>
+ </message>
+ <message>
+ <source>Transaction fee</source>
+ <translation type="unfinished">Плата за транзакцию</translation>
+ </message>
+ <message>
+ <source>Net amount</source>
+ <translation type="unfinished">Чистая сумма</translation>
+ </message>
+ <message>
+ <source>Message</source>
+ <translation type="unfinished">Сообщение</translation>
+ </message>
+ <message>
+ <source>Comment</source>
+ <translation type="unfinished">Комментарий</translation>
+ </message>
+ <message>
+ <source>Transaction ID</source>
+ <translation type="unfinished">ID транзакции</translation>
+ </message>
+ <message>
+ <source>Transaction total size</source>
+ <translation type="unfinished">Общий размер транзакции</translation>
+ </message>
+ <message>
+ <source>Transaction virtual size</source>
+ <translation type="unfinished">Виртуальный размер транзакции</translation>
+ </message>
+ <message>
+ <source>Output index</source>
+ <translation type="unfinished">Выходной индекс</translation>
+ </message>
+ <message>
+ <source> (Certificate was not verified)</source>
+ <translation type="unfinished"> (Сертификат не был проверен)</translation>
+ </message>
+ <message>
+ <source>Merchant</source>
+ <translation type="unfinished">Продавец</translation>
+ </message>
+ <message>
+ <source>Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source>
+ <translation type="unfinished">Сгенерированные монеты должны созреть до %1 bзамков, прежде чем их можно будет потратить. Когда вы сгенерировали этот блок, он был передан в сеть для добавления в цепочку блоков. Если он не попадет в цепочку, его состояние изменится на "не принят", и его нельзя будет потратить. Это может иногда происходить, если другой узел генерирует блок в течение нескольких секунд после вашего.</translation>
+ </message>
+ <message>
+ <source>Debug information</source>
+ <translation type="unfinished">Информация для отладки</translation>
+ </message>
+ <message>
+ <source>Transaction</source>
+ <translation type="unfinished">Транзакция</translation>
+ </message>
+ <message>
+ <source>Inputs</source>
+ <translation type="unfinished">Входы</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">Сумма</translation>
+ </message>
+ <message>
+ <source>true</source>
+ <translation type="unfinished">верно</translation>
+ </message>
+ <message>
+ <source>false</source>
+ <translation type="unfinished">ложный</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionDescDialog</name>
+ <message>
+ <source>This pane shows a detailed description of the transaction</source>
+ <translation type="unfinished">На этой панели отображается подробное описание транзакции</translation>
+ </message>
+ <message>
+ <source>Details for %1</source>
+ <translation type="unfinished">Подробности для %1</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionTableModel</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Дата</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <translation type="unfinished">Тип</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Метка</translation>
+ </message>
+ <message>
+ <source>Unconfirmed</source>
+ <translation type="unfinished">Не подтверждено</translation>
+ </message>
+ <message>
+ <source>Abandoned</source>
+ <translation type="unfinished">Заброшенный</translation>
+ </message>
+ <message>
+ <source>Confirming (%1 of %2 recommended confirmations)</source>
+ <translation type="unfinished">Подтверждение (%1 of %2 рекомендуемых подтверждений)</translation>
+ </message>
+ <message>
+ <source>Confirmed (%1 confirmations)</source>
+ <translation type="unfinished">Подтверждено (%1 confirmations)</translation>
+ </message>
+ <message>
+ <source>Conflicted</source>
+ <translation type="unfinished">Противоречие</translation>
+ </message>
+ <message>
+ <source>Immature (%1 confirmations, will be available after %2)</source>
+ <translation type="unfinished">Незрелые (%1 cна подтверждения, будут доступны после %2)</translation>
+ </message>
+ <message>
+ <source>Generated but not accepted</source>
+ <translation type="unfinished">Сгенерировано, но не принято</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">Получено с</translation>
+ </message>
+ <message>
+ <source>Received from</source>
+ <translation type="unfinished">Получено от</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">Отправлен</translation>
+ </message>
+ <message>
+ <source>Mined</source>
+ <translation type="unfinished">Добыча</translation>
+ </message>
+ <message>
+ <source>watch-only</source>
+ <translation type="unfinished">только для просмотра</translation>
+ </message>
+ <message>
+ <source>(no label)</source>
+ <translation type="unfinished">(без ярлыка)</translation>
+ </message>
+ <message>
+ <source>Transaction status. Hover over this field to show number of confirmations.</source>
+ <translation type="unfinished">Статус транзакции. Наведите курсор на это поле, чтобы показать количество подтверждений.</translation>
+ </message>
+ <message>
+ <source>Date and time that the transaction was received.</source>
+ <translation type="unfinished">Дата и время получения транзакции.</translation>
+ </message>
+ <message>
+ <source>Type of transaction.</source>
+ <translation type="unfinished">Тип сделки.</translation>
+ </message>
+ <message>
+ <source>Whether or not a watch-only address is involved in this transaction.</source>
+ <translation type="unfinished">Участвует ли в этой транзакции адрес только для часов.</translation>
+ </message>
+ <message>
+ <source>User-defined intent/purpose of the transaction.</source>
+ <translation type="unfinished">Определяемое пользователем намерение/цель транзакции.</translation>
+ </message>
+ <message>
+ <source>Amount removed from or added to balance.</source>
+ <translation type="unfinished">Сумма, снятая с баланса или добавленная к нему.</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionView</name>
+ <message>
+ <source>All</source>
+ <translation type="unfinished">Все</translation>
+ </message>
+ <message>
+ <source>Today</source>
+ <translation type="unfinished">Сегодня</translation>
+ </message>
+ <message>
+ <source>This week</source>
+ <translation type="unfinished">Эта неделя</translation>
+ </message>
+ <message>
+ <source>This month</source>
+ <translation type="unfinished">Этот месяц</translation>
+ </message>
+ <message>
+ <source>Last month</source>
+ <translation type="unfinished">Прошлый месяц</translation>
+ </message>
+ <message>
+ <source>This year</source>
+ <translation type="unfinished">Этот год</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">Получено с</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">Отправлен</translation>
+ </message>
+ <message>
+ <source>Mined</source>
+ <translation type="unfinished">Добыча</translation>
+ </message>
+ <message>
+ <source>Other</source>
+ <translation type="unfinished">Другое</translation>
+ </message>
+ <message>
+ <source>Enter address, transaction id, or label to search</source>
+ <translation type="unfinished">Введите адрес, идентификатор транзакции или метку для поиска</translation>
+ </message>
+ <message>
+ <source>Min amount</source>
+ <translation type="unfinished">Минимальная сумма</translation>
+ </message>
+ <message>
+ <source>Range…</source>
+ <translation type="unfinished">Диапазон…</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">&amp;Копировать адрес</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">Копия и этикетка</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">Копия &amp;amount</translation>
+ </message>
+ <message>
+ <source>Copy transaction &amp;ID</source>
+ <translation type="unfinished">Копирование транзакции &amp;ID</translation>
+ </message>
+ <message>
+ <source>Copy &amp;raw transaction</source>
+ <translation type="unfinished">Копирование и вывод транзакции</translation>
+ </message>
+ <message>
+ <source>Copy full transaction &amp;details</source>
+ <translation type="unfinished">Копирование полной транзакции и подробностей</translation>
+ </message>
+ <message>
+ <source>&amp;Show transaction details</source>
+ <translation type="unfinished">показать детали транзакции</translation>
+ </message>
+ <message>
+ <source>Increase transaction &amp;fee</source>
+ <translation type="unfinished">Увеличение транзакционных сборов</translation>
+ </message>
+ <message>
+ <source>&amp;Edit address label</source>
+ <translation type="unfinished">&amp;Редактировать адресную этикетку</translation>
+ </message>
+ <message>
+ <source>Show in %1</source>
+ <extracomment>Transactions table context menu action to show the selected transaction in a third-party block explorer. %1 is a stand-in argument for the URL of the explorer.</extracomment>
+ <translation type="unfinished">Показать в %1</translation>
+ </message>
+ <message>
+ <source>Export Transaction History</source>
+ <translation type="unfinished">Экспорт истории транзакций</translation>
+ </message>
+ <message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">Файл, разделенный запятыми</translation>
+ </message>
+ <message>
+ <source>Confirmed</source>
+ <translation type="unfinished">Подтверждено</translation>
+ </message>
+ <message>
+ <source>Watch-only</source>
+ <translation type="unfinished">Только для просмотра</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">Дата</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <translation type="unfinished">Тип</translation>
+ </message>
+ <message>
+ <source>Label</source>
+ <translation type="unfinished">Метка</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">Адрес</translation>
+ </message>
+ <message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">Ошибка экспорта</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the transaction history to %1.</source>
+ <translation type="unfinished">При попытке сохранить историю транзакций в %1 произошла ошибка.</translation>
+ </message>
+ <message>
+ <source>Exporting Successful</source>
+ <translation type="unfinished">Успешный экспорт</translation>
+ </message>
+ <message>
+ <source>The transaction history was successfully saved to %1.</source>
+ <translation type="unfinished">История транзакций была успешно сохранена в %1.</translation>
+ </message>
+ <message>
+ <source>Range:</source>
+ <translation type="unfinished">Диапазон:</translation>
+ </message>
+ <message>
+ <source>to</source>
+ <translation type="unfinished">в</translation>
+ </message>
+</context>
+<context>
+ <name>WalletFrame</name>
+ <message>
+ <source>No wallet has been loaded.
+Go to File &gt; Open Wallet to load a wallet.
+- OR -</source>
+ <translation type="unfinished">Не загружен ни один кошелек.
+Перейдите в меню Файл &gt; Открыть кошелек, чтобы загрузить кошелек.
+- ИЛИ -</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Создайте новый кошелек</translation>
+ </message>
+ <message>
+ <source>Error</source>
+ <translation type="unfinished">Ошибка</translation>
+ </message>
+ <message>
+ <source>Unable to decode PSBT from clipboard (invalid base64)</source>
+ <translation type="unfinished">Невозможно декодировать PSBT из буфера обмена (недопустимый base64)</translation>
+ </message>
+ <message>
+ <source>Load Transaction Data</source>
+ <translation type="unfinished">Загрузка данных о транзакциях</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (*.psbt)</source>
+ <translation type="unfinished">Частично подписанная транзакция (*.psbt)</translation>
+ </message>
+ <message>
+ <source>PSBT file must be smaller than 100 MiB</source>
+ <translation type="unfinished">Файл PSBT должен иметь размер менее 100 Мбайт</translation>
+ </message>
+ <message>
+ <source>Unable to decode PSBT</source>
+ <translation type="unfinished">Невозможно декодировать PSBT</translation>
+ </message>
+</context>
+<context>
+ <name>WalletModel</name>
+ <message>
+ <source>Send Coins</source>
+ <translation type="unfinished">Отправить монеты</translation>
+ </message>
+ <message>
+ <source>Fee bump error</source>
+ <translation type="unfinished">Ошибка при взимании платы</translation>
+ </message>
+ <message>
+ <source>Increasing transaction fee failed</source>
+ <translation type="unfinished">Увеличение комиссии за транзакции не удалось</translation>
+ </message>
+ <message>
+ <source>Do you want to increase the fee?</source>
+ <extracomment>Asks a user if they would like to manually increase the fee of a transaction that has already been created.</extracomment>
+ <translation type="unfinished">Хотите ли вы увеличить плату?</translation>
+ </message>
+ <message>
+ <source>Current fee:</source>
+ <translation type="unfinished">Текущая плата:</translation>
+ </message>
+ <message>
+ <source>Increase:</source>
+ <translation type="unfinished">Увеличить:</translation>
+ </message>
+ <message>
+ <source>New fee:</source>
+ <translation type="unfinished">Новый сбор:</translation>
+ </message>
+ <message>
+ <source>Warning: This may pay the additional fee by reducing change outputs or adding inputs, when necessary. It may add a new change output if one does not already exist. These changes may potentially leak privacy.</source>
+ <translation type="unfinished">Внимание: Это может оплатить дополнительную плату за счет сокращения выходов изменений или добавления входов, если это необходимо. Он может добавить новый выход изменений, если таковой еще не существует. Эти изменения потенциально могут привести к утечке конфиденциальной информации.</translation>
+ </message>
+ <message>
+ <source>Confirm fee bump</source>
+ <translation type="unfinished">Подтвердите увеличение платы</translation>
+ </message>
+ <message>
+ <source>Can't draft transaction.</source>
+ <translation type="unfinished">Невозможно составить проект сделки.</translation>
+ </message>
+ <message>
+ <source>PSBT copied</source>
+ <translation type="unfinished">PSBT скопирован</translation>
+ </message>
+ <message>
+ <source>Copied to clipboard</source>
+ <comment>Fee-bump PSBT saved</comment>
+ <translation type="unfinished">Скопировано в буфер обмена</translation>
+ </message>
+ <message>
+ <source>Can't sign transaction.</source>
+ <translation type="unfinished">Невозможно подписать транзакцию.</translation>
+ </message>
+ <message>
+ <source>Could not commit transaction</source>
+ <translation type="unfinished">Не удалось зафиксировать транзакцию</translation>
+ </message>
+ <message>
+ <source>Can't display address</source>
+ <translation type="unfinished">Невозможно отобразить адрес</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">основной кошелёк</translation>
+ </message>
+</context>
+<context>
+ <name>WalletView</name>
+ <message>
+ <source>&amp;Export</source>
+ <translation type="unfinished">&amp;Экспорт</translation>
+ </message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Экспорт данных на текущей вкладке в файл</translation>
+ </message>
+ <message>
+ <source>Backup Wallet</source>
+ <translation type="unfinished">Резервный кошелек</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Данные кошелька</translation>
+ </message>
+ <message>
+ <source>Backup Failed</source>
+ <translation type="unfinished">Сбой Резервного копирования</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the wallet data to %1.</source>
+ <translation type="unfinished">При попытке сохранить данные кошелька в %1 произошла ошибка.</translation>
+ </message>
+ <message>
+ <source>Backup Successful</source>
+ <translation type="unfinished">Резервное копирование Выполнено</translation>
+ </message>
+ <message>
+ <source>The wallet data was successfully saved to %1.</source>
+ <translation type="unfinished">Данные кошелька были успешно сохранены в %1.</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">Отмена</translation>
+ </message>
+</context>
+<context>
+ <name>bitcoin-core</name>
+ <message>
+ <source>The %s developers</source>
+ <translation type="unfinished">Разработчики %s</translation>
+ </message>
+ <message>
+ <source>%s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup.</source>
+ <translation type="unfinished">%s поврежден. Попробуйте использовать инструмент кошелька bitcoin-wallet для спасения или восстановить резервную копию.</translation>
+ </message>
+ <message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s не удалось подтвердить состояние моментального снимка -assumeutxo. Это указывает на аппаратную проблему, или ошибку в программном обеспечении, или неудачную модификацию программного обеспечения, которая позволила загрузить недопустимый снимок. В результате этого узел выключится и перестанет использовать любое состояние, которое было построено на основе моментального снимка, сбросив высоту цепочки с %d на %d. При следующем перезапуске узел возобновит синхронизацию с %d без использования данных моментального снимка. Сообщите об этом инциденте по адресу %s, указав, как вы получили снимок. Состояние цепи недействительного снимка будет оставлено на диске, если оно поможет в диагностике проблемы, вызвавшей эту ошибку.</translation>
+ </message>
+ <message>
+ <source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
+ <translation type="unfinished">%s запрос на прослушивание порта %u. Этот порт считается "плохим", и поэтому маловероятно, что какой-либо пир подключится к нему. Подробности и полный список смотрите в doc/p2p-bad-ports.md.</translation>
+ </message>
+ <message>
+ <source>Cannot downgrade wallet from version %i to version %i. Wallet version unchanged.</source>
+ <translation type="unfinished">Невозможно понизить версию кошелька с версии %i до версии %i. Версия кошелька не изменена.</translation>
+ </message>
+ <message>
+ <source>Cannot obtain a lock on data directory %s. %s is probably already running.</source>
+ <translation type="unfinished">Невозможно получить блокировку на каталог данных %s. %s, вероятно, уже запущен.</translation>
+ </message>
+ <message>
+ <source>Cannot upgrade a non HD split wallet from version %i to version %i without upgrading to support pre-split keypool. Please use version %i or no version specified.</source>
+ <translation type="unfinished">Невозможно обновить кошелек без HD-раздела с версии %i до версии %i без обновления для поддержки предварительного разделения пула ключей. Пожалуйста, используйте версию %i или не указывайте версию.</translation>
+ </message>
+ <message>
+ <source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
+ <translation type="unfinished">Дисковое пространство для %s может не вместить блочные файлы. В этом каталоге будет храниться около %u ГБ данных.</translation>
+ </message>
+ <message>
+ <source>Distributed under the MIT software license, see the accompanying file %s or %s</source>
+ <translation type="unfinished">Распространяется под лицензией MIT, см. сопроводительный файл %s или %s</translation>
+ </message>
+ <message>
+ <source>Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
+ <translation type="unfinished">Ошибка при загрузке кошелька. Кошелек требует загрузки блоков, а программное обеспечение в настоящее время не поддерживает загрузку кошельков, когда блоки загружаются не по порядку при использовании снапшотов assumeutxo. Кошелек должен успешно загрузиться после того, как синхронизация узла достигнет высоты %s</translation>
+ </message>
+ <message>
+ <source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
+ <translation type="unfinished">Ошибка при считывании %s! Данные транзакции могут отсутствовать или быть неверными. Повторное сканирование кошелька.</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
+ <translation type="unfinished">Ошибка: Неверная запись формата дамп-файла. Получено "%s", ожидалось "format".</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile identifier record is incorrect. Got "%s", expected "%s".</source>
+ <translation type="unfinished">Ошибка: Неверная запись идентификатора дамп-файла. Получено "%s", ожидалось "%s".</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
+ <translation type="unfinished">Ошибка: Версия дампфайла не поддерживается. Эта версия bitcoin-кошелька поддерживает только дампфайлы версии 1. Получен дампфайл с версией %s</translation>
+ </message>
+ <message>
+ <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
+ <translation type="unfinished">Ошибка: устаревшие кошельки поддерживают только следующие типы адресов: "legacy", "p2sh-segwit", и "bech32"</translation>
+ </message>
+ <message>
+ <source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
+ <translation type="unfinished">Ошибка: Невозможно создать дескрипторы для этого устаревшего кошелька. Обязательно укажите кодовую фразу кошелька, если он зашифрован.</translation>
+ </message>
+ <message>
+ <source>File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
+ <translation type="unfinished">Файл %s уже существует. Если вы уверены, что это именно то, что вам нужно, сначала переместите его в другое место.</translation>
+ </message>
+ <message>
+ <source>Invalid or corrupt peers.dat (%s). If you believe this is a bug, please report it to %s. As a workaround, you can move the file (%s) out of the way (rename, move, or delete) to have a new one created on the next start.</source>
+ <translation type="unfinished">Неверный или поврежденный файл peers.dat (%s). Если вы считаете, что это ошибка, сообщите об этом по адресу %s. В качестве обходного пути вы можете переместить файл (%s) из пути (переименовать, переместить или удалить), чтобы при следующем запуске был создан новый.</translation>
+ </message>
+ <message>
+ <source>More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
+ <translation type="unfinished">Предоставляется более одного адреса привязки onion. Используйте %s для автоматически созданного сервиса Tor onion.</translation>
+ </message>
+ <message>
+ <source>No dump file provided. To use createfromdump, -dumpfile=&lt;filename&gt; must be provided.</source>
+ <translation type="unfinished">Не указан дамп-файл. Чтобы использовать createfromdump, необходимо указать -dumpfile=&lt;filename&gt;.</translation>
+ </message>
+ <message>
+ <source>No dump file provided. To use dump, -dumpfile=&lt;filename&gt; must be provided.</source>
+ <translation type="unfinished">Не указан дамп-файл. Чтобы использовать dump, необходимо указать -dumpfile=&lt;filename&gt;.</translation>
+ </message>
+ <message>
+ <source>No wallet file format provided. To use createfromdump, -format=&lt;format&gt; must be provided.</source>
+ <translation type="unfinished">Не указан формат файла кошелька. Чтобы использовать createfromdump, необходимо указать -format=&lt;format&gt;.</translation>
+ </message>
+ <message>
+ <source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
+ <translation type="unfinished">Убедитесь, что дата и время на вашем компьютере верны! Если часы неправильные, %s не будет работать должным образом.</translation>
+ </message>
+ <message>
+ <source>Please contribute if you find %s useful. Visit %s for further information about the software.</source>
+ <translation type="unfinished">Пожалуйста, внесите свой вклад, если вы нашли %s полезным. Посетите %s для получения дополнительной информации о программном обеспечении.</translation>
+ </message>
+ <message>
+ <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source>
+ <translation type="unfinished">Обрезка конфигурации ниже минимального значения %d MiB. Пожалуйста, используйте большее число.</translation>
+ </message>
+ <message>
+ <source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
+ <translation type="unfinished">Режим Prune несовместим с -reindex-chainstate. Вместо этого используйте полный -reindex.</translation>
+ </message>
+ <message>
+ <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
+ <translation type="unfinished">Prune: последняя синхронизация кошелька выходит за пределы обрезанных данных. Вам необходимо -переиндексировать (загрузить весь блокчейн заново в случае обрезанного узла)</translation>
+ </message>
+ <message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Не удалось выполнить переименование '%s' -&gt; '%s'. Вы должны решить эту проблему, вручную переместив или удалив недействительный каталог моментальных снимков %s, иначе при следующем запуске вы снова столкнетесь с той же ошибкой.</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
+ <translation type="unfinished">SQLiteDatabase: Неизвестная схема кошелька sqlite версии %d. Поддерживается только версия %d</translation>
+ </message>
+ <message>
+ <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
+ <translation type="unfinished">В базе данных блоков найден блок из будущего. Это может произойти из-за неверно установленных даты и времени на вашем компьютере. Перестраивайте базу данных блоков только если вы уверены, что дата и время установлены верно</translation>
+ </message>
+ <message>
+ <source>The transaction amount is too small to send after the fee has been deducted</source>
+ <translation type="unfinished">Сумма транзакции слишком мала для отправки после вычета комиссии</translation>
+ </message>
+ <message>
+ <source>This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet</source>
+ <translation type="unfinished">Эта ошибка может возникнуть, если этот кошелек не был выключен без ошибок и последний раз загружался с помощью сборки с более новой версией Berkeley DB. В этом случае используйте программное обеспечение, с помощью которого этот кошелек загружался в последний раз</translation>
+ </message>
+ <message>
+ <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source>
+ <translation type="unfinished">Это предварительная тестовая сборка - используйте на свой страх и риск - не используйте для майнинга или торговых приложений</translation>
+ </message>
+ <message>
+ <source>This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection.</source>
+ <translation type="unfinished">Это максимальная комиссия за транзакцию, которую вы платите (в дополнение к обычной комиссии), чтобы отдать предпочтение частичному избеганию трат перед обычным выбором монет.</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you may discard if change is smaller than dust at this level</source>
+ <translation type="unfinished">Это плата за транзакцию, которую вы можете отбросить, если изменение меньше, чем пыль на этом уровне</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you may pay when fee estimates are not available.</source>
+ <translation type="unfinished">Это комиссия за транзакцию, которую вы можете заплатить, когда оценка комиссии недоступна.</translation>
+ </message>
+ <message>
+ <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source>
+ <translation type="unfinished">Общая длина строки версии сети (%i) превышает максимальную длину (%i). Сократите количество или размер uacomments.</translation>
+ </message>
+ <message>
+ <source>Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate.</source>
+ <translation type="unfinished">Невозможно воспроизвести блоки. Вам нужно перестроить базу данных с помощью -reindex-chainstate.</translation>
+ </message>
+ <message>
+ <source>Unknown wallet file format "%s" provided. Please provide one of "bdb" or "sqlite".</source>
+ <translation type="unfinished">Предоставлен неизвестный формат файла кошелька "%s". Пожалуйста, укажите один из "bdb" или "sqlite".</translation>
+ </message>
+ <message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Неподдерживаемый уровень регистрации по категориям %1$s=%2$s. Ожидается %1$s=&lt;category&gt;:&lt;loglevel&gt;. Допустимые категории: %3$s. Допустимые уровни регистрации: %4$s.</translation>
+ </message>
+ <message>
+ <source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
+ <translation type="unfinished">Обнаружен неподдерживаемый формат базы данных chainstate. Пожалуйста, перезапустите с параметром -reindex-chainstate. Это приведет к перестройке базы данных chainstate.</translation>
+ </message>
+ <message>
+ <source>Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
+ <translation type="unfinished">Кошелек успешно создан. Устаревший тип кошелька устаревает, и в будущем поддержка создания и открытия устаревших кошельков будет удалена.</translation>
+ </message>
+ <message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Кошелек успешно загружен. Устаревший тип кошелька, поддержка создания и открытия устаревших кошельков будет удалена в будущем. Устаревшие кошельки можно перенести на дескрипторный кошелек с помощью функции migratewallet.</translation>
+ </message>
+ <message>
+ <source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
+ <translation type="unfinished">Предупреждение: Формат кошелька дампфайла "%s" не соответствует формату "%s", указанному в командной строке.</translation>
+ </message>
+ <message>
+ <source>Warning: Private keys detected in wallet {%s} with disabled private keys</source>
+ <translation type="unfinished">Предупреждение: В кошельке {%s} обнаружены закрытые ключи с отключенными закрытыми ключами</translation>
+ </message>
+ <message>
+ <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source>
+ <translation type="unfinished">Внимание: Похоже, мы не полностью согласны с нашими коллегами! Вам может потребоваться обновление, или другим узлам может потребоваться обновление.</translation>
+ </message>
+ <message>
+ <source>Witness data for blocks after height %d requires validation. Please restart with -reindex.</source>
+ <translation type="unfinished">Данные свидетелей для блоков после высоты %d требуют проверки. Пожалуйста, перезапустите с параметром -reindex.</translation>
+ </message>
+ <message>
+ <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source>
+ <translation type="unfinished">Чтобы вернуться к режиму unpruned, необходимо перестроить базу данных с помощью -reindex. Это приведет к повторной загрузке всего блокчейна</translation>
+ </message>
+ <message>
+ <source>%s is set very high!</source>
+ <translation type="unfinished">%s установлен очень высоко!</translation>
+ </message>
+ <message>
+ <source>-maxmempool must be at least %d MB</source>
+ <translation type="unfinished">-maxmempool должен быть не менее %d МБ</translation>
+ </message>
+ <message>
+ <source>A fatal internal error occurred, see debug.log for details</source>
+ <translation type="unfinished">Произошла фатальная внутренняя ошибка, подробности см. в журнале debug.log</translation>
+ </message>
+ <message>
+ <source>Cannot resolve -%s address: '%s'</source>
+ <translation type="unfinished">Невозможно разрешить адрес -%s: '%s'</translation>
+ </message>
+ <message>
+ <source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
+ <translation type="unfinished">Невозможно установить значение -forcednsseed в true при установке значения -dnsseed в false.</translation>
+ </message>
+ <message>
+ <source>Cannot set -peerblockfilters without -blockfilterindex.</source>
+ <translation type="unfinished">Невозможно установить -peerblockfilters без -blockfilterindex.</translation>
+ </message>
+ <message>
+ <source>Cannot write to data directory '%s'; check permissions.</source>
+ <translation type="unfinished">Невозможно записать в каталог данных '%s'; проверьте права доступа.</translation>
+ </message>
+ <message>
+ <source>%s is set very high! Fees this large could be paid on a single transaction.</source>
+ <translation type="unfinished">%s установлена очень высокая! Такая большая комиссия может быть уплачена за одну транзакцию.</translation>
+ </message>
+ <message>
+ <source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
+ <translation type="unfinished">Невозможно одновременно предоставить определенные соединения и попросить addrman найти исходящие соединения.</translation>
+ </message>
+ <message>
+ <source>Error loading %s: External signer wallet being loaded without external signer support compiled</source>
+ <translation type="unfinished">Ошибка загрузки %s: Загружается кошелек внешнего подписчика без скомпилированной поддержки внешнего подписчика</translation>
+ </message>
+ <message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Ошибка при чтении %s! Все ключи прочитаны правильно, но данные транзакции или метаданные адреса могут отсутствовать или быть неверными.</translation>
+ </message>
+ <message>
+ <source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
+ <translation type="unfinished">Ошибка: Данные адресной книги в кошельке не могут быть идентифицированы как принадлежащие перенесенным кошелькам</translation>
+ </message>
+ <message>
+ <source>Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
+ <translation type="unfinished">Ошибка: Во время миграции были созданы дубликаты дескрипторов. Ваш кошелек может быть поврежден.</translation>
+ </message>
+ <message>
+ <source>Error: Transaction %s in wallet cannot be identified to belong to migrated wallets</source>
+ <translation type="unfinished">Ошибка: Транзакция %s в кошельке не может быть идентифицирована как принадлежащая перемещенному кошельку</translation>
+ </message>
+ <message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Не удалось рассчитать комиссионные за бамп, поскольку неподтвержденные UTXO зависят от огромного скопления неподтвержденных транзакций.</translation>
+ </message>
+ <message>
+ <source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
+ <translation type="unfinished">Не удалось переименовать недействительный файл peers.dat. Пожалуйста, переместите или удалите его и повторите попытку.</translation>
+ </message>
+ <message>
+ <source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
+ <translation type="unfinished">Оценка вознаграждения не удалась. Fallbackfee отключен. Подождите несколько блоков или включите %s.</translation>
+ </message>
+ <message>
+ <source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
+ <translation type="unfinished">Несовместимые параметры: -dnsseed=1 был указан явно, но -onlynet запрещает соединения с IPv4/IPv6</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
+ <translation type="unfinished">Неверная сумма для %s=&lt;amount&gt;: '%s' (должна быть не менее минимальной комиссии %s, чтобы предотвратить застревание транзакций)</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
+ <translation type="unfinished">Исходящие соединения ограничены CJDNS (-onlynet=cjdns), но не указано -cjdnsreachable</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is explicitly forbidden: -onion=0</source>
+ <translation type="unfinished">Исходящие соединения ограничены Tor (-onlynet=onion), но прокси для выхода в сеть Tor явно запрещен: -onion=0</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is not provided: none of -proxy, -onion or -listenonion is given</source>
+ <translation type="unfinished">Исходящие соединения ограничены Tor (-onlynet=onion), но прокси для выхода в сеть Tor не указан: не указано ни одно из значений -proxy, -onion или -listenonion</translation>
+ </message>
+ <message>
+ <source>Outbound connections restricted to i2p (-onlynet=i2p) but -i2psam is not provided</source>
+ <translation type="unfinished">Исходящие соединения ограничены i2p (-onlynet=i2p), но -i2psam не предоставляется</translation>
+ </message>
+ <message>
+ <source>The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet's UTXOs</source>
+ <translation type="unfinished">Размер входов превысил максимальный вес. Пожалуйста, попробуйте отправить меньшую сумму или объедините UTXO в вашем кошельке вручную</translation>
+ </message>
+ <message>
+ <source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
+ <translation type="unfinished">Общая сумма предварительно выбранных монет не покрывает цель транзакции. Пожалуйста, разрешите автоматический выбор других входов или включите больше монет вручную</translation>
+ </message>
+ <message>
+ <source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
+ <translation type="unfinished">Для транзакции требуется одно место назначения с не-0 значением, не-0 feerate или предварительно выбранный вход</translation>
+ </message>
+ <message>
+ <source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
+ <translation type="unfinished">Снимок UTXO не прошел проверку. Перезапустите, чтобы возобновить нормальную загрузку начального блока, или попробуйте загрузить другой снимок.</translation>
+ </message>
+ <message>
+ <source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
+ <translation type="unfinished">Неподтвержденные UTXO доступны, но их расходование создает цепочку транзакций, которые будут отклонены мемпулом</translation>
+ </message>
+ <message>
+ <source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
+
+The wallet might have been tampered with or created with malicious intent.
+</source>
+ <translation type="unfinished">Найдена неожиданная запись о наследии в дескрипторе кошелька. Загрузка кошелька %s
+
+Возможно, кошелек был подделан или создан со злым умыслом.
+</translation>
+ </message>
+ <message>
+ <source>Unrecognized descriptor found. Loading wallet %s
+
+The wallet might had been created on a newer version.
+Please try running the latest software version.
+</source>
+ <translation type="unfinished">Найден нераспознанный дескриптор. Загрузка кошелька %s
+
+Возможно, кошелек был создан на более новой версии.
+Пожалуйста, попробуйте запустить последнюю версию программного обеспечения.
+</translation>
+ </message>
+ <message>
+ <source>
+Unable to cleanup failed migration</source>
+ <translation type="unfinished">
+Невозможно очистить неудачную миграцию</translation>
+ </message>
+ <message>
+ <source>
+Unable to restore backup of wallet.</source>
+ <translation type="unfinished">
+Невозможно восстановить резервную копию кошелька.</translation>
+ </message>
+ <message>
+ <source>Block verification was interrupted</source>
+ <translation type="unfinished">Проверка блока была прервана</translation>
+ </message>
+ <message>
+ <source>Config setting for %s only applied on %s network when in [%s] section.</source>
+ <translation type="unfinished">Настройка конфигурации для %s применяется только для сети %s, если она находится в разделе [%s].</translation>
+ </message>
+ <message>
+ <source>Copyright (C) %i-%i</source>
+ <translation type="unfinished">Авторское право (C) %i-%i</translation>
+ </message>
+ <message>
+ <source>Corrupted block database detected</source>
+ <translation type="unfinished">Обнаружена поврежденная база данных блоков</translation>
+ </message>
+ <message>
+ <source>Could not find asmap file %s</source>
+ <translation type="unfinished">Не удалось найти файл asmap %s</translation>
+ </message>
+ <message>
+ <source>Could not parse asmap file %s</source>
+ <translation type="unfinished">Не удалось разобрать файл asmap %s</translation>
+ </message>
+ <message>
+ <source>Disk space is too low!</source>
+ <translation type="unfinished">На диске слишком мало места!</translation>
+ </message>
+ <message>
+ <source>Do you want to rebuild the block database now?</source>
+ <translation type="unfinished">Хотите ли вы перестроить базу данных блоков сейчас?</translation>
+ </message>
+ <message>
+ <source>Done loading</source>
+ <translation type="unfinished">Загрузка завершена</translation>
+ </message>
+ <message>
+ <source>Dump file %s does not exist.</source>
+ <translation type="unfinished">Файл дампа %s не существует.</translation>
+ </message>
+ <message>
+ <source>Error creating %s</source>
+ <translation type="unfinished">Ошибка при создании %s</translation>
+ </message>
+ <message>
+ <source>Error initializing block database</source>
+ <translation type="unfinished">Ошибка инициализации базы данных блоков</translation>
+ </message>
+ <message>
+ <source>Error initializing wallet database environment %s!</source>
+ <translation type="unfinished">Ошибка инициализации среды базы данных бумажника %s!</translation>
+ </message>
+ <message>
+ <source>Error loading %s</source>
+ <translation type="unfinished">Ошибка загрузки %s</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Private keys can only be disabled during creation</source>
+ <translation type="unfinished">Ошибка загрузки %s: Закрытые ключи можно отключить только во время создания</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Wallet corrupted</source>
+ <translation type="unfinished">Ошибка при загрузке %s: Кошелек поврежден</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Wallet requires newer version of %s</source>
+ <translation type="unfinished">Ошибка при загрузке %s: Wallet requires newer version of %s</translation>
+ </message>
+ <message>
+ <source>Error loading block database</source>
+ <translation type="unfinished">Ошибка при загрузке базы данных блоков</translation>
+ </message>
+ <message>
+ <source>Error opening block database</source>
+ <translation type="unfinished">Ошибка при открытии базы данных блоков</translation>
+ </message>
+ <message>
+ <source>Error reading configuration file: %s</source>
+ <translation type="unfinished">Ошибка при чтении файла конфигурации: %s</translation>
+ </message>
+ <message>
+ <source>Error reading from database, shutting down.</source>
+ <translation type="unfinished">Ошибка чтения из базы данных, завершение работы.</translation>
+ </message>
+ <message>
+ <source>Error reading next record from wallet database</source>
+ <translation type="unfinished">Ошибка при чтении следующей записи из базы данных кошелька</translation>
+ </message>
+ <message>
+ <source>Error: Cannot extract destination from the generated scriptpubkey</source>
+ <translation type="unfinished">Ошибка: Невозможно извлечь пункт назначения из сгенерированного scriptpubkey</translation>
+ </message>
+ <message>
+ <source>Error: Could not add watchonly tx to watchonly wallet</source>
+ <translation type="unfinished">Ошибка: Не удалось добавить watchonly tx в watchonly wallet</translation>
+ </message>
+ <message>
+ <source>Error: Could not delete watchonly transactions</source>
+ <translation type="unfinished">Ошибка: Не удалось удалить транзакции с возможностью наблюдения</translation>
+ </message>
+ <message>
+ <source>Error: Couldn't create cursor into database</source>
+ <translation type="unfinished">Ошибка: Не удалось создать курсор в базе данных</translation>
+ </message>
+ <message>
+ <source>Error: Disk space is low for %s</source>
+ <translation type="unfinished">Ошибка: На диске мало места для %s</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile checksum does not match. Computed %s, expected %s</source>
+ <translation type="unfinished">Ошибка: контрольные суммы дамп-файла не совпадают. Вычислено %s, ожидалось %s</translation>
+ </message>
+ <message>
+ <source>Error: Failed to create new watchonly wallet</source>
+ <translation type="unfinished">Ошибка: Не удалось создать новый кошелек watchonly</translation>
+ </message>
+ <message>
+ <source>Error: Got key that was not hex: %s</source>
+ <translation type="unfinished">Ошибка: Получен ключ, который не был шестнадцатеричным: %s</translation>
+ </message>
+ <message>
+ <source>Error: Got value that was not hex: %s</source>
+ <translation type="unfinished">Ошибка: Получено значение, не являющееся шестнадцатеричным: %s</translation>
+ </message>
+ <message>
+ <source>Error: Keypool ran out, please call keypoolrefill first</source>
+ <translation type="unfinished">Ошибка: Пул для ключей закончился, сначала позвоните в keypoolrefill</translation>
+ </message>
+ <message>
+ <source>Error: Missing checksum</source>
+ <translation type="unfinished">Ошибка: Отсутствует контрольная сумма</translation>
+ </message>
+ <message>
+ <source>Error: No %s addresses available.</source>
+ <translation type="unfinished">Ошибка: Нет доступных адресов %s.</translation>
+ </message>
+ <message>
+ <source>Error: Not all watchonly txs could be deleted</source>
+ <translation type="unfinished">Ошибка: Удалены не все часовые тх</translation>
+ </message>
+ <message>
+ <source>Error: This wallet already uses SQLite</source>
+ <translation type="unfinished">Ошибка: Этот кошелек уже использует SQLite</translation>
+ </message>
+ <message>
+ <source>Error: This wallet is already a descriptor wallet</source>
+ <translation type="unfinished">Ошибка: Этот кошелек уже является дескрипторным кошельком</translation>
+ </message>
+ <message>
+ <source>Error: Unable to begin reading all records in the database</source>
+ <translation type="unfinished">Ошибка: Невозможно начать чтение всех записей в базе данных</translation>
+ </message>
+ <message>
+ <source>Error: Unable to make a backup of your wallet</source>
+ <translation type="unfinished">Ошибка: Невозможно создать резервную копию кошелька</translation>
+ </message>
+ <message>
+ <source>Error: Unable to parse version %u as a uint32_t</source>
+ <translation type="unfinished">Ошибка: Невозможно разобрать версию %u как uint32_t</translation>
+ </message>
+ <message>
+ <source>Error: Unable to read all records in the database</source>
+ <translation type="unfinished">Ошибка: Невозможно прочитать все записи в базе данных</translation>
+ </message>
+ <message>
+ <source>Error: Unable to remove watchonly address book data</source>
+ <translation type="unfinished">Ошибка: Невозможно удалить данные адресной книги с возможностью просмотра</translation>
+ </message>
+ <message>
+ <source>Error: Unable to write record to new wallet</source>
+ <translation type="unfinished">Ошибка: Невозможно записать запись в новый кошелек</translation>
+ </message>
+ <message>
+ <source>Failed to listen on any port. Use -listen=0 if you want this.</source>
+ <translation type="unfinished">Не удалось прослушать ни один порт. Используйте -listen=0, если вам это нужно.</translation>
+ </message>
+ <message>
+ <source>Failed to rescan the wallet during initialization</source>
+ <translation type="unfinished">Не удалось выполнить повторное сканирование кошелька во время инициализации</translation>
+ </message>
+ <message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Не удалось запустить индексы, завершение работы...</translation>
+ </message>
+ <message>
+ <source>Failed to verify database</source>
+ <translation type="unfinished">Не удалось проверить базу данных</translation>
+ </message>
+ <message>
+ <source>Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
+ <translation type="unfinished">Ставка комиссии (%s) ниже минимальной ставки комиссии (%s)</translation>
+ </message>
+ <message>
+ <source>Ignoring duplicate -wallet %s.</source>
+ <translation type="unfinished">Игнорирование дубликата -wallet %s.</translation>
+ </message>
+ <message>
+ <source>Importing…</source>
+ <translation type="unfinished">Импортирование…</translation>
+ </message>
+ <message>
+ <source>Incorrect or no genesis block found. Wrong datadir for network?</source>
+ <translation type="unfinished">Неверный или не найденный блок генезиса. Неправильный каталог данных для сети?</translation>
+ </message>
+ <message>
+ <source>Initialization sanity check failed. %s is shutting down.</source>
+ <translation type="unfinished">Проверка разумности инициализации не удалась. %s отключается.</translation>
+ </message>
+ <message>
+ <source>Input not found or already spent</source>
+ <translation type="unfinished">Входные данные не найдены или уже израсходованы</translation>
+ </message>
+ <message>
+ <source>Insufficient dbcache for block verification</source>
+ <translation type="unfinished">Недостаточно dbcache для проверки блоков</translation>
+ </message>
+ <message>
+ <source>Insufficient funds</source>
+ <translation type="unfinished">Недостаточно средств</translation>
+ </message>
+ <message>
+ <source>Invalid -i2psam address or hostname: '%s'</source>
+ <translation type="unfinished">Неверный адрес или имя хоста -i2psam: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid -onion address or hostname: '%s'</source>
+ <translation type="unfinished">Неверный адрес или имя хоста: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid -proxy address or hostname: '%s'</source>
+ <translation type="unfinished">Неверный -прокси-адрес или имя хоста: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid P2P permission: '%s'</source>
+ <translation type="unfinished">Неверное разрешение P2P: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least %s)</source>
+ <translation type="unfinished">Неверная сумма для %s=&lt;amount&gt;: '%s' (должно быть не менее %s)</translation>
+ </message>
+ <message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">Неверная сумма для %s=&lt;amount&gt;: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid amount for -%s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">Неверная сумма для -%s=&lt;amount&gt;: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid netmask specified in -whitelist: '%s'</source>
+ <translation type="unfinished">Неверная сетевая маска, указанная в параметре -whitelist: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid port specified in %s: '%s'</source>
+ <translation type="unfinished">Неверный порт, указанный в %s: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid pre-selected input %s</source>
+ <translation type="unfinished">Недопустимый предварительно выбранный вход %s</translation>
+ </message>
+ <message>
+ <source>Listening for incoming connections failed (listen returned error %s)</source>
+ <translation type="unfinished">Прослушивание входящих соединений не удалось (прослушивание вернуло ошибку %s)</translation>
+ </message>
+ <message>
+ <source>Loading P2P addresses…</source>
+ <translation type="unfinished">Загрузка адресов P2P…</translation>
+ </message>
+ <message>
+ <source>Loading banlist…</source>
+ <translation type="unfinished">Загрузка банлиста…</translation>
+ </message>
+ <message>
+ <source>Loading block index…</source>
+ <translation type="unfinished">Загрузка индекса блока…</translation>
+ </message>
+ <message>
+ <source>Loading wallet…</source>
+ <translation type="unfinished">Загрузка кошелька…</translation>
+ </message>
+ <message>
+ <source>Missing amount</source>
+ <translation type="unfinished">Недостающая сумма</translation>
+ </message>
+ <message>
+ <source>Missing solving data for estimating transaction size</source>
+ <translation type="unfinished">Недостающие решающие данные для оценки размера транзакции</translation>
+ </message>
+ <message>
+ <source>Need to specify a port with -whitebind: '%s'</source>
+ <translation type="unfinished">Необходимо указать порт с помощью опции -whitebind: '%s'</translation>
+ </message>
+ <message>
+ <source>No addresses available</source>
+ <translation type="unfinished">Адреса отсутствуют</translation>
+ </message>
+ <message>
+ <source>Not enough file descriptors available.</source>
+ <translation type="unfinished">Недостаточно доступных дескрипторов файлов.</translation>
+ </message>
+ <message>
+ <source>Not found pre-selected input %s</source>
+ <translation type="unfinished">Не найден предварительно выбранный вход %s</translation>
+ </message>
+ <message>
+ <source>Not solvable pre-selected input %s</source>
+ <translation type="unfinished">Не решаемый предварительно выбранный вход %s</translation>
+ </message>
+ <message>
+ <source>Prune cannot be configured with a negative value.</source>
+ <translation type="unfinished">Prune не может быть настроена с отрицательным значением.</translation>
+ </message>
+ <message>
+ <source>Prune mode is incompatible with -txindex.</source>
+ <translation type="unfinished">Режим Prune несовместим с режимом -txindex.</translation>
+ </message>
+ <message>
+ <source>Pruning blockstore…</source>
+ <translation type="unfinished">Обрезка блочного дерева…</translation>
+ </message>
+ <message>
+ <source>Reducing -maxconnections from %d to %d, because of system limitations.</source>
+ <translation type="unfinished">Сокращение -maxconnections с %d до %d из-за ограничений системы.</translation>
+ </message>
+ <message>
+ <source>Replaying blocks…</source>
+ <translation type="unfinished">Воспроизведение блоков…</translation>
+ </message>
+ <message>
+ <source>Rescanning…</source>
+ <translation type="unfinished">Сканирование…</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to execute statement to verify database: %s</source>
+ <translation type="unfinished">SQLiteDatabase: Не удалось выполнить оператор для проверки базы данных: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to prepare statement to verify database: %s</source>
+ <translation type="unfinished">SQLiteDatabase: Не удалось подготовить утверждение для проверки базы данных: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to read database verification error: %s</source>
+ <translation type="unfinished">База данных SQLiteDatabase: Не удалось прочитать базу данных Ошибка проверки: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Unexpected application id. Expected %u, got %u</source>
+ <translation type="unfinished">SQLiteDatabase: Неожиданный идентификатор приложения. Ожидалось %u, получено %u</translation>
+ </message>
+ <message>
+ <source>Section [%s] is not recognized.</source>
+ <translation type="unfinished">Секция [%s] не распознана.</translation>
+ </message>
+ <message>
+ <source>Signing transaction failed</source>
+ <translation type="unfinished">Не удалось выполнить операцию подписания</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" does not exist</source>
+ <translation type="unfinished">Указанный -walletdir "%s" не существует</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" is a relative path</source>
+ <translation type="unfinished">Указанный -walletdir "%s" является относительным путем</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" is not a directory</source>
+ <translation type="unfinished">Указанный -walletdir "%s" не является каталогом</translation>
+ </message>
+ <message>
+ <source>Specified blocks directory "%s" does not exist.</source>
+ <translation type="unfinished">Указанный каталог блоков "%s" не существует.</translation>
+ </message>
+ <message>
+ <source>Specified data directory "%s" does not exist.</source>
+ <translation type="unfinished">Указанный каталог данных "%s" не существует.</translation>
+ </message>
+ <message>
+ <source>Starting network threads…</source>
+ <translation type="unfinished">Запуск сетевых потоков…</translation>
+ </message>
+ <message>
+ <source>The source code is available from %s.</source>
+ <translation type="unfinished">Исходный код доступен по адресу %s.</translation>
+ </message>
+ <message>
+ <source>The specified config file %s does not exist</source>
+ <translation type="unfinished">Указанный файл конфигурации %s не существует</translation>
+ </message>
+ <message>
+ <source>The transaction amount is too small to pay the fee</source>
+ <translation type="unfinished">Сумма транзакции слишком мала, чтобы оплатить комиссию</translation>
+ </message>
+ <message>
+ <source>The wallet will avoid paying less than the minimum relay fee.</source>
+ <translation type="unfinished">Кошелек позволит не платить меньше минимальной комиссии за ретрансляцию.</translation>
+ </message>
+ <message>
+ <source>This is experimental software.</source>
+ <translation type="unfinished">Это экспериментальное программное обеспечение.</translation>
+ </message>
+ <message>
+ <source>This is the minimum transaction fee you pay on every transaction.</source>
+ <translation type="unfinished">Это минимальная комиссия, которую вы платите для любой транзакции.</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you will pay if you send a transaction.</source>
+ <translation type="unfinished">Это размер комиссии, которую вы заплатите при отправке транзакции.</translation>
+ </message>
+ <message>
+ <source>Transaction amount too small</source>
+ <translation type="unfinished">Слишком маленькая сумма транзакции</translation>
+ </message>
+ <message>
+ <source>Transaction amounts must not be negative</source>
+ <translation type="unfinished">Суммы операций не должны быть отрицательными</translation>
+ </message>
+ <message>
+ <source>Transaction change output index out of range</source>
+ <translation type="unfinished">Выходной индекс изменения транзакции вне диапазона</translation>
+ </message>
+ <message>
+ <source>Transaction has too long of a mempool chain</source>
+ <translation type="unfinished">Транзакция имеет слишком длинную цепочку mempool</translation>
+ </message>
+ <message>
+ <source>Transaction must have at least one recipient</source>
+ <translation type="unfinished">Транзакция должна иметь хотя бы одного получателя</translation>
+ </message>
+ <message>
+ <source>Transaction needs a change address, but we can't generate it.</source>
+ <translation type="unfinished">Транзакция требует смены адреса, но мы не можем его сгенерировать.</translation>
+ </message>
+ <message>
+ <source>Transaction too large</source>
+ <translation type="unfinished">Слишком большая транзакция</translation>
+ </message>
+ <message>
+ <source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
+ <translation type="unfinished">Невозможно выделить память для -maxsigcachesize: '%s' MiB</translation>
+ </message>
+ <message>
+ <source>Unable to bind to %s on this computer (bind returned error %s)</source>
+ <translation type="unfinished">Невозможно привязаться к %s на этом компьютере (при привязке возникла ошибка %s)</translation>
+ </message>
+ <message>
+ <source>Unable to bind to %s on this computer. %s is probably already running.</source>
+ <translation type="unfinished">Невозможно установить связь с %s на этом компьютере. вероятно, %s уже запущен.</translation>
+ </message>
+ <message>
+ <source>Unable to create the PID file '%s': %s</source>
+ <translation type="unfinished">Невозможно создать PID-файл '%s': %s</translation>
+ </message>
+ <message>
+ <source>Unable to find UTXO for external input</source>
+ <translation type="unfinished">Невозможно найти UTXO для внешнего входа</translation>
+ </message>
+ <message>
+ <source>Unable to generate initial keys</source>
+ <translation type="unfinished">Невозможно сгенерировать начальные ключи</translation>
+ </message>
+ <message>
+ <source>Unable to generate keys</source>
+ <translation type="unfinished">Невозможно сгенерировать ключи</translation>
+ </message>
+ <message>
+ <source>Unable to open %s for writing</source>
+ <translation type="unfinished">Невозможно открыть %s для записи</translation>
+ </message>
+ <message>
+ <source>Unable to parse -maxuploadtarget: '%s'</source>
+ <translation type="unfinished">Невозможно разобрать -maxuploadtarget: '%s'</translation>
+ </message>
+ <message>
+ <source>Unable to start HTTP server. See debug log for details.</source>
+ <translation type="unfinished">Невозможно запустить HTTP-сервер. Подробности см. в журнале отладки.</translation>
+ </message>
+ <message>
+ <source>Unable to unload the wallet before migrating</source>
+ <translation type="unfinished">Невозможно разгрузить кошелек перед миграцией</translation>
+ </message>
+ <message>
+ <source>Unknown -blockfilterindex value %s.</source>
+ <translation type="unfinished">Неизвестное значение -blockfilterindex %s.</translation>
+ </message>
+ <message>
+ <source>Unknown address type '%s'</source>
+ <translation type="unfinished">Неизвестный тип адреса '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown change type '%s'</source>
+ <translation type="unfinished">Неизвестный тип изменения '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown network specified in -onlynet: '%s'</source>
+ <translation type="unfinished">Неизвестная сеть, указанная в параметре -onlynet: '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown new rules activated (versionbit %i)</source>
+ <translation type="unfinished">Неизвестные новые правила активированы (versionbit %i)</translation>
+ </message>
+ <message>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Неподдерживаемый уровень глобального протоколирования %s=%s. Допустимые значения: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates не поддерживается в цепочке %s.</translation>
+ </message>
+ <message>
+ <source>Unsupported logging category %s=%s.</source>
+ <translation type="unfinished">Неподдерживаемая категория протоколирования %s=%s.</translation>
+ </message>
+ <message>
+ <source>User Agent comment (%s) contains unsafe characters.</source>
+ <translation type="unfinished">Комментарий агента пользователя (%s) содержит небезопасные символы.</translation>
+ </message>
+ <message>
+ <source>Verifying blocks…</source>
+ <translation type="unfinished">Проверка блоков…</translation>
+ </message>
+ <message>
+ <source>Verifying wallet(s)…</source>
+ <translation type="unfinished">Проверка кошелька(ов)…</translation>
+ </message>
+ <message>
+ <source>Wallet needed to be rewritten: restart %s to complete</source>
+ <translation type="unfinished">Необходимо переписать кошелек: перезапустите %s для завершения</translation>
+ </message>
+ <message>
+ <source>Settings file could not be read</source>
+ <translation type="unfinished">Файл настроек не может быть прочитан</translation>
+ </message>
+ <message>
+ <source>Settings file could not be written</source>
+ <translation type="unfinished">Не удалось записать файл настроек</translation>
+ </message>
+</context>
+</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_sc.ts b/src/qt/locale/bitcoin_sc.ts
index 69bcdfb2d7..8bf552baeb 100644
--- a/src/qt/locale/bitcoin_sc.ts
+++ b/src/qt/locale/bitcoin_sc.ts
@@ -46,14 +46,6 @@
<translation type="unfinished">S&amp;ciobera</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Incarreramentu de inviu</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Incarreramentu destinatàriu</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Custus funt is incarreramentu Bitcoin tuus po mandai pagamentus. Càstia sempri sa cantidadi e s'incarreramentu destinatàriu antis de inviais is monedas</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sd.ts b/src/qt/locale/bitcoin_sd.ts
new file mode 100644
index 0000000000..6497eac9fe
--- /dev/null
+++ b/src/qt/locale/bitcoin_sd.ts
@@ -0,0 +1,281 @@
+<TS version="2.1" language="sd">
+<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">نئون پتو ٺاھيو</translation>
+ </message>
+ <message>
+ <source>&amp;New</source>
+ <translation type="unfinished">نئون</translation>
+ </message>
+ <message>
+ <source>C&amp;hoose</source>
+ <translation type="unfinished">پسند ڪيو</translation>
+ </message>
+ </context>
+<context>
+ <name>AddressTableModel</name>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">پتو</translation>
+ </message>
+ </context>
+<context>
+ <name>QObject</name>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">مقدار</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n second(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n minute(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n hour(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n day(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n week(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n year(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>BitcoinGUI</name>
+ <message>
+ <source>&amp;Send</source>
+ <translation type="unfinished">موڪليو</translation>
+ </message>
+ <message>
+ <source>&amp;Receive</source>
+ <translation type="unfinished">حاصل ڪيو</translation>
+ </message>
+ <message numerus="yes">
+ <source>Processed %n block(s) of transaction history.</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>%n active connection(s) to Bitcoin network.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>CoinControlDialog</name>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">مقدار</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">تاریخ</translation>
+ </message>
+ </context>
+<context>
+ <name>CreateWalletDialog</name>
+ <message>
+ <source>Create</source>
+ <translation type="unfinished">ٺاھيو</translation>
+ </message>
+ </context>
+<context>
+ <name>FreespaceChecker</name>
+ <message>
+ <source>name</source>
+ <translation type="unfinished">نالو</translation>
+ </message>
+ </context>
+<context>
+ <name>Intro</name>
+ <message>
+ <source>Bitcoin</source>
+ <translation type="unfinished">بٽڪوائن</translation>
+ </message>
+ <message numerus="yes">
+ <source>%n GB of space available</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(of %n GB needed)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(%n GB needed for full chain)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message numerus="yes">
+ <source>(sufficient to restore backups %n day(s) old)</source>
+ <extracomment>Explanatory text on the capability of the current prune target.</extracomment>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Welcome</source>
+ <translation type="unfinished">ڀليڪار</translation>
+ </message>
+ </context>
+<context>
+ <name>ModalOverlay</name>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">لڪايو</translation>
+ </message>
+ </context>
+<context>
+ <name>OptionsDialog</name>
+ <message>
+ <source>Expert</source>
+ <translation type="unfinished">ماھر</translation>
+ </message>
+ </context>
+<context>
+ <name>PSBTOperationsDialog</name>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">يہ</translation>
+ </message>
+ </context>
+<context>
+ <name>PeerTableModel</name>
+ <message>
+ <source>Address</source>
+ <extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
+ <translation type="unfinished">پتو</translation>
+ </message>
+ </context>
+<context>
+ <name>RPCConsole</name>
+ <message>
+ <source>Name</source>
+ <translation type="unfinished">نالو</translation>
+ </message>
+ <message>
+ <source>No</source>
+ <translation type="unfinished">نہ</translation>
+ </message>
+ <message>
+ <source>Unknown</source>
+ <translation type="unfinished">نامعلوم</translation>
+ </message>
+</context>
+<context>
+ <name>RecentRequestsTableModel</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">تاریخ</translation>
+ </message>
+ </context>
+<context>
+ <name>SendCoinsDialog</name>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">لڪايو</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">يہ</translation>
+ </message>
+ <message numerus="yes">
+ <source>Estimated to begin confirmation within %n block(s).</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionDesc</name>
+ <message>
+ <source>Status</source>
+ <translation type="unfinished">حالت</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">تاریخ</translation>
+ </message>
+ <message numerus="yes">
+ <source>matures in %n more block(s)</source>
+ <translation type="unfinished">
+ <numerusform />
+ <numerusform />
+ </translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">مقدار</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionTableModel</name>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">تاریخ</translation>
+ </message>
+ </context>
+<context>
+ <name>TransactionView</name>
+ <message>
+ <source>All</source>
+ <translation type="unfinished">سڀ</translation>
+ </message>
+ <message>
+ <source>Today</source>
+ <translation type="unfinished">اڄ</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">تاریخ</translation>
+ </message>
+ <message>
+ <source>Address</source>
+ <translation type="unfinished">پتو</translation>
+ </message>
+ </context>
+</TS> \ No newline at end of file
diff --git a/src/qt/locale/bitcoin_si.ts b/src/qt/locale/bitcoin_si.ts
index d789e2a04c..6877d44933 100644
--- a/src/qt/locale/bitcoin_si.ts
+++ b/src/qt/locale/bitcoin_si.ts
@@ -3,7 +3,7 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">ලිපිනය හෝ නම්පත සංශෝධනයට දකුණු බොත්තම ඔබන්න</translation>
+ <translation type="unfinished">ලිපිනය හෝ ලේබලය සංස්කරණය කිරීමට දකුණු-ක්ලික් කරන්න</translation>
</message>
<message>
<source>Create a new address</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">තෝ&amp;රන්න</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">යවන ලිපින</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">ලැබෙන ලිපින</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">මේ ඔබගේ ගෙවීම් යැවීම සඳහා වන බිට්කොයින් ලිපින වේ. කාසි යැවීමට පෙර සෑම විටම මුදල සහ ලැබීමේ ලිපිනය පරීක්‍ෂා කරන්න.</translation>
</message>
@@ -620,14 +612,6 @@
<translation type="unfinished">බයිට පිටපත් කරන්න</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ඔව්</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">නැත</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(නම්පතක් නැත)</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sk.ts b/src/qt/locale/bitcoin_sk.ts
index 55c6f97e99..40621b0fa5 100644
--- a/src/qt/locale/bitcoin_sk.ts
+++ b/src/qt/locale/bitcoin_sk.ts
@@ -50,14 +50,6 @@
<translation type="unfinished">Vy&amp;brať</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Odosielajúce adresy</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Prijímajúce adresy</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Toto sú Vaše Bitcoin adresy pre posielanie platieb. Vždy skontrolujte sumu a prijímaciu adresu pred poslaním mincí.</translation>
</message>
@@ -215,10 +207,22 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Zadané heslo pre dešifrovanie peňaženky bolo nesprávne.</translation>
</message>
<message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">Zadaná prístupová fráza na dešifrovanie peňaženky je nesprávna. Obsahuje nulový znak (tj - bajt s hodnotou nula). Ak bola prístupová fráza nastavená verziou tohto softvéru pred verziou 25.0, skúste to znova s použitím iba znakov až po — ale nezahrňujúc — prvý nulový znak. Ak sa vám to podarí, prosím nastavte novú prístupovú frázu, aby ste tomuto problému predišli v budúcnosti.</translation>
+ </message>
+ <message>
<source>Wallet passphrase was successfully changed.</source>
<translation type="unfinished">Heslo k peňaženke bolo úspešne zmenené.</translation>
</message>
<message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Zmena prístupovej frázy zlyhala</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">Stará prístupová fráza zadaná na dešifrovanie peňaženky je nesprávna. Obsahuje nulový znak (tj - bajt s hodnotou nula). Ak bola prístupová fráza nastavená verziou tohto softvéru pred verziou 25.0, skúste to znova s použitím iba znakov až po — ale nezahrňujúc — prvý nulový znak.</translation>
+ </message>
+ <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">Upozornenie: Máte zapnutý Caps Lock!</translation>
</message>
@@ -237,6 +241,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>BitcoinApplication</name>
<message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">Súbor s nastaveniami %1 môže byť poškodený alebo neplatný.</translation>
+ </message>
+ <message>
<source>Runaway exception</source>
<translation type="unfinished">Nezachytená výnimka</translation>
</message>
@@ -660,6 +668,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Zatvoriť peňaženku</translation>
</message>
<message>
+ <source>Restore Wallet…</source>
+ <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
+ <translation type="unfinished">Obnoviť peňaženku…</translation>
+ </message>
+ <message>
+ <source>Restore a wallet from a backup file</source>
+ <extracomment>Status tip for Restore Wallet menu item</extracomment>
+ <translation type="unfinished">Obnoviť peňaženku zo zálohovaného súboru</translation>
+ </message>
+ <message>
<source>Close all wallets</source>
<translation type="unfinished">Zatvoriť všetky peňaženky</translation>
</message>
@@ -689,6 +707,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Dáta peňaženky</translation>
</message>
<message>
+ <source>Load Wallet Backup</source>
+ <extracomment>The title for Restore Wallet File Windows</extracomment>
+ <translation type="unfinished">Načítať zálohu peňaženky</translation>
+ </message>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">Obnoviť peňaženku</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
<translation type="unfinished">Názov peňaženky</translation>
@@ -747,6 +775,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Povoliť sieťovú aktivitu</translation>
</message>
<message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">Predbežná synchronizácia hlavičiek (%1%)…</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Chyba: %1</translation>
</message>
@@ -853,10 +885,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Poplatok:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prach:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Po poplatku:</translation>
</message>
@@ -945,10 +973,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopírovať bajty</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopírovať prach</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopírovať zmenu</translation>
</message>
@@ -957,18 +981,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 zamknutých)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">áno</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nie</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Tento popis sčervenie ak ktorýkoľvek príjemca dostane sumu menšiu ako súčasný limit pre "prach".</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Môže sa líšiť o +/- %1 satoshi(s) pre každý vstup.</translation>
</message>
@@ -1009,7 +1021,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Can't list signers</source>
<translation type="unfinished">Nemôžem zobraziť podpisovateľov</translation>
</message>
- </context>
+ <message>
+ <source>Too many external signers found</source>
+ <translation type="unfinished">Bolo nájdených príliš veľa externých podpisovateľov</translation>
+ </message>
+</context>
<context>
<name>LoadWalletsActivity</name>
<message>
@@ -1049,6 +1065,29 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">Obnoviť peňaženku</translation>
+ </message>
+ <message>
+ <source>Restore wallet failed</source>
+ <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
+ <translation type="unfinished">Obnovenie peňaženky zlyhalo</translation>
+ </message>
+ <message>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">Varovanie pri obnovovaní peňaženky</translation>
+ </message>
+ <message>
+ <source>Restore wallet message</source>
+ <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
+ <translation type="unfinished">Správa o obnovení peňaženky</translation>
+ </message>
+</context>
+<context>
<name>WalletController</name>
<message>
<source>Close wallet</source>
@@ -1114,14 +1153,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Vytvoriť prázdnu peňaženku</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Na správu scriptPubKey používajte deskriptory</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Peňaženka deskriptora</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Použiť externé podpisovacie zariadenie ako napr. hardvérová peňaženka. Nastavte najprv externý skript podpisovateľa v nastaveniach peňaženky.</translation>
</message>
@@ -1134,10 +1165,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Vytvoriť</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Zostavené bez podpory sqlite (povinné pre peňaženky deskriptorov)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Skompilované bez podpory externého podpisovania (potrebné pre externé podpisovanie)</translation>
@@ -1894,6 +1921,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">* Pošle %1 do %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">vlastná adresa</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Nepodarilo sa vypočítať poplatok za transakciu alebo celkovú sumu transakcie.</translation>
</message>
@@ -2175,6 +2206,10 @@ Ak ste dostali túto chybu mali by ste požiadať obchodníka o URI kompatibiln
<translation type="unfinished">Verzia</translation>
</message>
<message>
+ <source>Whether we relay transactions to this peer.</source>
+ <translation type="unfinished">Či preposielame transakcie tomuto uzlu.</translation>
+ </message>
+ <message>
<source>Starting Block</source>
<translation type="unfinished">Počiatočný blok</translation>
</message>
@@ -2209,6 +2244,16 @@ Ak ste dostali túto chybu mali by ste požiadať obchodníka o URI kompatibiln
<translation type="unfinished">Postupovanie adries</translation>
</message>
<message>
+ <source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
+ <extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Celkový počet adries prijatých od tohto uzlu, ktoré boli spracované (neobsahuje adresy, ktoré boli zrušené kvôli obmedzeniu rýchlosti).</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
+ <extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
+ <translation type="unfinished">Celkový počet adries prijatých od tohto uzlu, ktoré boli zrušené (nespracované) kvôli obmedzeniu rýchlosti.</translation>
+ </message>
+ <message>
<source>Addresses Processed</source>
<extracomment>Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
<translation type="unfinished">Spracované adresy</translation>
@@ -2589,6 +2634,10 @@ Pre viac informácií o používaní tejto konzoly napíšte %6.
<translation type="unfinished">Kopírovať &amp;sumu</translation>
</message>
<message>
+ <source>Not recommended due to higher fees and less protection against typos.</source>
+ <translation type="unfinished">Nie je odporúčané kvôli vyšším poplatkom a menšej ochrane proti preklepom.</translation>
+ </message>
+ <message>
<source>Could not unlock wallet.</source>
<translation type="unfinished">Nepodarilo sa odomknúť peňaženku.</translation>
</message>
@@ -2778,10 +2827,6 @@ Pre viac informácií o používaní tejto konzoly napíšte %6.
<translation type="unfinished">Vstupy…</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prach:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Zvoliť…</translation>
</message>
@@ -2858,10 +2903,6 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok pri sadzbe "100 sat
<translation type="unfinished">Kopírovať bajty</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopírovať prach</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopírovať zmenu</translation>
</message>
@@ -3493,10 +3534,6 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok pri sadzbe "100 sat
<translation type="unfinished">Odoslané na</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Platba sebe samému</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Vyťažené</translation>
</message>
@@ -3568,10 +3605,6 @@ Poznámka: Keďže poplatok je počítaný za bajt, poplatok pri sadzbe "100 sat
<translation type="unfinished">Odoslané na</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Ku mne</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Vyťažené</translation>
</message>
@@ -3864,8 +3897,8 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Distribuované pod softvérovou licenciou MIT, pozri sprievodný súbor %s alebo %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Nastala chyba pri čítaní súboru %s! Všetkz kľúče sa prečítali správne, ale dáta o transakcíách alebo záznamy v adresári môžu chýbať alebo byť nesprávne.</translation>
+ <source>Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
+ <translation type="unfinished">Chyba pri načítavaní peňaženky. Peňaženka vyžaduje stiahnutie blokov, a softvér momentálne nepodporuje načítavanie peňaženiek počas sťahovania blokov v nesprávnom poradí pri použití snímok assumeutxo. Peňaženka by mala byť schopná sa úspešne načítať, keď synchronizácia uzlov dosiahne výšku %s</translation>
</message>
<message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
@@ -3888,6 +3921,10 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Chyba: Staršie peňaženky podporujú len adresy typu "legacy", "p2sh-segwit", a "bech32"</translation>
</message>
<message>
+ <source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
+ <translation type="unfinished">Chyba: Nie je možné vytvoriť deskriptory pre túto staršiu peňaženku. Nezabudnite zadať prístupovú frázu peňaženky, ak je šifrovaná.</translation>
+ </message>
+ <message>
<source>File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
<translation type="unfinished">Súbor %s už existuje. Ak si nie ste istý, že toto chcete, presuňte ho najprv preč.</translation>
</message>
@@ -3936,10 +3973,6 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Databáza blokov obsahuje blok, ktorý vyzerá byť z budúcnosti. Toto môže byť spôsobené nesprávnym systémovým časom vášho počítača. Obnovujte databázu blokov len keď ste si istý, že systémový čas je nastavený správne.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Databáza indexov blokov obsahuje 'txindex' staršieho typu. Pre uvoľnenie obsadeného miesta spustite s parametrom -reindex, inak môžete ignorovať túto chybu. Táto správa sa už nabudúce nezobrazí.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Suma je príliš malá pre odoslanie transakcie</translation>
</message>
@@ -3976,6 +4009,14 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Poskytnutý neznámy formát peňaženky "%s". Prosím použite "bdb" alebo "sqlite".</translation>
</message>
<message>
+ <source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
+ <translation type="unfinished">Nájdený nepodporovaný formát databázy reťazcového stavu. Prosím reštartujte s -reindex-chainstate. Toto obnoví databázu reťazcového stavu.</translation>
+ </message>
+ <message>
+ <source>Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
+ <translation type="unfinished">Peňaženka bola úspešne vytvorená. Starší typ peňaženky sa postupne ruší a podpora pre vytváranie a otváranie starších peňaženiek bude v budúcnosti odstránená.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Varovanie: Formát peňaženky súboru dumpu "%s" nesúhlasí s formátom zadaným na príkazovom riadku "%s".</translation>
</message>
@@ -4024,8 +4065,8 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Nie je možné zapísať do adresára ' %s'. Skontrolujte povolenia.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Upgrade -txindex spustený predchádzajúcou verziou nemôže byť dokončený. Reštartujte s prechdádzajúcou verziou programu alebo spustite s parametrom -reindex.</translation>
+ <source>%s is set very high! Fees this large could be paid on a single transaction.</source>
+ <translation type="unfinished">%s je nastavené veľmi vysoko! Takto vysoké poplatky by mohli byť zaplatené za jednu transakciu.</translation>
</message>
<message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
@@ -4036,10 +4077,36 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Chyba pri načítaní %s: Načíta sa peňaženka s externým podpisovaním, ale podpora pre externé podpisovanie nebola začlenená do programu</translation>
</message>
<message>
+ <source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
+ <translation type="unfinished">Chyba: Dáta adresára v peňaženke nemožno identifikovať ako patriace migrovaným peňaženkám</translation>
+ </message>
+ <message>
+ <source>Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
+ <translation type="unfinished">Chyba: Počas migrácie boli vytvorené duplicitné deskriptory. Vaša peňaženka môže byť poškodená.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Nepodarilo sa premenovať chybný súbor peers.dat. Prosím presuňte ho alebo vymažte a skúste znovu.</translation>
</message>
<message>
+ <source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
+ <translation type="unfinished">Celková suma vopred vybraných mincí nepokrýva cieľ transakcie. Prosím, povoľte, aby boli automaticky vybrané iné vstupy alebo pridajte viac mincí manuálne</translation>
+ </message>
+ <message>
+ <source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
+ <translation type="unfinished">Nepotvrdené UTXO sú k dispozícii, ale ich použitie vytvorí reťazec transakcií, ktoré mempool odmietne</translation>
+ </message>
+ <message>
+ <source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
+
+The wallet might have been tampered with or created with malicious intent.
+</source>
+ <translation type="unfinished">Nájdený neočakávaný starý záznam v deskriptorovej peňaženke. Načítavanie peňaženky %s
+
+S peňaženkou mohlo byť manipulované alebo mohla byť vytvorená s úmyselne škodlivým zámerom
+</translation>
+ </message>
+ <message>
<source>Config setting for %s only applied on %s network when in [%s] section.</source>
<translation type="unfinished">Nastavenie konfigurácie pre %s platí iba v sieti %s a v sekcii [%s].</translation>
</message>
@@ -4212,6 +4279,10 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Neplatné oprávnenie P2P: '%s'</translation>
</message>
<message>
+ <source>Invalid amount for %s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">Neplatné množstvo pre %s=&lt;amount&gt;: '%s'</translation>
+ </message>
+ <message>
<source>Invalid amount for -%s=&lt;amount&gt;: '%s'</source>
<translation type="unfinished">Neplatná suma pre -%s=&lt;amount&gt;: '%s'</translation>
</message>
@@ -4220,6 +4291,10 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Nadaná neplatná netmask vo -whitelist: '%s'</translation>
</message>
<message>
+ <source>Invalid port specified in %s: '%s'</source>
+ <translation type="unfinished">Bol zadaný neplatný port v %s: '%s'</translation>
+ </message>
+ <message>
<source>Loading P2P addresses…</source>
<translation type="unfinished">Načítavam P2P adresy…</translation>
</message>
@@ -4412,6 +4487,10 @@ Choďte do Súbor &gt; Otvoriť Peňaženku, pre načítanie peňaženky.
<translation type="unfinished">Nepodarilo sa spustiť HTTP server. Pre viac detailov zobrazte debug log.</translation>
</message>
<message>
+ <source>Unable to unload the wallet before migrating</source>
+ <translation type="unfinished">Nepodarilo sa odpojiť peňaženku pred migráciou</translation>
+ </message>
+ <message>
<source>Unknown -blockfilterindex value %s.</source>
<translation type="unfinished">Neznáma -blockfilterindex hodnota %s.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sl.ts b/src/qt/locale/bitcoin_sl.ts
index 2d45a6f7dd..c74b3b13fb 100644
--- a/src/qt/locale/bitcoin_sl.ts
+++ b/src/qt/locale/bitcoin_sl.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Izberi</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Imenik naslovov za pošiljanje</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Imenik prejemnih naslovov</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">To so vaši bitcoin-naslovi za pošiljanje. Pred pošiljanjem vedno preverite znesek in prejemnikov naslov.</translation>
</message>
@@ -696,18 +688,6 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi.</translation>
<translation type="unfinished">O&amp;kno</translation>
</message>
<message>
- <source>Zoom</source>
- <translation type="unfinished">Povečava</translation>
- </message>
- <message>
- <source>Main Window</source>
- <translation type="unfinished">Glavno okno</translation>
- </message>
- <message>
- <source>%1 client</source>
- <translation type="unfinished">Odjemalec %1</translation>
- </message>
- <message>
<source>&amp;Hide</source>
<translation type="unfinished">&amp;Skrij</translation>
</message>
@@ -856,10 +836,6 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi.</translation>
<translation type="unfinished">Provizija:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prah:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Po proviziji:</translation>
</message>
@@ -948,30 +924,10 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi.</translation>
<translation type="unfinished">Kopiraj bajte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiraj prah</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiraj vračilo</translation>
</message>
<message>
- <source>(%1 locked)</source>
- <translation type="unfinished">(%1 zaklenjeno)</translation>
- </message>
- <message>
- <source>yes</source>
- <translation type="unfinished">da</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ne</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ta oznaka postane rdeča, če kateri od prejemnikov prejme znesek, nižji od trenutne meje prahu.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Lahko se razlikuje za +/- %1 sat na vhod.</translation>
</message>
@@ -1149,14 +1105,6 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi.</translation>
<translation type="unfinished">Ustvari prazno denarnico</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Uporabi deskriptorje za upravljanje s scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Denarnica z deskriptorji</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Za podpisovanje uporabite zunanjo napravo, kot je n.pr. hardverska denarnica. Najprej nastavite zunanjega podpisnika v nastavitvah denarnice.</translation>
</message>
@@ -1169,10 +1117,6 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi.</translation>
<translation type="unfinished">Ustvari</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Prevedeno brez podpore za SQLite (potrebna za deskriptorske denarnice)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Prevedeno brez podpore za zunanje podpisovanje</translation>
@@ -1320,6 +1264,10 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi.</translation>
<translation type="unfinished">Napaka: Ni mogoče ustvariti mape "%1".</translation>
</message>
<message>
+ <source>Error</source>
+ <translation type="unfinished">Napaka</translation>
+ </message>
+ <message>
<source>Welcome</source>
<translation type="unfinished">Dobrodošli</translation>
</message>
@@ -1977,6 +1925,10 @@ Podpisovanje je možno le s podedovanimi ("legacy") naslovi.</translation>
<translation type="unfinished">* Pošlje %1 na %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">lasten naslov</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Ne morem izračunati transakcijske provizije ali skupnega zneska transakcije.</translation>
</message>
@@ -2899,10 +2851,6 @@ Za več informacij glede uporabe konzole uporabite ukaz %6.
<translation type="unfinished">Vhodi ...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Prah:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Izberi ...</translation>
</message>
@@ -2979,10 +2927,6 @@ Opomba: Ker se provizija izračuna na bajt, bi provizija "100 satoshijev na kvB"
<translation type="unfinished">Kopiraj bajte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiraj prah</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiraj vračilo</translation>
</message>
@@ -3640,10 +3584,6 @@ Opomba: Ker se provizija izračuna na bajt, bi provizija "100 satoshijev na kvB"
<translation type="unfinished">Poslano na </translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Plačilo sebi</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Narudarjeno</translation>
</message>
@@ -3719,10 +3659,6 @@ Opomba: Ker se provizija izračuna na bajt, bi provizija "100 satoshijev na kvB"
<translation type="unfinished">Poslano na </translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Sebi</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Narudarjeno</translation>
</message>
@@ -4024,10 +3960,6 @@ Za odpiranje denarnice kliknite Datoteka &gt; Odpri denarnico
<translation type="unfinished">Distribuirano v okviru programske licence MIT. Podrobnosti so navedene v priloženi datoteki %s ali %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Napaka pri branju %s! Vsi ključi so bili prebrani pravilno, vendar so lahko vnosi o transakcijah ali vnosi naslovov nepravilni ali manjkajo.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Napaka pri branju %s! Podatki o transakciji morda manjkajo ali pa so napačni. Ponovno prečitavam denarnico.</translation>
</message>
@@ -4104,10 +4036,6 @@ Za odpiranje denarnice kliknite Datoteka &gt; Odpri denarnico
<translation type="unfinished">Baza podatkov blokov vsebuje blok, ki naj bi bil iz prihodnosti. To je lahko posledica napačne nastavitve datuma in časa vašega računalnika. Znova zgradite bazo podatkov samo, če ste prepričani, da sta datum in čas računalnika pravilna.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Baza kazala blokov vsebuje zastarel 'txindex'. Če želite sprostiti zasedeni prostor na disku, zaženite poln -reindex, sicer pa prezrite to napako. To sporočilo o napaki se ne bo več prikazalo.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Znesek transakcije po odbitku provizije je premajhen za pošiljanje.</translation>
</message>
@@ -4196,22 +4124,6 @@ Za odpiranje denarnice kliknite Datoteka &gt; Odpri denarnico
<translation type="unfinished">Nastavitev -peerblockfilters ni veljavna brez nastavitve -blockfilterindex.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Nadgradnja -txindex je bila začeta s prejšnjo različico programske opreme in je ni mogoče dokončati. Poskusite ponovno s prejšnjo različico ali pa zaženite poln -reindex.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Možnost -reindex-chainstate ni združljiva z -blockfilterindex. Prosimo, ali začasno onemogočite blockfilterindex in uporabite -reindex-chainstate ali pa namesto reindex-chainstate uporabite -reindex za popolno ponovno tvorbo vseh kazal.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Možnost -reindex-chainstate option ni združljiva z -coinstatsindex. Prosimo, ali začasno onemogočite coinstatsindex in uporabite -reindex-chainstate ali pa namesto reindex-chainstate uporabite -reindex za popolno ponovno tvorbo vseh kazal.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Možnost -reindex-chainstate option ni združljiva s -txindex. Prosimo, ali začasno onemogočite txindex in uporabite -reindex-chainstate ali pa namesto reindex-chainstate uporabite -reindex za popolno ponovno tvorbo vseh kazal.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Nezdružljivi nastavitvi: navedene so specifične povezave in hkrati se uporablja addrman za iskanje izhodnih povezav.</translation>
</message>
@@ -4676,6 +4588,10 @@ Obnovitev varnostne kopije denarnice ni bila mogoča.</translation>
<translation type="unfinished">Zagon HTTP strežnika neuspešen. Poglejte razhroščevalni dnevnik za podrobnosti (debug.log).</translation>
</message>
<message>
+ <source>Unable to unload the wallet before migrating</source>
+ <translation type="unfinished">Zapiranje denarnice pred migracijo ni uspelo</translation>
+ </message>
+ <message>
<source>Unknown -blockfilterindex value %s.</source>
<translation type="unfinished">Neznana vrednost -blockfilterindex %s.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sn.ts b/src/qt/locale/bitcoin_sn.ts
index 40abe38b4e..bfdb6c951b 100644
--- a/src/qt/locale/bitcoin_sn.ts
+++ b/src/qt/locale/bitcoin_sn.ts
@@ -22,14 +22,6 @@
<translation type="unfinished">Dzima</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Makero ekutumira</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Makero ekutambira</translation>
- </message>
- <message>
<source>&amp;Copy Address</source>
<translation type="unfinished">Kopera Kero</translation>
</message>
diff --git a/src/qt/locale/bitcoin_so.ts b/src/qt/locale/bitcoin_so.ts
index 27a41f2440..343e5aacbf 100644
--- a/src/qt/locale/bitcoin_so.ts
+++ b/src/qt/locale/bitcoin_so.ts
@@ -3,23 +3,23 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">Fadlan garaaci Midig ku dhufo si aad u saxdo ciwaanka ama sumadda.</translation>
+ <translation type="unfinished">Xaq-click si aad cinwaanka edit ama qoraalka</translation>
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">Fadhlan samee cinwaan cusub.</translation>
+ <translation type="unfinished">Abuur cinwaan cusub</translation>
</message>
<message>
<source>&amp;New</source>
- <translation type="unfinished">Maqal</translation>
+ <translation type="unfinished">&amp;Hormarin</translation>
</message>
<message>
<source>Copy the currently selected address to the system clipboard</source>
- <translation type="unfinished">Ka akhriso cinwaan aad xaqiijinaysay si aad u ku koobid natiijada isticmaalka ee nidaamka</translation>
+ <translation type="unfinished">Nuqul ka dhig cinwaanka hadda la soo xulay ee clipboard system</translation>
</message>
<message>
<source>&amp;Copy</source>
- <translation type="unfinished">&amp;Fidi </translation>
+ <translation type="unfinished">&amp;Nuqul</translation>
</message>
<message>
<source>C&amp;lose</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">C&amp;Aagga</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Cinwaanada dirista</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Cinwaanada qaabilaadda</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Kuwani waa cinwaanada Seeraar aad ku direyso lacagaha. Marwalba caddadka ama cinwaanka laga soo hubiyo inta aadan dirin lacagta qadaadiicda ah ka hor inta aadan dirin.</translation>
</message>
@@ -84,9 +76,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Export Address List</source>
- <translation type="unfinished">Liiska Cinwaanka Dhoofinta
-
-</translation>
+ <translation type="unfinished">Liiska Cinwaanka Dhoofinta</translation>
</message>
<message>
<source>Comma separated file</source>
@@ -150,7 +140,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
- <translation type="unfinished">Digniin: Haddii aad qarisid jeebkaaga oo aad lumiso ereyga Passphrase, waxaad 1LOSE DOONAA DHAMMAAN BITCOINS1!</translation>
+ <translation type="unfinished">Digniin: Haddii aad jeebka jeebkaaga qarisid, Oo aad lumiso ereygii,Adigaa sameyn doontaa&lt;b&gt;Lumin oo dhan BITCOINS AAD&lt;/b&gt;!</translation>
</message>
<message>
<source>Are you sure you wish to encrypt your wallet?</source>
@@ -197,10 +187,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Supplied passrases ma u dhigma.</translation>
</message>
<message>
- <source>Wallet unlock failed</source>
- <translation type="unfinished">Wallet Unlock failed</translation>
- </message>
- <message>
<source>The passphrase entered for the wallet decryption was incorrect.</source>
<translation type="unfinished">Passrase soo galay for decryption jeebka ahaa mid khaldan.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sq.ts b/src/qt/locale/bitcoin_sq.ts
index fc6e79a5b3..8649fd6a97 100644
--- a/src/qt/locale/bitcoin_sq.ts
+++ b/src/qt/locale/bitcoin_sq.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Zgjidh</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Duke derguar adresen</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Duke marr adresen</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Këto janë Bitcoin adresat e juaja për të dërguar pagesa. Gjithmon kontrolloni shumën dhe adresën pranuese para se të dërgoni monedha.</translation>
</message>
@@ -399,14 +391,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Data</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">po</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">jo</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(pa etiketë)</translation>
</message>
@@ -763,10 +747,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Dërguar drejt</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Pagesë ndaj vetvetes</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Minuar</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sr.ts b/src/qt/locale/bitcoin_sr.ts
index 12e063c3d6..4d1e05a7ab 100644
--- a/src/qt/locale/bitcoin_sr.ts
+++ b/src/qt/locale/bitcoin_sr.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Одабери</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Адресе за слање</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Адресе за примање</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ово су твоје Биткоин адресе за слање уплата. Увек добро провери износ и адресу на коју шаљеш пре него што пошаљеш уплату.</translation>
</message>
@@ -853,10 +845,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Провизија:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Прашина:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Након накнаде:</translation>
</message>
@@ -941,10 +929,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Копирај бајтове</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копирај прашину</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копирај кусур</translation>
</message>
@@ -953,18 +937,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 закључан)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">да</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">не</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ознака постаје црвена уколико прималац прими износ мањи од износа прашине - сићушног износа.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Може варирати +/- %1 сатоши(ја) по инпуту.</translation>
</message>
@@ -1105,14 +1077,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Направи Празан Новчаник</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Користите дескрипторе за управљање сцриптПубКеи-ом</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Дескриптор Новчаник</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Користите спољни уређај за потписивање као што је хардверски новчаник. Прво конфигуришите скрипту спољног потписника у подешавањима новчаника.
</translation>
@@ -1126,10 +1090,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Направи</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Састављено без склите подршке (потребно за новчанике дескриптора)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Састављено без подршке за спољно потписивање (потребно за спољно потписивање)</translation>
@@ -1863,6 +1823,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">*Шаље %1 до %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">сопствена адреса</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Није могуће израчунати накнаду за трансакцију или укупан износ трансакције.</translation>
</message>
@@ -2705,10 +2669,6 @@ For more information on using this console, type %6.
<translation type="unfinished">Поља...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Прашина:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Одабери...</translation>
</message>
@@ -2785,10 +2745,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Копирај бајтове</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копирај прашину</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копирај кусур</translation>
</message>
@@ -3409,10 +3365,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Послат ка</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Уплата самом себи</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Рударено</translation>
</message>
@@ -3484,10 +3436,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Послат ка</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Теби</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Рударено</translation>
</message>
@@ -3738,10 +3686,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Дистрибуирано под MIT софтверском лиценцом, погледајте придружени документ %s или %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Грешка у читању %s! Сви кључеви су прочитани коректно, али подаци о трансакцији или уноси у адресар могу недостајати или бити нетачни.</translation>
- </message>
- <message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
<translation type="unfinished">Молим проверите да су време и датум на вашем рачунару тачни. Уколико је сат нетачан, %s неће радити исправно.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sr@ijekavianlatin.ts b/src/qt/locale/bitcoin_sr@ijekavianlatin.ts
index 18bd455b5f..de4620da00 100644
--- a/src/qt/locale/bitcoin_sr@ijekavianlatin.ts
+++ b/src/qt/locale/bitcoin_sr@ijekavianlatin.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">I&amp;zaberi</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Адресе за слање</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adresa na koju se prima</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ово су твоје Биткоин адресе за слање уплата. Увек добро провери износ и адресу на коју шаљеш пре него што пошаљеш уплату.</translation>
</message>
@@ -849,10 +841,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Naknada:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Прашина:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Након накнаде:</translation>
</message>
@@ -937,10 +925,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Копирај бајтове</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копирај прашину</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копирај кусур</translation>
</message>
@@ -949,18 +933,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 закључан)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">да</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">не</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ознака постаје црвена уколико прималац прими износ мањи од износа прашине - сићушног износа.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Може варирати +/- %1 сатоши(ја) по инпуту.</translation>
</message>
@@ -1101,14 +1073,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Направи Празан Новчаник</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Користите дескрипторе за управљање сцриптПубКеи-ом</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Дескриптор Новчаник</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Користите спољни уређај за потписивање као што је хардверски новчаник. Прво конфигуришите скрипту спољног потписника у подешавањима новчаника.
</translation>
@@ -1122,10 +1086,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Направи</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Састављено без склите подршке (потребно за новчанике дескриптора)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Састављено без подршке за спољно потписивање (потребно за спољно потписивање)</translation>
@@ -1270,7 +1230,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Error</source>
- <translation type="unfinished">Greska</translation>
+ <translation type="unfinished">Грешка</translation>
</message>
<message>
<source>Welcome</source>
@@ -1689,7 +1649,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Error</source>
- <translation type="unfinished">Greska</translation>
+ <translation type="unfinished">Грешка</translation>
</message>
<message>
<source>The configuration file could not be opened.</source>
@@ -1859,6 +1819,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">*Шаље %1 до %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">сопствена адреса</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Није могуће израчунати накнаду за трансакцију или укупан износ трансакције.</translation>
</message>
@@ -2701,10 +2665,6 @@ For more information on using this console, type %6.
<translation type="unfinished">Поља...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Прашина:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Одабери...</translation>
</message>
@@ -2781,10 +2741,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Копирај бајтове</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копирај прашину</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копирај кусур</translation>
</message>
@@ -3405,10 +3361,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Poslat</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Уплата самом себи</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Рударено</translation>
</message>
@@ -3480,10 +3432,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Poslat</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Теби</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Рударено</translation>
</message>
@@ -3601,11 +3549,11 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<name>WalletFrame</name>
<message>
<source>Create a new wallet</source>
- <translation type="unfinished">Napravi novi novčanik</translation>
+ <translation type="unfinished">Направи нови ночаник</translation>
</message>
<message>
<source>Error</source>
- <translation type="unfinished">Greska</translation>
+ <translation type="unfinished">Грешка</translation>
</message>
<message>
<source>Unable to decode PSBT from clipboard (invalid base64)</source>
@@ -3734,10 +3682,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Дистрибуирано под MIT софтверском лиценцом, погледајте придружени документ %s или %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Грешка у читању %s! Сви кључеви су прочитани коректно, али подаци о трансакцији или уноси у адресар могу недостајати или бити нетачни.</translation>
- </message>
- <message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
<translation type="unfinished">Молим проверите да су време и датум на вашем рачунару тачни. Уколико је сат нетачан, %s неће радити исправно.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sr@latin.ts b/src/qt/locale/bitcoin_sr@latin.ts
index 4cb359fb19..9385b01e9c 100644
--- a/src/qt/locale/bitcoin_sr@latin.ts
+++ b/src/qt/locale/bitcoin_sr@latin.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">I&amp;zaberi</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adresa na koju se šalje</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adresa na koju se prima</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ovo su Vaše Bitcoin adrese na koju se vrše uplate. Uvek proverite iznos i prijemnu adresu pre slanja novčića.</translation>
</message>
@@ -849,10 +841,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Naknada:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Прашина:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Nakon Naknade:</translation>
</message>
@@ -937,10 +925,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Копирај бајтове</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копирај прашину</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копирај кусур</translation>
</message>
@@ -949,18 +933,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 закључан)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">да</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">не</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ознака постаје црвена уколико прималац прими износ мањи од износа прашине - сићушног износа.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Може варирати +/- %1 сатоши(ја) по инпуту.</translation>
</message>
@@ -1101,14 +1073,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Направи Празан Новчаник</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Користите дескрипторе за управљање сцриптПубКеи-ом</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Дескриптор Новчаник</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Користите спољни уређај за потписивање као што је хардверски новчаник. Прво конфигуришите скрипту спољног потписника у подешавањима новчаника.
</translation>
@@ -1122,10 +1086,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Направи</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Састављено без склите подршке (потребно за новчанике дескриптора)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Састављено без подршке за спољно потписивање (потребно за спољно потписивање)</translation>
@@ -1855,6 +1815,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">*Шаље %1 до %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">sopstvena adresa</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Није могуће израчунати накнаду за трансакцију или укупан износ трансакције.</translation>
</message>
@@ -2697,10 +2661,6 @@ For more information on using this console, type %6.
<translation type="unfinished">Поља...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Прашина:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Одабери...</translation>
</message>
@@ -2777,10 +2737,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Копирај бајтове</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копирај прашину</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копирај кусур</translation>
</message>
@@ -3401,10 +3357,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Poslat</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Placanje samom sebi</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Iskopano</translation>
</message>
@@ -3476,10 +3428,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Poslat</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Теби</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Iskopano</translation>
</message>
@@ -3597,7 +3545,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<name>WalletFrame</name>
<message>
<source>Create a new wallet</source>
- <translation type="unfinished">Napravi novi novčanik</translation>
+ <translation type="unfinished">Направи нови ночаник</translation>
</message>
<message>
<source>Error</source>
@@ -3730,10 +3678,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Дистрибуирано под MIT софтверском лиценцом, погледајте придружени документ %s или %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Грешка у читању %s! Сви кључеви су прочитани коректно, али подаци о трансакцији или уноси у адресар могу недостајати или бити нетачни.</translation>
- </message>
- <message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
<translation type="unfinished">Молим проверите да су време и датум на вашем рачунару тачни. Уколико је сат нетачан, %s неће радити исправно.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sv.ts b/src/qt/locale/bitcoin_sv.ts
index 36a3ede0ad..feb7c57e1f 100644
--- a/src/qt/locale/bitcoin_sv.ts
+++ b/src/qt/locale/bitcoin_sv.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">V&amp;älj</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Avsändaradresser</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Mottagaradresser</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Detta är dina Bitcoin-adresser för att skicka betalningar. Kontrollera alltid belopp och mottagaradress innan du skickar bitcoin.</translation>
</message>
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
Försök igen.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Avsändaradresser - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Mottagaradresser - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Export misslyckades</translation>
</message>
@@ -217,17 +217,29 @@ Försök igen.</translation>
</message>
<message>
<source>Wallet unlock failed</source>
- <translation type="unfinished">Misslyckades låsa upp plånboken</translation>
+ <translation type="unfinished">Misslyckades att låsa upp plånboken</translation>
</message>
<message>
<source>The passphrase entered for the wallet decryption was incorrect.</source>
<translation type="unfinished">Lösenfrasen för dekryptering av plånboken var felaktig.</translation>
</message>
<message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">Lösenordet som angavs för plånboksavkrypteringen är felaktigt. Det innehåller ett nolltecken (det vill säga en nollbyte). Om lösenordet ställdes in med en tidigare version av denna programvara före version 25.0, försök igen med endast tecknen upp till - men inte inklusive - det första nolltecknet. Om detta lyckas, vänligen ställ in ett nytt lösenord för att undvika detta problem i framtiden.</translation>
+ </message>
+ <message>
<source>Wallet passphrase was successfully changed.</source>
<translation type="unfinished">Plånbokens lösenfras ändrades.</translation>
</message>
<message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Misslyckades att ändra lösenfras</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">Det gamla lösenordet som angavs för plånboksavkrypteringen är felaktigt. Det innehåller ett nolltecken (det vill säga en nollbyte). Om lösenordet ställdes in med en tidigare version av denna programvara före version 25.0, försök igen med endast tecknen upp till - men inte inklusive - det första nolltecknet.</translation>
+ </message>
+ <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">Varning: Caps Lock är påslaget!</translation>
</message>
@@ -246,6 +258,18 @@ Försök igen.</translation>
<context>
<name>BitcoinApplication</name>
<message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">Konfigurationsfil %1 verkar vara korrupt</translation>
+ </message>
+ <message>
+ <source>Runaway exception</source>
+ <translation type="unfinished">Ohanterligt undantag</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
+ <translation type="unfinished">Ett allvarligt fel har uppstått. %1 kan inte längre köras säkert och kommer att avslutas.</translation>
+ </message>
+ <message>
<source>Internal error</source>
<translation type="unfinished">Internt fel</translation>
</message>
@@ -257,6 +281,11 @@ Försök igen.</translation>
<context>
<name>QObject</name>
<message>
+ <source>Do you want to reset settings to default values, or to abort without making changes?</source>
+ <extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
+ <translation type="unfinished">Vill du återställa inställningarna till standardvärden, eller avbryta utan att göra några ändringar?</translation>
+ </message>
+ <message>
<source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
<extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
<translation type="unfinished">Ett allvarligt fel skedde. Se att filen för inställningar är möjlig att skriva, eller försök köra med "-nosettings"</translation>
@@ -267,7 +296,7 @@ Försök igen.</translation>
</message>
<message>
<source>%1 didn't yet exit safely…</source>
- <translation type="unfinished">%1 har inte avslutats korrekt än...</translation>
+ <translation type="unfinished">%1 har inte avslutats korrekt ännu...</translation>
</message>
<message>
<source>unknown</source>
@@ -297,6 +326,11 @@ Försök igen.</translation>
<translation type="unfinished">Fullt relä</translation>
</message>
<message>
+ <source>Block Relay</source>
+ <extracomment>Peer connection type that relays network information about blocks and not transactions or addresses.</extracomment>
+ <translation type="unfinished">Blockrelä</translation>
+ </message>
+ <message>
<source>None</source>
<translation type="unfinished">Ingen</translation>
</message>
@@ -524,7 +558,7 @@ Försök igen.</translation>
</message>
<message>
<source>Processing blocks on disk…</source>
- <translation type="unfinished">Behandlar block på disken…</translation>
+ <translation type="unfinished">Processar block på disken…</translation>
</message>
<message>
<source>Connecting to peers…</source>
@@ -640,6 +674,14 @@ Försök igen.</translation>
<translation type="unfinished">Stäng alla plånböcker</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrera plånbok</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Migrera en plånbok</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Visa %1 hjälpmeddelande för att få en lista med möjliga Bitcoin kommandoradsalternativ.</translation>
</message>
@@ -665,6 +707,11 @@ Försök igen.</translation>
<translation type="unfinished">Plånboksdata</translation>
</message>
<message>
+ <source>Load Wallet Backup</source>
+ <extracomment>The title for Restore Wallet File Windows</extracomment>
+ <translation type="unfinished">Ladda backup av plånbok</translation>
+ </message>
+ <message>
<source>Restore Wallet</source>
<extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
<translation type="unfinished">Återställ Plånbok</translation>
@@ -692,7 +739,11 @@ Försök igen.</translation>
</message>
<message>
<source>&amp;Hide</source>
- <translation type="unfinished">och göm</translation>
+ <translation type="unfinished">&amp;Dölj</translation>
+ </message>
+ <message>
+ <source>S&amp;how</source>
+ <translation type="unfinished">V&amp;isa</translation>
</message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
@@ -708,6 +759,11 @@ Försök igen.</translation>
<translation type="unfinished">Klicka för fler alternativ</translation>
</message>
<message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">Visa flik för anslutningar</translation>
+ </message>
+ <message>
<source>Disable network activity</source>
<extracomment>A context menu item.</extracomment>
<translation type="unfinished">Stäng av nätverksaktivitet</translation>
@@ -718,6 +774,18 @@ Försök igen.</translation>
<translation type="unfinished">Aktivera nätverksaktivitet</translation>
</message>
<message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">Förhandsinkoppling av rubriker ( %1 %)...</translation>
+ </message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Misslyckades att skapa plånbok</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Kan inte skapa ny plånbok, programvaran kompilerades utan stöd för sqlite (krävs för deskriptorplånböcker)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Fel: %1</translation>
</message>
@@ -824,10 +892,6 @@ Försök igen.</translation>
<translation type="unfinished">Avgift:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Damm:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Efter avgift:</translation>
</message>
@@ -888,6 +952,18 @@ Försök igen.</translation>
<translation type="unfinished">Kopiera &amp;Belopp</translation>
</message>
<message>
+ <source>Copy transaction &amp;ID and output index</source>
+ <translation type="unfinished">Kopiera transaktion &amp;ID och utdatindex</translation>
+ </message>
+ <message>
+ <source>L&amp;ock unspent</source>
+ <translation type="unfinished">L&amp;ås oanvända</translation>
+ </message>
+ <message>
+ <source>&amp;Unlock unspent</source>
+ <translation type="unfinished">&amp;Lås upp oanvända</translation>
+ </message>
+ <message>
<source>Copy quantity</source>
<translation type="unfinished">Kopiera kvantitet</translation>
</message>
@@ -904,10 +980,6 @@ Försök igen.</translation>
<translation type="unfinished">Kopiera byte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiera damm</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiera växel</translation>
</message>
@@ -916,18 +988,6 @@ Försök igen.</translation>
<translation type="unfinished">(%1 låst)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ja</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">nej</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Denna etikett blir röd om någon mottagare tar emot ett belopp som är lägre än aktuell dammtröskel.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Kan variera +/- %1 satoshi per inmatning.</translation>
</message>
@@ -968,7 +1028,11 @@ Försök igen.</translation>
<source>Can't list signers</source>
<translation type="unfinished">Kan inte lista signerare</translation>
</message>
- </context>
+ <message>
+ <source>Too many external signers found</source>
+ <translation type="unfinished">För stort antal externa signerare funna</translation>
+ </message>
+</context>
<context>
<name>LoadWalletsActivity</name>
<message>
@@ -983,6 +1047,51 @@ Försök igen.</translation>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Migrera plånbok</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Är du säker att du vill migrera plånboken 1 %1 1 ?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">Migrering av plånboken kommer att konvertera denna plånbok till en eller flera deskriptorplånböcker. En ny säkerhetskopia av plånboken måste skapas.
+Om den här plånboken innehåller watchonly-skript skapas en ny plånbok som innehåller dessa watchonly-skript.
+Om den här plånboken innehåller lösbara</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Migrera plånbok</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Migrerar plånbok &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Migrering av plånboken ' %1 ' genomförd.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">Watchonly-skript har migrerats till en ny plånbok med namnet '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Migrering misslyckades</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Migrering genomförd</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -990,7 +1099,7 @@ Försök igen.</translation>
</message>
<message>
<source>Open wallet warning</source>
- <translation type="unfinished">Öppna plånboksvarning.</translation>
+ <translation type="unfinished">Öppna plånboksvarning</translation>
</message>
<message>
<source>default wallet</source>
@@ -1024,6 +1133,11 @@ Försök igen.</translation>
<extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
<translation type="unfinished">Det gick inte att återställa plånboken</translation>
</message>
+ <message>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">Återställ plånboksvarning</translation>
+ </message>
</context>
<context>
<name>WalletController</name>
@@ -1055,6 +1169,14 @@ Försök igen.</translation>
<translation type="unfinished">Skapa plånbok</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Nu är du bara ett steg ifrån att skapa din nya plånbok!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Ange ett namn och, om så önskas, aktivera eventuella avancerade alternativ</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">Namn på plånboken</translation>
</message>
@@ -1091,10 +1213,23 @@ Försök igen.</translation>
<translation type="unfinished">Skapa tom plånbok</translation>
</message>
<message>
+ <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
+ <translation type="unfinished">Använd en extern signeringsenhet, t.ex. en hårdvaruplånbok. Konfigurera först skriptet för extern signering i plånboksinställningarna.</translation>
+ </message>
+ <message>
+ <source>External signer</source>
+ <translation type="unfinished">Extern signerare</translation>
+ </message>
+ <message>
<source>Create</source>
<translation type="unfinished">Skapa</translation>
</message>
- </context>
+ <message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Kompilerad utan stöd för extern signering (krävs för extern signering)</translation>
+ </message>
+</context>
<context>
<name>EditAddressDialog</name>
<message>
@@ -1178,8 +1313,8 @@ Försök igen.</translation>
<message numerus="yes">
<source>%n GB of space available</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>%n GB tillgängligt lagringsutrymme</numerusform>
+ <numerusform>%n GB tillgängligt lagringsutrymme</numerusform>
</translation>
</message>
<message numerus="yes">
@@ -1197,6 +1332,10 @@ Försök igen.</translation>
</translation>
</message>
<message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">Välj katalog för data</translation>
+ </message>
+ <message>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">Minst %1 GB data kommer att sparas i den här katalogen, och de växer över tiden.</translation>
</message>
@@ -1208,8 +1347,8 @@ Försök igen.</translation>
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>(tillräckligt för att återställa säkerhetskopior %n dag(ar) gammal)</numerusform>
+ <numerusform>(tillräckligt för att återställa säkerhetskopior %n dag(ar) gammal)</numerusform>
</translation>
</message>
<message>
@@ -1337,6 +1476,10 @@ Försök igen.</translation>
<source>Hide</source>
<translation type="unfinished">Dölj</translation>
</message>
+ <message>
+ <source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
+ <translation type="unfinished">%1 synkroniserar. Den kommer att ladda ner metadata och block från noder och validera dem fram tills att toppen på blockkedjan är nådd.</translation>
+ </message>
</context>
<context>
<name>OpenURIDialog</name>
@@ -1452,6 +1595,10 @@ Försök igen.</translation>
<translation type="unfinished">Aktivera &amp;PSBT-kontroll</translation>
</message>
<message>
+ <source>External Signer (e.g. hardware wallet)</source>
+ <translation type="unfinished">Extern signerare (e.g. hårdvaruplånbok)</translation>
+ </message>
+ <message>
<source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
<translation type="unfinished">Öppna automatiskt Bitcoin-klientens port på routern. Detta fungerar endast om din router stödjer UPnP och det är är aktiverat.</translation>
</message>
@@ -1544,10 +1691,23 @@ Försök igen.</translation>
<translation type="unfinished">Anslut till Bitcoin-nätverket genom en separat SOCKS5-proxy för onion-tjänster genom Tor.</translation>
</message>
<message>
+ <source>Use separate SOCKS&amp;5 proxy to reach peers via Tor onion services:</source>
+ <translation type="unfinished">Använd en fristående SOCKS&amp;5 proxy för att nå noder via Tor onion tjänster:</translation>
+ </message>
+ <message>
+ <source>closest matching "%1"</source>
+ <translation type="unfinished">närmast träff " %1 "</translation>
+ </message>
+ <message>
<source>&amp;Cancel</source>
<translation type="unfinished">&amp;Avbryt</translation>
</message>
<message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">Kompilerad utan stöd för extern signering (krävs för extern signering)</translation>
+ </message>
+ <message>
<source>default</source>
<translation type="unfinished">standard</translation>
</message>
@@ -1739,6 +1899,10 @@ Försök igen.</translation>
<translation type="unfinished">* Skickar %1 till %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">egen adress</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">Kunde inte beräkna transaktionsavgift eller totala transaktionssumman.</translation>
</message>
@@ -1975,7 +2139,7 @@ Försök igen.</translation>
</message>
<message>
<source>&amp;Peers</source>
- <translation type="unfinished">&amp;Klienter</translation>
+ <translation type="unfinished">&amp;Noder</translation>
</message>
<message>
<source>Banned peers</source>
@@ -1986,6 +2150,10 @@ Försök igen.</translation>
<translation type="unfinished">Välj en klient för att se detaljerad information.</translation>
</message>
<message>
+ <source>Transaction Relay</source>
+ <translation type="unfinished">Transaktionsrelä</translation>
+ </message>
+ <message>
<source>Starting Block</source>
<translation type="unfinished">Startblock</translation>
</message>
@@ -2106,6 +2274,16 @@ Försök igen.</translation>
<translation type="unfinished">Ut:</translation>
</message>
<message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: okrypterat transportprotokoll i klartext</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324 krypterat transportprotokoll</translation>
+ </message>
+ <message>
<source>&amp;Copy address</source>
<extracomment>Context menu action to copy the address of a peer.</extracomment>
<translation type="unfinished">&amp;Kopiera adress</translation>
@@ -2444,10 +2622,6 @@ Försök igen.</translation>
<translation type="unfinished">Inmatningar…</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Damm:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Välj…</translation>
</message>
@@ -2512,10 +2686,6 @@ Försök igen.</translation>
<translation type="unfinished">Kopiera byte</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiera damm</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiera växel</translation>
</message>
@@ -2524,6 +2694,10 @@ Försök igen.</translation>
<translation type="unfinished">%1 (%2 block)</translation>
</message>
<message>
+ <source>Connect your hardware wallet first.</source>
+ <translation type="unfinished">Anslut din hårdvaruplånbok först.</translation>
+ </message>
+ <message>
<source>Cr&amp;eate Unsigned</source>
<translation type="unfinished">Sk&amp;apa Osignerad</translation>
</message>
@@ -2570,6 +2744,11 @@ Försök igen.</translation>
<translation type="unfinished">Verifiera ditt transaktionsförslag. Det kommer skapas en delvis signerad Bitcoin transaktion (PSBT) som du kan spara eller kopiera och sen signera med t.ex. en offline %1 plånbok, eller en PSBT-kompatibel hårdvaruplånbok.</translation>
</message>
<message>
+ <source>Do you want to create this transaction?</source>
+ <extracomment>Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</extracomment>
+ <translation type="unfinished">Vill du skapa den här transaktionen?</translation>
+ </message>
+ <message>
<source>Please, review your transaction.</source>
<extracomment>Text to prompt a user to review the details of the transaction they are attempting to send.</extracomment>
<translation type="unfinished">Var vänlig se över din transaktion.</translation>
@@ -3086,10 +3265,6 @@ Försök igen.</translation>
<translation type="unfinished">Skickad till</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Betalning till dig själv</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Grävda</translation>
</message>
@@ -3161,10 +3336,6 @@ Försök igen.</translation>
<translation type="unfinished">Skickad till</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Till dig själv</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Grävda</translation>
</message>
@@ -3197,6 +3368,10 @@ Försök igen.</translation>
<translation type="unfinished">Kopiera &amp;Belopp</translation>
</message>
<message>
+ <source>Copy transaction &amp;ID</source>
+ <translation type="unfinished">Kopiera transaktions &amp;ID</translation>
+ </message>
+ <message>
<source>&amp;Show transaction details</source>
<translation type="unfinished">&amp;Visa detaljer för överföringen</translation>
</message>
@@ -3412,10 +3587,6 @@ Gå till Fil &gt; Öppna plånbok för att läsa in en plånbok.
<translation type="unfinished">Distribuerad under MIT mjukvarulicens, se den bifogade filen %s eller %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Fel vid läsning av %s! Alla nycklar lästes korrekt, men transaktionsdata eller poster i adressboken kanske saknas eller är felaktiga.</translation>
- </message>
- <message>
<source>More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
<translation type="unfinished">Fler än en onion-adress finns tillgänglig. Den automatiskt skapade Tor-tjänsten kommer använda %s.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_sw.ts b/src/qt/locale/bitcoin_sw.ts
index 3f94907ce3..d6c7106a32 100644
--- a/src/qt/locale/bitcoin_sw.ts
+++ b/src/qt/locale/bitcoin_sw.ts
@@ -3,7 +3,7 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">Bonyeza kitufe cha kulia kufanya mabadiliko kwenye anuani au lebo</translation>
+ <translation type="unfinished">Bonyeza kitufe cha kulia kufanya mabadiliko kwenye anuani au chapa</translation>
</message>
<message>
<source>Create a new address</source>
@@ -31,15 +31,15 @@
</message>
<message>
<source>Enter address or label to search</source>
- <translation type="unfinished">Weka anwani au lebo ili utafute</translation>
+ <translation type="unfinished">Weka anwani au chapa ili utafute</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
- <translation type="unfinished">Hamisha data katika kichupo cha sasa hadi kwenye faili</translation>
+ <translation type="unfinished">Toa data katika kichupo cha sasa hadi kwenye faili</translation>
</message>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">na hamisha</translation>
+ <translation type="unfinished">&amp;Toa</translation>
</message>
<message>
<source>&amp;Delete</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">Chagua</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Kutuma anuani</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Kupokea anuani</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Hizi ndizo anwani zako za kutuma malipo ya sarafu ya Bitcoin. Hakikisha kila wakati kiwango na anwani ya kupokea kabla ya kutuma sarafu.</translation>
</message>
@@ -81,7 +73,7 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</message>
<message>
<source>Copy &amp;Label</source>
- <translation type="unfinished">nakala &amp; lebo</translation>
+ <translation type="unfinished">Nakili &amp; Chapa</translation>
</message>
<message>
<source>&amp;Edit</source>
@@ -89,16 +81,21 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</message>
<message>
<source>Export Address List</source>
- <translation type="unfinished">Pakia orodha ya anuani</translation>
+ <translation type="unfinished">Toa orodha ya anuani</translation>
</message>
<message>
<source>Comma separated file</source>
<extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">Faili lililotenganishwa kwa mkato</translation>
+ <translation type="unfinished">Faili linalotenganishwa kwa mkato</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the address list to %1. Please try again.</source>
+ <extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
+ <translation type="unfinished">Kulikuwa na kosa jaribu kuokoa orodha ya anwani kwa %1. Tafadhali jaribu tena.</translation>
</message>
<message>
<source>Exporting Failed</source>
- <translation type="unfinished">Upakiaji haujafanikiwa</translation>
+ <translation type="unfinished">Utoaji Haujafanikiwa</translation>
</message>
</context>
<context>
@@ -139,24 +136,60 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<translation type="unfinished">Onyesha nenosiri</translation>
</message>
<message>
+ <source>Encrypt wallet</source>
+ <translation type="unfinished">Simba mkoba</translation>
+ </message>
+ <message>
<source>This operation needs your wallet passphrase to unlock the wallet.</source>
<translation type="unfinished">Operesheni hii inahitaji kaulisiri ya mkoba wako ili kufungua pochi.</translation>
</message>
<message>
+ <source>Unlock wallet</source>
+ <translation type="unfinished">Fungua mkoba</translation>
+ </message>
+ <message>
<source>Change passphrase</source>
<translation type="unfinished">Badilisha nenosiri </translation>
</message>
<message>
+ <source>Confirm wallet encryption</source>
+ <translation type="unfinished">Thibitisha usimbaji fiche wa pochi</translation>
+ </message>
+ <message>
<source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
<translation type="unfinished">Ilani: Ikiwa utasimba pochi yako na ukapoteza nenosiri lako, &lt;b&gt; UTAPOTEZA BITCOIN ZAKO ZOTE &lt;/b&gt;!</translation>
</message>
<message>
+ <source>Are you sure you wish to encrypt your wallet?</source>
+ <translation type="unfinished">Je, una uhakika ungependa kusimba kibeti chako kwa njia fiche?</translation>
+ </message>
+ <message>
+ <source>Wallet encrypted</source>
+ <translation type="unfinished">Wallet imesimbwa kwa njia fiche</translation>
+ </message>
+ <message>
<source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
- <translation type="unfinished">Ingiza nenosiri jipya kwa ajili ya pochi yako.&lt;br/&gt;Tafadhali tumia nenosiri ya&lt;b&gt;herufi holelaholela kumi au zaidi&lt;/b&gt;, au &lt;b&gt; maneno kumi au zaidi&lt;/b&gt;.</translation>
+ <translation type="unfinished">Ingiza nenosiri jipya kwa ajili ya pochi yako.&lt;br/&gt;Tafadhali tumia nenosiri la &lt;b&gt;herufi holelaholela kumi au zaidi&lt;/b&gt;, au &lt;b&gt;maneno kumi au zaidi&lt;/b&gt;.</translation>
</message>
<message>
<source>Enter the old passphrase and new passphrase for the wallet.</source>
- <translation type="unfinished">Ingiza nenosiri ya zamani na nenosiri jipya ya pochi yako.</translation>
+ <translation type="unfinished">Ingiza nenosiri la zamani na nenosiri jipya la pochi yako.</translation>
+ </message>
+ <message>
+ <source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
+ <translation type="unfinished">Kumbuka kwamba usimbaji fiche wa mkoba wako hauwezi kulinda bitcoins zako zisiibiwe na programu hasidi kuambukiza kompyuta yako.</translation>
+ </message>
+ <message>
+ <source>Wallet to be encrypted</source>
+ <translation type="unfinished">Wallet itasimbwa kwa njia fiche</translation>
+ </message>
+ <message>
+ <source>Your wallet is about to be encrypted. </source>
+ <translation type="unfinished">Mkoba wako unakaribia kusimbwa kwa njia fiche.</translation>
+ </message>
+ <message>
+ <source>Your wallet is now encrypted. </source>
+ <translation type="unfinished">Mkoba wako sasa umesimbwa kwa njia fiche.</translation>
</message>
<message>
<source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
@@ -164,12 +197,20 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
 </translation>
</message>
<message>
+ <source>Wallet encryption failed</source>
+ <translation type="unfinished">Usimbaji fiche wa Wallet haukufaulu</translation>
+ </message>
+ <message>
+ <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
+ <translation type="unfinished">Usimbaji fiche wa Wallet umeshindwa kwa sababu ya hitilafu ya ndani. Pochi yako haikusimbwa kwa njia fiche.</translation>
+ </message>
+ <message>
<source>The supplied passphrases do not match.</source>
<translation type="unfinished">Nenosiri liliyotolewa haifanani.</translation>
</message>
<message>
<source>The passphrase entered for the wallet decryption was incorrect.</source>
- <translation type="unfinished">Nenosiri liliyoingizwa kwa ajili ya kufundua pochi sio sahihi.</translation>
+ <translation type="unfinished">Nenosiri liliyoingizwa kwa ajili ya kufungua pochi sio sahihi.</translation>
</message>
<message>
<source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
@@ -187,9 +228,57 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
<translation type="unfinished">Nenosiri la zamani liliyoingizwa kwa ajili ya kufungulia pochi sio sahihi. Linabeba herufi batili (yaani - yenye byte 0 ). Kama nenosiri liliwekwa na toleo la programu hii kabla ya 25.0, tafadhali jaribu tena na herufi zote mpaka — lakini usiweka — herufi batili ya kwanza.</translation>
</message>
- </context>
+ <message>
+ <source>Warning: The Caps Lock key is on!</source>
+ <translation type="unfinished">Onyo: Kitufe cha Caps Lock kimewashwa!</translation>
+ </message>
+</context>
+<context>
+ <name>BanTableModel</name>
+ <message>
+ <source>Banned Until</source>
+ <translation type="unfinished">Imepigwa Marufuku Hadi</translation>
+ </message>
+</context>
+<context>
+ <name>BitcoinApplication</name>
+ <message>
+ <source>Runaway exception</source>
+ <translation type="unfinished">Ubaguzi wa kukimbia</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
+ <translation type="unfinished">Kosa kubwa limejitokeza. %1 haliwezi kuendelea salama na litajiondoa.</translation>
+ </message>
+ <message>
+ <source>Internal error</source>
+ <translation type="unfinished">Hitilafu ya ndani</translation>
+ </message>
+ <message>
+ <source>An internal error occurred. %1 will attempt to continue safely. This is an unexpected bug which can be reported as described below.</source>
+ <translation type="unfinished">Hitilafu ya ndani ilitokea. %1 itajaribu kuendelea salama. Hii ni mdudu usiotarajiwa ambao unaweza kuripotiwa kama ilivyoelezwa hapa chini.</translation>
+ </message>
+</context>
<context>
<name>QObject</name>
+ <message>
+ <source>Do you want to reset settings to default values, or to abort without making changes?</source>
+ <extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
+ <translation type="unfinished">Unataka kurejesha mipangilio kwa thamani za awali, au kusitisha bila kufanya mabadiliko?</translation>
+ </message>
+ <message>
+ <source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
+ <extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
+ <translation type="unfinished">Kosa kubwa limejitokeza. Angalia kwamba faili ya mipangilio inaweza kuandikwa, au jaribu kuendesha na -nosettings.</translation>
+ </message>
+ <message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Kosa: %1</translation>
+ </message>
+ <message>
+ <source>%1 didn't yet exit safely…</source>
+ <translation type="unfinished">%1 bado hajaondoka salama...</translation>
+ </message>
<message numerus="yes">
<source>%n second(s)</source>
<translation type="unfinished">
@@ -236,14 +325,107 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<context>
<name>BitcoinGUI</name>
<message>
+ <source>&amp;Overview</source>
+ <translation type="unfinished">&amp;Muhtasari</translation>
+ </message>
+ <message>
+ <source>Show general overview of wallet</source>
+ <translation type="unfinished">Onyesha muhtasari wa jumla wa mkoba</translation>
+ </message>
+ <message>
+ <source>&amp;Transactions</source>
+ <translation type="unfinished">&amp;Shughuli za malipo</translation>
+ </message>
+ <message>
+ <source>Browse transaction history</source>
+ <translation type="unfinished">Angalia historia ya shughuli za malipo</translation>
+ </message>
+ <message>
+ <source>Quit application</source>
+ <translation type="unfinished">Acha programu</translation>
+ </message>
+ <message>
+ <source>&amp;About %1</source>
+ <translation type="unfinished">Kuhusu %1</translation>
+ </message>
+ <message>
+ <source>Show information about %1</source>
+ <translation type="unfinished">Onyesha habari kuhusu %1</translation>
+ </message>
+ <message>
+ <source>About &amp;Qt</source>
+ <translation type="unfinished">Kuhusu &amp;Qt</translation>
+ </message>
+ <message>
+ <source>Modify configuration options for %1</source>
+ <translation type="unfinished">Badilisha chaguo za usanidi kwa %1</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Unda mkoba mpya</translation>
+ </message>
+ <message>
+ <source>&amp;Minimize</source>
+ <translation type="unfinished">Kupunguza</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Mkoba:</translation>
+ </message>
+ <message>
+ <source>Network activity disabled.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">Shughuli ya mtandao imelemazwa.</translation>
+ </message>
+ <message>
+ <source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
+ <translation type="unfinished">Proxy imeamilishwa: %1</translation>
+ </message>
+ <message>
+ <source>Send coins to a Bitcoin address</source>
+ <translation type="unfinished">Tuma sarafu kwa anwani ya Bitcoin</translation>
+ </message>
+ <message>
+ <source>Backup wallet to another location</source>
+ <translation type="unfinished">Cheleza mkoba hadi eneo lingine</translation>
+ </message>
+ <message>
<source>Change the passphrase used for wallet encryption</source>
<translation type="unfinished">Badilisha nenosiri liliyotumika kusimba pochi</translation>
</message>
<message>
+ <source>&amp;Send</source>
+ <translation type="unfinished">&amp;TUMA</translation>
+ </message>
+ <message>
+ <source>&amp;Options…</source>
+ <translation type="unfinished">&amp;Chaguo...</translation>
+ </message>
+ <message>
+ <source>Encrypt the private keys that belong to your wallet</source>
+ <translation type="unfinished">Funga funguo za siri zinazomiliki mkoba wako.</translation>
+ </message>
+ <message>
<source>&amp;Change Passphrase…</source>
<translation type="unfinished">&amp;Badilisha Nenosiri...</translation>
</message>
<message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">Saini &amp;ujumbe...</translation>
+ </message>
+ <message>
+ <source>Sign messages with your Bitcoin addresses to prove you own them</source>
+ <translation type="unfinished">Saini ujumbe na anwani zako za Bitcoin ili kuthibitisha umiliki wao.</translation>
+ </message>
+ <message>
+ <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
+ <translation type="unfinished">Hakikisha ujumbe umethibitishwa kuwa ulisainiwa na anwani za Bitcoin zilizotajwa</translation>
+ </message>
+ <message>
+ <source>Open &amp;URI…</source>
+ <translation type="unfinished">Fungua &amp;URI ...</translation>
+ </message>
+ <message>
<source>Close Wallet…</source>
<translation type="unfinished">Funga pochi</translation>
</message>
@@ -256,6 +438,46 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<translation type="unfinished">Funga pochi yzote</translation>
</message>
<message>
+ <source>&amp;File</source>
+ <translation type="unfinished">&amp;Faili</translation>
+ </message>
+ <message>
+ <source>&amp;Settings</source>
+ <translation type="unfinished">&amp;Vipimo</translation>
+ </message>
+ <message>
+ <source>&amp;Help</source>
+ <translation type="unfinished">&amp;Msaidie</translation>
+ </message>
+ <message>
+ <source>Tabs toolbar</source>
+ <translation type="unfinished">Vidirisha vya vichupo</translation>
+ </message>
+ <message>
+ <source>Syncing Headers (%1%)…</source>
+ <translation type="unfinished">Kuunganisha Vichwa vya habari (%1%) ...</translation>
+ </message>
+ <message>
+ <source>Synchronizing with network…</source>
+ <translation type="unfinished">Kuunganisha na mtandao ...</translation>
+ </message>
+ <message>
+ <source>Indexing blocks on disk…</source>
+ <translation type="unfinished">Kuweka alama za vitengo kwenye diski ...</translation>
+ </message>
+ <message>
+ <source>Processing blocks on disk…</source>
+ <translation type="unfinished">Kusindika vitalu kwenye diski ...</translation>
+ </message>
+ <message>
+ <source>Connecting to peers…</source>
+ <translation type="unfinished">Kuunganisha na wenzako wa kushirikiana...</translation>
+ </message>
+ <message>
+ <source>Request payments (generates QR codes and bitcoin: URIs)</source>
+ <translation type="unfinished">Omba malipo (huzalisha nambari za QR na bitcoin: URIs)</translation>
+ </message>
+ <message>
<source>Show the list of used sending addresses and labels</source>
<translation type="unfinished">Onyesha orodha ya anuani za kutuma na chapa</translation>
</message>
@@ -263,6 +485,10 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<source>Show the list of used receiving addresses and labels</source>
<translation type="unfinished">Onyesha orodha ya anuani za kupokea zilizotumika na chapa</translation>
</message>
+ <message>
+ <source>&amp;Command-line options</source>
+ <translation type="unfinished">&amp;Chaguo za amri ya amri</translation>
+ </message>
<message numerus="yes">
<source>Processed %n block(s) of transaction history.</source>
<translation type="unfinished">
@@ -270,6 +496,11 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<numerusform />
</translation>
</message>
+ <message>
+ <source>Wallet Name</source>
+ <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
+ <translation type="unfinished">Jina la Wallet</translation>
+ </message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
@@ -279,6 +510,10 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</translation>
</message>
<message>
+ <source>Error: %1</source>
+ <translation type="unfinished">Kosa: %1</translation>
+ </message>
+ <message>
<source>Label: %1
</source>
<translation type="unfinished">Chapa: %1</translation>
@@ -296,28 +531,35 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</message>
<message>
<source>Copy &amp;label</source>
- <translation type="unfinished">Nakili &amp; Chapa</translation>
+ <translation type="unfinished">Nakili &amp;chapa</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ndio</translation>
+ <source>(no label)</source>
+ <translation type="unfinished">(hamna chapa)</translation>
</message>
+ </context>
+<context>
+ <name>RestoreWalletActivity</name>
<message>
- <source>no</source>
- <translation type="unfinished">La</translation>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">Rejesha onyo la pochi</translation>
</message>
+ </context>
+<context>
+ <name>WalletController</name>
<message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Hii chapa hubadilika kuwa nyekundu kama mpokeaji yeyote atapokea kiasi kidogo kuliko kizingiti vumbi cha sasa.</translation>
- </message>
- <message>
- <source>(no label)</source>
- <translation type="unfinished">(hamna chapa)</translation>
+ <source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
+ <translation type="unfinished">Kufunga pochi kwa muda mrefu sana kunaweza kusababisha kusawazisha tena mnyororo mzima ikiwa upogoaji umewezeshwa.</translation>
</message>
</context>
<context>
<name>CreateWalletDialog</name>
<message>
+ <source>Wallet Name</source>
+ <translation type="unfinished">Jina la Wallet</translation>
+ </message>
+ <message>
<source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
<translation type="unfinished">Simba pochi. Pochi itasimbwa kwa kutumia nenosiri utakalo chagua.</translation>
</message>
@@ -329,6 +571,10 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<source>Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time.</source>
<translation type="unfinished">Tengeneza pochi tupu. Pochi tupu kwa kuanza hazina funguo za siri au hati. Funguo za siri zinaweza kuingizwa, au mbegu ya HD inaweza kuwekwa baadae.</translation>
</message>
+ <message>
+ <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
+ <translation type="unfinished">Tumia kifaa cha kutia sahihi cha nje kama vile pochi ya maunzi. Sanidi hati ya kutia sahihi ya nje katika mapendeleo ya pochi kwanza.</translation>
+ </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -341,6 +587,10 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<translation type="unfinished">Chapa inayohusiana na hiki kipendele cha orodha ya anuani</translation>
</message>
<message>
+ <source>Edit sending address</source>
+ <translation type="unfinished">Badilisha anwani ya kutuma</translation>
+ </message>
+ <message>
<source>Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address.</source>
<translation type="unfinished">Anuani "%1" ipo teyari kama anuani ya kupokea ikiwa na chapa "%2" hivyo haiwezi kuongezwa kama anuani ya kutuma.</translation>
</message>
@@ -348,14 +598,34 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<source>The entered address "%1" is already in the address book with label "%2".</source>
<translation type="unfinished">Anuani iliyoingizwa "%1" teyari ipo kwenye kitabu cha anuani ikiwa na chapa "%2".</translation>
</message>
- </context>
+ <message>
+ <source>Could not unlock wallet.</source>
+ <translation type="unfinished">Haikuweza kufungua pochi.</translation>
+ </message>
+ <message>
+ <source>New key generation failed.</source>
+ <translation type="unfinished">Uzalishaji mpya wa ufunguo umeshindwa.</translation>
+ </message>
+</context>
<context>
<name>FreespaceChecker</name>
<message>
+ <source>A new data directory will be created.</source>
+ <translation type="unfinished">Saraka mpya ya data itaundwa.</translation>
+ </message>
+ <message>
<source>name</source>
<translation type="unfinished">Jina</translation>
</message>
- </context>
+ <message>
+ <source>Path already exists, and is not a directory.</source>
+ <translation type="unfinished">Njia tayari ipo, na si saraka.</translation>
+ </message>
+ <message>
+ <source>Cannot create data directory here.</source>
+ <translation type="unfinished">Haiwezi kuunda saraka ya data hapa.</translation>
+ </message>
+</context>
<context>
<name>Intro</name>
<message numerus="yes">
@@ -419,7 +689,11 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</message>
<message>
<source>Copy &amp;label</source>
- <translation type="unfinished">Nakili &amp; Chapa</translation>
+ <translation type="unfinished">Nakili &amp;chapa</translation>
+ </message>
+ <message>
+ <source>Could not unlock wallet.</source>
+ <translation type="unfinished">Haikuweza kufungua pochi.</translation>
</message>
</context>
<context>
@@ -428,6 +702,10 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
<source>Label:</source>
<translation type="unfinished">Chapa:</translation>
</message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">Mkoba:</translation>
+ </message>
</context>
<context>
<name>RecentRequestsTableModel</name>
@@ -502,7 +780,7 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</message>
<message>
<source>Copy &amp;label</source>
- <translation type="unfinished">Nakili &amp; Chapa</translation>
+ <translation type="unfinished">Nakili &amp;chapa</translation>
</message>
<message>
<source>&amp;Edit address label</source>
@@ -510,12 +788,12 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</message>
<message>
<source>Export Transaction History</source>
- <translation type="unfinished">Pakia historia ya miamala</translation>
+ <translation type="unfinished">Toa Historia ya Miamala</translation>
</message>
<message>
<source>Comma separated file</source>
<extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
- <translation type="unfinished">Faili lililotenganishwa kwa mkato</translation>
+ <translation type="unfinished">Faili linalotenganishwa kwa mkato</translation>
</message>
<message>
<source>Label</source>
@@ -527,22 +805,29 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</message>
<message>
<source>Exporting Failed</source>
- <translation type="unfinished">Upakiaji haujafanikiwa</translation>
+ <translation type="unfinished">Utoaji Haujafanikiwa</translation>
</message>
<message>
<source>Exporting Successful</source>
- <translation type="unfinished">Upakiaji Umefanikiwa</translation>
+ <translation type="unfinished">Utoaji Umefanikiwa</translation>
+ </message>
+ </context>
+<context>
+ <name>WalletFrame</name>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Unda mkoba mpya</translation>
</message>
</context>
<context>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">na hamisha</translation>
+ <translation type="unfinished">&amp;Toa</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
- <translation type="unfinished">Hamisha data katika kichupo cha sasa hadi kwenye faili</translation>
+ <translation type="unfinished">Toa data katika kichupo cha sasa hadi kwenye faili</translation>
</message>
</context>
<context>
@@ -557,15 +842,15 @@ Kutia sahihi kunawezekana tu kwa anwani za aina ya 'urithi'.</translation>
</message>
<message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
- <translation type="unfinished">HITILAFU: Data za kitabu cha anunai katika pochi haziwezi kutambulika kuwa ni ya pochi zilizohamia.</translation>
+ <translation type="unfinished">Hitilafu: Data za kitabu cha anunai katika pochi haziwezi kutambulika kuwa ni ya pochi zilizohamia.</translation>
</message>
<message>
<source>Error: No %s addresses available.</source>
- <translation type="unfinished">HITILAFU: Hamna anuani zilizopo %s.</translation>
+ <translation type="unfinished">Hitilafu: Hamna anuani zilizopo %s.</translation>
</message>
<message>
<source>Error: Unable to remove watchonly address book data</source>
- <translation type="unfinished">HITILAFU: Imeshindwa kuondoa data katika kitabu cha anuani ya kutazama tu</translation>
+ <translation type="unfinished">Hitilafu: Imeshindwa kuondoa data katika kitabu cha anuani ya kutazama tu</translation>
</message>
<message>
<source>Importing…</source>
diff --git a/src/qt/locale/bitcoin_szl.ts b/src/qt/locale/bitcoin_szl.ts
index 74a1591a57..81a33250ad 100644
--- a/src/qt/locale/bitcoin_szl.ts
+++ b/src/qt/locale/bitcoin_szl.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">Ô&amp;bier</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Adresy posyłaniŏ</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Adresy ôdbiyraniŏ</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Tukej sōm adresy Bitcoin na kere posyłŏsz płaty. Dycki wybaduj wielość i adresã ôdbiyrŏcza przed posłaniym mōnet.</translation>
</message>
@@ -541,10 +533,6 @@
<translation type="unfinished">Ôpłŏcka:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Sztaub:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Po ôpłŏcce:</translation>
</message>
@@ -609,10 +597,6 @@
<translation type="unfinished">Kopiyruj wielość bajtōw</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiyruj sztaub</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiyruj wydŏwkã</translation>
</message>
@@ -621,18 +605,6 @@
<translation type="unfinished">(%1 zaszperowane)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ja</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">niy</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ta etyketa stŏwŏ sie czyrwōnŏ jeźli keryś z ôdbiyrŏczy dostŏwŏ kwotã myńszõ aniżeli terŏźny prōg sztaubu.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Chwiyrŏ sie +/- %1 satoshi na wchōd.</translation>
</message>
@@ -1361,10 +1333,6 @@
<translation type="unfinished">Włŏsne:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Sztaub:</translation>
- </message>
- <message>
<source>Balance:</source>
<translation type="unfinished">Saldo:</translation>
</message>
@@ -1389,10 +1357,6 @@
<translation type="unfinished">Kopiyruj wielość bajtōw</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopiyruj sztaub</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopiyruj wydŏwkã</translation>
</message>
@@ -1557,10 +1521,6 @@
<translation type="unfinished">Ôdebrane ôd</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Płat do siebie</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(chyba etykety)</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ta.ts b/src/qt/locale/bitcoin_ta.ts
index 832e099734..0cd999db5d 100644
--- a/src/qt/locale/bitcoin_ta.ts
+++ b/src/qt/locale/bitcoin_ta.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">தே&amp;ர்வுசெய் </translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">முகவரிகள் அனுப்பப்படுகின்றன</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">முகவரிகள் பெறப்படுகின்றன</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">இவை பணம் அனுப்புவதற்கு உங்களின் பிட்காயின் முகவரிகள். பிட்காயின்களை அனுப்புவதற்கு முன் எப்பொழுதும் தொகையும் பெறுதலையும் சரிபார்க்கவும்.</translation>
</message>
@@ -726,10 +718,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">கட்டணம்:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">டஸ்ட்</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">கட்டணத்திறகுப் பின்:</translation>
</message>
@@ -794,10 +782,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">நகல் கட்டணம்</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">தூசி நகலெடுக்கவும்</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">மாற்றத்தை நகலெடுக்கவும்</translation>
</message>
@@ -806,18 +790,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 பூட்டப்பட்டது)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ஆம்</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">இல்லை</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">நடப்பு தூசி நிலையை விட குறைவான அளவு பெறுநரை பெறுமானால் இந்த லேபிள் சிவப்பு நிறமாக மாறும்.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">உள்ளீடு ஒன்றுக்கு +/- %1 சாத்தோஷி (கள்) மாறுபடலாம்</translation>
</message>
@@ -1482,6 +1454,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">நெருக்கமான</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">சொந்த முகவரி</translation>
+ </message>
+ <message>
<source>Total Amount</source>
<translation type="unfinished">முழு தொகை</translation>
</message>
@@ -2068,10 +2044,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">படிவத்தின் அனைத்து துறையையும் அழி.</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">டஸ்ட்</translation>
- </message>
- <message>
<source>When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
<translation type="unfinished">தொகுதிகள் உள்ள இடத்தை விட குறைவான பரிவர்த்தனை அளவு இருக்கும் போது, ​​சுரங்க தொழிலாளர்கள் மற்றும் ரிலேடிங் முனைகள் குறைந்தபட்ச கட்டணத்தைச் செயல்படுத்தலாம். இந்த குறைந்தபட்ச கட்டணத்தை மட்டும் செலுத்துவது நன்றாக உள்ளது, ஆனால் நெட்வொர்க்கில் செயல்படுவதை விட bitcoin பரிவர்த்தனைகளுக்கு இன்னும் கோரிக்கை தேவைப்பட்டால் இது ஒருபோதும் உறுதிப்படுத்தாத பரிவர்த்தனைக்கு காரணமாக இருக்கலாம்.</translation>
</message>
@@ -2128,10 +2100,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">நகல் கட்டணம்</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">தூசி நகலெடுக்கவும்</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">மாற்றத்தை நகலெடுக்கவும்</translation>
</message>
@@ -2640,10 +2608,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">அனுப்பப்பட்டது</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">உனக்கே பணம் செலுத்து</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">மைன் செய்யப்பட்டது</translation>
</message>
@@ -2719,10 +2683,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">அனுப்பப்பட்டது</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">உங்களுக்கே</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">மைன் செய்யப்பட்டது</translation>
</message>
@@ -2913,10 +2873,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">எம்ஐடி சாப்ட்வேர் விதிமுறைகளின் கீழ் பகிர்ந்தளிக்கப்படுகிறது, அதனுடன் கொடுக்கப்பட்டுள்ள %s அல்லது %s பைல் ஐ பார்க்கவும்</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">%s படிப்பதில் பிழை! எல்லா விசைகளும் சரியாகப் படிக்கப்படுகின்றன, ஆனால் பரிவர்த்தனை டேட்டா அல்லது முகவரி புத்தக உள்ளீடுகள் காணவில்லை அல்லது தவறாக இருக்கலாம்.</translation>
- </message>
- <message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
<translation type="unfinished">உங்கள் கணினியின் தேதி மற்றும் நேரம் சரியாக உள்ளதா என்பதனை சரிபார்க்கவும்! உங்கள் கடிகாரம் தவறாக இருந்தால், %s சரியாக இயங்காது.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_te.ts b/src/qt/locale/bitcoin_te.ts
index aca9d9bc26..dfbe5c17c7 100644
--- a/src/qt/locale/bitcoin_te.ts
+++ b/src/qt/locale/bitcoin_te.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">ఎం&amp;చుకోండి</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">పంపించే చిరునామాలు</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">అందుకునే చిరునామాలు</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">ఇవి మీరు పంపే చెల్లింపుల బిట్‌కాయిన్ చిరునామాలు. నాణేలు పంపే ముందు ప్రతిసారి అందుకునే చిరునామా మరియు చెల్లింపు మొత్తం సరిచూసుకోండి.</translation>
</message>
@@ -742,7 +734,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>S&amp;how</source>
- <translation type="unfinished">&amp;చూపించు</translation>
+ <translation type="unfinished">S&amp;ఎలా</translation>
</message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
@@ -883,10 +875,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">రుసుము:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">దుమ్ము:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">రుసుము తర్వాత:</translation>
</message>
@@ -975,10 +963,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">బైట్‌లను కాపీ చేయండి</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">దుమ్మును కాపీ చేయండి</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">మార్పుని కాపీ చేయండి</translation>
</message>
@@ -987,18 +971,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 లాక్ చేయబడింది)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">అవును</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">లేదు</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">ఏదైనా గ్రహీత ప్రస్తుత ధూళి థ్రెషోల్డ్ కంటే చిన్న మొత్తాన్ని స్వీకరిస్తే ఈ లేబుల్ ఎరుపు రంగులోకి మారుతుంది.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">ఒక్కో ఇన్‌పుట్‌కు +/- %1 సతోషి(లు) మారవచ్చు.</translation>
</message>
@@ -1168,14 +1140,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ఖాళీ వాలెట్‌ని తయారు చేయండి</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">scriptPubKey నిర్వహణ కోసం డిస్క్రిప్టర్‌లను ఉపయోగించండి</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">డిస్క్రిప్టర్ వాలెట్</translation>
- </message>
- <message>
<source>External signer</source>
<translation type="unfinished">బాహ్య సంతకందారు</translation>
</message>
@@ -1184,10 +1148,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">సృష్టించు</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Sqlite మద్దతు లేకుండా కంపైల్ చేయబడింది (డిస్క్రిప్టర్ వాలెట్‌లకు అవసరం)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">బాహ్య సంతకం మద్దతు లేకుండా సంకలనం చేయబడింది (బాహ్య సంతకం కోసం అవసరం)</translation>
@@ -2332,10 +2292,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">దాచు</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">దుమ్ము:</translation>
- </message>
- <message>
<source>Copy quantity</source>
<translation type="unfinished">కాపీ పరిమాణం</translation>
</message>
@@ -2356,10 +2312,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">బైట్‌లను కాపీ చేయండి</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">దుమ్మును కాపీ చేయండి</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">మార్పుని కాపీ చేయండి</translation>
</message>
@@ -2554,7 +2506,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<name>WalletFrame</name>
<message>
<source>Create a new wallet</source>
- <translation type="unfinished">కొత్త వాలెట్‌ని సృష్టించండి</translation>
+ <translation type="unfinished">&lt;div&gt;&lt;/div&gt;</translation>
</message>
<message>
<source>Error</source>
@@ -2747,10 +2699,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">తెలియని కొత్త నియమాలు (వెర్షన్‌బిట్‌ %i)ని యాక్టివేట్ చేశాయి</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">మద్దతు లేని గ్లోబల్ లాగింగ్ స్థాయి -లాగ్‌లెవెల్=%s. చెల్లుబాటు అయ్యే విలువలు: %s.</translation>
- </message>
- <message>
<source>Unsupported logging category %s=%s.</source>
<translation type="unfinished">మద్దతు లేని లాగింగ్ వర్గం %s=%s</translation>
</message>
diff --git a/src/qt/locale/bitcoin_th.ts b/src/qt/locale/bitcoin_th.ts
index 40f8252f22..0bd4235ac5 100644
--- a/src/qt/locale/bitcoin_th.ts
+++ b/src/qt/locale/bitcoin_th.ts
@@ -1,5 +1,12 @@
<TS version="2.1" language="th">
<context>
+ <name>AddressBookPage</name>
+ <message>
+ <source>Create a new address</source>
+ <translation type="unfinished">สร้างแอดเดรสใหม่</translation>
+ </message>
+ </context>
+<context>
<name>BitcoinApplication</name>
<message>
<source>Settings file %1 might be corrupt or invalid.</source>
@@ -151,16 +158,21 @@
<translation type="unfinished">ปิดกระเป๋าสตางค์ทั้งหมด</translation>
</message>
<message>
- <source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">แสดง %1 ข้อความช่วยเหลือ เพื่อแสดงรายการ ตัวเลือกที่เป็นไปได้สำหรับ Bitcoin command-line</translation>
+ <source>&amp;Mask values</source>
+ <translation type="unfinished">&amp;ค่ามาสก์</translation>
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">กระเป๋าสตางค์เริ่มต้น</translation>
+ <translation type="unfinished">วอลเล็ต เริ่มต้น</translation>
</message>
<message>
<source>No wallets available</source>
- <translation type="unfinished">ไม่มีกระเป๋าสตางค์</translation>
+ <translation type="unfinished">ไม่มี วอลเล็ต ที่พร้อมใช้งาน</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">ข้อมูล วอลเล็ต</translation>
</message>
<message>
<source>Load Wallet Backup</source>
@@ -172,11 +184,40 @@
<extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
<translation type="unfinished">กู้คืนวอลเล็ต</translation>
</message>
+ <message>
+ <source>Wallet Name</source>
+ <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
+ <translation type="unfinished">ชื่อ วอลเล็ต</translation>
+ </message>
+ <message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;วินโดว์</translation>
+ </message>
+ <message>
+ <source>Zoom</source>
+ <translation type="unfinished">ซูม</translation>
+ </message>
+ <message>
+ <source>Main Window</source>
+ <translation type="unfinished">วินโดว์ หลัก</translation>
+ </message>
+ <message>
+ <source>%1 client</source>
+ <translation type="unfinished">%1 ลูกค้า</translation>
+ </message>
+ <message>
+ <source>&amp;Hide</source>
+ <translation type="unfinished">&amp;ซ่อน</translation>
+ </message>
+ <message>
+ <source>S&amp;how</source>
+ <translation type="unfinished">&amp;แสดง</translation>
+ </message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ <numerusform>%n เครือข่ายที่สามารถใช้เชื่อมต่อไปยังเครือข่ายบิตคอยน์ได้</numerusform>
</translation>
</message>
<message>
@@ -184,6 +225,21 @@
<extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
<translation type="unfinished">คลิกเพื่อดูการดำเนินการเพิ่มเติม</translation>
</message>
+ <message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">แสดง Peers แท็ป</translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">ปิดใช้งาน กิจกรรม เครือข่าย</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">เปิดใช้งาน กิจกรรม เครือข่าย</translation>
+ </message>
</context>
<context>
<name>UnitDisplayStatusBarControl</name>
@@ -202,6 +258,22 @@
<source>&amp;Unlock unspent</source>
<translation type="unfinished">&amp;ปลดล็อค ที่ไม่ไดใช้</translation>
</message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">คัดลอก change</translation>
+ </message>
+ <message>
+ <source>(%1 locked)</source>
+ <translation type="unfinished">(%1 ล็อคแล้ว)</translation>
+ </message>
+ </context>
+<context>
+ <name>CreateWalletActivity</name>
+ <message>
+ <source>Create Wallet</source>
+ <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
+ <translation type="unfinished">สร้าง วอลเล็ต</translation>
+ </message>
</context>
<context>
<name>LoadWalletsActivity</name>
@@ -228,12 +300,7 @@
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">วอลเล็ต เริ่มต้น</translation>
- </message>
- <message>
- <source>Open Wallet</source>
- <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">เปิด วอลเล็ต</translation>
+ <translation type="unfinished">กระเป๋าสตางค์เริ่มต้น</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -272,10 +339,6 @@
<context>
<name>WalletController</name>
<message>
- <source>Close wallet</source>
- <translation type="unfinished">ปิดกระเป๋าสตางค์</translation>
- </message>
- <message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
<translation type="unfinished">คุณ แน่ใจ หรือไม่ว่า ต้องการ ปิด วอลเล็ต &lt;i&gt;%1&lt;/i&gt;?</translation>
</message>
@@ -285,7 +348,7 @@
</message>
<message>
<source>Close all wallets</source>
- <translation type="unfinished">ปิด วอลเล็ต ทั้งหมด</translation>
+ <translation type="unfinished">ปิดกระเป๋าสตางค์ทั้งหมด</translation>
</message>
<message>
<source>Are you sure you wish to close all wallets?</source>
@@ -335,10 +398,6 @@
<translation type="unfinished">ทำ วอลเล็ต ให้ว่างเปล่า</translation>
</message>
<message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">ตัวอธิบาย วอลเล็ต</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first</translation>
</message>
@@ -422,7 +481,7 @@
<message numerus="yes">
<source>(%n GB needed for full chain)</source>
<translation type="unfinished">
- <numerusform>(%n GB needed for full chain)</numerusform>
+ <numerusform />
</translation>
</message>
<message>
@@ -578,6 +637,10 @@
<translation type="unfinished">ผู้ลงนามภายนอก (เช่น ฮาร์ดแวร์วอลเล็ต)</translation>
</message>
<message>
+ <source>&amp;Window</source>
+ <translation type="unfinished">&amp;วินโดว์</translation>
+ </message>
+ <message>
<source>Error</source>
<translation type="unfinished">ข้อผิดพลาด</translation>
</message>
@@ -670,6 +733,10 @@
<translation type="unfinished">วินาทีในการ Ping</translation>
</message>
<message>
+ <source>Last block time</source>
+ <translation type="unfinished">บล็อกเวลาล่าสุด</translation>
+ </message>
+ <message>
<source>Debug log file</source>
<translation type="unfinished">ไฟล์บันทึกการดีบัก</translation>
</message>
@@ -685,6 +752,13 @@
</message>
</context>
<context>
+ <name>ReceiveCoinsDialog</name>
+ <message>
+ <source>Could not unlock wallet.</source>
+ <translation type="unfinished">ไม่สามารถปลดล็อกวอลเล็ตได้</translation>
+ </message>
+ </context>
+<context>
<name>ReceiveRequestDialog</name>
<message>
<source>Payment information</source>
@@ -773,10 +847,18 @@
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">วอลเล็ต เริ่มต้น</translation>
+ <translation type="unfinished">กระเป๋าสตางค์เริ่มต้น</translation>
</message>
</context>
<context>
+ <name>WalletView</name>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">ข้อมูล วอลเล็ต</translation>
+ </message>
+ </context>
+<context>
<name>bitcoin-core</name>
<message>
<source>%s is set very high!</source>
diff --git a/src/qt/locale/bitcoin_tk.ts b/src/qt/locale/bitcoin_tk.ts
index b06d122ffa..c1f6fe8520 100644
--- a/src/qt/locale/bitcoin_tk.ts
+++ b/src/qt/locale/bitcoin_tk.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">S&amp;aýla</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Iberýän salgylar</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Kabul edýän salgylar</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Tölegleri ibermek üçin siziň Bitkoin salgylaryňyz şulardyr. Teňňeleri ibermezden ozal hemişe möçberi we kabul edýän salgyny barlaň.</translation>
</message>
@@ -224,10 +216,22 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Gapjygyň şifrini açmak üçin ýazylan parol sözlemi nädogry.</translation>
</message>
<message>
+ <source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
+ <translation type="unfinished">Gapjygyň şifrini açmak üçin ýazylan parol sözlemi nädogry. Onda nol belgi bar (meselem, nol baýt). Eger parol sözlemi bu programmanyň 25.0-dan ozalky wersiýasynda bellenen bolsa, diňe birinji nol belgä çenli, ýöne ony goşman täzeden synanyşyň. Eger şowly netijelense, indikide bu mesele bilen çaknyşmaz ýaly täze parol sözlemini belläň.</translation>
+ </message>
+ <message>
<source>Wallet passphrase was successfully changed.</source>
<translation type="unfinished">Gapjygyň parol sözlemi üstünlikli çalşyldy.</translation>
</message>
<message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">Parol sözlemini üýtgedip bolmady</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">Gapjygy şifrlemek üçin girizilen öňki parol sözlemi dogry däl. Onda nol belgi bar ( meselem, nol baýt). Eger parol sözlemi bu programmanyň 25.0-dan ozalky wersiýasynda bellenen bolsa, diňe birinji nol belgä çenli we bu nol belgini goşmazdan belgiler bilen gaýtadan synanyşyň.</translation>
+ </message>
+ <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">Duýduryş: Caps Lock düwmesi açyk!</translation>
</message>
@@ -242,6 +246,10 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<context>
<name>BitcoinApplication</name>
<message>
+ <source>Settings file %1 might be corrupt or invalid.</source>
+ <translation type="unfinished">%1 Sazlamalar faýly bozulan ýa-da ýalňyş.</translation>
+ </message>
+ <message>
<source>Runaway exception</source>
<translation type="unfinished">Dolandyryp bolmaýan ýagdaý</translation>
</message>
@@ -279,49 +287,116 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">%1 entek ygtybarly çykmady...</translation>
</message>
<message>
+ <source>unknown</source>
+ <translation type="unfinished">näbelli</translation>
+ </message>
+ <message>
<source>Amount</source>
<translation type="unfinished">Möçber</translation>
</message>
+ <message>
+ <source>Enter a Bitcoin address (e.g. %1)</source>
+ <translation type="unfinished">(Bitkoin salgysyny giriziň (meselem, %1)</translation>
+ </message>
+ <message>
+ <source>Unroutable</source>
+ <translation type="unfinished">Marşrutlaşdyryp bolmaýan</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</extracomment>
+ <translation type="unfinished">Girýän</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An outbound connection to a peer. An outbound connection is a connection initiated by us.</extracomment>
+ <translation type="unfinished">Çykýan</translation>
+ </message>
+ <message>
+ <source>Full Relay</source>
+ <extracomment>Peer connection type that relays all network information.</extracomment>
+ <translation type="unfinished">Doly ýaýlyma geçiriji</translation>
+ </message>
+ <message>
+ <source>Block Relay</source>
+ <extracomment>Peer connection type that relays network information about blocks and not transactions or addresses.</extracomment>
+ <translation type="unfinished">Blok ýaýlyma geçiriji</translation>
+ </message>
+ <message>
+ <source>Manual</source>
+ <extracomment>Peer connection type established manually through one of several methods.</extracomment>
+ <translation type="unfinished">Elden</translation>
+ </message>
+ <message>
+ <source>Feeler</source>
+ <extracomment>Short-lived peer connection type that tests the aliveness of known addresses.</extracomment>
+ <translation type="unfinished">Barlag</translation>
+ </message>
+ <message>
+ <source>Address Fetch</source>
+ <extracomment>Short-lived peer connection type that solicits known addresses from a peer.</extracomment>
+ <translation type="unfinished">Salgy almak</translation>
+ </message>
+ <message>
+ <source>%1 d</source>
+ <translation type="unfinished">%1 g</translation>
+ </message>
+ <message>
+ <source>%1 h</source>
+ <translation type="unfinished">%1 sag</translation>
+ </message>
+ <message>
+ <source>None</source>
+ <translation type="unfinished">ýok</translation>
+ </message>
+ <message>
+ <source>N/A</source>
+ <translation type="unfinished">Elýeter däl</translation>
+ </message>
<message numerus="yes">
<source>%n second(s)</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>%n sekund</numerusform>
+ <numerusform>%n sekund</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n minute(s)</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>%n minut</numerusform>
+ <numerusform>%n minut</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n hour(s)</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>%n sagat</numerusform>
+ <numerusform>%n sagat</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n day(s)</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>%n gün</numerusform>
+ <numerusform>%n gün</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n week(s)</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>%n hepde</numerusform>
+ <numerusform>%n hepde</numerusform>
</translation>
</message>
+ <message>
+ <source>%1 and %2</source>
+ <translation type="unfinished">%1 we %2</translation>
+ </message>
<message numerus="yes">
<source>%n year(s)</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>%n ýyl</numerusform>
+ <numerusform>%n ýyl</numerusform>
</translation>
</message>
</context>
@@ -604,6 +679,16 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Gapjygy ýap</translation>
</message>
<message>
+ <source>Restore Wallet…</source>
+ <extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
+ <translation type="unfinished">Gapjygy dikelt…</translation>
+ </message>
+ <message>
+ <source>Restore a wallet from a backup file</source>
+ <extracomment>Status tip for Restore Wallet menu item</extracomment>
+ <translation type="unfinished">Gapjygy ätiýaçlandyryş faýlyndan dikelt</translation>
+ </message>
+ <message>
<source>Close all wallets</source>
<translation type="unfinished">Ähli gapjyklary ýap</translation>
</message>
@@ -628,6 +713,21 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Elýeterli gapjyk ýok</translation>
</message>
<message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Gapjyk maglumatlary</translation>
+ </message>
+ <message>
+ <source>Load Wallet Backup</source>
+ <extracomment>The title for Restore Wallet File Windows</extracomment>
+ <translation type="unfinished">Gapjygyň ätiýaçlyk nusgasyny ýükle</translation>
+ </message>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
+ <translation type="unfinished">Gapjygy dikeltmek</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
<translation type="unfinished">Gapjygyň ady</translation>
@@ -685,6 +785,10 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Ulgamyň işjeňligini aç</translation>
</message>
<message>
+ <source>Pre-syncing Headers (%1%)…</source>
+ <translation type="unfinished">Baş atlar deslapdan sinhronlaşdyrylýar (%1%)…</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Ýalňyşlyk: %1</translation>
</message>
@@ -791,10 +895,6 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Gatanç:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Toz:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Soňundan gatanç:</translation>
</message>
@@ -883,10 +983,6 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Baýtlary göçür</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Tozy göçür</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Gaýtargyny göçür</translation>
</message>
@@ -895,18 +991,6 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">(%1 gulply)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">hawa</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ýok</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Islendik kabul ediji häzirki toz çäginden has kiçi möçberi kabul edip alsa, bu bellik gyzyla öwrülýär.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Her giriş üçin +/- %1 satosi üýtgäp biler.</translation>
</message>
@@ -947,7 +1031,24 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<source>Can't list signers</source>
<translation type="unfinished">Gol çekenleriň sanawyny görkezip bolanok</translation>
</message>
- </context>
+ <message>
+ <source>Too many external signers found</source>
+ <translation type="unfinished">Aşa köp daşyndan gol çeken tapyldy</translation>
+ </message>
+</context>
+<context>
+ <name>LoadWalletsActivity</name>
+ <message>
+ <source>Load Wallets</source>
+ <extracomment>Title of progress window which is displayed when wallets are being loaded.</extracomment>
+ <translation type="unfinished">Gapjyklary ýüklemek</translation>
+ </message>
+ <message>
+ <source>Loading wallets…</source>
+ <extracomment>Descriptive text of the load wallets progress window which indicates to the user that wallets are currently being loaded.</extracomment>
+ <translation type="unfinished">Gapjyklar ýüklenýär...</translation>
+ </message>
+</context>
<context>
<name>OpenWalletActivity</name>
<message>
@@ -974,6 +1075,34 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
</message>
</context>
<context>
+ <name>RestoreWalletActivity</name>
+ <message>
+ <source>Restore Wallet</source>
+ <extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
+ <translation type="unfinished">Gapjygy dikeltmek</translation>
+ </message>
+ <message>
+ <source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
+ <translation type="unfinished">&lt;b&gt;%1&lt;/b&gt; Gapjyk dikeldilýär…</translation>
+ </message>
+ <message>
+ <source>Restore wallet failed</source>
+ <extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
+ <translation type="unfinished">Gapjygy dikeldip bolmady</translation>
+ </message>
+ <message>
+ <source>Restore wallet warning</source>
+ <extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
+ <translation type="unfinished">Gapjyk dikeltme duýduryşy</translation>
+ </message>
+ <message>
+ <source>Restore wallet message</source>
+ <extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
+ <translation type="unfinished">Gapjygy dikeltme habary</translation>
+ </message>
+</context>
+<context>
<name>WalletController</name>
<message>
<source>Close wallet</source>
@@ -1039,14 +1168,6 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Boş gapjyk emele getir</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">scriptPubKey dolandyryşy üçin beýan edijileri ulan</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Beýan ediji gapjyk</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Enjam gapjygy ýaly daşyndan gol çekilýän enjamy ulan. Ilki bilen gapjygyň ileri tutmalarynda daşyndan gol çekiji skriptini sazla.</translation>
</message>
@@ -1059,10 +1180,6 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Döret</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Sqlite goldawsyz (beýan ediji gapjyklar üçin gerek) düzüldi</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Daşyndan gol çekmek üçin goldawsyz (daşyndan gol çekmek üçin gerek) düzüldi</translation>
@@ -1155,25 +1272,29 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<message numerus="yes">
<source>%n GB of space available</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>%n GB ýer elýeter</numerusform>
+ <numerusform>%n GB ýer elýeter</numerusform>
</translation>
</message>
<message numerus="yes">
<source>(of %n GB needed)</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>(zerur bolan %n GB-den)</numerusform>
+ <numerusform>(zerur bolan %n GB-den)</numerusform>
</translation>
</message>
<message numerus="yes">
<source>(%n GB needed for full chain)</source>
<translation type="unfinished">
- <numerusform />
- <numerusform />
+ <numerusform>(Doly zynjyr üçin %n GB zerur)</numerusform>
+ <numerusform>(Doly zynjyr üçin %n GB zerur)</numerusform>
</translation>
</message>
<message>
+ <source>Choose data directory</source>
+ <translation type="unfinished">Maglumat katalogyny saýlaň</translation>
+ </message>
+ <message>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">Bu sanawda azyndan %1 GB maglumat saklanar we ol wagtyň geçmegi bilen köpeler.</translation>
</message>
@@ -1234,6 +1355,10 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Bu başdaky utgaşdyrma örän çylşyrymlydyr we kompýuteriňiziň ozal üns berilmedik enjam näsazlyklaryny ýüze çykaryp biler. Her sapar %1 işledeniňizde ol säginen ýerinden ýükläp almaga dowam eder.</translation>
</message>
<message>
+ <source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
+ <translation type="unfinished">OK basanyňyzda, %1%4 başda işledilende %3-däki iň irki amallardan başlap doly %4blok zynjyryny (%2 GB) ýükläp we işläp başlar.</translation>
+ </message>
+ <message>
<source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
<translation type="unfinished">Blok zynjyrynyň saklanyşyny çäklendirmegi (kesip aýyrmagy) saýlan bolsaňyz, geçmiş maglumatlary ýene-de ýüklenip alynmaly we işlenmelidir, emma diskiňiziň ulanylyşyny azaltmak üçin soňundan pozular. </translation>
</message>
@@ -1286,45 +1411,933 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
<translation type="unfinished">Entek görkezilmedik geleşikleriň täsirine düşen bitkoinleri sarp etmek synanyşygy ulgam tarapyndan kabul edilmez.</translation>
</message>
- </context>
+ <message>
+ <source>Number of blocks left</source>
+ <translation type="unfinished">Galan bloklaryň sany</translation>
+ </message>
+ <message>
+ <source>Unknown…</source>
+ <translation type="unfinished">Näbelli...</translation>
+ </message>
+ <message>
+ <source>calculating…</source>
+ <translation type="unfinished">hasaplanýar...</translation>
+ </message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">Soňky blok wagty</translation>
+ </message>
+ <message>
+ <source>Progress increase per hour</source>
+ <translation type="unfinished">Progressiň sagatlaýyn ulalmagy</translation>
+ </message>
+ <message>
+ <source>Estimated time left until synced</source>
+ <translation type="unfinished">Sinhronlaşdyrmaga çenli takmynan galan wagt</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">Gizle</translation>
+ </message>
+ <message>
+ <source>Esc</source>
+ <translation type="unfinished">Aýyr</translation>
+ </message>
+ <message>
+ <source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
+ <translation type="unfinished">%1häzir sinhronlaşdyrylýar. Ol düwünlerden baş atlary we bloklary ýükläp alar we blok zynjyrynyň ujuna ýetýänçä olary barlar.</translation>
+ </message>
+ <message>
+ <source>Unknown. Syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">Näbelli. (%1, %2 %) Baş atlar sinhronlaşdyrylýar...</translation>
+ </message>
+ <message>
+ <source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">Näbelli. (%1, %2 %) Baş atlar deslapdan sinhronlaşdyrylýar...</translation>
+ </message>
+</context>
+<context>
+ <name>OpenURIDialog</name>
+ <message>
+ <source>Open bitcoin URI</source>
+ <translation type="unfinished">Bitkoin URI aç</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <extracomment>Tooltip text for button that allows you to paste an address that is in your clipboard.</extracomment>
+ <translation type="unfinished">Salgyny alyş-çalyş tagtasyna giriz</translation>
+ </message>
+</context>
<context>
<name>OptionsDialog</name>
<message>
+ <source>Options</source>
+ <translation type="unfinished">Opsiýalar</translation>
+ </message>
+ <message>
+ <source>&amp;Main</source>
+ <translation type="unfinished">&amp;Esasy</translation>
+ </message>
+ <message>
+ <source>Automatically start %1 after logging in to the system.</source>
+ <translation type="unfinished">Ulgama hasaba girilenden soň %1awtomatiki usulda başlat.</translation>
+ </message>
+ <message>
+ <source>&amp;Start %1 on system login</source>
+ <translation type="unfinished">&amp;Ulgama hasaba girilende %1 başlat</translation>
+ </message>
+ <message>
+ <source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
+ <translation type="unfinished">Kesmäniň açylmagy amallary saklamak üçin diskdäki boş ýer zerurlygyny düýpli azaldar. Bloklar öňküsi ýaly doly barlanar. Bu sazlamanyň öňki ýagdaýyna gaýtarylmagy tutuş blok zynjyrynyň gaýtadan ýüklenip alynmagyna getirer.</translation>
+ </message>
+ <message>
+ <source>Size of &amp;database cache</source>
+ <translation type="unfinished">&amp;maglumat binýady keşiniň göwrümi</translation>
+ </message>
+ <message>
+ <source>Number of script &amp;verification threads</source>
+ <translation type="unfinished">Skript &amp;tassyklama düzümleriniň sany</translation>
+ </message>
+ <message>
+ <source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
+ <translation type="unfinished">%1 gabat gelýän skripte doly ýol (meselem, C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Ägä boluň: zyýanly programmalar teňňeleriňizi ogurlap biler!</translation>
+ </message>
+ <message>
+ <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
+ <translation type="unfinished">Proksiniň IP salgysy (meselem, IPv4: 127.0.0.1 / IPv6: ::1)</translation>
+ </message>
+ <message>
+ <source>Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source>
+ <translation type="unfinished">Bu tor görnüşiniň üsti bilen düwünlere aralaşmak üçin üpjün edilen belli SOCKS5 proksisiniň ulanylandygyny ýa-da ulanylmandygyny görkezýär.</translation>
+ </message>
+ <message>
+ <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source>
+ <translation type="unfinished">Penjire ýapykka ykjam programmadan çykmagyň deregine kiçeldýär. Bu opsiýa işjeň wagty ykjam programma diňe menýudan Çyk saýlanandan soň ýapylar.</translation>
+ </message>
+ <message>
+ <source>Options set in this dialog are overridden by the command line:</source>
+ <translation type="unfinished">Bu gepleşikde bellenen opsiýalar tabşyryk setiri arkaly täzeden bellendi:</translation>
+ </message>
+ <message>
+ <source>Open the %1 configuration file from the working directory.</source>
+ <translation type="unfinished">Işleýän sanawdan %1 konfigurasiýa faýlyny açyň.</translation>
+ </message>
+ <message>
+ <source>Open Configuration File</source>
+ <translation type="unfinished">Konfigurasiýa faýlyny aç</translation>
+ </message>
+ <message>
+ <source>Reset all client options to default.</source>
+ <translation type="unfinished">Ähli müşderi opsiýalaryny başdaka geçir.</translation>
+ </message>
+ <message>
+ <source>&amp;Reset Options</source>
+ <translation type="unfinished">&amp;Opsiýalary başdaka belle</translation>
+ </message>
+ <message>
+ <source>&amp;Network</source>
+ <translation type="unfinished">&amp;Tor</translation>
+ </message>
+ <message>
+ <source>Prune &amp;block storage to</source>
+ <translation type="unfinished">&amp;Blok goruny çäklendir</translation>
+ </message>
+ <message>
+ <source>GB</source>
+ <translation type="unfinished">GB çenli</translation>
+ </message>
+ <message>
+ <source>Reverting this setting requires re-downloading the entire blockchain.</source>
+ <translation type="unfinished">Bu sazlama gaýdyp barmak üçin tutuş blok zynjyryny gaýtadan ýükläp almak zerur.</translation>
+ </message>
+ <message>
+ <source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
+ <extracomment>Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</extracomment>
+ <translation type="unfinished">Maksimum maglumat binýadynyň keş göwrümi. Keş näçe uly boldugyça sinhronlaşdyrma şonça çalt bolmagyna goşant goşular, ondan soň peýdasy köplenç köp bildirmeýär. Keş göwrümini azaltmak ýadyň ulanylyşyny azaldar. Ulanylmaýan umumy ýat howuzy bu keş üçin paýlaşylýar. </translation>
+ </message>
+ <message>
+ <source>Set the number of script verification threads. Negative values correspond to the number of cores you want to leave free to the system.</source>
+ <extracomment>Tooltip text for Options window setting that sets the number of script verification threads. Explains that negative values mean to leave these many cores free to the system.</extracomment>
+ <translation type="unfinished">Skript tassyklama akymlarynyň sanyny belläň. Otrisatel sanlar ulgam üçin boş galdyryljak ýadrolaryň sanyna gabat gelýär.</translation>
+ </message>
+ <message>
+ <source>(0 = auto, &lt;0 = leave that many cores free)</source>
+ <translation type="unfinished">(0 = awtomatik, &lt;0 = şonça sany ýadrony boş galdyr)</translation>
+ </message>
+ <message>
+ <source>This allows you or a third party tool to communicate with the node through command-line and JSON-RPC commands.</source>
+ <extracomment>Tooltip text for Options window setting that enables the RPC server.</extracomment>
+ <translation type="unfinished">Bu size ýa-da üçünji tarap guralyna tabşyryk setiri we JSON-RPC tabşyryklary arkaly düwün bilen aragatnaşyk saklamaga ygtyýar berer.</translation>
+ </message>
+ <message>
+ <source>Enable R&amp;PC server</source>
+ <extracomment>An Options window setting to enable the RPC server.</extracomment>
+ <translation type="unfinished">R&amp;PC serwerini işlet</translation>
+ </message>
+ <message>
+ <source>W&amp;allet</source>
+ <translation type="unfinished">G&amp;apjyk</translation>
+ </message>
+ <message>
+ <source>Whether to set subtract fee from amount as default or not.</source>
+ <extracomment>Tooltip text for Options window setting that sets subtracting the fee from a sending amount as default.</extracomment>
+ <translation type="unfinished">Komissiýanyň möçberden aýtdyrman kesilmegini bellemelimi ýa-da ýok.</translation>
+ </message>
+ <message>
+ <source>Subtract &amp;fee from amount by default</source>
+ <extracomment>An Options window setting to set subtracting the fee from a sending amount as default.</extracomment>
+ <translation type="unfinished">Ko&amp;missiýany möçberden aýtdyrman kes</translation>
+ </message>
+ <message>
+ <source>Expert</source>
+ <translation type="unfinished">Bilermen</translation>
+ </message>
+ <message>
+ <source>Enable coin &amp;control features</source>
+ <translation type="unfinished">Teňňe &amp;dolandyryş aýratynlyklaryny işjeňleşdir</translation>
+ </message>
+ <message>
+ <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
+ <translation type="unfinished">Tassyklanmadyk gaýtargynyň sowulmagyny ýapsaňyz, amaldan galan gaýtargyny tä şol amalda azyndan bir tassyklama bolýança ulanyp bolmaz. Bu şeýle-de balansyňyzyň hasaplanyşyna täsir eder.</translation>
+ </message>
+ <message>
+ <source>&amp;Spend unconfirmed change</source>
+ <translation type="unfinished">Tassyklanmadyk gaýtargyny &amp;sow</translation>
+ </message>
+ <message>
+ <source>Enable &amp;PSBT controls</source>
+ <extracomment>An options window setting to enable PSBT controls.</extracomment>
+ <translation type="unfinished">&amp;PSBT dolandyryşyny işjeňleşdir</translation>
+ </message>
+ <message>
+ <source>Whether to show PSBT controls.</source>
+ <extracomment>Tooltip text for options window setting that enables PSBT controls.</extracomment>
+ <translation type="unfinished">PSBT dolandyryşyny görkezmelimi.</translation>
+ </message>
+ <message>
+ <source>External Signer (e.g. hardware wallet)</source>
+ <translation type="unfinished">Daşyndan gol çekiji (meselem, enjamlaýyn gapjyk)</translation>
+ </message>
+ <message>
+ <source>&amp;External signer script path</source>
+ <translation type="unfinished">&amp;Daşyndan gol çekijiniň skript ýoly</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
+ <translation type="unfinished">Bitkoin müşderi portuny routerde awtomatik usulda aç. Bu diňe routeriňiz UPnP goldaýan bolsa we ol işjeň bolsa işleýär.</translation>
+ </message>
+ <message>
+ <source>Map port using &amp;UPnP</source>
+ <translation type="unfinished">&amp;UPnP ulanyp porty aşyryň</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
+ <translation type="unfinished">Bitkoin müşderi portuny routerde awtomatik usulda açýar. Bu diňe routeriňiz NAT-PMP goldaýan we ol işjeňleşdirilen bolsa işleýär. Daşarky router tötänleýin bolup biler.</translation>
+ </message>
+ <message>
+ <source>Map port using NA&amp;T-PMP</source>
+ <translation type="unfinished">NA&amp;T-PMP ulanýan porty aşyryň</translation>
+ </message>
+ <message>
+ <source>Accept connections from outside.</source>
+ <translation type="unfinished">Daşyndan gelen birikmeleri kabul et.</translation>
+ </message>
+ <message>
+ <source>Allow incomin&amp;g connections</source>
+ <translation type="unfinished">Gele&amp;n birikmelere rugsat ber</translation>
+ </message>
+ <message>
+ <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source>
+ <translation type="unfinished">SOCKS5 proksi arkaly Bitkoin toruna baglan.</translation>
+ </message>
+ <message>
+ <source>&amp;Connect through SOCKS5 proxy (default proxy):</source>
+ <translation type="unfinished">SOCKS5 proksi (bellenen proksi) arkaly &amp;baglan:</translation>
+ </message>
+ <message>
+ <source>Proxy &amp;IP:</source>
+ <translation type="unfinished">Proksi &amp;IP:</translation>
+ </message>
+ <message>
+ <source>Port of the proxy (e.g. 9050)</source>
+ <translation type="unfinished">Proksiniň porty (meselem, 9050)</translation>
+ </message>
+ <message>
+ <source>Used for reaching peers via:</source>
+ <translation type="unfinished">Aşakdakylar arkaly düwünlere aralaşmak üçin ulanyldy:</translation>
+ </message>
+ <message>
<source>&amp;Window</source>
<translation type="unfinished">&amp;Penjire</translation>
</message>
<message>
+ <source>Show the icon in the system tray.</source>
+ <translation type="unfinished">Ulgamyň bildirişler panelinde suratjygy görkez.</translation>
+ </message>
+ <message>
+ <source>&amp;Show tray icon</source>
+ <translation type="unfinished">Bildirişler paneliniň &amp;suratjygyny görkez</translation>
+ </message>
+ <message>
+ <source>Show only a tray icon after minimizing the window.</source>
+ <translation type="unfinished">Penjire kiçeldilenden soň diňe bildirişler paneliniň suratjygyny görkez.</translation>
+ </message>
+ <message>
+ <source>&amp;Minimize to the tray instead of the taskbar</source>
+ <translation type="unfinished">Tabşyryklar paneliniň deregine bildirişler paneline &amp;kiçelt</translation>
+ </message>
+ <message>
+ <source>M&amp;inimize on close</source>
+ <translation type="unfinished">Ýapylanda K&amp;içelt</translation>
+ </message>
+ <message>
+ <source>&amp;Display</source>
+ <translation type="unfinished">&amp;Görkez</translation>
+ </message>
+ <message>
+ <source>User Interface &amp;language:</source>
+ <translation type="unfinished">Ulanyjy interfeýsiniň &amp;dili:</translation>
+ </message>
+ <message>
+ <source>The user interface language can be set here. This setting will take effect after restarting %1.</source>
+ <translation type="unfinished">Ulanyjy interfeýsiniň dilini bu ýerde belläp bolýar. Bu sazlama %1 gaýtadan başladylandan soň güýje girer.</translation>
+ </message>
+ <message>
+ <source>&amp;Unit to show amounts in:</source>
+ <translation type="unfinished">Möçberleri görkezmek üçin ölçeg &amp;birligi:</translation>
+ </message>
+ <message>
+ <source>Choose the default subdivision unit to show in the interface and when sending coins.</source>
+ <translation type="unfinished">Interfeýsde we teňňeler iberilende görkezer ýaly bellenen ölçeg birligini saýlaň.</translation>
+ </message>
+ <message>
+ <source>Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
+ <translation type="unfinished">Amallar sahypasynda kontekst menýu birlikleri hökmünde görkezilýän üçünji tarap URL-salgylary (meselem, blok agtaryjynyňky). URL-däki %s amal heşi bilen çalşyrylar. Birden köp URL-ler dik | çyzgy bilen biri-birinden aýrylýar.</translation>
+ </message>
+ <message>
+ <source>&amp;Third-party transaction URLs</source>
+ <translation type="unfinished">&amp;Üçünji tarap amal URL-leri</translation>
+ </message>
+ <message>
+ <source>Whether to show coin control features or not.</source>
+ <translation type="unfinished">Teňňe dolandyryş aýratynlyklary görkezilmelimi ýa-da ýok.</translation>
+ </message>
+ <message>
+ <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services.</source>
+ <translation type="unfinished">Tor onion hyzmatlary üçin aýratyn SOCKS5 proksi arkaly Bitkoin toruna baglan.</translation>
+ </message>
+ <message>
+ <source>Use separate SOCKS&amp;5 proxy to reach peers via Tor onion services:</source>
+ <translation type="unfinished">Tor onion hyzmatlary arkaly düwünlere aralaşmak üçin SOCKS&amp;5 proksisini ulan:</translation>
+ </message>
+ <message>
+ <source>Monospaced font in the Overview tab:</source>
+ <translation type="unfinished">Gözden geçir sahypasynda monoaralykly harp görnüşi:</translation>
+ </message>
+ <message>
+ <source>embedded "%1"</source>
+ <translation type="unfinished">içine gurnalan "%1"</translation>
+ </message>
+ <message>
+ <source>closest matching "%1"</source>
+ <translation type="unfinished">iň meňzeş gabat gelme "%1"</translation>
+ </message>
+ <message>
+ <source>&amp;Cancel</source>
+ <translation type="unfinished">&amp;Ýatyr</translation>
+ </message>
+ <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Daşyndan gol çekmek üçin goldawsyz (daşyndan gol çekmek üçin gerek) düzüldi</translation>
</message>
<message>
+ <source>default</source>
+ <translation type="unfinished">bellenen</translation>
+ </message>
+ <message>
+ <source>none</source>
+ <translation type="unfinished">hiçbiri</translation>
+ </message>
+ <message>
+ <source>Confirm options reset</source>
+ <extracomment>Window title text of pop-up window shown when the user has chosen to reset options.</extracomment>
+ <translation type="unfinished">Opsiýalary başdaka geçirmekligi tassykla</translation>
+ </message>
+ <message>
+ <source>Client restart required to activate changes.</source>
+ <extracomment>Text explaining that the settings changed will not come into effect until the client is restarted.</extracomment>
+ <translation type="unfinished">Üýtgetmeleri işjeňleşdirmek üçin müşderiniň gaýtadan işletmegi zerur.</translation>
+ </message>
+ <message>
+ <source>Current settings will be backed up at "%1".</source>
+ <extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
+ <translation type="unfinished">Häzirki sazlamalar %1-de ätiýaçlykda saklanar.</translation>
+ </message>
+ <message>
+ <source>Client will be shut down. Do you want to proceed?</source>
+ <extracomment>Text asking the user to confirm if they would like to proceed with a client shutdown.</extracomment>
+ <translation type="unfinished">Müşderi ýapylar. Dowam etmek isleýärsiňizmi?</translation>
+ </message>
+ <message>
+ <source>Configuration options</source>
+ <extracomment>Window title text of pop-up box that allows opening up of configuration file.</extracomment>
+ <translation type="unfinished">Konfigurasiýa opsiýalary</translation>
+ </message>
+ <message>
+ <source>The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file.</source>
+ <extracomment>Explanatory text about the priority order of instructions considered by client. The order from high to low being: command-line, configuration file, GUI settings.</extracomment>
+ <translation type="unfinished">Konfigurasiýa faýly GUI sazlamalaryndan has ýokary bolan giňeldilen ulanyjy opsiýalaryny takyklamak üçin ulanylýar.</translation>
+ </message>
+ <message>
+ <source>Continue</source>
+ <translation type="unfinished">Dowam et</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">Ýatyr</translation>
+ </message>
+ <message>
<source>Error</source>
<translation type="unfinished">Ýalňyşlyk</translation>
</message>
- </context>
+ <message>
+ <source>The configuration file could not be opened.</source>
+ <translation type="unfinished">Konfigurasiýa faýlyny açyp bolanok.</translation>
+ </message>
+ <message>
+ <source>This change would require a client restart.</source>
+ <translation type="unfinished">Bu üýtgetme üçin müşderi ýapyp açmaly bolar.</translation>
+ </message>
+ <message>
+ <source>The supplied proxy address is invalid.</source>
+ <translation type="unfinished">Berlen proksi salgysy dogry däl.</translation>
+ </message>
+</context>
+<context>
+ <name>OptionsModel</name>
+ <message>
+ <source>Could not read setting "%1", %2.</source>
+ <translation type="unfinished">%1, %2 sazlamasyny okap bolmady.</translation>
+ </message>
+</context>
<context>
<name>OverviewPage</name>
<message>
<source>Form</source>
<translation type="unfinished">Forma</translation>
</message>
- </context>
+ <message>
+ <source>The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet.</source>
+ <translation type="unfinished">Görkezilýän maglumat könelen bolup biler. birikme ýerine ýetirilenden soň siziň gapjygyňyz awtomatiki usulda Bitkoin tory bilen sinhronlaşar, ýöne bu iş entäk gutarmady.</translation>
+ </message>
+ <message>
+ <source>Watch-only:</source>
+ <translation type="unfinished">Diňe syn edip bolýar:</translation>
+ </message>
+ <message>
+ <source>Available:</source>
+ <translation type="unfinished">Elýeter:</translation>
+ </message>
+ <message>
+ <source>Your current spendable balance</source>
+ <translation type="unfinished">Siziň häzirki wagtda sowup bilýän balansyňyz</translation>
+ </message>
+ <message>
+ <source>Pending:</source>
+ <translation type="unfinished">Garaşylýar:</translation>
+ </message>
+ <message>
+ <source>Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source>
+ <translation type="unfinished">Indi tassyklanmaly we entek sowup boljak balansa geçirilmedik amallaryň hemmesi</translation>
+ </message>
+ <message>
+ <source>Immature:</source>
+ <translation type="unfinished">Kemala gelmedik:</translation>
+ </message>
+ <message>
+ <source>Mined balance that has not yet matured</source>
+ <translation type="unfinished">Entek kemala gelmedik gazanylan balans</translation>
+ </message>
+ <message>
+ <source>Balances</source>
+ <translation type="unfinished">Balanslar</translation>
+ </message>
+ <message>
+ <source>Total:</source>
+ <translation type="unfinished">Jemi:</translation>
+ </message>
+ <message>
+ <source>Your current total balance</source>
+ <translation type="unfinished">Siziň häzirki jemi balansyňyz</translation>
+ </message>
+ <message>
+ <source>Your current balance in watch-only addresses</source>
+ <translation type="unfinished">Diňe syn edip bolýan salgylardaky häzirki balansyňyz</translation>
+ </message>
+ <message>
+ <source>Spendable:</source>
+ <translation type="unfinished">Sowup bolýar:</translation>
+ </message>
+ <message>
+ <source>Recent transactions</source>
+ <translation type="unfinished">Soňky amallar</translation>
+ </message>
+ <message>
+ <source>Unconfirmed transactions to watch-only addresses</source>
+ <translation type="unfinished">Diňe syn edip bolýan salgylara tassyklanmadyk amallar</translation>
+ </message>
+ <message>
+ <source>Mined balance in watch-only addresses that has not yet matured</source>
+ <translation type="unfinished">Diňe syn edip bolýan salgylarda gazanylan, ýöne entek kemala gelmedik balans</translation>
+ </message>
+ <message>
+ <source>Current total balance in watch-only addresses</source>
+ <translation type="unfinished">Diňe syn edip bolýan salgylarda häzirki jemi balans</translation>
+ </message>
+ <message>
+ <source>Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings-&gt;Mask values.</source>
+ <translation type="unfinished">Gözden geçir sahypasy üçin Gizlinlik tertibi işjeňleşdirildi. Ýüzi örtülgi sanlary açmak üçin Sazlamalar-&gt;Sanlaryň ýüzüni ört-däki belligi aýyryň.</translation>
+ </message>
+</context>
+<context>
+ <name>PSBTOperationsDialog</name>
+ <message>
+ <source>PSBT Operations</source>
+ <translation type="unfinished">PSBT amallary</translation>
+ </message>
+ <message>
+ <source>Sign Tx</source>
+ <translation type="unfinished">Tx gol çek</translation>
+ </message>
+ <message>
+ <source>Broadcast Tx</source>
+ <translation type="unfinished">Tx ýaýlymyny ýerine ýetir</translation>
+ </message>
+ <message>
+ <source>Copy to Clipboard</source>
+ <translation type="unfinished">Alyş-çalyş buferine göçür</translation>
+ </message>
+ <message>
+ <source>Save…</source>
+ <translation type="unfinished">Ýatda sakla...</translation>
+ </message>
+ <message>
+ <source>Close</source>
+ <translation type="unfinished">Ýap</translation>
+ </message>
+ <message>
+ <source>Failed to load transaction: %1</source>
+ <translation type="unfinished">Amaly ýükläp bolmady: %1</translation>
+ </message>
+ <message>
+ <source>Failed to sign transaction: %1</source>
+ <translation type="unfinished">Amala gol çekip bolmady: %1</translation>
+ </message>
+ <message>
+ <source>Cannot sign inputs while wallet is locked.</source>
+ <translation type="unfinished">Gapjyk gulplyka girizilenlere gol çekip bolanok.</translation>
+ </message>
+ <message>
+ <source>Could not sign any more inputs.</source>
+ <translation type="unfinished">Başga hiç-hili girizilenlere gol çekip bolanok.</translation>
+ </message>
+ <message>
+ <source>Signed %1 inputs, but more signatures are still required.</source>
+ <translation type="unfinished">%1 girizilene gol çekildi, ýöne entegem has köp gol zerur.</translation>
+ </message>
+ <message>
+ <source>Signed transaction successfully. Transaction is ready to broadcast.</source>
+ <translation type="unfinished">Amala şowly gol çekildi. Amal ýaýlyma taýyn.</translation>
+ </message>
+ <message>
+ <source>Unknown error processing transaction.</source>
+ <translation type="unfinished">Amaly işlemekde näbelli ýalňyşlyk.</translation>
+ </message>
+ <message>
+ <source>Transaction broadcast successfully! Transaction ID: %1</source>
+ <translation type="unfinished">Amal ýaýlymy şowly! Amal ID: %1</translation>
+ </message>
+ <message>
+ <source>Transaction broadcast failed: %1</source>
+ <translation type="unfinished">Amal ýaýlymy şowsuz: %1</translation>
+ </message>
+ <message>
+ <source>PSBT copied to clipboard.</source>
+ <translation type="unfinished">PSBT alyş-çalyş buferine göçürildi.</translation>
+ </message>
+ <message>
+ <source>Save Transaction Data</source>
+ <translation type="unfinished">Amal maglumatyny ýatda sakla</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (Binary)</source>
+ <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
+ <translation type="unfinished">Bölekleýin gol çekilen amal (binar)</translation>
+ </message>
+ <message>
+ <source>PSBT saved to disk.</source>
+ <translation type="unfinished">PSBT diskde ýatda saklandy.</translation>
+ </message>
+ <message>
+ <source> * Sends %1 to %2</source>
+ <translation type="unfinished"> * %2-ä %1 iberilýär</translation>
+ </message>
+ <message>
+ <source>Unable to calculate transaction fee or total transaction amount.</source>
+ <translation type="unfinished">Amal pajyny ýa-da jemi amal bahasyny hasaplap bolanok.</translation>
+ </message>
+ <message>
+ <source>Pays transaction fee: </source>
+ <translation type="unfinished">Tölenmeli amal pajy:</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">Jemi baha</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">ýa-da</translation>
+ </message>
+ <message>
+ <source>Transaction has %1 unsigned inputs.</source>
+ <translation type="unfinished">Amalyň %1 gol çekilmedik girizileni bar.</translation>
+ </message>
+ <message>
+ <source>Transaction is missing some information about inputs.</source>
+ <translation type="unfinished">Amalyň girizilenler barada käbir maglumaty ýok.</translation>
+ </message>
+ <message>
+ <source>Transaction still needs signature(s).</source>
+ <translation type="unfinished">Amal üçin entegem gol gerek.</translation>
+ </message>
+ <message>
+ <source>(But no wallet is loaded.)</source>
+ <translation type="unfinished">(Ýöne hiçhili gapjyk ýüklenmedik.)</translation>
+ </message>
+ <message>
+ <source>(But this wallet cannot sign transactions.)</source>
+ <translation type="unfinished">(Ýöne bu gapjyk amallara gol çekip bilenok.)</translation>
+ </message>
+ <message>
+ <source>(But this wallet does not have the right keys.)</source>
+ <translation type="unfinished">(Ýöne bu gapjygyň dogry açarlary ýok.)</translation>
+ </message>
+ <message>
+ <source>Transaction is fully signed and ready for broadcast.</source>
+ <translation type="unfinished">Amala doly gol çekildi we ol ýaýlyma taýyn.</translation>
+ </message>
+ <message>
+ <source>Transaction status is unknown.</source>
+ <translation type="unfinished">Amalyň ýagdaýy näbelli.</translation>
+ </message>
+</context>
+<context>
+ <name>PaymentServer</name>
+ <message>
+ <source>Payment request error</source>
+ <translation type="unfinished">Töleg talabynda ýalňyşlyk</translation>
+ </message>
+ <message>
+ <source>Cannot start bitcoin: click-to-pay handler</source>
+ <translation type="unfinished">Bitkoini başlap bolanok: click-to-pay işleýjisi</translation>
+ </message>
+ <message>
+ <source>URI handling</source>
+ <translation type="unfinished">URI işlemeklik</translation>
+ </message>
+ <message>
+ <source>'bitcoin://' is not a valid URI. Use 'bitcoin:' instead.</source>
+ <translation type="unfinished">'bitcoin://' dogry URI däl. Onuň ýerine 'bitcoin:' ulanyň.</translation>
+ </message>
+ <message>
+ <source>Cannot process payment request because BIP70 is not supported.
+Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
+If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
+ <translation type="unfinished">BIP70 goldanmaýandygy sebäpli töleg talabyny işläp bolmaýar.
+BIP70-däki howpsuzlygyň giňden ýaýran gowşak taraplary sebäpli, täjirleriň gapjyklary çalyşmak baradaky islendik buýruklaryna üns bermäň.
+Size bu ýalňyşlyk gelýän bolsa, siz täjirden BIP21-e gabat gelýän URI-ni üpjün etmegini talap etmeli.</translation>
+ </message>
+ <message>
+ <source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source>
+ <translation type="unfinished">URI-ni işläp bolmady! Munuň sebäbi nädogry Bitkoin salgysy ýa-da ýalňyş emele getirilen URI parametrleri bolup biler.</translation>
+ </message>
+ <message>
+ <source>Payment request file handling</source>
+ <translation type="unfinished">Töleg talaby faýllarynyň işlenmegi</translation>
+ </message>
+</context>
<context>
<name>PeerTableModel</name>
<message>
+ <source>User Agent</source>
+ <extracomment>Title of Peers Table column which contains the peer's User Agent string.</extracomment>
+ <translation type="unfinished">Ulanyjy araçysy</translation>
+ </message>
+ <message>
+ <source>Peer</source>
+ <extracomment>Title of Peers Table column which contains a unique number used to identify a connection.</extracomment>
+ <translation type="unfinished">Düwün</translation>
+ </message>
+ <message>
+ <source>Age</source>
+ <extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
+ <translation type="unfinished">Möhlet</translation>
+ </message>
+ <message>
+ <source>Direction</source>
+ <extracomment>Title of Peers Table column which indicates the direction the peer connection was initiated from.</extracomment>
+ <translation type="unfinished">Ugur</translation>
+ </message>
+ <message>
+ <source>Sent</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have sent to the peer.</extracomment>
+ <translation type="unfinished">Iberilen</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have received from the peer.</extracomment>
+ <translation type="unfinished">Alnan</translation>
+ </message>
+ <message>
<source>Address</source>
<extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
<translation type="unfinished">Salgy</translation>
</message>
- </context>
+ <message>
+ <source>Type</source>
+ <extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
+ <translation type="unfinished">Görnüş</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <extracomment>Title of Peers Table column which states the network the peer connected through.</extracomment>
+ <translation type="unfinished">Tor</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An Inbound Connection from a Peer.</extracomment>
+ <translation type="unfinished">Girýän</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An Outbound Connection to a Peer.</extracomment>
+ <translation type="unfinished">Çykýan</translation>
+ </message>
+</context>
+<context>
+ <name>QRImageWidget</name>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">&amp;Suraty ýatda sakla…</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Image</source>
+ <translation type="unfinished">Suraty &amp;göçür</translation>
+ </message>
+ <message>
+ <source>Resulting URI too long, try to reduce the text for label / message.</source>
+ <translation type="unfinished">Netijedäki URI juda uzyn, etiketka/ýazgynyň tekstini azaldyp görüň.</translation>
+ </message>
+ <message>
+ <source>Error encoding URI into QR Code.</source>
+ <translation type="unfinished">URI-ni QR koda öwrüp bolmady.</translation>
+ </message>
+ <message>
+ <source>QR code support not available.</source>
+ <translation type="unfinished">QR kod goldawy elýeter däl.</translation>
+ </message>
+ <message>
+ <source>Save QR Code</source>
+ <translation type="unfinished">QR kody ýatda sakla</translation>
+ </message>
+ <message>
+ <source>PNG Image</source>
+ <extracomment>Expanded name of the PNG file format. See: https://en.wikipedia.org/wiki/Portable_Network_Graphics.</extracomment>
+ <translation type="unfinished">PNG surat</translation>
+ </message>
+</context>
<context>
<name>RPCConsole</name>
<message>
+ <source>N/A</source>
+ <translation type="unfinished">Elýeter däl</translation>
+ </message>
+ <message>
+ <source>Client version</source>
+ <translation type="unfinished">Müşderi wersiýasy</translation>
+ </message>
+ <message>
+ <source>&amp;Information</source>
+ <translation type="unfinished">&amp;Maglumat</translation>
+ </message>
+ <message>
+ <source>General</source>
+ <translation type="unfinished">Umumy</translation>
+ </message>
+ <message>
+ <source>Datadir</source>
+ <translation type="unfinished">Maglumat binýady</translation>
+ </message>
+ <message>
+ <source>To specify a non-default location of the data directory use the '%1' option.</source>
+ <translation type="unfinished">Maglumat binýadynyň deslapdan bellenmedik ýerini görkezmek üçin %1 opsiýasyny ulanyň.</translation>
+ </message>
+ <message>
+ <source>Blocksdir</source>
+ <translation type="unfinished">Blok binýadynyň deslapdan bellenmedik ýerini görkezmek üçin opsiýasyny ulanyň.</translation>
+ </message>
+ <message>
+ <source>To specify a non-default location of the blocks directory use the '%1' option.</source>
+ <translation type="unfinished">Blok binýadynyň deslapdan bellenmedik ýerini görkezmek üçin %1 opsiýasyny ulanyň.</translation>
+ </message>
+ <message>
+ <source>Startup time</source>
+ <translation type="unfinished">Başlatma wagty</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <translation type="unfinished">Tor</translation>
+ </message>
+ <message>
+ <source>Name</source>
+ <translation type="unfinished">At</translation>
+ </message>
+ <message>
+ <source>Number of connections</source>
+ <translation type="unfinished">Birikmeleriň sany</translation>
+ </message>
+ <message>
+ <source>Block chain</source>
+ <translation type="unfinished">Blok zynjyry</translation>
+ </message>
+ <message>
+ <source>Memory Pool</source>
+ <translation type="unfinished">Ýat howuzy</translation>
+ </message>
+ <message>
+ <source>Current number of transactions</source>
+ <translation type="unfinished">Amallaryň häzirki sany</translation>
+ </message>
+ <message>
+ <source>Memory usage</source>
+ <translation type="unfinished">Ýadyň ulanylyşy</translation>
+ </message>
+ <message>
+ <source>Wallet: </source>
+ <translation type="unfinished">Gapjyk:</translation>
+ </message>
+ <message>
+ <source>(none)</source>
+ <translation type="unfinished">(ýok)</translation>
+ </message>
+ <message>
+ <source>&amp;Reset</source>
+ <translation type="unfinished">&amp;Başdaka geçir</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <translation type="unfinished">Alnan</translation>
+ </message>
+ <message>
+ <source>Sent</source>
+ <translation type="unfinished">Iberilen</translation>
+ </message>
+ <message>
+ <source>&amp;Peers</source>
+ <translation type="unfinished">&amp;Düwünler</translation>
+ </message>
+ <message>
+ <source>Banned peers</source>
+ <translation type="unfinished">Gadagan edilen düwünler</translation>
+ </message>
+ <message>
+ <source>Select a peer to view detailed information.</source>
+ <translation type="unfinished">Jikme-jik maglumaty görmek üçin düwüni saýlaň.</translation>
+ </message>
+ <message>
+ <source>Version</source>
+ <translation type="unfinished">Wersiýa</translation>
+ </message>
+ <message>
+ <source>Whether we relay transactions to this peer.</source>
+ <translation type="unfinished">Amallary bu düwüne ýaýlyma geçirýärismi.</translation>
+ </message>
+ <message>
+ <source>Transaction Relay</source>
+ <translation type="unfinished">Amal ýaýlyma beriji</translation>
+ </message>
+ <message>
+ <source>Starting Block</source>
+ <translation type="unfinished">Blogy başlamak</translation>
+ </message>
+ <message>
+ <source>Synced Headers</source>
+ <translation type="unfinished">Sinhronlaşdyrylan baş atlar</translation>
+ </message>
+ <message>
+ <source>Synced Blocks</source>
+ <translation type="unfinished">Sinhronlaşdyrylan bloklar</translation>
+ </message>
+ <message>
+ <source>Last Transaction</source>
+ <translation type="unfinished">Soňky amal</translation>
+ </message>
+ <message>
+ <source>The mapped Autonomous System used for diversifying peer selection.</source>
+ <translation type="unfinished">Düwünleriň köpdürliligini üpjün etmek üçin ulanylýan birikdirilen Awtonom ulgam.</translation>
+ </message>
+ <message>
+ <source>Mapped AS</source>
+ <translation type="unfinished">Birikdirilen AU</translation>
+ </message>
+ <message>
+ <source>Whether we relay addresses to this peer.</source>
+ <extracomment>Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
+ <translation type="unfinished">Salgylary bu düwüne ýaýlyma geçirýärismi.</translation>
+ </message>
+ <message>
+ <source>Address Relay</source>
+ <extracomment>Text title for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
+ <translation type="unfinished">Salgy ýaýlyma geçirmek</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
+ <extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Bu düwünden alnan we işlenen salgylaryň jemi sany (akymyň çäklendirmesi sebäpli çykarylan sanlar hasaba alynmaýar)</translation>
+ </message>
+ <message>
+ <source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
+ <extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
+ <translation type="unfinished">Bu düwünlerden alnan we akymyň çäklendirmesi sebäpli çykarylan (işlenmedik) salgylaryň jemi sany</translation>
+ </message>
+ <message>
+ <source>Addresses Processed</source>
+ <extracomment>Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
+ <translation type="unfinished">Işlenen salgylar</translation>
+ </message>
+ <message>
+ <source>Addresses Rate-Limited</source>
+ <extracomment>Text title for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
+ <translation type="unfinished">Akymy çäklendirilen salgylar</translation>
+ </message>
+ <message>
+ <source>User Agent</source>
+ <translation type="unfinished">Ulanyjy araçysy</translation>
+ </message>
+ <message>
<source>Node window</source>
<translation type="unfinished">Düwün penjiresi</translation>
</message>
<message>
+ <source>Current block height</source>
+ <translation type="unfinished">Häzirki blok boýy</translation>
+ </message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">Soňky blok wagty</translation>
+ </message>
+ <message>
<source>&amp;Copy address</source>
<extracomment>Context menu action to copy the address of a peer.</extracomment>
<translation type="unfinished">&amp;Salgyny göçür</translation>
@@ -1359,6 +2372,10 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<source>Wallet:</source>
<translation type="unfinished">Gapjyk:</translation>
</message>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">&amp;Suraty ýatda sakla…</translation>
+ </message>
</context>
<context>
<name>RecentRequestsTableModel</name>
@@ -1402,8 +2419,8 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Çalyş:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Toz:</translation>
+ <source>Hide</source>
+ <translation type="unfinished">Gizle</translation>
</message>
<message>
<source>Copy quantity</source>
@@ -1426,13 +2443,26 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Baýtlary göçür</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Tozy göçür</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Gaýtargyny göçür</translation>
</message>
+ <message>
+ <source>Save Transaction Data</source>
+ <translation type="unfinished">Amal maglumatyny ýatda sakla</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (Binary)</source>
+ <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
+ <translation type="unfinished">Bölekleýin gol çekilen amal (binar)</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">ýa-da</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">Jemi baha</translation>
+ </message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
@@ -1446,11 +2476,37 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
</message>
</context>
<context>
+ <name>SendCoinsEntry</name>
+ <message>
+ <source>Paste address from clipboard</source>
+ <translation type="unfinished">Salgyny alyş-çalyş tagtasyna giriz</translation>
+ </message>
+ </context>
+<context>
+ <name>SignVerifyMessageDialog</name>
+ <message>
+ <source>Paste address from clipboard</source>
+ <translation type="unfinished">Salgyny alyş-çalyş tagtasyna giriz</translation>
+ </message>
+ <message>
+ <source>Reset all sign message fields</source>
+ <translation type="unfinished">Ähli gol habarly ýerleri başdaka geçir</translation>
+ </message>
+ <message>
+ <source>Reset all verify message fields</source>
+ <translation type="unfinished">Ähli tassyklaýyş habarly ýerleri başdaka geçir</translation>
+ </message>
+ </context>
+<context>
<name>TransactionDesc</name>
<message>
<source>Date</source>
<translation type="unfinished">Sene</translation>
</message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">näbelli</translation>
+ </message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
@@ -1470,6 +2526,10 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Sene</translation>
</message>
<message>
+ <source>Type</source>
+ <translation type="unfinished">Görnüş</translation>
+ </message>
+ <message>
<source>Label</source>
<translation type="unfinished">Bellik</translation>
</message>
@@ -1510,6 +2570,10 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<translation type="unfinished">Sene</translation>
</message>
<message>
+ <source>Type</source>
+ <translation type="unfinished">Görnüş</translation>
+ </message>
+ <message>
<source>Label</source>
<translation type="unfinished">Bellik</translation>
</message>
@@ -1550,7 +2614,16 @@ Diňe "miras" görnüşli salgylar bilen gol çekmek mümkin.</translation>
<source>Export the data in the current tab to a file</source>
<translation type="unfinished">Häzirki bellikdäki maglumaty faýla geçir</translation>
</message>
- </context>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">Gapjyk maglumatlary</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">Ýatyr</translation>
+ </message>
+</context>
<context>
<name>bitcoin-core</name>
<message>
diff --git a/src/qt/locale/bitcoin_tl.ts b/src/qt/locale/bitcoin_tl.ts
index 110c170993..aaa9d64ccd 100644
--- a/src/qt/locale/bitcoin_tl.ts
+++ b/src/qt/locale/bitcoin_tl.ts
@@ -3,19 +3,23 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">I-right-click upang i-edit ang address o label</translation>
+ <translation type="unfinished">pindutin lamang ang kanang pindutan upang i-edit ang address o label</translation>
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">Gumawa ng bagong ♦address♦</translation>
+ <translation type="unfinished">Lumikha ng bagong ♦address♦</translation>
</message>
<message>
<source>&amp;New</source>
- <translation type="unfinished">&amp;Bago</translation>
+ <translation type="unfinished">Panibago</translation>
</message>
<message>
<source>Copy the currently selected address to the system clipboard</source>
- <translation type="unfinished">Kopyahin ang pinipiling ♦address♦ sa kasalakuyan sa ♦clipboard♦ ng sistema</translation>
+ <translation type="unfinished">Gayahin ang pinipiling ♦address♦ sa kasalakuyan sa ♦clipboard♦ ng sistem</translation>
+ </message>
+ <message>
+ <source>&amp;Copy</source>
+ <translation type="unfinished">Gayahin</translation>
</message>
<message>
<source>C&amp;lose</source>
@@ -23,7 +27,7 @@
</message>
<message>
<source>Delete the currently selected address from the list</source>
- <translation type="unfinished">Tanggalin ang kasalukuyang napiling ♦address♦ sa listahan</translation>
+ <translation type="unfinished">Burahin ang kasalukuyang napiling ♦address♦ sa listahan</translation>
</message>
<message>
<source>Enter address or label to search</source>
@@ -39,11 +43,11 @@
</message>
<message>
<source>&amp;Delete</source>
- <translation type="unfinished">&amp;Tanggalin</translation>
+ <translation type="unfinished">&amp;Burahin</translation>
</message>
<message>
<source>Choose the address to send coins to</source>
- <translation type="unfinished">Piliin ang ♦address♦ kung saan ipapadala ang mga coin</translation>
+ <translation type="unfinished">Piliin ang ♦address♦ kung saan ipapadala ang mga barya</translation>
</message>
<message>
<source>Choose the address to receive coins with</source>
@@ -54,14 +58,6 @@
<translation type="unfinished">&amp;Pumili</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Pinapadala ang mga ♦address♦</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Tinatanggap ang mga ♦address♦</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Ito ang mga ♦address♦ ng ♦Bitcoin♦ mo para pagpapadala ng mga bayad. Palaging suriin mo ang halaga at address kung saan tatanggap bago magpadala ka ng mga ♦coin.</translation>
</message>
@@ -774,10 +770,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Bayad:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Alikabok:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Pagkatapos na Bayad:</translation>
</message>
@@ -862,10 +854,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopyahin ang ♦bytes♦</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopyahin ang ♦dust♦</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopyahin ang pagbabago</translation>
</message>
@@ -874,18 +862,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 naka-lock)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">oo</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">hindi</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ang tatak na ito ay nagiging pula kung ang sinomang tatanggap ay tatanggap ng halaga na mas maliit sa kasalukuyang ♦dust threshold♦</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Maaaring magbago ng +/- %1♦4satoshi(s)♦ kada ♦input♦.</translation>
</message>
@@ -1019,14 +995,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Gumawa ng Blankong Pitaka</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Gumawa ng mga ♦descriptors♦ para sa pamamahala sa ♦scriptPubKey♦</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">♦Descriptor♦ na pitaka</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Gumamit ng panlabas na pagpirmang ♦device♦ katulad ng ♦hardware♦ na pitaka. I-configure ang panlabas na ♦signer script♦ sa loob ng ♦preferences♦ ng pitaka n listahan. </translation>
</message>
@@ -1039,10 +1007,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Gumawa</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Pinagsama-sama na walang suporta ng ♦sqlite♦ (kailangan para sa ♦descriptor♦ na pitaka)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Pinagsama-sama na walang suporta ng ♦pag-pirma♦ (kailangan para sa panlabasna pagpirma)</translation>
@@ -1356,10 +1320,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Sukli:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Alikabok:</translation>
- </message>
- <message>
<source>Copy quantity</source>
<translation type="unfinished">Kopyahin ang dami</translation>
</message>
@@ -1380,10 +1340,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Kopyahin ang ♦bytes♦</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Kopyahin ang ♦dust♦</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Kopyahin ang pagbabago</translation>
</message>
diff --git a/src/qt/locale/bitcoin_tr.ts b/src/qt/locale/bitcoin_tr.ts
index f64ef41a01..7c646e228c 100644
--- a/src/qt/locale/bitcoin_tr.ts
+++ b/src/qt/locale/bitcoin_tr.ts
@@ -3,7 +3,7 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">Adresi veya etiketi düzenlemek için sağ tıklayın</translation>
+ <translation type="unfinished">Adresi veya etiketi düzenlemek için sağ tıklayın.</translation>
</message>
<message>
<source>Create a new address</source>
@@ -58,14 +58,6 @@
<translation type="unfinished">S&amp;eç</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Gönderici adresler</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Alıcı adresler</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Bunlar ödemeleri gönderdiğiniz Bitcoin adreslerinizdir. Para göndermeden önce her zaman tutarı ve alıcı adresi kontrol ediniz.</translation>
</message>
@@ -149,7 +141,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>This operation needs your wallet passphrase to unlock the wallet.</source>
- <translation type="unfinished">kilidi açmakparolaBu işlemi yapabilmek için cüzdan parolanızı girmeniz gerekmektedir
+ <translation type="unfinished">Bu işlemi yapabilmek için cüzdan parolanızı girmeniz gerekmektedir
Cüzdan kilidini aç.</translation>
</message>
<message>
@@ -733,6 +725,11 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">daha fazla seçenek için tıklayın.</translation>
</message>
<message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">Eşler sekmesini göster</translation>
+ </message>
+ <message>
<source>Disable network activity</source>
<extracomment>A context menu item.</extracomment>
<translation type="unfinished">Ağ etkinliğini devre dışı bırak</translation>
@@ -849,10 +846,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Ücret</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Toz:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Ücret sonrası:</translation>
</message>
@@ -933,10 +926,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Bitleri kopyala</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">toz kopyala</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Para üstünü kopyala</translation>
</message>
@@ -945,18 +934,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">(%1'i kilitli)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">evet</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">hayır</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Herhangi bir alıcı mevcut toz eşiğinden daha düşük bir miktar alırsa bu etiket kırmızıya döner.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Her girdi için +/- %1 satoshi değişebilir.</translation>
</message>
@@ -994,6 +971,10 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Cüzdan oluşturma uyarısı</translation>
</message>
<message>
+ <source>Can't list signers</source>
+ <translation type="unfinished">İmzalayanlar listelenmiyor</translation>
+ </message>
+ <message>
<source>Too many external signers found</source>
<translation type="unfinished">Çok fazla harici imzalayan bulundu</translation>
</message>
@@ -1130,21 +1111,17 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Boş Cüzdan Oluştur</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">scriptPubKey yönetimi için tanımlayıcıları kullanın</translation>
+ <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
+ <translation type="unfinished">Donanım cüzdanı gibi harici bir imzalama cihazı kullanın. Önce cüzdan tercihlerinde harici imzalayan komut dosyasını yapılandırın.</translation>
</message>
<message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Tanımlayıcı Cüzdan </translation>
+ <source>External signer</source>
+ <translation type="unfinished">Harici imzalaycı</translation>
</message>
<message>
<source>Create</source>
<translation type="unfinished">Oluştur</translation>
</message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Sqlite desteği olmadan derlenmiş. (tanımlayıcı cüzdanlar için gereklidir)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1323,7 +1300,7 @@ Cüzdan kilidini aç.</translation>
</message>
<message>
<source>Do not shut down the computer until this window disappears.</source>
- <translation type="unfinished">Bu pencere kalkıncaya dek bilgisayarı kapatmayınız.</translation>
+ <translation type="unfinished">Bu pencere kapanıncaya dek bilgisayarı kapatmayınız.</translation>
</message>
</context>
<context>
@@ -1638,6 +1615,11 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Değişikliklerin uygulanması için istemcinin yeniden başlatılması lazımdır.</translation>
</message>
<message>
+ <source>Current settings will be backed up at "%1".</source>
+ <extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
+ <translation type="unfinished">Mevcut ayarlar şu adreste yedeklenecek: "%1".</translation>
+ </message>
+ <message>
<source>Client will be shut down. Do you want to proceed?</source>
<extracomment>Text asking the user to confirm if they would like to proceed with a client shutdown.</extracomment>
<translation type="unfinished">İstemci kapanacaktır. Devam etmek istiyor musunuz?</translation>
@@ -1822,6 +1804,10 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">PSBT diske kaydedildi.</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">kendi adresiniz</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">İşlem ücretini veya toplam işlem miktarını hesaplayamıyor.</translation>
</message>
@@ -2062,6 +2048,10 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Ayrıntılı bilgi görmek için bir eş seçin.</translation>
</message>
<message>
+ <source>Transport</source>
+ <translation type="unfinished">Aktar</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">Sürüm</translation>
</message>
@@ -2570,10 +2560,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Girdiler...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Toz:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Seç...</translation>
</message>
@@ -2622,10 +2608,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Bitleri kopyala</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">toz kopyala</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Para üstünü kopyala</translation>
</message>
@@ -3191,10 +3173,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Gönderildiği adres</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Kendinize ödeme</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Madenden</translation>
</message>
@@ -3270,10 +3248,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Gönderildiği adres</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Kendinize</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Madenden</translation>
</message>
@@ -3440,7 +3414,7 @@ Cüzdan kilidini aç.</translation>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">Dışa aktar</translation>
+ <translation type="unfinished">&amp;Dışa aktar</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
@@ -3491,10 +3465,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">MIT yazılım lisansı altında dağıtılmıştır, beraberindeki %s ya da %s dosyasına bakınız.</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">%s dosyasının okunması sırasında bir hata meydana geldi! Tüm anahtarlar doğru bir şekilde okundu, ancak işlem verileri ya da adres defteri ögeleri hatalı veya eksik olabilir.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">%s okuma hatası! İşlem verileri eksik veya yanlış olabilir. Cüzdan yeniden taranıyor.</translation>
</message>
@@ -3527,14 +3497,14 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Blok veritabanı gelecekten gibi görünen bir blok içermektedir. Bu, bilgisayarınızın saat ve tarihinin yanlış ayarlanmış olmasından kaynaklanabilir. Blok veritabanını sadece bilgisayarınızın tarih ve saatinin doğru olduğundan eminseniz yeniden derleyin.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Blok dizini db, eski bir 'txindex' içerir. Dolu disk alanını temizlemek için full -reindex çalıştırın, aksi takdirde bu hatayı yok sayın. Bu hata mesajı tekrar görüntülenmeyecek.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Bu işlem, tutar düşüldükten sonra göndermek için çok düşük</translation>
</message>
<message>
+ <source>This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet</source>
+ <translation type="unfinished">Bu hata, bu cüzdan düzgün bir şekilde kapatılmadıysa ve en son Berkeley DB'nin daha yeni bir sürümü kullanılarak yüklendiyse oluşabilir. Öyleyse, lütfen bu cüzdanı en son sürümünü kullanın.</translation>
+ </message>
+ <message>
<source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source>
<translation type="unfinished">Bu kararlı sürümden önceki bir deneme sürümüdür. - risklerini bilerek kullanma sorumluluğu sizdedir - bitcoin oluşturmak ya da ticari uygulamalar için kullanmayınız</translation>
</message>
@@ -3575,10 +3545,6 @@ Cüzdan kilidini aç.</translation>
<translation type="unfinished">Veriler '%s' klasörüne yazılamıyor ; yetkilendirmeyi kontrol edin.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Önceki bir sürüm tarafından başlatılan -txindex yükseltmesi tamamlanamaz. Önceki sürümle yeniden başlatın veya full -reindex çalıştırın.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Belirli bağlantılar sağlayamaz ve aynı anda addrman'ın giden bağlantıları bulmasını sağlayamaz.</translation>
</message>
diff --git a/src/qt/locale/bitcoin_ug.ts b/src/qt/locale/bitcoin_ug.ts
index be0a858cbf..36676c7c7d 100644
--- a/src/qt/locale/bitcoin_ug.ts
+++ b/src/qt/locale/bitcoin_ug.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">تاللا(&amp;H)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">يوللاش ئادرېسى</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">تاپشۇرۇۋېلىش ئادرېسى</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">بۇلار سىز Bitcoin چىقىم قىلىدىغان ئادرېس. تەڭگە چىقىم قىلىشتىن ئىلگىرى، سومما ۋە تاپشۇرۇۋېلىش ئادرېسىنىڭ توغرا ئىكەنلىكىنى تەكشۈرۈشنى ئۇنۇتماڭ.</translation>
</message>
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">ئادرېس تىزىمىنى %1 غا ساقلاشنى سىناۋاتقاندا خاتالىق كۆرۈلدى. قايتا سىناڭ.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">يوللايدىغان ئادرېس-%1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">قوبۇللايدىغان ئادرېس-%1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">چىقىرالمىدى</translation>
</message>
diff --git a/src/qt/locale/bitcoin_uk.ts b/src/qt/locale/bitcoin_uk.ts
index 62d65d660e..71c1f411d4 100644
--- a/src/qt/locale/bitcoin_uk.ts
+++ b/src/qt/locale/bitcoin_uk.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Вибрати</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Адреси відправлення</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Адреси отримання</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Це ваші біткоїн-адреси для надсилання платежів. Завжди перевіряйте суму та адресу одержувача перед відправленням монет.</translation>
</message>
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Виникла помилка при спробі зберігання адрес до %1. Спробуйте ще раз.</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">Адреси відправлення - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">Адреси отримання - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">Помилка експорту</translation>
</message>
@@ -169,7 +169,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Are you sure you wish to encrypt your wallet?</source>
- <translation type="unfinished">Ви справді бажаєте зашифрувати свій гаманець?</translation>
+ <translation type="unfinished">Ви впевнені, що бажаєте зашифрувати свій гаманець?</translation>
</message>
<message>
<source>Wallet encrypted</source>
@@ -740,12 +740,20 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Закрити всі гаманці</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Перенести гаманець</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">Перенести гаманець</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">Показати довідку %1 для отримання переліку можливих параметрів командного рядка.</translation>
</message>
<message>
<source>&amp;Mask values</source>
- <translation type="unfinished">&amp;Приховати значення</translation>
+ <translation type="unfinished">При&amp;ховати значення</translation>
</message>
<message>
<source>Mask the values in the Overview tab</source>
@@ -837,6 +845,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Триває попередня синхронізація заголовків (%1%)…</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Помилка створення гаманця</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">Неможливо створити новий гаманець, програмне забезпечення було скомпільовано без підтримки sqlite (необхідно для гаманців з підтримкою дескрипторів)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Помилка: %1</translation>
</message>
@@ -943,10 +959,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Комісія:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Пил:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Після комісії:</translation>
</message>
@@ -1035,10 +1047,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Копіювати байти</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копіювати "пил"</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копіювати решту</translation>
</message>
@@ -1047,18 +1055,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 заблоковано)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">так</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">ні</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Ця позначка стане червоною, якщо будь-який отримувач отримає суму, меншу за поточний поріг пилу.</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Може відрізнятися на +/- %1 сатоші за кожний вхід.</translation>
</message>
@@ -1118,6 +1114,56 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">Перенести гаманець</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">Ви впевнені, що бажаєте перенести гаманець &lt;i&gt;%1&lt;/i&gt;?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">Під час перенесення гаманця він буде перетворено на один або кілька гаманців з підтримкою дескрипторів. Необхідно буде створити нову резервну копію гаманця.
+Якщо цей гаманець містить будь-які скрипти "тільки для перегляду", буде створено новий гаманець, що містить такі скрипти.
+Якщо цей гаманець містить будь-які спроможні, але не спостережувані скрипти, буде створено інший новий гаманець, що містить такі скрипти.
+Процес перенесення створить резервну копію гаманця перед початком. Цей файл резервної копії буде названий &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak і знаходитиметься в каталозі для цього гаманця. У випадку неправильного перенесення резервну копію можна відновити за допомогою функціоналу "Відновити гаманець".</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">Перенести гаманець</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">Перенесення гаманця &lt;b&gt;%1&lt;/b&gt;…</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">Гаманець '%1' був успішно перенесений.</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Скрипти "тільки для перегляду" були перенесені в новий гаманець під назвою '%1'.</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> Спроможні, але не спостережувані скрипти були перенесені в новий гаманець під назвою '%1'.</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">Перенесення не вдалося</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">Перенесення завершилося успішно</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1178,11 +1224,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
- <translation type="unfinished">Ви справді бажаєте закрити гаманець &lt;i&gt;%1&lt;/i&gt;?</translation>
+ <translation type="unfinished">Ви впевнені, що бажаєте закрити гаманець &lt;i&gt;%1&lt;/i&gt;?</translation>
</message>
<message>
<source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
- <translation type="unfinished">Тримання гаманця закритим занадто довго може призвести до необхідності повторної синхронізації всього блокчейна, якщо скорочення (прунінг) ввімкнено.</translation>
+ <translation type="unfinished">Тримання гаманця закритим занадто довго може призвести до необхідності повторної синхронізації всього блокчейну, якщо скорочення (прунінг) ввімкнено.</translation>
</message>
<message>
<source>Close all wallets</source>
@@ -1190,7 +1236,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Are you sure you wish to close all wallets?</source>
- <translation type="unfinished">Ви справді бажаєте закрити всі гаманці?</translation>
+ <translation type="unfinished">Ви впевнені, що бажаєте закрити всі гаманці?</translation>
</message>
</context>
<context>
@@ -1200,8 +1246,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Створити гаманець</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">Ви на один крок від створення свого нового гаманця!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">Укажіть ім'я та, за бажанням, активуйте будь-які додаткові параметри.</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">Назва Гаманця</translation>
+ <translation type="unfinished">Назва гаманця</translation>
</message>
<message>
<source>Wallet</source>
@@ -1221,7 +1275,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets.</source>
- <translation type="unfinished">Вимкнути приватні ключі для цього гаманця. Гаманці з вимкнутими приватними ключами не матимуть приватних ключів і не можуть мати набір HD або імпортовані приватні ключі. Це ідеально підходить лише для тільки-огляд гаманців.</translation>
+ <translation type="unfinished">Вимкнути приватні ключі для цього гаманця. Гаманці з вимкнутими приватними ключами не матимуть приватних ключів і не можуть мати набір HD або імпортовані приватні ключі. Це ідеально підходить для гаманців "тільки для перегляду".</translation>
</message>
<message>
<source>Disable Private Keys</source>
@@ -1236,14 +1290,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Створити пустий гаманець</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Використовуйте дескриптори для управління scriptPubKey</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Гаманець на базі дескрипторів</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Використовувати зовнішній підписуючий пристрій, наприклад, апаратний гаманець. Спочатку налаштуйте скрипт зовнішнього підписувача в параметрах гаманця.</translation>
</message>
@@ -1256,10 +1302,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Створити</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Скомпільовано без підтримки sqlite (потрібно для гаманців дескрипторів)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Скомпільовано без підтримки зовнішнього підписування (потрібно для зовнішнього підписування)</translation>
@@ -1392,7 +1434,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>%1 will download and store a copy of the Bitcoin block chain.</source>
- <translation type="unfinished">%1 буде завантажувати та зберігати копію блокчейна.</translation>
+ <translation type="unfinished">%1 буде завантажувати та зберігати копію блокчейну.</translation>
</message>
<message>
<source>The wallet will also be stored in this directory.</source>
@@ -1568,7 +1610,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
- <translation type="unfinished">Увімкнення режиму скороченого блокчейна значно зменшує дисковий простір, що необхідний для збереження транзакцій. Всі блоки продовжують проходити повну перевірку. Вимкнення цього параметру потребує повторного завантаження всього блокчейна.</translation>
+ <translation type="unfinished">Увімкнення режиму скороченого блокчейну значно зменшує дисковий простір, що необхідний для збереження транзакцій. Всі блоки продовжують проходити повну перевірку. Вимкнення цього параметру потребує повторного завантаження всього блокчейну.</translation>
</message>
<message>
<source>Size of &amp;database cache</source>
@@ -1628,7 +1670,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Reverting this setting requires re-downloading the entire blockchain.</source>
- <translation type="unfinished">Повернення цього параметра вимагає перезавантаження вього блокчейна.</translation>
+ <translation type="unfinished">Повернення цього параметра вимагає перезавантаження всього блокчейну.</translation>
</message>
<message>
<source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
@@ -1921,7 +1963,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Watch-only:</source>
- <translation type="unfinished">Тільки перегляд:</translation>
+ <translation type="unfinished">Тільки для перегляду:</translation>
</message>
<message>
<source>Available:</source>
@@ -1961,7 +2003,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Your current balance in watch-only addresses</source>
- <translation type="unfinished">Ваш поточний баланс в адресах "тільки перегляд"</translation>
+ <translation type="unfinished">Ваш поточний баланс на адресах "тільки для перегляду"</translation>
</message>
<message>
<source>Spendable:</source>
@@ -1973,15 +2015,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Unconfirmed transactions to watch-only addresses</source>
- <translation type="unfinished">Непідтверджені транзакції на адреси "тільки перегляд"</translation>
+ <translation type="unfinished">Непідтверджені транзакції на адреси "тільки для перегляду"</translation>
</message>
<message>
<source>Mined balance in watch-only addresses that has not yet matured</source>
- <translation type="unfinished">Баланс видобутих монет, що не досягли завершеності, на адресах "тільки перегляд"</translation>
+ <translation type="unfinished">Баланс видобутих монет, що не досягли завершеності, на адресах "тільки для перегляду"</translation>
</message>
<message>
<source>Current total balance in watch-only addresses</source>
- <translation type="unfinished">Поточний сукупний баланс в адресах "тільки перегляд"</translation>
+ <translation type="unfinished">Поточний сукупний баланс на адресах "тільки для перегляду"</translation>
</message>
<message>
<source>Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings-&gt;Mask values.</source>
@@ -2024,7 +2066,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Cannot sign inputs while wallet is locked.</source>
- <translation type="unfinished">Не вдалося підписати входи, поки гаманець заблокований.</translation>
+ <translation type="unfinished">Неможливо підписати входи, поки гаманець заблокований.</translation>
</message>
<message>
<source>Could not sign any more inputs.</source>
@@ -2069,7 +2111,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source> * Sends %1 to %2</source>
- <translation type="unfinished">* Надсилає від %1 до %2</translation>
+ <translation type="unfinished"> * Надсилає від %1 до %2</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">Власна адреса</translation>
</message>
<message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
@@ -2142,7 +2188,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Cannot process payment request because BIP70 is not supported.
Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
- <translation type="unfinished">Не вдалося обробити запит на оплату, оскільки BIP70 не підтримується.
+ <translation type="unfinished">Неможливо обробити запит на оплату, оскільки BIP70 не підтримується.
Через поширені недоліки безпеки в BIP70 рекомендується ігнорувати будь -які вказівки продавців щодо перемикання гаманців.
Якщо ви отримуєте цю помилку, вам слід вимагати у продавця надати URI, який сумісний з BIP21.</translation>
</message>
@@ -2349,6 +2395,22 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Виберіть учасника для перегляду детальнішої інформації</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">Версія транспортного рівня: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">Траспорт</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">Ідентифікатор сесії BIP324 у hex форматі, якщо є.</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">ID сесії</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">Версія</translation>
</message>
@@ -2578,6 +2640,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Вихідний для отримання адрес: короткотривалий, для витребування адрес</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">визначення: з'єднання може бути v1 або v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: незашифрований транспортний протокол з відкритим текстом</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: шифрований транспортний протокол BIP324</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">ми обрали учасника для з'єднання з високою пропускною здатністю</translation>
</message>
@@ -2955,7 +3032,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain.</source>
- <translation type="unfinished">Використання зарезервованої комісії може призвести до відправлення транзакції, яка буде підтверджена через години або дні (або ніколи не буде підтверджена). Обміркуйте можливість вибору комісії вручну або зачекайте завершення валідації повного блокчейна.</translation>
+ <translation type="unfinished">Використання зарезервованої комісії може призвести до відправлення транзакції, яка буде підтверджена через години або дні (або ніколи не буде підтверджена). Обміркуйте можливість вибору комісії вручну або зачекайте завершення валідації повного блокчейну.</translation>
</message>
<message>
<source>Warning: Fee estimation is currently not possible.</source>
@@ -2994,10 +3071,6 @@ For more information on using this console, type %6.
<translation type="unfinished">Входи…</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Пил:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">Вибрати…</translation>
</message>
@@ -3074,10 +3147,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Копіювати байти</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Копіювати "пил"</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Копіювати решту</translation>
</message>
@@ -3109,7 +3178,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source> from wallet '%1'</source>
- <translation type="unfinished">з гаманця '%1'</translation>
+ <translation type="unfinished"> з гаманця '%1'</translation>
</message>
<message>
<source>%1 to '%2'</source>
@@ -3221,7 +3290,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Watch-only balance:</source>
- <translation type="unfinished">Баланс "тільки перегляд":</translation>
+ <translation type="unfinished">Баланс "тільки для перегляду":</translation>
</message>
<message>
<source>The recipient address is not valid. Please recheck.</source>
@@ -3581,7 +3650,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>watch-only</source>
- <translation type="unfinished">тільки перегляд</translation>
+ <translation type="unfinished">тільки для перегляду</translation>
</message>
<message>
<source>label</source>
@@ -3649,7 +3718,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source> (Certificate was not verified)</source>
- <translation type="unfinished">(Сертифікат не підтверджено)</translation>
+ <translation type="unfinished"> (Сертифікат не підтверджено)</translation>
</message>
<message>
<source>Merchant</source>
@@ -3657,7 +3726,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source>
- <translation type="unfinished">Згенеровані монети стануть доступні для використання після %1 підтверджень. Коли ви згенерували цей блок, його було відправлено в мережу для приєднання до блокчейна. Якщо блок не буде додано до блокчейна, його статус зміниться на «не підтверджено», і згенеровані монети неможливо буде витратити. Таке часом трапляється, якщо хтось згенерував інший блок на декілька секунд раніше.</translation>
+ <translation type="unfinished">Згенеровані монети стануть доступні для використання після %1 підтверджень. Коли ви згенерували цей блок, його було відправлено в мережу для приєднання до блокчейну. Якщо блок не буде додано до блокчейну, його статус зміниться на «не підтверджено», і згенеровані монети неможливо буде витратити. Таке часом трапляється, якщо хтось згенерував інший блок на декілька секунд раніше.</translation>
</message>
<message>
<source>Debug information</source>
@@ -3750,16 +3819,12 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Відправлені на</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Відправлено собі</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Добуті</translation>
</message>
<message>
<source>watch-only</source>
- <translation type="unfinished">тільки перегляд</translation>
+ <translation type="unfinished">тільки для перегляду</translation>
</message>
<message>
<source>(n/a)</source>
@@ -3783,7 +3848,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Whether or not a watch-only address is involved in this transaction.</source>
- <translation type="unfinished">Чи було залучено адресу "тільки перегляд" в цій транзакції.</translation>
+ <translation type="unfinished">Чи було залучено адресу "тільки для перегляду" в цій транзакції.</translation>
</message>
<message>
<source>User-defined intent/purpose of the transaction.</source>
@@ -3829,10 +3894,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">Відправлені на</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Відправлені собі</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Добуті</translation>
</message>
@@ -3912,7 +3973,7 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
</message>
<message>
<source>Watch-only</source>
- <translation type="unfinished">Тільки перегляд</translation>
+ <translation type="unfinished">Тільки для перегляду</translation>
</message>
<message>
<source>Date</source>
@@ -4118,6 +4179,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s пошкоджено. Спробуйте скористатися інструментом гаманця bitcoin-wallet для виправлення або відновлення резервної копії.</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">Не вдалося перевірити стан знімка -assumeutxo для %s. Це вказує на проблему з обладнанням, або на помилку в програмному забезпеченні, або на неправильну модифікацію програми, яка дозволила завантажити неправильний знімок. Внаслідок цього вузол вимкнеться та припинить використовувати будь-який стан, побудований на знімку, скидаючи висоту блокчейну з %d на %d. При наступному запуску вузол буде продовжувати синхронізацію з %d, не використовуючи жодних даних зі знімка. Повідомте про цей випадок %s, включаючи інформацію про те, як знімок було отримано. Неправильний знімок стану блокчейну залишиться на диску у випадку, якщо він буде корисний при діагностиці проблеми, що викликала цю помилку.</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s прохання прослухати на порту %u . Цей порт вважається «поганим» і тому навряд чи до нього підключиться який-небудь бенкет. Перегляньте doc/p2p-bad-ports.md для отримання детальної інформації та повного списку.</translation>
</message>
@@ -4131,7 +4196,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Cannot upgrade a non HD split wallet from version %i to version %i without upgrading to support pre-split keypool. Please use version %i or no version specified.</source>
- <translation type="unfinished">Не вдалося оновити розділений не-HD гаманець з версії %i до версії %i без оновлення для підтримки попередньо розділеного пула ключів. Використовуйте версію %i або не вказуйте версію.</translation>
+ <translation type="unfinished">Неможливо оновити розділений не-HD гаманець з версії %i до версії %i без оновлення для підтримки попередньо розділеного пула ключів. Використовуйте версію %i або не вказуйте версію.</translation>
</message>
<message>
<source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
@@ -4146,10 +4211,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Помилка завантаження гаманця. Гаманець вимагає завантаження блоків, і програмне забезпечення в даний час не підтримує завантаження гаманців, тоді як блоки завантажуються з ладу при використанні знімків assumeutxo. Гаманець повинен мати можливість успішно завантажуватися після того, як синхронізація вузлів досягне висоти %s</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">Помилка читання %s! Всі ключі зчитано правильно, але записи в адресній книзі, або дані транзакцій можуть бути відсутніми чи невірними.</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">Помилка читання %s! Дані транзакцій можуть бути відсутніми чи невірними. Повторне сканування гаманця.</translation>
</message>
@@ -4207,17 +4268,21 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Prune configured below the minimum of %d MiB. Please use a higher number.</source>
- <translation type="unfinished">Встановлений розмір скороченого блокчейна є замалим (меншим за %d МіБ). Використовуйте більший розмір.</translation>
+ <translation type="unfinished">Встановлений розмір скороченого блокчейну є замалим (меншим за %d МіБ). Використовуйте більший розмір.</translation>
</message>
<message>
<source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
- <translation type="unfinished">Режим скороченого блокчейна несумісний з -reindex-chainstate. Використовуйте натомість повний -reindex.</translation>
+ <translation type="unfinished">Режим скороченого блокчейну несумісний з -reindex-chainstate. Використовуйте натомість повний -reindex.</translation>
</message>
<message>
<source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
<translation type="unfinished">Скорочений блокчейн: остання синхронізація гаманця виходить за межі скорочених даних. Потрібно перезапустити з -reindex (заново завантажити весь блокчейн, якщо використовується скорочення)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">Не вдалося перейменувати '%s' -&gt; '%s'. Слід вирішити це, перемістивши або видаливши неправильний каталог знімків %sвручну, інакше ця помилка станеться при наступному запуску.</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: Невідома версія схеми гаманця %d. Підтримується лише версія %d</translation>
</message>
@@ -4226,10 +4291,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Схоже, що база даних блоків містить блок з майбутнього. Це може статися із-за некоректно встановленої дати та/або часу. Перебудовуйте базу даних блоків лише тоді, коли ви переконані, що встановлено правильну дату і час</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">База даних індексу блоків містить 'txindex', що не підтримується. Щоб звільнити місце на диску, запустить повний -reindex, або ігноруйте цю помилку. Це повідомлення більше не відображатиметься.</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">Залишок від суми транзакції зі сплатою комісії занадто малий</translation>
</message>
@@ -4266,14 +4327,22 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Вказано невідомий формат "%s" файлу гаманця. Укажіть "bdb" або "sqlite".</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">Непідтримуваний рівень журналювання для категорії %1$s=%2$s. Очікуване значення %1$s=&lt;category&gt;:&lt;loglevel&gt;. Припустимі категорії: %3$s. Припустимі рівні журналювання: %4$s.</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
- <translation type="unfinished">Виявлено несумісний формат бази даних стану блокчейна. Перезапустіть з -reindex-chainstate. Це перебудує базу даних стану блокчейна.</translation>
+ <translation type="unfinished">Виявлено несумісний формат бази даних стану блокчейну. Перезапустіть з -reindex-chainstate. Це перебудує базу даних стану блокчейну.</translation>
</message>
<message>
<source>Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
<translation type="unfinished">Гаманець успішно створено. Підтримка гаманців застарілого типу припиняється, і можливість створення та відкриття таких гаманців буде видалена.</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">Гаманець успішно завантажено. Гаманці застарілого типу виводяться з обігу, і підтримка створення та відкриття таких гаманців буде припинена у майбутньому. Застарілі гаманці можна перенести до гаманця з підтримкою дескрипторів за допомогою команди migratewallet.</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">Попередження: Формат "%s" файлу дампа гаманця не збігається з форматом "%s", що зазначений у командному рядку.</translation>
</message>
@@ -4291,7 +4360,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source>
- <translation type="unfinished">Вам необхідно перебудувати базу даних з використанням -reindex для завантаження повного блокчейна.</translation>
+ <translation type="unfinished">Вам необхідно перебудувати базу даних з використанням -reindex для завантаження повного блокчейну.</translation>
</message>
<message>
<source>%s is set very high!</source>
@@ -4311,49 +4380,33 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
- <translation type="unfinished">Не вдалося встановити для параметра -forcednsseed значення "true", коли параметр -dnsseed має значення "false".</translation>
+ <translation type="unfinished">Неможливо встановити для параметра -forcednsseed значення "true", коли параметр -dnsseed має значення "false".</translation>
</message>
<message>
<source>Cannot set -peerblockfilters without -blockfilterindex.</source>
- <translation type="unfinished">Не вдалося встановити -peerblockfilters без -blockfilterindex.</translation>
+ <translation type="unfinished">Неможливо встановити -peerblockfilters без -blockfilterindex.</translation>
</message>
<message>
<source>Cannot write to data directory '%s'; check permissions.</source>
<translation type="unfinished">Неможливо записати до каталогу даних '%s'; перевірте дозвіли.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Оновлення -txindex, що було почате попередньою версією, не вдалося завершити. Перезапустіть попередню версію або виконайте повний -reindex.</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s Не вдалося перевірити стан знімка -assumeutxo. Це вказує на проблему з обладнанням, помилку в програмному забезпеченні або некоректну модифікацію програмного забезпечення, що дозволила завантажити недійсний знімок. В результаті цього клієнт буде вимкнено та припинить використовувати будь-який стан, який було побудовано на основі знімка, скидаючи висоту блокчейна від %d до %d. Після наступного запуску клієнт продовжить синхронізацію з %d, не використовуючи будь-які дані зі знімка. Будь ласка, повідомте %s про цей випадок та вкажіть, як ви отримали знімок. Недійсний знімок повинен залишатися на диску на випадок, якщо він буде корисним при діагностиці проблеми, що призвела до цієї помилки.</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">Встановлено дуже велике значення %s! Такі великі комісії можуть бути сплачені окремою транзакцією.</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Параметр -reindex-chainstate несумісний з -blockfilterindex. Тимчасово вимкніть blockfilterindex під час використання -reindex-chainstate, або замінить -reindex-chainstate на -reindex для повної перебудови всіх індексів.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Параметр -reindex-chainstate несумісний з -coinstatsindex. Тимчасово вимкніть coinstatsindex під час використання -reindex-chainstate, або замінить -reindex-chainstate на -reindex для повної перебудови всіх індексів.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">Параметр -reindex-chainstate несумісний з -txindex. Тимчасово вимкніть txindex під час використання -reindex-chainstate, або замінить -reindex-chainstate на -reindex для повної перебудови всіх індексів.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
- <translation type="unfinished">Не вдалося встановити визначені з'єднання і одночасно використовувати addrman для встановлення вихідних з'єднань.</translation>
+ <translation type="unfinished">Неможливо встановити визначені з'єднання та одночасно використовувати addrman для встановлення вихідних з'єднань.</translation>
</message>
<message>
<source>Error loading %s: External signer wallet being loaded without external signer support compiled</source>
<translation type="unfinished">Помилка завантаження %s: Завантаження гаманця зі зовнішнім підписувачем, але скомпільовано без підтримки зовнішнього підписування</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">Помилка читання %s! Всі записи вірно зчитані, але дані транзакцій або метадані адрес можуть бути відсутніми або неправильними.</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">Помилка: Дані адресної книги в гаманці не можна ідентифікувати як належні до перенесених гаманців</translation>
</message>
@@ -4366,6 +4419,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">Помилка: Транзакцію %s в гаманці не можна ідентифікувати як належну до перенесених гаманців</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">Не вдалося розрахувати підвищені комісії, оскільки непідтверджені UTXO залежать від величезного кластеру непідтверджених транзакцій.</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">Не вдалося перейменувати недійсний файл peers.dat. Будь ласка, перемістіть його та повторіть спробу </translation>
</message>
@@ -4440,10 +4497,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Непідтримуваний категорійний рівень журналювання -loglevel=%s. Очікується -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Припустимі категорії: %s. Припустимі рівні: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4549,11 +4602,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Could not add watchonly tx to watchonly wallet</source>
- <translation type="unfinished">Помилка: Не вдалося додати транзакцію "тільки перегляд" до гаманця-для-перегляду</translation>
+ <translation type="unfinished">Помилка: Не вдалося додати транзакцію "тільки для перегляду" до гаманця-для-перегляду</translation>
</message>
<message>
<source>Error: Could not delete watchonly transactions</source>
- <translation type="unfinished">Помилка: Не вдалося видалити транзакції "тільки перегляд"</translation>
+ <translation type="unfinished">Помилка: Не вдалося видалити транзакції "тільки для перегляду"</translation>
</message>
<message>
<source>Error: Couldn't create cursor into database</source>
@@ -4569,7 +4622,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Failed to create new watchonly wallet</source>
- <translation type="unfinished">Помилка: Не вдалося створити новий гаманець-для-перегляду</translation>
+ <translation type="unfinished">Помилка: Не вдалося створити новий гаманець "тільки для перегляду"</translation>
</message>
<message>
<source>Error: Got key that was not hex: %s</source>
@@ -4593,7 +4646,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Not all watchonly txs could be deleted</source>
- <translation type="unfinished">Помилка: Не всі транзакції "тільки перегляд" вдалося видалити</translation>
+ <translation type="unfinished">Помилка: Не всі транзакції "тільки для перегляду" вдалося видалити</translation>
</message>
<message>
<source>Error: This wallet already uses SQLite</source>
@@ -4621,7 +4674,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Unable to remove watchonly address book data</source>
- <translation type="unfinished">Помилка: Не вдалося видалити дані "тільки перегляд" з адресної книги</translation>
+ <translation type="unfinished">Помилка: Не вдалося видалити дані "тільки для перегляду" з адресної книги</translation>
</message>
<message>
<source>Error: Unable to write record to new wallet</source>
@@ -4636,6 +4689,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">Помилка повторного сканування гаманця під час ініціалізації</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">Не вдалося запустити індекси, завершення роботи.</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">Не вдалося перевірити базу даних</translation>
</message>
@@ -4757,15 +4814,15 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Not solvable pre-selected input %s</source>
- <translation type="unfinished">Не знайдено попередньо вибраних вхідних даних %s</translation>
+ <translation type="unfinished">Неспроможний попередньо вибраний вхід %s</translation>
</message>
<message>
<source>Prune cannot be configured with a negative value.</source>
- <translation type="unfinished">Розмір скороченого блокчейна не може бути від'ємним.</translation>
+ <translation type="unfinished">Розмір скороченого блокчейну не може бути від'ємним.</translation>
</message>
<message>
<source>Prune mode is incompatible with -txindex.</source>
- <translation type="unfinished">Режим скороченого блокчейна несумісний з -txindex.</translation>
+ <translation type="unfinished">Режим скороченого блокчейну несумісний з -txindex.</translation>
</message>
<message>
<source>Pruning blockstore…</source>
@@ -4952,8 +5009,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">Активовані невідомі нові правила (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Непідтримуваний глобальний рівень журналювання -loglevel=%s. Припустимі значення: %s.</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">Непідтримуваний глобальний рівень журналювання %s=%s. Припустимі значення: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">acceptstalefeeestimates не підтримується для %s блокчейну.</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_ur.ts b/src/qt/locale/bitcoin_ur.ts
index 6bd87e672b..af155383d5 100644
--- a/src/qt/locale/bitcoin_ur.ts
+++ b/src/qt/locale/bitcoin_ur.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">چننا</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">پتے ارسال کیے جارہے ہیں</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">پتے موصول ہورہے ہیں</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">یہ آپ کے ادائیگی بھیجنے کے لئے بٹ کوائن ایڈریس ہیں.سکے بھیجنے سے پہلے ہمیشہ رقم اور وصول کنندہ پتہ چیک کریں۔</translation>
</message>
@@ -227,6 +219,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">والیٹ کا پاسفریز کامیابی کے ساتھ تبدیل کردیا گیا تھا۔</translation>
</message>
<message>
+ <source>Passphrase change failed</source>
+ <translation type="unfinished">پاس فریز کی تبدیلی ناکام ہوگئی</translation>
+ </message>
+ <message>
+ <source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
+ <translation type="unfinished">بٹوے کے ڈکرپشن کے لیے درج کیا گیا پرانا پاس فریز غلط ہے۔ اس میں ایک خالی کریکٹر ہے (یعنی - ایک صفر بائٹ)۔ اگر پاس فریز 25.0 سے پہلے اس سافٹ ویئر کے ورژن کے ساتھ سیٹ کیا گیا تھا، تو براہ کرم صرف حروف کے ساتھ دوبارہ کوشش کریں — لیکن شامل نہیں — پہلے خالی کریکٹر۔</translation>
+ </message>
+ <message>
<source>Warning: The Caps Lock key is on!</source>
<translation type="unfinished">انتباہ: کیپس لاک کی آن ہے!</translation>
</message>
@@ -774,10 +774,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">فیس:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">نہ ہونے کے برابر</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">فیس کے بعد:</translation>
</message>
@@ -862,10 +858,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">بائٹس کاپی کریں</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">باقی شدہ کاپی کریں</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">تبدیلی کاپی کریں</translation>
</message>
@@ -874,18 +866,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">مقفل'%1</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">جی ہاں</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">نہیں</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">یہ لیبل سرخ ہو جاتا ہے اگر کوئی وصول کنندہ موجودہ کم سے کم مقرر کردہ حد سے کم رقم وصول کرتا ہے۔</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">مختلف ہو سکتے ہیں%1 +/- ساتوشی فی ان پٹ۔</translation>
</message>
@@ -1009,14 +989,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">خالی والیٹ بنائیں</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">ScriptPubKeys کے انتظام کے لیے وضاحت کنندگان کا استعمال کریں۔</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">وضاحتی والیٹ</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">بیرونی دستخط کرنے والا آلہ استعمال کریں جیسے ہارڈ ویئر والیٹ۔ پہلے والیٹ کی ترجیحات میں بیرونی دستخط کنندہ اسکرپٹ کو ترتیب دیں۔</translation>
</message>
@@ -1029,10 +1001,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">بنائیں</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished"> SQliteسپورٹ کے بغیر مرتب کیا گیا (ڈسکرپٹر والیٹس کے لیے درکار)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">بیرونی دستخطی معاونت کے بغیر مرتب کیا گیا (بیرونی دستخط کے لیے درکار)</translation>
@@ -1950,10 +1918,6 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">ایک ساتھ متعدد وصول کنندگان کو بھیجیں۔</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">نہ ہونے کے برابر</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">منتخب کریں…</translation>
</message>
@@ -1998,10 +1962,6 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">بائٹس کاپی کریں</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">باقی شدہ کاپی کریں</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">تبدیلی کاپی کریں</translation>
</message>
diff --git a/src/qt/locale/bitcoin_uz.ts b/src/qt/locale/bitcoin_uz.ts
index e23476fcff..2e97e96d43 100644
--- a/src/qt/locale/bitcoin_uz.ts
+++ b/src/qt/locale/bitcoin_uz.ts
@@ -54,14 +54,6 @@
<translation type="unfinished">tanlamoq</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Yuboriladigan manzillar</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Qabul qilinadigan manzillar</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Quyidagilar to'lovlarni yuborish uchun Bitcoin manzillaringizdir. Har doim yuborishdan oldin yuborilayotgan tangalar sonini va qabul qiluvchi manzilni tekshirib ko'ring.</translation>
</message>
@@ -740,7 +732,8 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Date: %1
</source>
- <translation type="unfinished">Sana: %1</translation>
+ <translation type="unfinished">Sana: %1
+</translation>
</message>
<message>
<source>Amount: %1
@@ -774,7 +767,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Sent transaction</source>
- <translation type="unfinished">Yuborilgan tranzaksiya</translation>
+ <translation type="unfinished">Жўнатилган операция</translation>
</message>
<message>
<source>Incoming transaction</source>
@@ -782,7 +775,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
- <translation type="unfinished">HD kalit yaratish &lt;b&gt;imkonsiz&lt;/b&gt;</translation>
+ <translation type="unfinished">HD kalit yaratish &lt;b&gt;yoqilgan&lt;/b&gt;</translation>
</message>
<message>
<source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
@@ -794,11 +787,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
- <translation type="unfinished">Hamyon &lt;b&gt;shifrlangan&lt;/b&gt; va hozircha &lt;b&gt;ochiq&lt;/b&gt;</translation>
+ <translation type="unfinished">Ҳамён &lt;b&gt;кодланган&lt;/b&gt; ва вақтинча &lt;b&gt;қулфдан чиқарилган&lt;/b&gt;</translation>
</message>
<message>
<source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;locked&lt;/b&gt;</source>
- <translation type="unfinished">Hamyon &lt;b&gt;shifrlangan&lt;/b&gt; va hozirda&lt;b&gt;qulflangan&lt;/b&gt;</translation>
+ <translation type="unfinished">Ҳамён &lt;b&gt;кодланган&lt;/b&gt; ва вақтинча &lt;b&gt;қулфланган&lt;/b&gt;</translation>
</message>
<message>
<source>Original message:</source>
@@ -835,10 +828,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Солиқ:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Ахлат қутиси:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">To'lovdan keyin:</translation>
</message>
@@ -927,36 +916,20 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Нусха байти</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">'Dust' larni nusxalash</translation>
- </message>
- <message>
<source>Copy change</source>
- <translation type="unfinished">Нусха қайтими</translation>
+ <translation type="unfinished">O'zgarishni nusxalash</translation>
</message>
<message>
<source>(%1 locked)</source>
<translation type="unfinished">(%1 qulflangan)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ha</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">yo'q</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Agar qabul qiluvchi joriy 'dust' chegarasidan kichikroq miqdor olsa, bu yorliq qizil rangga aylanadi</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Har bir kiruvchi +/- %1 satoshiga farq qilishi mumkin.</translation>
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(Yorliqlar mavjud emas)</translation>
+ <translation type="unfinished">(Ёрлиқ мавжуд эмас)</translation>
</message>
<message>
<source>change from %1 (%2)</source>
@@ -1022,7 +995,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Hamyonni ochish</translation>
+ <translation type="unfinished">Ochiq hamyon</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -1096,14 +1069,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Bo'sh hamyon yaratish</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">scriptPubKey yaratishda izohlovchidan foydalanish</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Izohlovchi hamyon</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Uskuna hamyoni kabi tashqi signing qurilmasidan foydalaning. Avval hamyon sozlamalarida tashqi signer skriptini sozlang.</translation>
</message>
@@ -1116,10 +1081,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Yaratmoq</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Sqlite yordamisiz tuzilgan (deskriptor hamyonlari uchun talab qilinadi)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Tashqi signing yordamisiz tuzilgan (tashqi signing uchun zarur)</translation>
@@ -1595,7 +1556,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Error</source>
- <translation type="unfinished">Xatolik</translation>
+ <translation type="unfinished">Хатолик</translation>
</message>
<message>
<source>This change would require a client restart.</source>
@@ -1680,6 +1641,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>PSBTOperationsDialog</name>
<message>
+ <source>own address</source>
+ <translation type="unfinished">ўз манзили</translation>
+ </message>
+ <message>
<source>or</source>
<translation type="unfinished">ёки</translation>
</message>
@@ -1816,7 +1781,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Last block time</source>
- <translation type="unfinished">Oxirgi bloklash vaqti</translation>
+ <translation type="unfinished">Сўнгги блок вақти</translation>
</message>
<message>
<source>&amp;Open</source>
@@ -1948,7 +1913,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Could not unlock wallet.</source>
- <translation type="unfinished">Hamyonni ochish imkonsiz.</translation>
+ <translation type="unfinished">Ҳамён қулфдан чиқмади.</translation>
</message>
</context>
<context>
@@ -1994,7 +1959,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(Yorliqlar mavjud emas)</translation>
+ <translation type="unfinished">(Ёрлиқ мавжуд эмас)</translation>
</message>
<message>
<source>(no message)</source>
@@ -2076,10 +2041,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Шаклнинг барча майдончаларини тозалаш</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Ахлат қутиси:</translation>
- </message>
- <message>
<source>Clear &amp;All</source>
<translation type="unfinished">Барчасини &amp; Тозалаш</translation>
</message>
@@ -2116,10 +2077,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Нусха байти</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">'Dust' larni nusxalash</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Нусха қайтими</translation>
</message>
@@ -2160,7 +2117,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(Yorliqlar mavjud emas)</translation>
+ <translation type="unfinished">(Ёрлиқ мавжуд эмас)</translation>
</message>
</context>
<context>
@@ -2359,10 +2316,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Жўнатиш</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Ўзингизга тўлов</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Фойда</translation>
</message>
@@ -2372,7 +2325,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>(no label)</source>
- <translation type="unfinished">(Yorliqlar mavjud emas)</translation>
+ <translation type="unfinished">(Ёрлиқ мавжуд эмас)</translation>
</message>
<message>
<source>Transaction status. Hover over this field to show number of confirmations.</source>
@@ -2426,10 +2379,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Жўнатиш</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Ўзингизга</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Фойда</translation>
</message>
@@ -2488,7 +2437,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Exporting Failed</source>
- <translation type="unfinished">Eksport qilish amalga oshmadi</translation>
+ <translation type="unfinished">Экспорт қилиб бўлмади</translation>
</message>
<message>
<source>The transaction history was successfully saved to %1.</source>
@@ -2511,7 +2460,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Error</source>
- <translation type="unfinished">Xatolik</translation>
+ <translation type="unfinished">Хатолик</translation>
</message>
</context>
<context>
diff --git a/src/qt/locale/bitcoin_uz@Cyrl.ts b/src/qt/locale/bitcoin_uz@Cyrl.ts
index b9dbc2ee65..f335cb39ab 100644
--- a/src/qt/locale/bitcoin_uz@Cyrl.ts
+++ b/src/qt/locale/bitcoin_uz@Cyrl.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Танлаш</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Жўнатиладиган манзиллар</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Қабул қилинадиган манзиллар</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Улар тўловларни жўнатиш учун сизнинг Bitcoin манзилларингиз. Доимо тангаларни жўнатишдан олдин сумма ва қабул қилувчи манзилни текшириб кўринг. </translation>
</message>
@@ -745,7 +737,8 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Date: %1
</source>
- <translation type="unfinished">Sana: %1</translation>
+ <translation type="unfinished">Sana: %1
+</translation>
</message>
<message>
<source>Amount: %1
@@ -787,7 +780,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
- <translation type="unfinished">HD kalit yaratish &lt;b&gt;imkonsiz&lt;/b&gt;</translation>
+ <translation type="unfinished">HD kalit yaratish &lt;b&gt;yoqilgan&lt;/b&gt;</translation>
</message>
<message>
<source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
@@ -840,10 +833,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Солиқ:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Ахлат қутиси:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">Солиқдан сўнг:</translation>
</message>
@@ -932,10 +921,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Нусха байти</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Нусха чангги</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Нусха қайтими</translation>
</message>
@@ -944,18 +929,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1 қулфланган)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ҳа</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">йўқ</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Agar qabul qiluvchi joriy 'dust' chegarasidan kichikroq miqdor olsa, bu yorliq qizil rangga aylanadi</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Ҳар бир кирим +/- %1 сатоши(лар) билан ўзгариши мумкин.</translation>
</message>
@@ -1027,7 +1000,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">Hamyonni ochish</translation>
+ <translation type="unfinished">Ochiq hamyon</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -1101,14 +1074,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Bo'sh hamyon yaratish</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">scriptPubKey yaratishda izohlovchidan foydalanish</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Izohlovchi hamyon</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Uskuna hamyoni kabi tashqi signing qurilmasidan foydalaning. Avval hamyon sozlamalarida tashqi signer skriptini sozlang.</translation>
</message>
@@ -1121,10 +1086,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Yaratmoq</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Sqlite yordamisiz tuzilgan (deskriptor hamyonlari uchun talab qilinadi)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Tashqi signing yordamisiz tuzilgan (tashqi signing uchun zarur)</translation>
@@ -1685,6 +1646,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>PSBTOperationsDialog</name>
<message>
+ <source>own address</source>
+ <translation type="unfinished">ўз манзили</translation>
+ </message>
+ <message>
<source>or</source>
<translation type="unfinished">ёки</translation>
</message>
@@ -2081,10 +2046,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Шаклнинг барча майдончаларини тозалаш</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">Ахлат қутиси:</translation>
- </message>
- <message>
<source>Clear &amp;All</source>
<translation type="unfinished">Барчасини &amp; Тозалаш</translation>
</message>
@@ -2121,10 +2082,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Нусха байти</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">Нусха чангги</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">Нусха қайтими</translation>
</message>
@@ -2364,10 +2321,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Жўнатиш</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Ўзингизга тўлов</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Фойда</translation>
</message>
@@ -2431,10 +2384,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">Жўнатиш</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Ўзингизга</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Фойда</translation>
</message>
diff --git a/src/qt/locale/bitcoin_uz@Latn.ts b/src/qt/locale/bitcoin_uz@Latn.ts
index 7b3b660a69..823b21be06 100644
--- a/src/qt/locale/bitcoin_uz@Latn.ts
+++ b/src/qt/locale/bitcoin_uz@Latn.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">&amp;Tanlash</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Manzillarni yuborish</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Qabul qiluvchi manzillari</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">Quyida to'lovlarni yuborish uchun Bitcoin manzillaringiz. Coinlarni yuborishdan oldin har doim miqdor va qabul qilish manzilini tekshiring.</translation>
</message>
@@ -929,10 +921,6 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
<translation type="unfinished">Baytlarni nusxalash</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">'Dust' larni nusxalash</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">O'zgarishni nusxalash</translation>
</message>
@@ -941,18 +929,6 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
<translation type="unfinished">(%1 qulflangan)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">ha</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">yo'q</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">Agar qabul qiluvchi joriy 'dust' chegarasidan kichikroq miqdor olsa, bu yorliq qizil rangga aylanadi</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">Har bir kiruvchi +/- %1 satoshiga farq qilishi mumkin.</translation>
</message>
@@ -1098,14 +1074,6 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
<translation type="unfinished">Bo'sh hamyon yaratish</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">scriptPubKey yaratishda izohlovchidan foydalanish</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">Deskriptor hamyon</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Uskuna hamyoni kabi tashqi signing qurilmasidan foydalaning. Avval hamyon sozlamalarida tashqi signer skriptini sozlang.</translation>
</message>
@@ -1118,10 +1086,6 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
<translation type="unfinished">Yaratmoq</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">Sqlite yordamisiz tuzilgan (deskriptor hamyonlari uchun talab qilinadi)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">Tashqi signing yordamisiz tuzilgan (tashqi signing uchun zarur)</translation>
@@ -1597,7 +1561,7 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
</message>
<message>
<source>Error</source>
- <translation type="unfinished">Xatolik</translation>
+ <translation type="unfinished">Хатолик</translation>
</message>
<message>
<source>This change would require a client restart.</source>
@@ -1682,6 +1646,10 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
<context>
<name>PSBTOperationsDialog</name>
<message>
+ <source>own address</source>
+ <translation type="unfinished">ўз манзили</translation>
+ </message>
+ <message>
<source>or</source>
<translation type="unfinished">ёки</translation>
</message>
@@ -1818,7 +1786,7 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
</message>
<message>
<source>Last block time</source>
- <translation type="unfinished">Oxirgi bloklash vaqti</translation>
+ <translation type="unfinished">Сўнгги блок вақти</translation>
</message>
<message>
<source>&amp;Open</source>
@@ -1950,7 +1918,7 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
</message>
<message>
<source>Could not unlock wallet.</source>
- <translation type="unfinished">Hamyonni ochish imkonsiz.</translation>
+ <translation type="unfinished">Ҳамён қулфдан чиқмади.</translation>
</message>
</context>
<context>
@@ -2114,10 +2082,6 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
<translation type="unfinished">Baytlarni nusxalash</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">'Dust' larni nusxalash</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">O'zgarishni nusxalash</translation>
</message>
@@ -2357,10 +2321,6 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
<translation type="unfinished">Жўнатиш</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">Ўзингизга тўлов</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Фойда</translation>
</message>
@@ -2424,10 +2384,6 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
<translation type="unfinished">Жўнатиш</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">Ўзингизга</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">Фойда</translation>
</message>
@@ -2509,7 +2465,7 @@ Kirish faqat 'legacy' turidagi manzillar uchun.</translation>
</message>
<message>
<source>Error</source>
- <translation type="unfinished">Xatolik</translation>
+ <translation type="unfinished">Хатолик</translation>
</message>
</context>
<context>
diff --git a/src/qt/locale/bitcoin_vi.ts b/src/qt/locale/bitcoin_vi.ts
index 083fc4a8c7..4b68cca0b4 100644
--- a/src/qt/locale/bitcoin_vi.ts
+++ b/src/qt/locale/bitcoin_vi.ts
@@ -22,6 +22,10 @@
<translation type="unfinished">&amp;Sao chép</translation>
</message>
<message>
+ <source>C&amp;lose</source>
+ <translation type="unfinished">Đ&amp;óng</translation>
+ </message>
+ <message>
<source>Delete the currently selected address from the list</source>
<translation type="unfinished">Xoá địa chỉ được chọn khỏi danh sách</translation>
</message>
@@ -30,16 +34,24 @@
<translation type="unfinished">Nhập địa chỉ hoặc nhãn để tìm kiếm</translation>
</message>
<message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Xuất dữ liệu ở thẻ hiện tại ra tập tin.</translation>
+ </message>
+ <message>
<source>&amp;Export</source>
<translation type="unfinished">&amp;Xuất</translation>
</message>
<message>
+ <source>&amp;Delete</source>
+ <translation type="unfinished">&amp;Xoá</translation>
+ </message>
+ <message>
<source>Choose the address to send coins to</source>
<translation type="unfinished">Chọn địa chỉ để gửi coin đến</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">Đang gửi địa chỉ</translation>
+ <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
+ <translation type="unfinished">Các địa chỉ này là các địa chỉ Bitcoin dùng để thanh toán.Luôn luôn kiểm tra số dư và địa chỉ nhận trước khi gởi chuyển tiền ảo. </translation>
</message>
<message>
<source>&amp;Copy Address</source>
@@ -495,6 +507,14 @@
<translation type="unfinished">Hiển thị %1 tin nhắn hỗ trợ để nhận được danh sách Bitcoin command-line khả dụng</translation>
</message>
<message>
+ <source>&amp;Mask values</source>
+ <translation type="unfinished">&amp;Giá trị mặt nạ</translation>
+ </message>
+ <message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">Che các giá trị trong tab Tổng quan</translation>
+ </message>
+ <message>
<source>default wallet</source>
<translation type="unfinished">ví mặc định</translation>
</message>
@@ -556,6 +576,10 @@
<translation type="unfinished">Tiền đồng bộ hóa Headers (%1%)…</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">Lỗi tạo ví</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">Lỗi: %1</translation>
</message>
@@ -619,6 +643,18 @@
</message>
</context>
<context>
+ <name>OpenWalletActivity</name>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">ví mặc định</translation>
+ </message>
+ <message>
+ <source>Open Wallet</source>
+ <extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
+ <translation type="unfinished">Mớ ví</translation>
+ </message>
+ </context>
+<context>
<name>RestoreWalletActivity</name>
<message>
<source>Restore Wallet</source>
@@ -656,14 +692,14 @@
<source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
<translation type="unfinished">Bạn có chắc chắn muốn đóng ví không &lt;i&gt;%1&lt;/i&gt;?</translation>
</message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">Đóng tất cả ví</translation>
+ </message>
</context>
<context>
<name>CreateWalletDialog</name>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">Sử dụng bộ mô tả để quản lý scriptPubKey</translation>
- </message>
- <message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
<translation type="unfinished">Sử dụng thiết bị ký bên ngoài chẳng hạn như ví phần cứng. Trước tiên, hãy định cấu hình tập lệnh người ký bên ngoài trong tùy chọn ví.</translation>
</message>
@@ -917,10 +953,6 @@
<source>Continue</source>
<translation type="unfinished">Tiếp tục</translation>
</message>
- <message>
- <source>Error</source>
- <translation type="unfinished">Lỗi</translation>
- </message>
</context>
<context>
<name>OptionsModel</name>
@@ -1182,8 +1214,8 @@
<context>
<name>WalletFrame</name>
<message>
- <source>Error</source>
- <translation type="unfinished">Lỗi</translation>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">Tạo một ví mới</translation>
</message>
</context>
<context>
@@ -1193,13 +1225,21 @@
<comment>Fee-bump PSBT saved</comment>
<translation type="unfinished">Đã sao chép vào bảng tạm.</translation>
</message>
- </context>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">ví mặc định</translation>
+ </message>
+</context>
<context>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
<translation type="unfinished">&amp;Xuất</translation>
</message>
+ <message>
+ <source>Export the data in the current tab to a file</source>
+ <translation type="unfinished">Xuất dữ liệu ở thẻ hiện tại ra tập tin.</translation>
+ </message>
</context>
<context>
<name>bitcoin-core</name>
@@ -1216,10 +1256,6 @@
<translation type="unfinished">Chế độ rút gọn không tương thích với -reindex-chainstate. Sử dụng -reindex ở chế độ đầy đủ.</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">Chỉ mục khối db chứa một 'txindex' kế thừa. Để xóa dung lượng ổ đĩa bị chiếm dụng, hãy chạy -reindex đầy đủ, nếu không, hãy bỏ qua lỗi này. Thông báo lỗi này sẽ không được hiển thị lại.</translation>
- </message>
- <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">Tìm thấy định dạng cơ sở dữ liệu trạng thái chuỗi không được hỗ trợ. Vui lòng khỏi động lại với -reindex-chainstate. Việc này sẽ tái thiết lập cơ sở dữ liệu trạng thái chuỗi.</translation>
</message>
@@ -1232,22 +1268,6 @@
<translation type="unfinished">Không thể đặt -forcednsseed thành true khi đặt -dnsseed thành false.</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">Không thể hoàn tất nâng cấp -txindex được bắt đầu bởi phiên bản trước. Khởi động lại với phiên bản trước đó hoặc chạy -reindex đầy đủ.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">reindex-chainstate tùy chọn không tương thích với -blockfilterindex. Vui lòng tạp thời vô hiệu hóa blockfilterindex trong khi sử dụng -reindex-chainstate, hoặc thay thế -reindex-chainstate bởi -reindex để tái thiết lập đẩy đủ tất cả các chỉ số.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">reindex-chainstate tùy chọn không tương thích với -coinstatsindex. Vui lòng tạp thời vô hiệu hóa coinstatsindex trong khi sử dụng -reindex-chainstate, hoặc thay thế -reindex-chainstate bởi -reindex để tái thiết lập đẩy đủ tất cả các chỉ số.</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">reindex-chainstate tùy chọn không tương thích với -txindex. Vui lòng tạp thời vô hiệu hóa txindex trong khi sử dụng -reindex-chainstate, hoặc thay thế -reindex-chainstate bởi -reindex để tái thiết lập đẩy đủ tất cả các chỉ số.</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">Không thể cung cấp các kết nối cụ thể và yêu cầu addrman tìm các kết nối gửi đi cùng một lúc.</translation>
</message>
@@ -1282,10 +1302,6 @@ Vui lòng thử chạy phiên bản phần mềm mới nhất.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">Mức độ ghi chú theo danh mục không được hỗ trợ -loglevel=%s. Kỳ vọng -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Các danh mục hợp lệ: %s. Các giá trị loglevels hợp lệ: %s.</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -1426,10 +1442,6 @@ Không thể khôi phục bản sao lưu của ví.</translation>
<translation type="unfinished">Không thể gỡ ví trước khi chuyển</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">Mức độ ghi chú không được hỗ trợ -loglevel=%s. Các giá trị hợp lệ: %s.</translation>
- </message>
- <message>
<source>Settings file could not be read</source>
<translation type="unfinished">Không thể đọc tệp cài đặt</translation>
</message>
diff --git a/src/qt/locale/bitcoin_yue.ts b/src/qt/locale/bitcoin_yue.ts
index 94f4b5694a..49d8e78609 100644
--- a/src/qt/locale/bitcoin_yue.ts
+++ b/src/qt/locale/bitcoin_yue.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">选择(&amp;H)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">发送地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">收款地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">这些是你的比特币支付地址。在发送之前,一定要核对金额和接收地址。</translation>
</message>
@@ -101,6 +93,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">儲存地址列表到 %1 時發生錯誤。請再試一次。</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">导出失败</translation>
</message>
@@ -629,8 +629,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">关闭所有钱包</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">迁移一个钱包</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
+ <translation type="unfinished">显示 %1 帮助信息,获取可用命令行选项列表</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -696,7 +704,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ <numerusform />
</translation>
</message>
<message>
@@ -724,6 +732,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">預先同步標頭(%1%)</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">创建钱包时出错</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">无法创建新钱包,软件编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">錯誤: %1</translation>
</message>
@@ -794,10 +810,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">手动选币</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">計費後金額:</translation>
</message>
@@ -858,10 +870,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -870,14 +878,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1已锁定)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">當任何一個收款金額小於目前的灰塵金額上限時,文字會變紅色。</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">每个输入可能有 +/- %1 聪 (satoshi) 的误差。</translation>
</message>
@@ -920,6 +920,57 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要迁移钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">迁移钱包将会把这个钱包转换成一个或多个输出描述符钱包。将会需要创建一个新的钱包备份。
+如果这个钱包包含仅观察脚本,将会创建包含那些仅观察脚本的新钱包。
+如果这个钱包包含可解但又未被监视的脚本,将会创建一个不同的钱包以包含那些脚本。
+
+迁移过程开始前将会创建一个钱包备份。备份文件将会被命名为 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然后被保存在该钱包所在目录下。如果迁移过程出错,可以使用“恢复钱包”功能恢复备份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">迁移钱包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功迁移钱包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">仅观察脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 可解但又未被监视的脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">迁移失败</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">迁移成功</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -930,9 +981,13 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">打開錢包警告</translation>
</message>
<message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+ <message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">開啟錢包</translation>
+ <translation type="unfinished">打开钱包</translation>
</message>
</context>
<context>
@@ -969,6 +1024,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Close wallet</source>
<translation type="unfinished">卸载钱包</translation>
</message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">关闭所有钱包</translation>
+ </message>
</context>
<context>
<name>CreateWalletDialog</name>
@@ -977,8 +1036,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">新增錢包</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距离创建您的新钱包只有一步之遥了!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">请指定一个名字,如果需要的话还可以启用高级选项</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">錢包名稱</translation>
+ <translation type="unfinished">钱包名称</translation>
</message>
<message>
<source>Wallet</source>
@@ -1083,10 +1150,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">错误:无法创建指定的数据目录 "%1"</translation>
</message>
<message>
- <source>Error</source>
- <translation type="unfinished">错误</translation>
- </message>
- <message>
<source>Welcome</source>
<translation type="unfinished">欢迎</translation>
</message>
@@ -1431,10 +1494,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">取消</translation>
</message>
<message>
- <source>Error</source>
- <translation type="unfinished">错误</translation>
- </message>
- <message>
<source>The configuration file could not be opened.</source>
<translation type="unfinished">无法打开配置文件。</translation>
</message>
@@ -1764,6 +1823,22 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">选择节点查看详细信息。</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">传输层版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">传输</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">十六进制格式的BIP324会话ID,如果有的话。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">会话ID</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">是否要将交易转发给这个节点。</translation>
</message>
@@ -1886,6 +1961,10 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">Ping 等待</translation>
</message>
<message>
+ <source>Last block time</source>
+ <translation type="unfinished">上一区块时间</translation>
+ </message>
+ <message>
<source>&amp;Open</source>
<translation type="unfinished">打开(&amp;O)</translation>
</message>
@@ -1939,6 +2018,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">出站触须: 短暂,用于测试地址</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">检测中: 节点可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文传输协议</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密传输协议</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">我们选择了用于高带宽转发的节点</translation>
</message>
@@ -2106,10 +2200,6 @@ For more information on using this console, type %6.
<translation type="unfinished">Bech32m (BIP-350) 是对 Bech32 的更新升级,支持它的钱包仍然比较有限。</translation>
</message>
<message>
- <source>Could not unlock wallet.</source>
- <translation type="unfinished">无法解锁钱包。</translation>
- </message>
- <message>
<source>Could not generate new %1 address</source>
<translation type="unfinished">无法生成新的%1地址</translation>
</message>
@@ -2223,10 +2313,6 @@ For more information on using this console, type %6.
<translation type="unfinished">增加收款人(&amp;R)</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">选择...</translation>
</message>
@@ -2267,10 +2353,6 @@ For more information on using this console, type %6.
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -2684,10 +2766,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">付給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -2743,10 +2821,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -2796,6 +2870,11 @@ For more information on using this console, type %6.
<translation type="unfinished">在 %1中显示</translation>
</message>
<message>
+ <source>Comma separated file</source>
+ <extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
+ <translation type="unfinished">逗號分隔文件</translation>
+ </message>
+ <message>
<source>Watch-only</source>
<translation type="unfinished">只能觀看的</translation>
</message>
@@ -2816,6 +2895,10 @@ For more information on using this console, type %6.
<translation type="unfinished">識別碼</translation>
</message>
<message>
+ <source>Exporting Failed</source>
+ <translation type="unfinished">导出失败</translation>
+ </message>
+ <message>
<source>There was an error trying to save the transaction history to %1.</source>
<translation type="unfinished">儲存交易記錄到 %1 時發生錯誤。</translation>
</message>
@@ -2843,8 +2926,8 @@ Go to File &gt; Open Wallet to load a wallet.
- 或者 -</translation>
</message>
<message>
- <source>Error</source>
- <translation type="unfinished">错误</translation>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">创建一个新的钱包</translation>
</message>
<message>
<source>Unable to decode PSBT from clipboard (invalid base64)</source>
@@ -2903,12 +2986,16 @@ Go to File &gt; Open Wallet to load a wallet.
<source>Could not commit transaction</source>
<translation type="unfinished">沒辦法提交交易</translation>
</message>
- </context>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+</context>
<context>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">&amp;匯出</translation>
+ <translation type="unfinished">导出(E)</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
@@ -2951,6 +3038,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s 開發人員</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
</message>
@@ -3011,6 +3102,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">修剪:上次同步钱包的位置已经超出(落后于)现有修剪后数据的范围。你需要进行-reindex(对于已经启用修剪节点,就需要重新下载整个区块链)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失败。您需要手动移走或删除无效的快照目录 %s来解决这个问题,不然的话您就会在下一次启动时遇到相同的错误。</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: SQLite钱包schema版本%d未知。只支持%d版本</translation>
</message>
@@ -3019,10 +3114,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">區塊資料庫中有來自未來的區塊。可能是你電腦的日期時間不對。如果確定電腦日期時間沒錯的話,就重建區塊資料庫看看。</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">扣除手續費後的交易金額太少而不能傳送</translation>
</message>
@@ -3055,6 +3146,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">提供了未知的钱包格式 "%s" 。请使用 "bdb" 或 "sqlite" 中的一种。</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支持的类别限定日志等级 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的类别: %3$s 。有效的日志等级: %4$s 。</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">找到了不受支持的 chainstate 数据库格式。请使用 -reindex-chainstate 参数重启。这将会重建 chainstate 数据库。</translation>
</message>
@@ -3063,6 +3158,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">钱包加载成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。可以使用 migratewallet 命令将旧式钱包迁移至输出描述符钱包。</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">警告: 转储文件的钱包格式 "%s" 与命令行指定的格式 "%s" 不符。</translation>
</message>
@@ -3103,30 +3202,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">不能写入到数据目录'%s';请检查文件权限。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上以供诊断问题的原因。</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">在使用地址管理器(addrman)寻找出站连接时,无法同时提供特定的连接。</translation>
</message>
@@ -3135,6 +3214,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">读取 %s 时出错! 所有密钥都被正确读取,但交易数据或地址元数据可能缺失或有误。</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
</message>
@@ -3147,6 +3230,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">计算追加手续费失败,因为未确认UTXO依赖了大量未确认交易的簇集。</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
</message>
@@ -3221,10 +3308,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -3353,6 +3436,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误: 无法写入记录到新钱包</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">无法启动索引,关闭中...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">校验数据库失败</translation>
</message>
@@ -3593,8 +3680,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">在 -onlynet 指定了不明的網路別: '%s'</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上acceptstalefeeestimates 不受支持。</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_zh-Hans.ts b/src/qt/locale/bitcoin_zh-Hans.ts
index 3e924d436e..5327462760 100644
--- a/src/qt/locale/bitcoin_zh-Hans.ts
+++ b/src/qt/locale/bitcoin_zh-Hans.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">选择(&amp;H)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">付款地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">收款地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">您可以给这些比特币地址付款。在付款之前,务必要检查金额和收款地址是否正确。</translation>
</message>
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">尝试保存地址列表到 %1 时发生错误。请再试一次。</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">导出失败</translation>
</message>
@@ -714,8 +714,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">关闭所有钱包</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">迁移一个钱包</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
+ <translation type="unfinished">显示 %1 帮助信息,获取可用命令行选项列表</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -781,7 +789,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform>%n active connection(s) to Bitcoin network.</numerusform>
+ <numerusform>%n 条到比特币网络的活动连接</numerusform>
</translation>
</message>
<message>
@@ -809,6 +817,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">预同步区块头 (%1%)…</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">创建钱包时出错</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">无法创建新钱包,软件编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">错误: %1</translation>
</message>
@@ -915,10 +931,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">费用:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">粉尘:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">加上交易费用后:</translation>
</message>
@@ -1007,10 +1019,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">复制粉尘金额</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">复制找零金额</translation>
</message>
@@ -1019,18 +1027,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1已锁定)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">否</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">当任何一个收款金额小于目前的粉尘金额阈值时,文字会变红色。</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">每个输入可能有 +/- %1 聪 (satoshi) 的误差。</translation>
</message>
@@ -1090,14 +1086,65 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要迁移钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">迁移钱包将会把这个钱包转换成一个或多个输出描述符钱包。将会需要创建一个新的钱包备份。
+如果这个钱包包含仅观察脚本,将会创建包含那些仅观察脚本的新钱包。
+如果这个钱包包含可解但又未被监视的脚本,将会创建一个不同的钱包以包含那些脚本。
+
+迁移过程开始前将会创建一个钱包备份。备份文件将会被命名为 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然后被保存在该钱包所在目录下。如果迁移过程出错,可以使用“恢复钱包”功能恢复备份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">迁移钱包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功迁移钱包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 仅观察脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 可解但又未被监视的脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">迁移失败</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">迁移成功</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
- <translation type="unfinished">打開錢包失敗</translation>
+ <translation type="unfinished">打开钱包失败</translation>
</message>
<message>
<source>Open wallet warning</source>
- <translation type="unfinished">打開錢包警告</translation>
+ <translation type="unfinished">打开钱包警告</translation>
</message>
<message>
<source>default wallet</source>
@@ -1106,7 +1153,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">開啟錢包</translation>
+ <translation type="unfinished">打开钱包</translation>
</message>
<message>
<source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
@@ -1169,19 +1216,27 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<name>CreateWalletDialog</name>
<message>
<source>Create Wallet</source>
- <translation type="unfinished">新增錢包</translation>
+ <translation type="unfinished">创建钱包</translation>
+ </message>
+ <message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距离创建您的新钱包只有一步之遥了!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">请指定一个名字,如果需要的话还可以启用高级选项</translation>
</message>
<message>
<source>Wallet Name</source>
- <translation type="unfinished">錢包名稱</translation>
+ <translation type="unfinished">钱包名称</translation>
</message>
<message>
<source>Wallet</source>
- <translation type="unfinished">錢包</translation>
+ <translation type="unfinished">钱包</translation>
</message>
<message>
<source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
- <translation type="unfinished">加密錢包。 錢包將使用您選擇的密碼進行加密。</translation>
+ <translation type="unfinished">加密钱包。将会使用您指定的密码将钱包加密。</translation>
</message>
<message>
<source>Encrypt Wallet</source>
@@ -1193,7 +1248,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets.</source>
- <translation type="unfinished">禁用此錢包的私鑰。取消了私鑰的錢包將沒有私鑰,並且不能有HD種子或匯入的私鑰。這是只能看的錢包的理想選擇。</translation>
+ <translation type="unfinished">禁用此钱包的私钥。被禁用私钥的钱包将不会含有任何私钥,而且也不能含有HD种子或导入的私钥。作为仅观察钱包,这是比较理想的。</translation>
</message>
<message>
<source>Disable Private Keys</source>
@@ -1201,19 +1256,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time.</source>
- <translation type="unfinished">製作一個空白的錢包。空白錢包最初沒有私鑰或腳本。以後可以匯入私鑰和地址,或者可以設定HD種子。</translation>
+ <translation type="unfinished">创建一个空白的钱包。空白钱包最初不含有任何私钥或脚本。可以以后再导入私钥和地址,或设置HD种子。</translation>
</message>
<message>
<source>Make Blank Wallet</source>
- <translation type="unfinished">製作空白錢包</translation>
- </message>
- <message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">使用输出描述符进行scriptPubKey管理</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">输出描述符钱包</translation>
+ <translation type="unfinished">创建空白钱包</translation>
</message>
<message>
<source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
@@ -1228,10 +1275,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">创建</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
- </message>
- <message>
<source>Compiled without external signing support (required for external signing)</source>
<extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
<translation type="unfinished">编译时未启用外部签名支持 (外部签名需要这个功能)</translation>
@@ -1265,7 +1308,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Edit receiving address</source>
- <translation type="unfinished">編輯接收地址</translation>
+ <translation type="unfinished">编辑收款地址</translation>
</message>
<message>
<source>Edit sending address</source>
@@ -1289,14 +1332,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>New key generation failed.</source>
- <translation type="unfinished">產生新的密鑰失敗了。</translation>
+ <translation type="unfinished">生成新密钥失败。</translation>
</message>
</context>
<context>
<name>FreespaceChecker</name>
<message>
<source>A new data directory will be created.</source>
- <translation type="unfinished">就要產生新的資料目錄。</translation>
+ <translation type="unfinished">一个新的数据目录将被创建。</translation>
</message>
<message>
<source>name</source>
@@ -1304,7 +1347,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Directory already exists. Add %1 if you intend to create a new directory here.</source>
- <translation type="unfinished">已經有這個目錄了。如果你要在裡面造出新的目錄的話,請加上 %1.</translation>
+ <translation type="unfinished">目录已存在。如果您打算在这里创建一个新目录,请添加 %1。</translation>
</message>
<message>
<source>Path already exists, and is not a directory.</source>
@@ -1317,6 +1360,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</context>
<context>
<name>Intro</name>
+ <message>
+ <source>Bitcoin</source>
+ <translation type="unfinished">比特币</translation>
+ </message>
<message numerus="yes">
<source>%n GB of space available</source>
<translation type="unfinished">
@@ -2028,6 +2075,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished"> * 发送 %1 至 %2</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">自己的地址</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">无法计算交易费用或总交易金额。</translation>
</message>
@@ -2300,6 +2351,22 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">选择节点查看详细信息。</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">传输层版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">传输</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">十六进制格式的BIP324会话ID,如果有的话。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">会话ID</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">版本</translation>
</message>
@@ -2529,6 +2596,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">出站地址取回: 短暂,用于请求取回地址</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">检测中: 节点可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文传输协议</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密传输协议</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">我们选择了用于高带宽转发的节点</translation>
</message>
@@ -2945,10 +3027,6 @@ For more information on using this console, type %6.
<translation type="unfinished">输入...</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">粉尘:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">选择...</translation>
</message>
@@ -3025,10 +3103,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">复制粉尘金额</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">复制找零金额</translation>
</message>
@@ -3680,10 +3754,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">支付给自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">挖矿所得</translation>
</message>
@@ -3759,10 +3829,6 @@ Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satos
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">给自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">挖矿所得</translation>
</message>
@@ -4044,6 +4110,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s损坏。请尝试用bitcoin-wallet钱包工具来对其进行急救。或者用一个备份进行还原。</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
</message>
@@ -4072,10 +4142,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">加载钱包时出错。需要下载区块才能加载钱包,而且在使用assumeutxo快照时,下载区块是不按顺序的,这个时候软件不支持加载钱包。在节点同步至高度%s之后就应该可以加载钱包了。</translation>
</message>
<message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">读取 %s 时发生错误!所有的密钥都可以正确读取,但是交易记录或地址簿数据可能已经丢失或出错。</translation>
- </message>
- <message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
<translation type="unfinished">读取%s出错!交易数据可能丢失或有误。重新扫描钱包中。</translation>
</message>
@@ -4144,16 +4210,16 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">修剪:上次同步钱包的位置已经超出(落后于)现有修剪后数据的范围。你需要进行-reindex(对于已经启用修剪节点,就需要重新下载整个区块链)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失败。您需要手动移走或删除无效的快照目录 %s来解决这个问题,不然的话您就会在下一次启动时遇到相同的错误。</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: SQLite钱包schema版本%d未知。只支持%d版本</translation>
</message>
<message>
<source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
- <translation type="unfinished">区块数据库包含未来的交易,这可能是由本机错误的日期时间引起。若确认本机日期时间正确,请重新建立区块数据库。</translation>
- </message>
- <message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
+ <translation type="unfinished">区块数据库包含未来的交易,这可能是由本机的日期时间错误引起。若确认本机日期时间正确,请重新建立区块数据库。</translation>
</message>
<message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
@@ -4192,6 +4258,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">提供了未知的钱包格式 "%s" 。请使用 "bdb" 或 "sqlite" 中的一种。</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支持的类别限定日志等级 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的类别: %3$s 。有效的日志等级: %4$s 。</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">找到了不受支持的 chainstate 数据库格式。请使用 -reindex-chainstate 参数重启。这将会重建 chainstate 数据库。</translation>
</message>
@@ -4200,6 +4270,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">钱包加载成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。可以使用 migratewallet 命令将旧式钱包迁移至输出描述符钱包。</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">警告: 转储文件的钱包格式 "%s" 与命令行指定的格式 "%s" 不符。</translation>
</message>
@@ -4248,30 +4322,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">不能写入到数据目录'%s';请检查文件权限。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">在使用地址管理器(addrman)寻找出站连接时,无法同时提供特定的连接。</translation>
</message>
@@ -4280,6 +4334,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">读取 %s 时出错! 所有密钥都被正确读取,但交易数据或地址元数据可能缺失或有误。</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
</message>
@@ -4292,6 +4350,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">计算追加手续费失败,因为未确认UTXO依赖了大量未确认交易的簇集。</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
</message>
@@ -4366,10 +4428,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -4562,6 +4620,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">初始化时重扫描钱包失败</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">无法启动索引,关闭中...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">校验数据库失败</translation>
</message>
@@ -4878,8 +4940,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">不明的交易规则已经激活 (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s 。</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上 acceptstalefeeestimates 不受支持。</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_zh-Hant.ts b/src/qt/locale/bitcoin_zh-Hant.ts
index b08172bbc2..3b2152cd0c 100644
--- a/src/qt/locale/bitcoin_zh-Hant.ts
+++ b/src/qt/locale/bitcoin_zh-Hant.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">选择(&amp;H)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">发送地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">收款地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">这些是你的比特币支付地址。在发送之前,一定要核对金额和接收地址。</translation>
</message>
@@ -101,6 +93,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">儲存地址列表到 %1 時發生錯誤。請再試一次。</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">导出失败</translation>
</message>
@@ -673,8 +673,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">关闭所有钱包</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">迁移一个钱包</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
+ <translation type="unfinished">显示 %1 帮助信息,获取可用命令行选项列表</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -768,6 +776,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">預先同步標頭(%1%)</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">创建钱包时出错</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">无法创建新钱包,软件编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">錯誤: %1</translation>
</message>
@@ -838,10 +854,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">手动选币</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">計費後金額:</translation>
</message>
@@ -902,10 +914,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -914,14 +922,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1已锁定)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">當任何一個收款金額小於目前的灰塵金額上限時,文字會變紅色。</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">每个输入可能有 +/- %1 聪 (satoshi) 的误差。</translation>
</message>
@@ -964,6 +964,57 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要迁移钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">迁移钱包将会把这个钱包转换成一个或多个输出描述符钱包。将会需要创建一个新的钱包备份。
+如果这个钱包包含仅观察脚本,将会创建包含那些仅观察脚本的新钱包。
+如果这个钱包包含可解但又未被监视的脚本,将会创建一个不同的钱包以包含那些脚本。
+
+迁移过程开始前将会创建一个钱包备份。备份文件将会被命名为 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然后被保存在该钱包所在目录下。如果迁移过程出错,可以使用“恢复钱包”功能恢复备份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">迁移钱包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功迁移钱包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">仅观察脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 可解但又未被监视的脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">迁移失败</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">迁移成功</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -974,9 +1025,13 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">打開錢包警告</translation>
</message>
<message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+ <message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
- <translation type="unfinished">開啟錢包</translation>
+ <translation type="unfinished">打开钱包</translation>
</message>
</context>
<context>
@@ -1017,6 +1072,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
<translation type="unfinished">启用修剪时,如果一个钱包被卸载太久,就必须重新同步整条区块链才能再次加载它。</translation>
</message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">关闭所有钱包</translation>
+ </message>
</context>
<context>
<name>CreateWalletDialog</name>
@@ -1025,8 +1084,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">新增錢包</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距离创建您的新钱包只有一步之遥了!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">请指定一个名字,如果需要的话还可以启用高级选项</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">錢包名稱</translation>
+ <translation type="unfinished">钱包名称</translation>
</message>
<message>
<source>Wallet</source>
@@ -1056,14 +1123,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Make Blank Wallet</source>
<translation type="unfinished">製作空白錢包</translation>
</message>
- <message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">使用输出描述符进行scriptPubKey管理</translation>
- </message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1151,10 +1210,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">此目录中至少会保存 %1 GB 的数据,并且大小还会随着时间增长。</translation>
</message>
- <message>
- <source>Approximately %1 GB of data will be stored in this directory.</source>
- <translation type="unfinished">会在此目录中存储约 %1 GB 的数据。</translation>
- </message>
<message numerus="yes">
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
@@ -1183,10 +1238,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">欢迎</translation>
</message>
<message>
- <source>Welcome to %1.</source>
- <translation type="unfinished">欢迎使用 %1</translation>
- </message>
- <message>
<source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
<translation type="unfinished">由于这是第一次启动此程序,您可以选择%1存储数据的位置</translation>
</message>
@@ -1214,10 +1265,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>HelpMessageDialog</name>
<message>
- <source>version</source>
- <translation type="unfinished">版本</translation>
- </message>
- <message>
<source>About %1</source>
<translation type="unfinished">关于 %1</translation>
</message>
@@ -1232,11 +1279,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%1 is shutting down…</source>
<translation type="unfinished">%1正在关闭...</translation>
</message>
- <message>
- <source>Do not shut down the computer until this window disappears.</source>
- <translation type="unfinished">在此窗口消失前不要关闭计算机。</translation>
- </message>
-</context>
+ </context>
<context>
<name>ModalOverlay</name>
<message>
@@ -1244,18 +1287,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">窗体</translation>
</message>
<message>
- <source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
- <translation type="unfinished">近期交易可能尚未显示,因此当前余额可能不准确。以上信息将在与比特币网络完全同步后更正。详情如下</translation>
- </message>
- <message>
- <source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
- <translation type="unfinished">尝试使用受未可见交易影响的余额将不被网络接受。</translation>
- </message>
- <message>
- <source>Number of blocks left</source>
- <translation type="unfinished">剩余区块数量</translation>
- </message>
- <message>
<source>Unknown…</source>
<translation type="unfinished">未知...</translation>
</message>
@@ -1264,10 +1295,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">计算中...</translation>
</message>
<message>
- <source>Last block time</source>
- <translation type="unfinished">上一区块时间</translation>
- </message>
- <message>
<source>Progress</source>
<translation type="unfinished">进度</translation>
</message>
@@ -1276,10 +1303,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">每小时进度增加</translation>
</message>
<message>
- <source>Estimated time left until synced</source>
- <translation type="unfinished">预计剩余同步时间</translation>
- </message>
- <message>
<source>Hide</source>
<translation type="unfinished">隐藏</translation>
</message>
@@ -1860,6 +1883,22 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">选择节点查看详细信息。</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">传输层版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">传输</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">十六进制格式的BIP324会话ID,如果有的话。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">会话ID</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">是否要将交易转发给这个节点。</translation>
</message>
@@ -2035,6 +2074,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">出站触须: 短暂,用于测试地址</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">检测中: 节点可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文传输协议</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密传输协议</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">我们选择了用于高带宽转发的节点</translation>
</message>
@@ -2319,10 +2373,6 @@ For more information on using this console, type %6.
<translation type="unfinished">增加收款人(&amp;R)</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">选择...</translation>
</message>
@@ -2363,10 +2413,6 @@ For more information on using this console, type %6.
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -2780,10 +2826,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">付給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -2839,10 +2881,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -3012,12 +3050,16 @@ Go to File &gt; Open Wallet to load a wallet.
<source>Could not commit transaction</source>
<translation type="unfinished">沒辦法提交交易</translation>
</message>
- </context>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+</context>
<context>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">&amp;匯出</translation>
+ <translation type="unfinished">导出(E)</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
@@ -3060,6 +3102,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s 開發人員</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
</message>
@@ -3096,6 +3142,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误: 转储文件版本不被支持。这个版本的 bitcoin-wallet 只支持版本为 1 的转储文件。得到的转储文件版本却是%s</translation>
</message>
<message>
+ <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
+ <translation type="unfinished">错误: 旧式钱包只支持 "legacy", "p2sh-segwit", 和 "bech32" 这三种地址类型</translation>
+ </message>
+ <message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
<translation type="unfinished">错误: 无法为该旧式钱包生成描述符。如果钱包已被加密,请确保提供的钱包加密密码正确。</translation>
</message>
@@ -3120,6 +3170,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">修剪:上次同步钱包的位置已经超出(落后于)现有修剪后数据的范围。你需要进行-reindex(对于已经启用修剪节点,就需要重新下载整个区块链)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失败。您需要手动移走或删除无效的快照目录 %s来解决这个问题,不然的话您就会在下一次启动时遇到相同的错误。</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: SQLite钱包schema版本%d未知。只支持%d版本</translation>
</message>
@@ -3128,10 +3182,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">區塊資料庫中有來自未來的區塊。可能是你電腦的日期時間不對。如果確定電腦日期時間沒錯的話,就重建區塊資料庫看看。</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">扣除手續費後的交易金額太少而不能傳送</translation>
</message>
@@ -3164,6 +3214,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">提供了未知的钱包格式 "%s" 。请使用 "bdb" 或 "sqlite" 中的一种。</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支持的类别限定日志等级 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的类别: %3$s 。有效的日志等级: %4$s 。</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">找到了不受支持的 chainstate 数据库格式。请使用 -reindex-chainstate 参数重启。这将会重建 chainstate 数据库。</translation>
</message>
@@ -3172,6 +3226,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">钱包加载成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。可以使用 migratewallet 命令将旧式钱包迁移至输出描述符钱包。</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">警告: 转储文件的钱包格式 "%s" 与命令行指定的格式 "%s" 不符。</translation>
</message>
@@ -3212,30 +3270,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">不能写入到数据目录'%s';请检查文件权限。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上以供诊断问题的原因。</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">在使用地址管理器(addrman)寻找出站连接时,无法同时提供特定的连接。</translation>
</message>
@@ -3244,6 +3282,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">读取 %s 时出错! 所有密钥都被正确读取,但交易数据或地址元数据可能缺失或有误。</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
</message>
@@ -3256,6 +3298,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">计算追加手续费失败,因为未确认UTXO依赖了大量未确认交易的簇集。</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
</message>
@@ -3330,10 +3376,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -3462,6 +3504,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误: 无法写入记录到新钱包</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">无法启动索引,关闭中...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">校验数据库失败</translation>
</message>
@@ -3702,8 +3748,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">在 -onlynet 指定了不明的網路別: '%s'</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上acceptstalefeeestimates 不受支持。</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_zh.ts b/src/qt/locale/bitcoin_zh.ts
index e7b203da47..f966ccccc1 100644
--- a/src/qt/locale/bitcoin_zh.ts
+++ b/src/qt/locale/bitcoin_zh.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">选择(&amp;H)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">发送地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">接收地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">这些是你的比特币支付地址。在发送之前,一定要核对金额和接收地址。</translation>
</message>
@@ -102,6 +94,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">试图将地址列表保存到 %1时出错,请再试一次。</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">导出失败</translation>
</message>
@@ -454,12 +454,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">從備份檔案中恢復錢包</translation>
</message>
<message>
- <source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
</message>
<message>
- <source>default wallet</source>
- <translation type="unfinished">默认钱包</translation>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">迁移一个钱包</translation>
+ </message>
+ <message>
+ <source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
+ <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
</message>
<message>
<source>No wallets available</source>
@@ -511,13 +515,84 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">預先同步標頭(%1%)</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">创建钱包时出错</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">无法创建新钱包,软件编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">错误: %1</translation>
</message>
- </context>
+ <message>
+ <source>Warning: %1</source>
+ <translation type="unfinished">警告: %1</translation>
+ </message>
+ <message>
+ <source>Amount: %1
+</source>
+ <translation type="unfinished">金額: %1
+</translation>
+ </message>
+ <message>
+ <source>Type: %1
+</source>
+ <translation type="unfinished">種類: %1
+</translation>
+ </message>
+ <message>
+ <source>Label: %1
+</source>
+ <translation type="unfinished">標記: %1
+</translation>
+ </message>
+ <message>
+ <source>Address: %1
+</source>
+ <translation type="unfinished">地址: %1
+</translation>
+ </message>
+ <message>
+ <source>Incoming transaction</source>
+ <translation type="unfinished">收款交易</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
+ <translation type="unfinished">產生 HD 金鑰&lt;b&gt;已經啟用&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">HD密钥生成&lt;b&gt;禁用&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">私钥&lt;b&gt;禁用&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
+ <translation type="unfinished">錢包&lt;b&gt;已加密&lt;/b&gt;並且&lt;b&gt;解鎖中&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Original message:</source>
+ <translation type="unfinished">原消息:</translation>
+ </message>
+</context>
+<context>
+ <name>UnitDisplayStatusBarControl</name>
+ <message>
+ <source>Unit to show amounts in. Click to select another unit.</source>
+ <translation type="unfinished">金额单位。单击选择别的单位。</translation>
+ </message>
+</context>
<context>
<name>CoinControlDialog</name>
<message>
+ <source>Coin Selection</source>
+ <translation type="unfinished">手动选币</translation>
+ </message>
+ <message>
<source>Copy amount</source>
<translation type="unfinished">复制金额</translation>
</message>
@@ -530,14 +605,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">复制手续费</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">当任何一个收款金额小于目前的粉尘金额阈值时,文字会变红色。</translation>
- </message>
- <message>
<source>(no label)</source>
<translation type="unfinished">(无标签)</translation>
</message>
@@ -555,8 +622,63 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要迁移钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">迁移钱包将会把这个钱包转换成一个或多个输出描述符钱包。将会需要创建一个新的钱包备份。
+如果这个钱包包含仅观察脚本,将会创建包含那些仅观察脚本的新钱包。
+如果这个钱包包含可解但又未被监视的脚本,将会创建一个不同的钱包以包含那些脚本。
+
+迁移过程开始前将会创建一个钱包备份。备份文件将会被命名为 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然后被保存在该钱包所在目录下。如果迁移过程出错,可以使用“恢复钱包”功能恢复备份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">迁移钱包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功迁移钱包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">仅观察脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 可解但又未被监视的脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">迁移失败</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">迁移成功</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+ <message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
<translation type="unfinished">打开钱包</translation>
@@ -604,20 +726,20 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>CreateWalletDialog</name>
<message>
- <source>Advanced Options</source>
- <translation type="unfinished">进阶设定</translation>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距离创建您的新钱包只有一步之遥了!</translation>
</message>
<message>
- <source>Disable Private Keys</source>
- <translation type="unfinished">禁用私钥</translation>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">请指定一个名字,如果需要的话还可以启用高级选项</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">使用输出描述符进行scriptPubKey管理</translation>
+ <source>Advanced Options</source>
+ <translation type="unfinished">进阶设定</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ <source>Disable Private Keys</source>
+ <translation type="unfinished">禁用私钥</translation>
</message>
</context>
<context>
@@ -686,7 +808,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
<translation type="unfinished">
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
+ <numerusform />
</translation>
</message>
<message>
@@ -716,46 +838,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">与%1兼容的脚本文件路径(例如 C:\Downloads\hwi.exe 或者 /Users/you/Downloads/hwi.py )。注意:恶意软件可以偷币!</translation>
</message>
<message>
- <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
- <translation type="unfinished">代理服务器 IP 地址 (例如 IPv4: 127.0.0.1 / IPv6: ::1)</translation>
- </message>
- <message>
- <source>Shows if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source>
- <translation type="unfinished">显示默认的SOCKS5代理是否被用于在该类型的网络下连接同伴。</translation>
- </message>
- <message>
- <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source>
- <translation type="unfinished">窗口被关闭时最小化程序而不是退出。当此选项启用时,只有在菜单中选择“退出”时才会让程序退出。</translation>
- </message>
- <message>
<source>Options set in this dialog are overridden by the command line:</source>
<translation type="unfinished">这个对话框中的设置已被如下命令行选项覆盖:</translation>
</message>
<message>
- <source>Open the %1 configuration file from the working directory.</source>
- <translation type="unfinished">從工作目錄開啟設定檔 %1。</translation>
- </message>
- <message>
- <source>Open Configuration File</source>
- <translation type="unfinished">開啟設定檔</translation>
- </message>
- <message>
- <source>Reset all client options to default.</source>
- <translation type="unfinished">重設所有客戶端軟體選項成預設值。</translation>
- </message>
- <message>
- <source>&amp;Reset Options</source>
- <translation type="unfinished">重設選項(&amp;R)</translation>
- </message>
- <message>
- <source>&amp;Network</source>
- <translation type="unfinished">网络(&amp;N)</translation>
- </message>
- <message>
- <source>Reverting this setting requires re-downloading the entire blockchain.</source>
- <translation type="unfinished">警告:还原此设置需要重新下载整个区块链。</translation>
- </message>
- <message>
<source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
<extracomment>Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</extracomment>
<translation type="unfinished">数据库缓存的最大大小。加大缓存有助于加快同步,但对于大多数使用场景来说,继续加大后收效会越来越不明显。降低缓存大小将会减小内存使用量。内存池中尚未被使用的那部分内存也会被共享用于这里的数据库缓存。</translation>
@@ -766,10 +852,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">设置脚本验证线程的数量。负值则表示你想要保留给系统的核心数量。</translation>
</message>
<message>
- <source>(0 = auto, &lt;0 = leave that many cores free)</source>
- <translation type="unfinished">(0 表示程式自動決定,小於 0 表示保留處理器核心不用的數目)</translation>
- </message>
- <message>
<source>This allows you or a third party tool to communicate with the node through command-line and JSON-RPC commands.</source>
<extracomment>Tooltip text for Options window setting that enables the RPC server.</extracomment>
<translation type="unfinished">这允许作为用户的你或第三方工具通过命令行和JSON-RPC命令行与节点通信。</translation>
@@ -790,10 +872,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">默认从金额中减去交易手续费(&amp;F)</translation>
</message>
<message>
- <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
- <translation type="unfinished">如果您禁止动用尚未确认的找零资金,则一笔交易的找零资金至少需要有1个确认后才能动用。这同时也会影响账户余额的计算。</translation>
- </message>
- <message>
<source>Enable &amp;PSBT controls</source>
<extracomment>An options window setting to enable PSBT controls.</extracomment>
<translation type="unfinished">启用&amp;PSBT控件</translation>
@@ -804,10 +882,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">是否要显示PSBT控件</translation>
</message>
<message>
- <source>&amp;External signer script path</source>
- <translation type="unfinished">外部签名器脚本路径(&amp;E)</translation>
- </message>
- <message>
<source>&amp;Window</source>
<translation type="unfinished">&amp;窗口</translation>
</message>
@@ -876,6 +950,22 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>RPCConsole</name>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">传输层版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">传输</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">十六进制格式的BIP324会话ID,如果有的话。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">会话ID</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">是否要将交易转发给这个节点。</translation>
</message>
@@ -922,10 +1012,42 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">结点窗口</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">检测中: 节点可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文传输协议</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密传输协议</translation>
+ </message>
+ <message>
<source>&amp;Copy IP/Netmask</source>
<extracomment>Context menu action to copy the IP/Netmask of a banned peer. IP/Netmask is the combination of a peer's IP address and its Netmask. For IP address, see: https://en.wikipedia.org/wiki/IP_address.</extracomment>
<translation type="unfinished">复制IP/网络掩码(&amp;C)</translation>
</message>
+ <message>
+ <source>Welcome to the %1 RPC console.
+Use up and down arrows to navigate history, and %2 to clear screen.
+Use %3 and %4 to increase or decrease the font size.
+Type %5 for an overview of available commands.
+For more information on using this console, type %6.
+
+%7WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command.%8</source>
+ <extracomment>RPC console welcome message. Placeholders %7 and %8 are style tags for the warning content, and they are not space separated from the rest of the text intentionally.</extracomment>
+ <translation type="unfinished">欢迎来到 %1 RPC 控制台。
+使用上与下箭头以进行历史导航,%2 以清除屏幕。
+使用%3 和 %4 以增加或减小字体大小。
+输入 %5 以显示可用命令的概览。
+查看更多关于此控制台的信息,输入 %6。
+
+%7 警告:骗子们很活跃,他们会让用户在这里输入命令以便偷走用户钱包中的内容。所以请您不要在不完全了解一个命令的后果的情况下使用此控制台。%8</translation>
+ </message>
</context>
<context>
<name>ReceiveCoinsDialog</name>
@@ -1097,7 +1219,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<comment>Fee-bump PSBT saved</comment>
<translation type="unfinished">复制到剪贴板</translation>
</message>
- </context>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+</context>
<context>
<name>WalletView</name>
<message>
@@ -1112,6 +1238,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>bitcoin-core</name>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
</message>
@@ -1128,6 +1258,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">读取%s出错!交易数据可能丢失或有误。重新扫描钱包中。</translation>
</message>
<message>
+ <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
+ <translation type="unfinished">错误: 旧式钱包只支持 "legacy", "p2sh-segwit", 和 "bech32" 这三种地址类型</translation>
+ </message>
+ <message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
<translation type="unfinished">错误: 无法为该旧式钱包生成描述符。如果钱包已被加密,请确保提供的钱包加密密码正确。</translation>
</message>
@@ -1140,8 +1274,12 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">修剪模式与 -reindex-chainstate 不兼容。请进行一次完整的 -reindex 。</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失败。您需要手动移走或删除无效的快照目录 %s来解决这个问题,不然的话您就会在下一次启动时遇到相同的错误。</translation>
+ </message>
+ <message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支持的类别限定日志等级 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的类别: %3$s 。有效的日志等级: %4$s 。</translation>
</message>
<message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
@@ -1152,34 +1290,18 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
</message>
<message>
- <source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
- <translation type="unfinished">在 -dnsseed 被设为 false 时无法将 -forcednsseed 设为 true 。</translation>
- </message>
- <message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">钱包加载成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。可以使用 migratewallet 命令将旧式钱包迁移至输出描述符钱包。</translation>
</message>
<message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上以供诊断问题的原因。</translation>
+ <source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
+ <translation type="unfinished">在 -dnsseed 被设为 false 时无法将 -forcednsseed 设为 true 。</translation>
</message>
<message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">在使用地址管理器(addrman)寻找出站连接时,无法同时提供特定的连接。</translation>
</message>
@@ -1188,6 +1310,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">读取 %s 时出错! 所有密钥都被正确读取,但交易数据或地址元数据可能缺失或有误。</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
</message>
@@ -1200,6 +1326,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">计算追加手续费失败,因为未确认UTXO依赖了大量未确认交易的簇集。</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
</message>
@@ -1274,10 +1404,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -1342,6 +1468,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误:无法移除仅观察地址簿数据</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">无法启动索引,关闭中...</translation>
+ </message>
+ <message>
<source>Input not found or already spent</source>
<translation type="unfinished">找不到交易項,或可能已經花掉了</translation>
</message>
@@ -1418,8 +1548,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">在迁移前无法卸载钱包</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上acceptstalefeeestimates 不受支持。</translation>
</message>
<message>
<source>Settings file could not be read</source>
diff --git a/src/qt/locale/bitcoin_zh_CN.ts b/src/qt/locale/bitcoin_zh_CN.ts
index 1e82870c56..94f9cab777 100644
--- a/src/qt/locale/bitcoin_zh_CN.ts
+++ b/src/qt/locale/bitcoin_zh_CN.ts
@@ -3,11 +3,11 @@
<name>AddressBookPage</name>
<message>
<source>Right-click to edit address or label</source>
- <translation type="unfinished">右键单击来编辑地址或者标签</translation>
+ <translation type="unfinished">鼠标右击编辑地址或标签</translation>
</message>
<message>
<source>Create a new address</source>
- <translation type="unfinished">创建新地址</translation>
+ <translation type="unfinished">创建一个新地址</translation>
</message>
<message>
<source>&amp;New</source>
@@ -27,15 +27,15 @@
</message>
<message>
<source>Delete the currently selected address from the list</source>
- <translation type="unfinished">从列表中删除当前已选地址</translation>
+ <translation type="unfinished">从列表中删除选中的地址</translation>
</message>
<message>
<source>Enter address or label to search</source>
- <translation type="unfinished">输入要搜索的地址或标签</translation>
+ <translation type="unfinished">输入地址或标签来搜索</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
- <translation type="unfinished">将当前选项卡中的数据导出到文件</translation>
+ <translation type="unfinished">将当前标签页数据导出到文件</translation>
</message>
<message>
<source>&amp;Export</source>
@@ -47,49 +47,41 @@
</message>
<message>
<source>Choose the address to send coins to</source>
- <translation type="unfinished">选择收款人地址</translation>
+ <translation type="unfinished">选择要发币给哪些地址</translation>
</message>
<message>
<source>Choose the address to receive coins with</source>
- <translation type="unfinished">选择接收比特币地址</translation>
+ <translation type="unfinished">选择要用哪些地址收币</translation>
</message>
<message>
<source>C&amp;hoose</source>
<translation type="unfinished">选择(&amp;H)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">发送地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">接收地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
- <translation type="unfinished">这些是你的比特币支付地址。在发送之前,一定要核对金额和接收地址。</translation>
+ <translation type="unfinished">您可以给这些比特币地址付款。在付款之前,务必要检查金额和收款地址是否正确。</translation>
</message>
<message>
<source>These are your Bitcoin addresses for receiving payments. Use the 'Create new receiving address' button in the receive tab to create new addresses.
Signing is only possible with addresses of the type 'legacy'.</source>
- <translation type="unfinished">你将使用下列比特币地址接受付款。选取收款选项卡中 “产生新收款地址” 按钮来生成新地址。
-签名只能使用“传统”类型的地址。</translation>
+ <translation type="unfinished">这是您用来收款的比特币地址。使用“接收”标签页中的“创建新收款地址”按钮来创建新的收款地址。
+只有“旧式(legacy)”类型的地址支持签名。</translation>
</message>
<message>
<source>&amp;Copy Address</source>
- <translation type="unfinished">&amp;复制地址</translation>
+ <translation type="unfinished">复制地址(&amp;C)</translation>
</message>
<message>
<source>Copy &amp;Label</source>
- <translation type="unfinished">复制 &amp;标签</translation>
+ <translation type="unfinished">复制标签(&amp;L)</translation>
</message>
<message>
<source>&amp;Edit</source>
- <translation type="unfinished">&amp;编辑</translation>
+ <translation type="unfinished">编辑(&amp;E)</translation>
</message>
<message>
<source>Export Address List</source>
- <translation type="unfinished">出口地址列表</translation>
+ <translation type="unfinished">导出地址列表</translation>
</message>
<message>
<source>Comma separated file</source>
@@ -99,7 +91,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>There was an error trying to save the address list to %1. Please try again.</source>
<extracomment>An error message. %1 is a stand-in argument for the name of the file we attempted to save to.</extracomment>
- <translation type="unfinished">试图将地址列表保存到 %1时出错,请再试一次。</translation>
+ <translation type="unfinished">尝试保存地址列表到 %1 时发生错误。请再试一次。</translation>
+ </message>
+ <message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
</message>
<message>
<source>Exporting Failed</source>
@@ -133,7 +133,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>New passphrase</source>
- <translation type="unfinished">新的密码</translation>
+ <translation type="unfinished">新密码</translation>
</message>
<message>
<source>Repeat new passphrase</source>
@@ -149,11 +149,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>This operation needs your wallet passphrase to unlock the wallet.</source>
- <translation type="unfinished">该操作需要您的钱包密码来解锁钱包。</translation>
+ <translation type="unfinished">这个操作需要你的钱包密码来解锁钱包。</translation>
</message>
<message>
<source>Unlock wallet</source>
- <translation type="unfinished">打开钱包</translation>
+ <translation type="unfinished">解锁钱包</translation>
</message>
<message>
<source>Change passphrase</source>
@@ -165,43 +165,43 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Warning: If you encrypt your wallet and lose your passphrase, you will &lt;b&gt;LOSE ALL OF YOUR BITCOINS&lt;/b&gt;!</source>
- <translation type="unfinished">注意: 如果你忘记了你的钱包,你将会丢失你的&lt;b&gt;密码,并且会丢失你的&lt;/b&gt;比特币。</translation>
+ <translation type="unfinished">警告: 如果把钱包加密后又忘记密码,你就会从此&lt;b&gt;失去其中所有的比特币了&lt;/b&gt;!</translation>
</message>
<message>
<source>Are you sure you wish to encrypt your wallet?</source>
- <translation type="unfinished">您确定要加密您的钱包吗?</translation>
+ <translation type="unfinished">你确定要把钱包加密吗?</translation>
</message>
<message>
<source>Wallet encrypted</source>
- <translation type="unfinished">钱包加密</translation>
+ <translation type="unfinished">钱包已加密</translation>
</message>
<message>
<source>Enter the new passphrase for the wallet.&lt;br/&gt;Please use a passphrase of &lt;b&gt;ten or more random characters&lt;/b&gt;, or &lt;b&gt;eight or more words&lt;/b&gt;.</source>
- <translation type="unfinished">输入钱包的新密码,&lt;br/&gt;请使用&lt;b&gt;10个或以上随机字符的密码&lt;/b&gt;,&lt;b&gt;或者8个以上的复杂单词&lt;/b&gt;。</translation>
+ <translation type="unfinished">为此钱包输入新密码。&lt;br/&gt;请使用由&lt;b&gt;十个或更多的随机字符&lt;/b&gt;,或者&lt;b&gt;八个或更多单词&lt;/b&gt;组成的密码。</translation>
</message>
<message>
<source>Enter the old passphrase and new passphrase for the wallet.</source>
- <translation type="unfinished">输入钱包的旧密码和新密码。</translation>
+ <translation type="unfinished">输入此钱包的旧密码和新密码。</translation>
</message>
<message>
<source>Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source>
- <translation type="unfinished">注意,加密你的钱包并不能完全保护你的比特币免受感染你电脑的恶意软件的窃取。</translation>
+ <translation type="unfinished">请注意,当您的计算机感染恶意软件时,加密钱包并不能完全规避您的比特币被偷窃的可能。</translation>
</message>
<message>
<source>Wallet to be encrypted</source>
- <translation type="unfinished">加密钱包</translation>
+ <translation type="unfinished">要加密的钱包</translation>
</message>
<message>
<source>Your wallet is about to be encrypted. </source>
- <translation type="unfinished">你的钱包要被加密了。</translation>
+ <translation type="unfinished">您的钱包将要被加密。</translation>
</message>
<message>
<source>Your wallet is now encrypted. </source>
- <translation type="unfinished">你的钱包现在被加密了。</translation>
+ <translation type="unfinished">您的钱包现在已被加密。</translation>
</message>
<message>
<source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source>
- <translation type="unfinished">重要提示:您之前对钱包文件所做的任何备份都应该替换为新生成的加密钱包文件。出于安全原因,一旦开始使用新的加密钱包,以前未加密钱包文件的备份就会失效。</translation>
+ <translation type="unfinished">重要: 请用新生成的、已加密的钱包备份文件取代你之前留的钱包文件备份。出于安全方面的原因,一旦你开始使用新的已加密钱包,旧的未加密钱包文件备份就失效了。</translation>
</message>
<message>
<source>Wallet encryption failed</source>
@@ -209,19 +209,19 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source>
- <translation type="unfinished">由于内部错误,钱包加密失败。你的钱包没有加密成功。</translation>
+ <translation type="unfinished">因为内部错误导致钱包加密失败。你的钱包还是没加密。</translation>
</message>
<message>
<source>The supplied passphrases do not match.</source>
- <translation type="unfinished">提供的密码不匹配。</translation>
+ <translation type="unfinished">提供的密码不一致。</translation>
</message>
<message>
<source>Wallet unlock failed</source>
- <translation type="unfinished">钱包打开失败</translation>
+ <translation type="unfinished">钱包解锁失败</translation>
</message>
<message>
<source>The passphrase entered for the wallet decryption was incorrect.</source>
- <translation type="unfinished">钱包解密输入的密码不正确。</translation>
+ <translation type="unfinished">输入的钱包解锁密码不正确。</translation>
</message>
<message>
<source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
@@ -229,7 +229,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Wallet passphrase was successfully changed.</source>
- <translation type="unfinished">钱包密码更改成功。</translation>
+ <translation type="unfinished">钱包密码修改成功。</translation>
</message>
<message>
<source>Passphrase change failed</source>
@@ -241,18 +241,18 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Warning: The Caps Lock key is on!</source>
- <translation type="unfinished">警告:大写锁定键已打开!</translation>
+ <translation type="unfinished">警告: 大写字母锁定已开启!</translation>
</message>
</context>
<context>
<name>BanTableModel</name>
<message>
<source>IP/Netmask</source>
- <translation type="unfinished">IP/子网掩码</translation>
+ <translation type="unfinished">IP/网络掩码</translation>
</message>
<message>
<source>Banned Until</source>
- <translation type="unfinished">被禁止直到</translation>
+ <translation type="unfinished">在此之前保持封禁:</translation>
</message>
</context>
<context>
@@ -263,11 +263,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Runaway exception</source>
- <translation type="unfinished">失控的例外</translation>
+ <translation type="unfinished">未捕获的异常</translation>
</message>
<message>
<source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
- <translation type="unfinished">发生了一个致命错误。%1不能再安全地继续并将退出。</translation>
+ <translation type="unfinished">发生致命错误。%1 已经无法继续安全运行并即将退出。</translation>
</message>
<message>
<source>Internal error</source>
@@ -275,7 +275,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>An internal error occurred. %1 will attempt to continue safely. This is an unexpected bug which can be reported as described below.</source>
- <translation type="unfinished">发生内部错误。%1将尝试安全继续。这是一个意外的错误,可以报告如下所述。</translation>
+ <translation type="unfinished">发生了一个内部错误。%1将会尝试安全地继续运行。关于这个未知的错误我们有以下的描述信息用于参考。</translation>
</message>
</context>
<context>
@@ -283,12 +283,12 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Do you want to reset settings to default values, or to abort without making changes?</source>
<extracomment>Explanatory text shown on startup when the settings file cannot be read. Prompts user to make a choice between resetting or aborting.</extracomment>
- <translation type="unfinished">要将设置重置为默认值,还是不做任何更改就中止?</translation>
+ <translation type="unfinished">要将设置重置为默认值,还是要放弃更改并中止?</translation>
</message>
<message>
<source>A fatal error occurred. Check that settings file is writable, or try running with -nosettings.</source>
<extracomment>Explanatory text shown on startup when the settings file could not be written. Prompts user to check that we have the ability to write to the file. Explains that the user has the option of running without a settings file.</extracomment>
- <translation type="unfinished">发生了一个致命错误。检查设置文件是否可写,或者尝试使用-nosettings运行。</translation>
+ <translation type="unfinished">出现致命错误。请检查设置文件是否可写,或者尝试带 -nosettings 参数运行。</translation>
</message>
<message>
<source>Error: %1</source>
@@ -296,7 +296,86 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>%1 didn't yet exit safely…</source>
- <translation type="unfinished">%1尚未安全退出…</translation>
+ <translation type="unfinished">%1 还没有安全退出...</translation>
+ </message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">未知</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">金额</translation>
+ </message>
+ <message>
+ <source>Enter a Bitcoin address (e.g. %1)</source>
+ <translation type="unfinished">请输入一个比特币地址 (例如 %1)</translation>
+ </message>
+ <message>
+ <source>Unroutable</source>
+ <translation type="unfinished">不可路由</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</extracomment>
+ <translation type="unfinished">传入</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An outbound connection to a peer. An outbound connection is a connection initiated by us.</extracomment>
+ <translation type="unfinished">传出</translation>
+ </message>
+ <message>
+ <source>Full Relay</source>
+ <extracomment>Peer connection type that relays all network information.</extracomment>
+ <translation type="unfinished">完整转发</translation>
+ </message>
+ <message>
+ <source>Block Relay</source>
+ <extracomment>Peer connection type that relays network information about blocks and not transactions or addresses.</extracomment>
+ <translation type="unfinished">区块转发</translation>
+ </message>
+ <message>
+ <source>Manual</source>
+ <extracomment>Peer connection type established manually through one of several methods.</extracomment>
+ <translation type="unfinished">手册</translation>
+ </message>
+ <message>
+ <source>Feeler</source>
+ <extracomment>Short-lived peer connection type that tests the aliveness of known addresses.</extracomment>
+ <translation type="unfinished">触须</translation>
+ </message>
+ <message>
+ <source>Address Fetch</source>
+ <extracomment>Short-lived peer connection type that solicits known addresses from a peer.</extracomment>
+ <translation type="unfinished">地址取回</translation>
+ </message>
+ <message>
+ <source>%1 d</source>
+ <translation type="unfinished">%1 天</translation>
+ </message>
+ <message>
+ <source>%1 h</source>
+ <translation type="unfinished">%1 小时</translation>
+ </message>
+ <message>
+ <source>%1 m</source>
+ <translation type="unfinished">%1 分钟</translation>
+ </message>
+ <message>
+ <source>%1 s</source>
+ <translation type="unfinished">%1 秒</translation>
+ </message>
+ <message>
+ <source>None</source>
+ <translation type="unfinished">无</translation>
+ </message>
+ <message>
+ <source>N/A</source>
+ <translation type="unfinished">不可用</translation>
+ </message>
+ <message>
+ <source>%1 ms</source>
+ <translation type="unfinished">%1 毫秒</translation>
</message>
<message numerus="yes">
<source>%n second(s)</source>
@@ -328,12 +407,20 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<numerusform>%n 周</numerusform>
</translation>
</message>
+ <message>
+ <source>%1 and %2</source>
+ <translation type="unfinished">%1 和 %2</translation>
+ </message>
<message numerus="yes">
<source>%n year(s)</source>
<translation type="unfinished">
<numerusform>%n年</numerusform>
</translation>
</message>
+ <message>
+ <source>%1 B</source>
+ <translation type="unfinished">%1 字节</translation>
+ </message>
</context>
<context>
<name>BitcoinGUI</name>
@@ -370,36 +457,149 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">显示 %1 的相关信息</translation>
</message>
<message>
+ <source>About &amp;Qt</source>
+ <translation type="unfinished">关于 &amp;Qt</translation>
+ </message>
+ <message>
+ <source>Show information about Qt</source>
+ <translation type="unfinished">显示 Qt 相关信息</translation>
+ </message>
+ <message>
+ <source>Modify configuration options for %1</source>
+ <translation type="unfinished">修改%1的配置选项</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">创建一个新的钱包</translation>
+ </message>
+ <message>
<source>&amp;Minimize</source>
- <translation type="unfinished">最小化</translation>
+ <translation type="unfinished">最小化(&amp;M)</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">钱包:</translation>
+ </message>
+ <message>
+ <source>Network activity disabled.</source>
+ <extracomment>A substring of the tooltip.</extracomment>
+ <translation type="unfinished">网络活动已禁用。</translation>
+ </message>
+ <message>
+ <source>Proxy is &lt;b&gt;enabled&lt;/b&gt;: %1</source>
+ <translation type="unfinished">代理服务器已&lt;b&gt;启用&lt;/b&gt;: %1</translation>
+ </message>
+ <message>
+ <source>Send coins to a Bitcoin address</source>
+ <translation type="unfinished">向一个比特币地址发币</translation>
+ </message>
+ <message>
+ <source>Backup wallet to another location</source>
+ <translation type="unfinished">备份钱包到其他位置</translation>
+ </message>
+ <message>
+ <source>Change the passphrase used for wallet encryption</source>
+ <translation type="unfinished">修改钱包加密密码</translation>
+ </message>
+ <message>
+ <source>&amp;Send</source>
+ <translation type="unfinished">发送(&amp;S)</translation>
+ </message>
+ <message>
+ <source>&amp;Receive</source>
+ <translation type="unfinished">接收(&amp;R)</translation>
+ </message>
+ <message>
+ <source>&amp;Options…</source>
+ <translation type="unfinished">选项(&amp;O)</translation>
+ </message>
+ <message>
+ <source>&amp;Encrypt Wallet…</source>
+ <translation type="unfinished">加密钱包(&amp;E)</translation>
</message>
<message>
<source>Encrypt the private keys that belong to your wallet</source>
<translation type="unfinished">把你钱包中的私钥加密</translation>
</message>
<message>
+ <source>&amp;Backup Wallet…</source>
+ <translation type="unfinished">备份钱包(&amp;B)</translation>
+ </message>
+ <message>
+ <source>&amp;Change Passphrase…</source>
+ <translation type="unfinished">修改密码(&amp;C)</translation>
+ </message>
+ <message>
+ <source>Sign &amp;message…</source>
+ <translation type="unfinished">签名消息(&amp;M)</translation>
+ </message>
+ <message>
<source>Sign messages with your Bitcoin addresses to prove you own them</source>
<translation type="unfinished">用比特币地址关联的私钥为消息签名,以证明您拥有这个比特币地址</translation>
</message>
<message>
+ <source>&amp;Verify message…</source>
+ <translation type="unfinished">验证消息(&amp;V)</translation>
+ </message>
+ <message>
<source>Verify messages to ensure they were signed with specified Bitcoin addresses</source>
<translation type="unfinished">校验消息,确保该消息是由指定的比特币地址所有者签名的</translation>
</message>
<message>
+ <source>&amp;Load PSBT from file…</source>
+ <translation type="unfinished">从文件加载PSBT(&amp;L)...</translation>
+ </message>
+ <message>
+ <source>Open &amp;URI…</source>
+ <translation type="unfinished">打开&amp;URI...</translation>
+ </message>
+ <message>
+ <source>Close Wallet…</source>
+ <translation type="unfinished">关闭钱包...</translation>
+ </message>
+ <message>
+ <source>Create Wallet…</source>
+ <translation type="unfinished">创建钱包...</translation>
+ </message>
+ <message>
+ <source>Close All Wallets…</source>
+ <translation type="unfinished">关闭所有钱包...</translation>
+ </message>
+ <message>
<source>&amp;File</source>
- <translation type="unfinished">&amp;文件</translation>
+ <translation type="unfinished">文件(&amp;F)</translation>
</message>
<message>
<source>&amp;Settings</source>
- <translation type="unfinished">&amp;设置</translation>
+ <translation type="unfinished">设置(&amp;S)</translation>
</message>
<message>
<source>&amp;Help</source>
- <translation type="unfinished">&amp;帮助</translation>
+ <translation type="unfinished">帮助(&amp;H)</translation>
</message>
<message>
<source>Tabs toolbar</source>
- <translation type="unfinished">标签工具栏</translation>
+ <translation type="unfinished">标签页工具栏</translation>
+ </message>
+ <message>
+ <source>Syncing Headers (%1%)…</source>
+ <translation type="unfinished">同步区块头 (%1%)…</translation>
+ </message>
+ <message>
+ <source>Synchronizing with network…</source>
+ <translation type="unfinished">与网络同步...</translation>
+ </message>
+ <message>
+ <source>Indexing blocks on disk…</source>
+ <translation type="unfinished">对磁盘上的区块进行索引...</translation>
+ </message>
+ <message>
+ <source>Processing blocks on disk…</source>
+ <translation type="unfinished">处理磁盘上的区块...</translation>
+ </message>
+ <message>
+ <source>Connecting to peers…</source>
+ <translation type="unfinished">连到同行...</translation>
</message>
<message>
<source>Request payments (generates QR codes and bitcoin: URIs)</source>
@@ -420,7 +620,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message numerus="yes">
<source>Processed %n block(s) of transaction history.</source>
<translation type="unfinished">
- <numerusform>已處裡%n個區塊的交易紀錄</numerusform>
+ <numerusform>已处理%n个区块的交易历史。</numerusform>
</translation>
</message>
<message>
@@ -428,6 +628,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">落后 %1</translation>
</message>
<message>
+ <source>Catching up…</source>
+ <translation type="unfinished">赶上...</translation>
+ </message>
+ <message>
<source>Last received block was generated %1 ago.</source>
<translation type="unfinished">最新接收到的区块是在%1之前生成的。</translation>
</message>
@@ -452,28 +656,36 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">已是最新</translation>
</message>
<message>
+ <source>Load Partially Signed Bitcoin Transaction</source>
+ <translation type="unfinished">加载部分签名比特币交易(PSBT)</translation>
+ </message>
+ <message>
<source>Load PSBT from &amp;clipboard…</source>
- <translation type="unfinished">從剪貼簿載入PSBT</translation>
+ <translation type="unfinished">从剪贴板加载PSBT(&amp;C)...</translation>
+ </message>
+ <message>
+ <source>Load Partially Signed Bitcoin Transaction from clipboard</source>
+ <translation type="unfinished">从剪贴板中加载部分签名比特币交易(PSBT)</translation>
</message>
<message>
<source>Node window</source>
- <translation type="unfinished">结点窗口</translation>
+ <translation type="unfinished">节点窗口</translation>
</message>
<message>
<source>Open node debugging and diagnostic console</source>
- <translation type="unfinished">打开结点的调试和诊断控制台</translation>
+ <translation type="unfinished">打开节点调试与诊断控制台</translation>
</message>
<message>
<source>&amp;Sending addresses</source>
- <translation type="unfinished">&amp;发送地址</translation>
+ <translation type="unfinished">付款地址(&amp;S)</translation>
</message>
<message>
<source>&amp;Receiving addresses</source>
- <translation type="unfinished">&amp;接受地址</translation>
+ <translation type="unfinished">收款地址(&amp;R)</translation>
</message>
<message>
<source>Open a bitcoin: URI</source>
- <translation type="unfinished">打开比特币: URI</translation>
+ <translation type="unfinished">打开bitcoin:开头的URI</translation>
</message>
<message>
<source>Open Wallet</source>
@@ -485,21 +697,41 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Close wallet</source>
- <translation type="unfinished">关闭钱包</translation>
+ <translation type="unfinished">卸载钱包</translation>
</message>
<message>
<source>Restore Wallet…</source>
<extracomment>Name of the menu item that restores wallet from a backup file.</extracomment>
- <translation type="unfinished">恢復錢包...</translation>
+ <translation type="unfinished">恢复钱包...</translation>
</message>
<message>
<source>Restore a wallet from a backup file</source>
<extracomment>Status tip for Restore Wallet menu item</extracomment>
- <translation type="unfinished">從備份檔案中恢復錢包</translation>
+ <translation type="unfinished">从备份文件恢复钱包</translation>
+ </message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">关闭所有钱包</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">迁移一个钱包</translation>
</message>
<message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
+ <translation type="unfinished">显示 %1 帮助信息,获取可用命令行选项列表</translation>
+ </message>
+ <message>
+ <source>&amp;Mask values</source>
+ <translation type="unfinished">遮住数值(&amp;M)</translation>
+ </message>
+ <message>
+ <source>Mask the values in the Overview tab</source>
+ <translation type="unfinished">在“概况”标签页中不明文显示数值、只显示掩码</translation>
</message>
<message>
<source>default wallet</source>
@@ -507,21 +739,31 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>No wallets available</source>
- <translation type="unfinished">无可用钱包</translation>
+ <translation type="unfinished">没有可用的钱包</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">钱包数据</translation>
</message>
<message>
<source>Load Wallet Backup</source>
<extracomment>The title for Restore Wallet File Windows</extracomment>
- <translation type="unfinished">載入錢包備份</translation>
+ <translation type="unfinished">加载钱包备份</translation>
</message>
<message>
<source>Restore Wallet</source>
<extracomment>Title of pop-up window shown when the user is attempting to restore a wallet.</extracomment>
- <translation type="unfinished">恢復錢包</translation>
+ <translation type="unfinished">恢复钱包</translation>
+ </message>
+ <message>
+ <source>Wallet Name</source>
+ <extracomment>Label of the input field where the name of the wallet is entered.</extracomment>
+ <translation type="unfinished">钱包名称</translation>
</message>
<message>
<source>&amp;Window</source>
- <translation type="unfinished">&amp;窗口</translation>
+ <translation type="unfinished">窗口(&amp;W)</translation>
</message>
<message>
<source>Zoom</source>
@@ -541,129 +783,503 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>S&amp;how</source>
- <translation type="unfinished">&amp;顯示</translation>
+ <translation type="unfinished">显示(&amp;H)</translation>
</message>
<message numerus="yes">
<source>%n active connection(s) to Bitcoin network.</source>
<extracomment>A substring of the tooltip.</extracomment>
<translation type="unfinished">
- <numerusform> %n 与比特币网络接。</numerusform>
+ <numerusform>%n 条到比特币网络的活动连接</numerusform>
</translation>
</message>
<message>
+ <source>Click for more actions.</source>
+ <extracomment>A substring of the tooltip. "More actions" are available via the context menu.</extracomment>
+ <translation type="unfinished">点击查看更多操作。</translation>
+ </message>
+ <message>
+ <source>Show Peers tab</source>
+ <extracomment>A context menu item. The "Peers tab" is an element of the "Node window".</extracomment>
+ <translation type="unfinished">显示节点标签</translation>
+ </message>
+ <message>
+ <source>Disable network activity</source>
+ <extracomment>A context menu item.</extracomment>
+ <translation type="unfinished">禁用网络活动</translation>
+ </message>
+ <message>
+ <source>Enable network activity</source>
+ <extracomment>A context menu item. The network activity was disabled previously.</extracomment>
+ <translation type="unfinished">启用网络活动</translation>
+ </message>
+ <message>
<source>Pre-syncing Headers (%1%)…</source>
- <translation type="unfinished">預先同步標頭(%1%)</translation>
+ <translation type="unfinished">预同步区块头 (%1%)…</translation>
+ </message>
+ <message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">创建钱包时出错</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">无法创建新钱包,软件编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
</message>
<message>
<source>Error: %1</source>
<translation type="unfinished">错误: %1</translation>
</message>
- </context>
+ <message>
+ <source>Warning: %1</source>
+ <translation type="unfinished">警告: %1</translation>
+ </message>
+ <message>
+ <source>Date: %1
+</source>
+ <translation type="unfinished">日期: %1
+</translation>
+ </message>
+ <message>
+ <source>Amount: %1
+</source>
+ <translation type="unfinished">金额: %1
+</translation>
+ </message>
+ <message>
+ <source>Wallet: %1
+</source>
+ <translation type="unfinished">钱包: %1
+</translation>
+ </message>
+ <message>
+ <source>Type: %1
+</source>
+ <translation type="unfinished">类型: %1
+</translation>
+ </message>
+ <message>
+ <source>Label: %1
+</source>
+ <translation type="unfinished">标签: %1
+</translation>
+ </message>
+ <message>
+ <source>Address: %1
+</source>
+ <translation type="unfinished">地址: %1
+</translation>
+ </message>
+ <message>
+ <source>Sent transaction</source>
+ <translation type="unfinished">送出交易</translation>
+ </message>
+ <message>
+ <source>Incoming transaction</source>
+ <translation type="unfinished">流入交易</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;enabled&lt;/b&gt;</source>
+ <translation type="unfinished">HD密钥生成&lt;b&gt;启用&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>HD key generation is &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">HD密钥生成&lt;b&gt;禁用&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Private key &lt;b&gt;disabled&lt;/b&gt;</source>
+ <translation type="unfinished">私钥&lt;b&gt;禁用&lt;/b&gt;</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;unlocked&lt;/b&gt;</source>
+ <translation type="unfinished">钱包已被&lt;b&gt;加密&lt;/b&gt;,当前为&lt;b&gt;解锁&lt;/b&gt;状态</translation>
+ </message>
+ <message>
+ <source>Wallet is &lt;b&gt;encrypted&lt;/b&gt; and currently &lt;b&gt;locked&lt;/b&gt;</source>
+ <translation type="unfinished">钱包已被&lt;b&gt;加密&lt;/b&gt;,当前为&lt;b&gt;锁定&lt;/b&gt;状态</translation>
+ </message>
+ <message>
+ <source>Original message:</source>
+ <translation type="unfinished">原消息:</translation>
+ </message>
+</context>
+<context>
+ <name>UnitDisplayStatusBarControl</name>
+ <message>
+ <source>Unit to show amounts in. Click to select another unit.</source>
+ <translation type="unfinished">金额单位。单击选择别的单位。</translation>
+ </message>
+</context>
<context>
<name>CoinControlDialog</name>
<message>
+ <source>Coin Selection</source>
+ <translation type="unfinished">手动选币</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">总量:</translation>
+ </message>
+ <message>
+ <source>Bytes:</source>
+ <translation type="unfinished">字节数:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">金额:</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">费用:</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">加上交易费用后:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">找零:</translation>
+ </message>
+ <message>
+ <source>(un)select all</source>
+ <translation type="unfinished">全(不)选</translation>
+ </message>
+ <message>
+ <source>Tree mode</source>
+ <translation type="unfinished">树状模式</translation>
+ </message>
+ <message>
+ <source>List mode</source>
+ <translation type="unfinished">列表模式</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">金额</translation>
+ </message>
+ <message>
+ <source>Received with label</source>
+ <translation type="unfinished">收款标签</translation>
+ </message>
+ <message>
+ <source>Received with address</source>
+ <translation type="unfinished">收款地址</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">日期</translation>
+ </message>
+ <message>
+ <source>Confirmations</source>
+ <translation type="unfinished">确认</translation>
+ </message>
+ <message>
+ <source>Confirmed</source>
+ <translation type="unfinished">已确认</translation>
+ </message>
+ <message>
<source>Copy amount</source>
<translation type="unfinished">复制金额</translation>
</message>
<message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">复制地址(&amp;C)</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">复制标签(&amp;L)</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">复制金额(&amp;A)</translation>
+ </message>
+ <message>
<source>Copy transaction &amp;ID and output index</source>
- <translation type="unfinished">複製交易&amp;ID與輸出序號</translation>
+ <translation type="unfinished">复制交易&amp;ID和输出序号</translation>
+ </message>
+ <message>
+ <source>L&amp;ock unspent</source>
+ <translation type="unfinished">锁定未花费(&amp;O)</translation>
+ </message>
+ <message>
+ <source>&amp;Unlock unspent</source>
+ <translation type="unfinished">解锁未花费(&amp;U)</translation>
+ </message>
+ <message>
+ <source>Copy quantity</source>
+ <translation type="unfinished">复制数目</translation>
</message>
<message>
<source>Copy fee</source>
<translation type="unfinished">复制手续费</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
+ <source>Copy after fee</source>
+ <translation type="unfinished">复制含交易费的金额</translation>
+ </message>
+ <message>
+ <source>Copy bytes</source>
+ <translation type="unfinished">复制字节数</translation>
+ </message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">复制找零金额</translation>
+ </message>
+ <message>
+ <source>(%1 locked)</source>
+ <translation type="unfinished">(%1已锁定)</translation>
</message>
<message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">当任何一个收款金额小于目前的粉尘金额阈值时,文字会变红色。</translation>
+ <source>Can vary +/- %1 satoshi(s) per input.</source>
+ <translation type="unfinished">每个输入可能有 +/- %1 聪 (satoshi) 的误差。</translation>
</message>
<message>
<source>(no label)</source>
<translation type="unfinished">(无标签)</translation>
</message>
- </context>
+ <message>
+ <source>change from %1 (%2)</source>
+ <translation type="unfinished">来自 %1 的找零 (%2)</translation>
+ </message>
+ <message>
+ <source>(change)</source>
+ <translation type="unfinished">(找零)</translation>
+ </message>
+</context>
<context>
<name>CreateWalletActivity</name>
<message>
+ <source>Create Wallet</source>
+ <extracomment>Title of window indicating the progress of creation of a new wallet.</extracomment>
+ <translation type="unfinished">创建钱包</translation>
+ </message>
+ <message>
<source>Creating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the create wallet progress window which indicates to the user which wallet is currently being created.</extracomment>
- <translation type="unfinished">正在创建钱包&lt;b&gt;%1&lt;/b&gt;...</translation>
+ <translation type="unfinished">创建钱包&lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>Create wallet failed</source>
+ <translation type="unfinished">创建钱包失败</translation>
+ </message>
+ <message>
+ <source>Create wallet warning</source>
+ <translation type="unfinished">创建钱包警告</translation>
+ </message>
+ <message>
+ <source>Can't list signers</source>
+ <translation type="unfinished">无法列出签名器</translation>
</message>
<message>
<source>Too many external signers found</source>
- <translation type="unfinished">偵測到的外接簽名器過多</translation>
+ <translation type="unfinished">找到的外部签名器太多</translation>
+ </message>
+</context>
+<context>
+ <name>LoadWalletsActivity</name>
+ <message>
+ <source>Load Wallets</source>
+ <extracomment>Title of progress window which is displayed when wallets are being loaded.</extracomment>
+ <translation type="unfinished">加载钱包</translation>
+ </message>
+ <message>
+ <source>Loading wallets…</source>
+ <extracomment>Descriptive text of the load wallets progress window which indicates to the user that wallets are currently being loaded.</extracomment>
+ <translation type="unfinished">加载钱包...</translation>
+ </message>
+</context>
+<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要迁移钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">迁移钱包将会把这个钱包转换成一个或多个输出描述符钱包。将会需要创建一个新的钱包备份。
+如果这个钱包包含仅观察脚本,将会创建包含那些仅观察脚本的新钱包。
+如果这个钱包包含可解但又未被监视的脚本,将会创建一个不同的钱包以包含那些脚本。
+
+迁移过程开始前将会创建一个钱包备份。备份文件将会被命名为 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然后被保存在该钱包所在目录下。如果迁移过程出错,可以使用“恢复钱包”功能恢复备份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">迁移钱包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功迁移钱包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 仅观察脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 可解但又未被监视的脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">迁移失败</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">迁移成功</translation>
</message>
</context>
<context>
<name>OpenWalletActivity</name>
<message>
+ <source>Open wallet failed</source>
+ <translation type="unfinished">打开钱包失败</translation>
+ </message>
+ <message>
+ <source>Open wallet warning</source>
+ <translation type="unfinished">打开钱包警告</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+ <message>
<source>Open Wallet</source>
<extracomment>Title of window indicating the progress of opening of a wallet.</extracomment>
<translation type="unfinished">打开钱包</translation>
</message>
- </context>
+ <message>
+ <source>Opening Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <extracomment>Descriptive text of the open wallet progress window which indicates to the user which wallet is currently being opened.</extracomment>
+ <translation type="unfinished">打开钱包&lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+</context>
<context>
<name>RestoreWalletActivity</name>
<message>
<source>Restore Wallet</source>
<extracomment>Title of progress window which is displayed when wallets are being restored.</extracomment>
- <translation type="unfinished">恢復錢包</translation>
+ <translation type="unfinished">恢复钱包</translation>
</message>
<message>
<source>Restoring Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
<extracomment>Descriptive text of the restore wallets progress window which indicates to the user that wallets are currently being restored.</extracomment>
- <translation type="unfinished">正在恢復錢包&lt;b&gt;%1&lt;/b&gt;...</translation>
+ <translation type="unfinished">恢复钱包&lt;b&gt;%1&lt;/b&gt;…</translation>
</message>
<message>
<source>Restore wallet failed</source>
<extracomment>Title of message box which is displayed when the wallet could not be restored.</extracomment>
- <translation type="unfinished">恢復錢包失敗</translation>
+ <translation type="unfinished">恢复钱包失败</translation>
</message>
<message>
<source>Restore wallet warning</source>
<extracomment>Title of message box which is displayed when the wallet is restored with some warning.</extracomment>
- <translation type="unfinished">恢復錢包警告</translation>
+ <translation type="unfinished">恢复钱包警告</translation>
</message>
<message>
<source>Restore wallet message</source>
<extracomment>Title of message box which is displayed when the wallet is successfully restored.</extracomment>
- <translation type="unfinished">恢復錢包訊息</translation>
+ <translation type="unfinished">恢复钱包消息</translation>
</message>
</context>
<context>
<name>WalletController</name>
<message>
<source>Close wallet</source>
- <translation type="unfinished">关闭钱包</translation>
+ <translation type="unfinished">卸载钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to close the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要关闭钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
</message>
<message>
<source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
<translation type="unfinished">启用修剪时,如果一个钱包被卸载太久,就必须重新同步整条区块链才能再次加载它。</translation>
</message>
- </context>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">关闭所有钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to close all wallets?</source>
+ <translation type="unfinished">您确定想要关闭所有钱包吗?</translation>
+ </message>
+</context>
<context>
<name>CreateWalletDialog</name>
<message>
+ <source>Create Wallet</source>
+ <translation type="unfinished">创建钱包</translation>
+ </message>
+ <message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距离创建您的新钱包只有一步之遥了!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">请指定一个名字,如果需要的话还可以启用高级选项</translation>
+ </message>
+ <message>
+ <source>Wallet Name</source>
+ <translation type="unfinished">钱包名称</translation>
+ </message>
+ <message>
+ <source>Wallet</source>
+ <translation type="unfinished">钱包</translation>
+ </message>
+ <message>
+ <source>Encrypt the wallet. The wallet will be encrypted with a passphrase of your choice.</source>
+ <translation type="unfinished">加密钱包。将会使用您指定的密码将钱包加密。</translation>
+ </message>
+ <message>
+ <source>Encrypt Wallet</source>
+ <translation type="unfinished">加密钱包</translation>
+ </message>
+ <message>
<source>Advanced Options</source>
<translation type="unfinished">进阶设定</translation>
</message>
<message>
+ <source>Disable private keys for this wallet. Wallets with private keys disabled will have no private keys and cannot have an HD seed or imported private keys. This is ideal for watch-only wallets.</source>
+ <translation type="unfinished">禁用此钱包的私钥。被禁用私钥的钱包将不会含有任何私钥,而且也不能含有HD种子或导入的私钥。作为仅观察钱包,这是比较理想的。</translation>
+ </message>
+ <message>
<source>Disable Private Keys</source>
<translation type="unfinished">禁用私钥</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">使用输出描述符进行scriptPubKey管理</translation>
+ <source>Make a blank wallet. Blank wallets do not initially have private keys or scripts. Private keys and addresses can be imported, or an HD seed can be set, at a later time.</source>
+ <translation type="unfinished">创建一个空白的钱包。空白钱包最初不含有任何私钥或脚本。可以以后再导入私钥和地址,或设置HD种子。</translation>
</message>
<message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ <source>Make Blank Wallet</source>
+ <translation type="unfinished">创建空白钱包</translation>
</message>
- </context>
+ <message>
+ <source>Use an external signing device such as a hardware wallet. Configure the external signer script in wallet preferences first.</source>
+ <translation type="unfinished">使用像是硬件钱包这样的外部签名设备。请在钱包偏好设置中先配置号外部签名器脚本。</translation>
+ </message>
+ <message>
+ <source>External signer</source>
+ <translation type="unfinished">外部签名器</translation>
+ </message>
+ <message>
+ <source>Create</source>
+ <translation type="unfinished">创建</translation>
+ </message>
+ <message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">编译时未启用外部签名支持 (外部签名需要这个功能)</translation>
+ </message>
+</context>
<context>
<name>EditAddressDialog</name>
<message>
@@ -679,14 +1295,34 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">与此地址关联的标签</translation>
</message>
<message>
+ <source>The address associated with this address list entry. This can only be modified for sending addresses.</source>
+ <translation type="unfinished">跟這個地址清單關聯的地址。只有發送地址能被修改。</translation>
+ </message>
+ <message>
+ <source>&amp;Address</source>
+ <translation type="unfinished">地址(&amp;A)</translation>
+ </message>
+ <message>
<source>New sending address</source>
<translation type="unfinished">新建付款地址</translation>
</message>
<message>
+ <source>Edit receiving address</source>
+ <translation type="unfinished">编辑收款地址</translation>
+ </message>
+ <message>
<source>Edit sending address</source>
<translation type="unfinished">编辑付款地址</translation>
</message>
<message>
+ <source>The entered address "%1" is not a valid Bitcoin address.</source>
+ <translation type="unfinished">输入的地址 %1 并不是有效的比特币地址。</translation>
+ </message>
+ <message>
+ <source>Address "%1" already exists as a receiving address with label "%2" and so cannot be added as a sending address.</source>
+ <translation type="unfinished">地址“%1”已经存在,它是一个收款地址,标签为“%2”,所以它不能作为一个付款地址被添加进来。</translation>
+ </message>
+ <message>
<source>The entered address "%1" is already in the address book with label "%2".</source>
<translation type="unfinished">输入的地址“%1”已经存在于地址簿中,标签为“%2”。</translation>
</message>
@@ -694,68 +1330,262 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Could not unlock wallet.</source>
<translation type="unfinished">无法解锁钱包。</translation>
</message>
- </context>
+ <message>
+ <source>New key generation failed.</source>
+ <translation type="unfinished">生成新密钥失败。</translation>
+ </message>
+</context>
<context>
<name>FreespaceChecker</name>
<message>
+ <source>A new data directory will be created.</source>
+ <translation type="unfinished">一个新的数据目录将被创建。</translation>
+ </message>
+ <message>
+ <source>name</source>
+ <translation type="unfinished">名称</translation>
+ </message>
+ <message>
+ <source>Directory already exists. Add %1 if you intend to create a new directory here.</source>
+ <translation type="unfinished">目录已存在。如果您打算在这里创建一个新目录,请添加 %1。</translation>
+ </message>
+ <message>
+ <source>Path already exists, and is not a directory.</source>
+ <translation type="unfinished">路径已存在,并且不是一个目录。</translation>
+ </message>
+ <message>
<source>Cannot create data directory here.</source>
<translation type="unfinished">无法在此创建数据目录。</translation>
</message>
</context>
<context>
<name>Intro</name>
+ <message>
+ <source>Bitcoin</source>
+ <translation type="unfinished">比特币</translation>
+ </message>
<message numerus="yes">
<source>%n GB of space available</source>
<translation type="unfinished">
- <numerusform>%nGB可用</numerusform>
+ <numerusform>可用空间 %n GB</numerusform>
</translation>
</message>
<message numerus="yes">
<source>(of %n GB needed)</source>
<translation type="unfinished">
- <numerusform>(需要 %n GB)</numerusform>
+ <numerusform>(需要 %n GB的空间)</numerusform>
</translation>
</message>
<message numerus="yes">
<source>(%n GB needed for full chain)</source>
<translation type="unfinished">
- <numerusform>(完整區塊鏈需要%n GB)</numerusform>
+ <numerusform>(保存完整的链需要 %n GB)</numerusform>
</translation>
</message>
<message>
<source>Choose data directory</source>
<translation type="unfinished">选择数据目录</translation>
</message>
+ <message>
+ <source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
+ <translation type="unfinished">此目录中至少会保存 %1 GB 的数据,并且大小还会随着时间增长。</translation>
+ </message>
+ <message>
+ <source>Approximately %1 GB of data will be stored in this directory.</source>
+ <translation type="unfinished">会在此目录中存储约 %1 GB 的数据。</translation>
+ </message>
<message numerus="yes">
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
<translation type="unfinished">
- <numerusform>(sufficient to restore backups %n day(s) old)</numerusform>
+ <numerusform>(足以恢复 %n 天之内的备份)</numerusform>
</translation>
</message>
<message>
+ <source>%1 will download and store a copy of the Bitcoin block chain.</source>
+ <translation type="unfinished">%1 将会下载并存储比特币区块链。</translation>
+ </message>
+ <message>
+ <source>The wallet will also be stored in this directory.</source>
+ <translation type="unfinished">钱包也会被保存在这个目录中。</translation>
+ </message>
+ <message>
+ <source>Error: Specified data directory "%1" cannot be created.</source>
+ <translation type="unfinished">错误:无法创建指定的数据目录 "%1"</translation>
+ </message>
+ <message>
<source>Error</source>
<translation type="unfinished">错误</translation>
</message>
<message>
+ <source>Welcome</source>
+ <translation type="unfinished">欢迎</translation>
+ </message>
+ <message>
+ <source>Welcome to %1.</source>
+ <translation type="unfinished">欢迎使用 %1</translation>
+ </message>
+ <message>
+ <source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
+ <translation type="unfinished">由于这是第一次启动此程序,您可以选择%1存储数据的位置</translation>
+ </message>
+ <message>
+ <source>Limit block chain storage to</source>
+ <translation type="unfinished">将区块链存储限制到</translation>
+ </message>
+ <message>
+ <source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
+ <translation type="unfinished">取消此设置需要重新下载整个区块链。先完整下载整条链再进行修剪会更快。这会禁用一些高级功能。</translation>
+ </message>
+ <message>
<source>This initial synchronisation is very demanding, and may expose hardware problems with your computer that had previously gone unnoticed. Each time you run %1, it will continue downloading where it left off.</source>
<translation type="unfinished">初始化同步过程是非常吃力的,同时可能会暴露您之前没有注意到的电脑硬件问题。你每次启动%1时,它都会从之前中断的地方继续下载。</translation>
</message>
<message>
<source>When you click OK, %1 will begin to download and process the full %4 block chain (%2 GB) starting with the earliest transactions in %3 when %4 initially launched.</source>
- <translation type="unfinished">當你點擊「確認」,%1會開始下載,並從%3年最早的交易,處裡整個%4區塊鏈(大小:%2GB)</translation>
+ <translation type="unfinished">当你单击确认后,%1 将会从%4在%3年创始时最早的交易开始,下载并处理完整的 %4 区块链 (%2 GB)。</translation>
</message>
- </context>
+ <message>
+ <source>If you have chosen to limit block chain storage (pruning), the historical data must still be downloaded and processed, but will be deleted afterward to keep your disk usage low.</source>
+ <translation type="unfinished">如果你选择限制区块链存储大小(区块链裁剪模式),程序依然会下载并处理全部历史数据,只是不必须的部分会在使用后被删除,以占用最少的存储空间。</translation>
+ </message>
+ <message>
+ <source>Use the default data directory</source>
+ <translation type="unfinished">使用默认的数据目录</translation>
+ </message>
+ <message>
+ <source>Use a custom data directory:</source>
+ <translation type="unfinished">使用自定义的数据目录:</translation>
+ </message>
+</context>
+<context>
+ <name>HelpMessageDialog</name>
+ <message>
+ <source>version</source>
+ <translation type="unfinished">版本</translation>
+ </message>
+ <message>
+ <source>About %1</source>
+ <translation type="unfinished">关于 %1</translation>
+ </message>
+ <message>
+ <source>Command-line options</source>
+ <translation type="unfinished">命令行选项</translation>
+ </message>
+</context>
+<context>
+ <name>ShutdownWindow</name>
+ <message>
+ <source>%1 is shutting down…</source>
+ <translation type="unfinished">%1正在关闭...</translation>
+ </message>
+ <message>
+ <source>Do not shut down the computer until this window disappears.</source>
+ <translation type="unfinished">在此窗口消失前不要关闭计算机。</translation>
+ </message>
+</context>
<context>
<name>ModalOverlay</name>
<message>
+ <source>Form</source>
+ <translation type="unfinished">窗体</translation>
+ </message>
+ <message>
+ <source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
+ <translation type="unfinished">近期交易可能尚未显示,因此当前余额可能不准确。以上信息将在与比特币网络完全同步后更正。详情如下</translation>
+ </message>
+ <message>
+ <source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
+ <translation type="unfinished">尝试使用受未可见交易影响的余额将不被网络接受。</translation>
+ </message>
+ <message>
+ <source>Number of blocks left</source>
+ <translation type="unfinished">剩余区块数量</translation>
+ </message>
+ <message>
+ <source>Unknown…</source>
+ <translation type="unfinished">未知...</translation>
+ </message>
+ <message>
+ <source>calculating…</source>
+ <translation type="unfinished">计算中...</translation>
+ </message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">上一区块时间</translation>
+ </message>
+ <message>
+ <source>Progress</source>
+ <translation type="unfinished">进度</translation>
+ </message>
+ <message>
+ <source>Progress increase per hour</source>
+ <translation type="unfinished">每小时进度增加</translation>
+ </message>
+ <message>
+ <source>Estimated time left until synced</source>
+ <translation type="unfinished">预计剩余同步时间</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">隐藏</translation>
+ </message>
+ <message>
+ <source>%1 is currently syncing. It will download headers and blocks from peers and validate them until reaching the tip of the block chain.</source>
+ <translation type="unfinished">%1目前正在同步中。它会从其他节点下载区块头和区块数据并进行验证,直到抵达区块链尖端。</translation>
+ </message>
+ <message>
+ <source>Unknown. Syncing Headers (%1, %2%)…</source>
+ <translation type="unfinished">未知。同步区块头(%1, %2%)...</translation>
+ </message>
+ <message>
<source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
- <translation type="unfinished">不明。正在預先同步標頭(%1, %2%)...</translation>
+ <translation type="unfinished">未知。预同步区块头 (%1, %2%)…</translation>
+ </message>
+</context>
+<context>
+ <name>OpenURIDialog</name>
+ <message>
+ <source>Open bitcoin URI</source>
+ <translation type="unfinished">打开比特币URI</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <extracomment>Tooltip text for button that allows you to paste an address that is in your clipboard.</extracomment>
+ <translation type="unfinished">从剪贴板粘贴地址</translation>
</message>
</context>
<context>
<name>OptionsDialog</name>
<message>
+ <source>Options</source>
+ <translation type="unfinished">选项</translation>
+ </message>
+ <message>
+ <source>&amp;Main</source>
+ <translation type="unfinished">主要(&amp;M)</translation>
+ </message>
+ <message>
+ <source>Automatically start %1 after logging in to the system.</source>
+ <translation type="unfinished">在登入系统后自动启动 %1</translation>
+ </message>
+ <message>
+ <source>&amp;Start %1 on system login</source>
+ <translation type="unfinished">系统登入时启动 %1 (&amp;S)</translation>
+ </message>
+ <message>
+ <source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
+ <translation type="unfinished">启用区块修剪会显著减小存储交易对磁盘空间的需求。所有的区块仍然会被完整校验。取消这个设置需要重新下载整条区块链。</translation>
+ </message>
+ <message>
+ <source>Size of &amp;database cache</source>
+ <translation type="unfinished">数据库缓存大小(&amp;D)</translation>
+ </message>
+ <message>
+ <source>Number of script &amp;verification threads</source>
+ <translation type="unfinished">脚本验证线程数(&amp;V)</translation>
+ </message>
+ <message>
<source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
<translation type="unfinished">与%1兼容的脚本文件路径(例如 C:\Downloads\hwi.exe 或者 /Users/you/Downloads/hwi.py )。注意:恶意软件可以偷币!</translation>
</message>
@@ -777,25 +1607,29 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Open the %1 configuration file from the working directory.</source>
- <translation type="unfinished">從工作目錄開啟設定檔 %1。</translation>
+ <translation type="unfinished">从工作目录下打开配置文件 %1。</translation>
</message>
<message>
<source>Open Configuration File</source>
- <translation type="unfinished">開啟設定檔</translation>
+ <translation type="unfinished">打开配置文件</translation>
</message>
<message>
<source>Reset all client options to default.</source>
- <translation type="unfinished">重設所有客戶端軟體選項成預設值。</translation>
+ <translation type="unfinished">恢复客户端的缺省设置</translation>
</message>
<message>
<source>&amp;Reset Options</source>
- <translation type="unfinished">重設選項(&amp;R)</translation>
+ <translation type="unfinished">恢复缺省设置(&amp;R)</translation>
</message>
<message>
<source>&amp;Network</source>
<translation type="unfinished">网络(&amp;N)</translation>
</message>
<message>
+ <source>Prune &amp;block storage to</source>
+ <translation type="unfinished">将区块存储修剪至(&amp;B)</translation>
+ </message>
+ <message>
<source>Reverting this setting requires re-downloading the entire blockchain.</source>
<translation type="unfinished">警告:还原此设置需要重新下载整个区块链。</translation>
</message>
@@ -811,7 +1645,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>(0 = auto, &lt;0 = leave that many cores free)</source>
- <translation type="unfinished">(0 表示程式自動決定,小於 0 表示保留處理器核心不用的數目)</translation>
+ <translation type="unfinished">(0 = 自动, &lt;0 = 保持指定数量的CPU核心空闲)</translation>
</message>
<message>
<source>This allows you or a third party tool to communicate with the node through command-line and JSON-RPC commands.</source>
@@ -824,6 +1658,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">启用R&amp;PC服务器</translation>
</message>
<message>
+ <source>W&amp;allet</source>
+ <translation type="unfinished">钱包(&amp;A)</translation>
+ </message>
+ <message>
<source>Whether to set subtract fee from amount as default or not.</source>
<extracomment>Tooltip text for Options window setting that sets subtracting the fee from a sending amount as default.</extracomment>
<translation type="unfinished">是否要默认从金额中减去手续费。</translation>
@@ -834,10 +1672,22 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">默认从金额中减去交易手续费(&amp;F)</translation>
</message>
<message>
+ <source>Expert</source>
+ <translation type="unfinished">专家</translation>
+ </message>
+ <message>
+ <source>Enable coin &amp;control features</source>
+ <translation type="unfinished">启用手动选币功能(&amp;C)</translation>
+ </message>
+ <message>
<source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source>
<translation type="unfinished">如果您禁止动用尚未确认的找零资金,则一笔交易的找零资金至少需要有1个确认后才能动用。这同时也会影响账户余额的计算。</translation>
</message>
<message>
+ <source>&amp;Spend unconfirmed change</source>
+ <translation type="unfinished">动用尚未确认的找零资金(&amp;S)</translation>
+ </message>
+ <message>
<source>Enable &amp;PSBT controls</source>
<extracomment>An options window setting to enable PSBT controls.</extracomment>
<translation type="unfinished">启用&amp;PSBT控件</translation>
@@ -848,12 +1698,104 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">是否要显示PSBT控件</translation>
</message>
<message>
+ <source>External Signer (e.g. hardware wallet)</source>
+ <translation type="unfinished">外部签名器(例如硬件钱包)</translation>
+ </message>
+ <message>
<source>&amp;External signer script path</source>
<translation type="unfinished">外部签名器脚本路径(&amp;E)</translation>
</message>
<message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
+ <translation type="unfinished">自动在路由器中为比特币客户端打开端口。只有当您的路由器开启了 UPnP 选项时此功能才会有用。</translation>
+ </message>
+ <message>
+ <source>Map port using &amp;UPnP</source>
+ <translation type="unfinished">使用 &amp;UPnP 映射端口</translation>
+ </message>
+ <message>
+ <source>Automatically open the Bitcoin client port on the router. This only works when your router supports NAT-PMP and it is enabled. The external port could be random.</source>
+ <translation type="unfinished">自动在路由器中为比特币客户端打开端口。只有当您的路由器支持 NAT-PMP 功能并开启它,这个功能才会正常工作。外边端口可以是随机的。</translation>
+ </message>
+ <message>
+ <source>Map port using NA&amp;T-PMP</source>
+ <translation type="unfinished">使用 NA&amp;T-PMP 映射端口</translation>
+ </message>
+ <message>
+ <source>Accept connections from outside.</source>
+ <translation type="unfinished">接受外部连接。</translation>
+ </message>
+ <message>
+ <source>Allow incomin&amp;g connections</source>
+ <translation type="unfinished">允许传入连接(&amp;G)</translation>
+ </message>
+ <message>
+ <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source>
+ <translation type="unfinished">通过 SOCKS5 代理连接比特币网络。</translation>
+ </message>
+ <message>
+ <source>&amp;Connect through SOCKS5 proxy (default proxy):</source>
+ <translation type="unfinished">通过 SO&amp;CKS5 代理连接(默认代理):</translation>
+ </message>
+ <message>
+ <source>Proxy &amp;IP:</source>
+ <translation type="unfinished">代理服务器 &amp;IP:</translation>
+ </message>
+ <message>
+ <source>&amp;Port:</source>
+ <translation type="unfinished">端口(&amp;P):</translation>
+ </message>
+ <message>
+ <source>Port of the proxy (e.g. 9050)</source>
+ <translation type="unfinished">代理服务器端口(例如 9050)</translation>
+ </message>
+ <message>
+ <source>Used for reaching peers via:</source>
+ <translation type="unfinished">在走这些途径连接到节点的时候启用:</translation>
+ </message>
+ <message>
<source>&amp;Window</source>
- <translation type="unfinished">&amp;窗口</translation>
+ <translation type="unfinished">窗口(&amp;W)</translation>
+ </message>
+ <message>
+ <source>Show the icon in the system tray.</source>
+ <translation type="unfinished">在通知区域显示图标。</translation>
+ </message>
+ <message>
+ <source>&amp;Show tray icon</source>
+ <translation type="unfinished">显示通知区域图标(&amp;S)</translation>
+ </message>
+ <message>
+ <source>Show only a tray icon after minimizing the window.</source>
+ <translation type="unfinished">最小化窗口后仅显示托盘图标</translation>
+ </message>
+ <message>
+ <source>&amp;Minimize to the tray instead of the taskbar</source>
+ <translation type="unfinished">最小化到托盘(&amp;M)</translation>
+ </message>
+ <message>
+ <source>M&amp;inimize on close</source>
+ <translation type="unfinished">单击关闭按钮时最小化(&amp;I)</translation>
+ </message>
+ <message>
+ <source>&amp;Display</source>
+ <translation type="unfinished">显示(&amp;D)</translation>
+ </message>
+ <message>
+ <source>User Interface &amp;language:</source>
+ <translation type="unfinished">用户界面语言(&amp;L):</translation>
+ </message>
+ <message>
+ <source>The user interface language can be set here. This setting will take effect after restarting %1.</source>
+ <translation type="unfinished">可以在这里设定用户界面的语言。这个设定在重启 %1 后才会生效。</translation>
+ </message>
+ <message>
+ <source>&amp;Unit to show amounts in:</source>
+ <translation type="unfinished">比特币金额单位(&amp;U):</translation>
+ </message>
+ <message>
+ <source>Choose the default subdivision unit to show in the interface and when sending coins.</source>
+ <translation type="unfinished">选择显示及发送比特币时使用的最小单位。</translation>
</message>
<message>
<source>Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
@@ -864,19 +1806,105 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">第三方交易网址(&amp;T)</translation>
</message>
<message>
+ <source>Whether to show coin control features or not.</source>
+ <translation type="unfinished">是否显示手动选币功能。</translation>
+ </message>
+ <message>
+ <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor onion services.</source>
+ <translation type="unfinished">连接比特币网络时专门为Tor onion服务使用另一个 SOCKS5 代理。</translation>
+ </message>
+ <message>
+ <source>Use separate SOCKS&amp;5 proxy to reach peers via Tor onion services:</source>
+ <translation type="unfinished">连接Tor onion服务节点时使用另一个SOCKS&amp;5代理:</translation>
+ </message>
+ <message>
+ <source>Monospaced font in the Overview tab:</source>
+ <translation type="unfinished">在概览标签页的等宽字体:</translation>
+ </message>
+ <message>
+ <source>embedded "%1"</source>
+ <translation type="unfinished">嵌入的 "%1"</translation>
+ </message>
+ <message>
+ <source>closest matching "%1"</source>
+ <translation type="unfinished">与 "%1" 最接近的匹配</translation>
+ </message>
+ <message>
+ <source>&amp;OK</source>
+ <translation type="unfinished">确定(&amp;O)</translation>
+ </message>
+ <message>
+ <source>&amp;Cancel</source>
+ <translation type="unfinished">取消(&amp;C)</translation>
+ </message>
+ <message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">编译时未启用外部签名支持 (外部签名需要这个功能)</translation>
+ </message>
+ <message>
+ <source>default</source>
+ <translation type="unfinished">默认</translation>
+ </message>
+ <message>
+ <source>none</source>
+ <translation type="unfinished">无</translation>
+ </message>
+ <message>
+ <source>Confirm options reset</source>
+ <extracomment>Window title text of pop-up window shown when the user has chosen to reset options.</extracomment>
+ <translation type="unfinished">确认恢复默认设置</translation>
+ </message>
+ <message>
+ <source>Client restart required to activate changes.</source>
+ <extracomment>Text explaining that the settings changed will not come into effect until the client is restarted.</extracomment>
+ <translation type="unfinished">需要重启客户端才能使更改生效。</translation>
+ </message>
+ <message>
<source>Current settings will be backed up at "%1".</source>
<extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
<translation type="unfinished">当前设置将会被备份到 "%1"。</translation>
</message>
<message>
+ <source>Client will be shut down. Do you want to proceed?</source>
+ <extracomment>Text asking the user to confirm if they would like to proceed with a client shutdown.</extracomment>
+ <translation type="unfinished">客户端即将关闭,您想继续吗?</translation>
+ </message>
+ <message>
+ <source>Configuration options</source>
+ <extracomment>Window title text of pop-up box that allows opening up of configuration file.</extracomment>
+ <translation type="unfinished">配置选项</translation>
+ </message>
+ <message>
+ <source>The configuration file is used to specify advanced user options which override GUI settings. Additionally, any command-line options will override this configuration file.</source>
+ <extracomment>Explanatory text about the priority order of instructions considered by client. The order from high to low being: command-line, configuration file, GUI settings.</extracomment>
+ <translation type="unfinished">配置文件可以用来设置高级选项。配置文件会覆盖设置界面窗口中的选项。此外,命令行会覆盖配置文件指定的选项。</translation>
+ </message>
+ <message>
<source>Continue</source>
<translation type="unfinished">继续</translation>
</message>
<message>
+ <source>Cancel</source>
+ <translation type="unfinished">取消</translation>
+ </message>
+ <message>
<source>Error</source>
<translation type="unfinished">错误</translation>
</message>
- </context>
+ <message>
+ <source>The configuration file could not be opened.</source>
+ <translation type="unfinished">无法打开配置文件。</translation>
+ </message>
+ <message>
+ <source>This change would require a client restart.</source>
+ <translation type="unfinished">此更改需要重启客户端。</translation>
+ </message>
+ <message>
+ <source>The supplied proxy address is invalid.</source>
+ <translation type="unfinished">提供的代理服务器地址无效。</translation>
+ </message>
+</context>
<context>
<name>OptionsModel</name>
<message>
@@ -885,23 +1913,268 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>OverviewPage</name>
+ <message>
+ <source>Form</source>
+ <translation type="unfinished">窗体</translation>
+ </message>
+ <message>
+ <source>The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet.</source>
+ <translation type="unfinished">现在显示的消息可能是过期的。在连接上比特币网络节点后,您的钱包将自动与网络同步,但是这个过程还没有完成。</translation>
+ </message>
+ <message>
+ <source>Watch-only:</source>
+ <translation type="unfinished">仅观察:</translation>
+ </message>
+ <message>
+ <source>Available:</source>
+ <translation type="unfinished">可使用的余额:</translation>
+ </message>
+ <message>
+ <source>Your current spendable balance</source>
+ <translation type="unfinished">您当前可使用的余额</translation>
+ </message>
+ <message>
+ <source>Pending:</source>
+ <translation type="unfinished">等待中的余额:</translation>
+ </message>
+ <message>
+ <source>Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source>
+ <translation type="unfinished">尚未确认的交易总额,未计入当前余额</translation>
+ </message>
+ <message>
+ <source>Immature:</source>
+ <translation type="unfinished">未成熟的:</translation>
+ </message>
+ <message>
+ <source>Mined balance that has not yet matured</source>
+ <translation type="unfinished">尚未成熟的挖矿收入余额</translation>
+ </message>
+ <message>
+ <source>Balances</source>
+ <translation type="unfinished">余额</translation>
+ </message>
+ <message>
+ <source>Total:</source>
+ <translation type="unfinished">总额:</translation>
+ </message>
+ <message>
+ <source>Your current total balance</source>
+ <translation type="unfinished">您当前的总余额</translation>
+ </message>
+ <message>
+ <source>Your current balance in watch-only addresses</source>
+ <translation type="unfinished">您当前在仅观察观察地址中的余额</translation>
+ </message>
+ <message>
+ <source>Spendable:</source>
+ <translation type="unfinished">可动用:</translation>
+ </message>
+ <message>
+ <source>Recent transactions</source>
+ <translation type="unfinished">最近交易</translation>
+ </message>
+ <message>
+ <source>Unconfirmed transactions to watch-only addresses</source>
+ <translation type="unfinished">仅观察地址的未确认交易</translation>
+ </message>
+ <message>
+ <source>Mined balance in watch-only addresses that has not yet matured</source>
+ <translation type="unfinished">仅观察地址中尚未成熟的挖矿收入余额:</translation>
+ </message>
+ <message>
+ <source>Current total balance in watch-only addresses</source>
+ <translation type="unfinished">仅观察地址中的当前总余额</translation>
+ </message>
+ <message>
+ <source>Privacy mode activated for the Overview tab. To unmask the values, uncheck Settings-&gt;Mask values.</source>
+ <translation type="unfinished">“概况”标签页已启用隐私模式。要明文显示数值,请在设置中取消勾选“不明文显示数值”。</translation>
+ </message>
+</context>
+<context>
<name>PSBTOperationsDialog</name>
<message>
<source>PSBT Operations</source>
<translation type="unfinished">PSBT操作</translation>
</message>
<message>
+ <source>Sign Tx</source>
+ <translation type="unfinished">签名交易</translation>
+ </message>
+ <message>
+ <source>Broadcast Tx</source>
+ <translation type="unfinished">广播交易</translation>
+ </message>
+ <message>
+ <source>Copy to Clipboard</source>
+ <translation type="unfinished">复制到剪贴板</translation>
+ </message>
+ <message>
+ <source>Save…</source>
+ <translation type="unfinished">保存...</translation>
+ </message>
+ <message>
+ <source>Close</source>
+ <translation type="unfinished">关闭</translation>
+ </message>
+ <message>
+ <source>Failed to load transaction: %1</source>
+ <translation type="unfinished">加载交易失败: %1</translation>
+ </message>
+ <message>
+ <source>Failed to sign transaction: %1</source>
+ <translation type="unfinished">签名交易失败: %1</translation>
+ </message>
+ <message>
<source>Cannot sign inputs while wallet is locked.</source>
<translation type="unfinished">钱包已锁定,无法签名交易输入项。</translation>
</message>
<message>
+ <source>Could not sign any more inputs.</source>
+ <translation type="unfinished">没有交易输入项可供签名了。</translation>
+ </message>
+ <message>
+ <source>Signed %1 inputs, but more signatures are still required.</source>
+ <translation type="unfinished">已签名 %1 个交易输入项,但是仍然还有余下的项目需要签名。</translation>
+ </message>
+ <message>
+ <source>Signed transaction successfully. Transaction is ready to broadcast.</source>
+ <translation type="unfinished">成功签名交易。交易已经可以广播。</translation>
+ </message>
+ <message>
+ <source>Unknown error processing transaction.</source>
+ <translation type="unfinished">处理交易时遇到未知错误。</translation>
+ </message>
+ <message>
+ <source>Transaction broadcast successfully! Transaction ID: %1</source>
+ <translation type="unfinished">已成功广播交易!交易ID: %1</translation>
+ </message>
+ <message>
+ <source>Transaction broadcast failed: %1</source>
+ <translation type="unfinished">交易广播失败: %1</translation>
+ </message>
+ <message>
+ <source>PSBT copied to clipboard.</source>
+ <translation type="unfinished">已复制PSBT到剪贴板</translation>
+ </message>
+ <message>
+ <source>Save Transaction Data</source>
+ <translation type="unfinished">保存交易数据</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (Binary)</source>
+ <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
+ <translation type="unfinished">部分签名交易(二进制)</translation>
+ </message>
+ <message>
+ <source>PSBT saved to disk.</source>
+ <translation type="unfinished">PSBT已保存到硬盘</translation>
+ </message>
+ <message>
+ <source> * Sends %1 to %2</source>
+ <translation type="unfinished"> * 发送 %1 至 %2</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">自己的地址</translation>
+ </message>
+ <message>
+ <source>Unable to calculate transaction fee or total transaction amount.</source>
+ <translation type="unfinished">无法计算交易费用或总交易金额。</translation>
+ </message>
+ <message>
+ <source>Pays transaction fee: </source>
+ <translation type="unfinished">支付交易费用:</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">总额</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">或</translation>
+ </message>
+ <message>
+ <source>Transaction has %1 unsigned inputs.</source>
+ <translation type="unfinished">交易中含有%1个未签名输入项。</translation>
+ </message>
+ <message>
+ <source>Transaction is missing some information about inputs.</source>
+ <translation type="unfinished">交易中有输入项缺失某些信息。</translation>
+ </message>
+ <message>
+ <source>Transaction still needs signature(s).</source>
+ <translation type="unfinished">交易仍然需要签名。</translation>
+ </message>
+ <message>
<source>(But no wallet is loaded.)</source>
<translation type="unfinished">(但没有加载钱包。)</translation>
</message>
- </context>
+ <message>
+ <source>(But this wallet cannot sign transactions.)</source>
+ <translation type="unfinished">(但这个钱包不能签名交易)</translation>
+ </message>
+ <message>
+ <source>(But this wallet does not have the right keys.)</source>
+ <translation type="unfinished">(但这个钱包没有正确的密钥)</translation>
+ </message>
+ <message>
+ <source>Transaction is fully signed and ready for broadcast.</source>
+ <translation type="unfinished">交易已经完全签名,可以广播。</translation>
+ </message>
+ <message>
+ <source>Transaction status is unknown.</source>
+ <translation type="unfinished">交易状态未知。</translation>
+ </message>
+</context>
+<context>
+ <name>PaymentServer</name>
+ <message>
+ <source>Payment request error</source>
+ <translation type="unfinished">支付请求出错</translation>
+ </message>
+ <message>
+ <source>Cannot start bitcoin: click-to-pay handler</source>
+ <translation type="unfinished">无法启动 bitcoin: 协议的“一键支付”处理程序</translation>
+ </message>
+ <message>
+ <source>URI handling</source>
+ <translation type="unfinished">URI 处理</translation>
+ </message>
+ <message>
+ <source>'bitcoin://' is not a valid URI. Use 'bitcoin:' instead.</source>
+ <translation type="unfinished">‘bitcoin://’不是合法的URI。请改用'bitcoin:'。</translation>
+ </message>
+ <message>
+ <source>Cannot process payment request because BIP70 is not supported.
+Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
+If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
+ <translation type="unfinished">因为不支持BIP70,无法处理付款请求。
+由于BIP70具有广泛的安全缺陷,无论哪个商家指引要求您更换钱包,我们都强烈建议您不要听信。
+如果您看到了这个错误,您应该要求商家提供兼容BIP21的URI。</translation>
+ </message>
+ <message>
+ <source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source>
+ <translation type="unfinished">无法解析 URI 地址!可能是因为比特币地址无效,或是 URI 参数格式错误。</translation>
+ </message>
+ <message>
+ <source>Payment request file handling</source>
+ <translation type="unfinished">支付请求文件处理</translation>
+ </message>
+</context>
<context>
<name>PeerTableModel</name>
<message>
+ <source>User Agent</source>
+ <extracomment>Title of Peers Table column which contains the peer's User Agent string.</extracomment>
+ <translation type="unfinished">用户代理</translation>
+ </message>
+ <message>
+ <source>Peer</source>
+ <extracomment>Title of Peers Table column which contains a unique number used to identify a connection.</extracomment>
+ <translation type="unfinished">节点</translation>
+ </message>
+ <message>
<source>Age</source>
<extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
<translation type="unfinished">连接时间</translation>
@@ -912,14 +2185,192 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">方向</translation>
</message>
<message>
+ <source>Sent</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have sent to the peer.</extracomment>
+ <translation type="unfinished">已发送</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <extracomment>Title of Peers Table column which indicates the total amount of network information we have received from the peer.</extracomment>
+ <translation type="unfinished">已接收</translation>
+ </message>
+ <message>
<source>Address</source>
<extracomment>Title of Peers Table column which contains the IP/Onion/I2P address of the connected peer.</extracomment>
<translation type="unfinished">地址</translation>
</message>
- </context>
+ <message>
+ <source>Type</source>
+ <extracomment>Title of Peers Table column which describes the type of peer connection. The "type" describes why the connection exists.</extracomment>
+ <translation type="unfinished">类型</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <extracomment>Title of Peers Table column which states the network the peer connected through.</extracomment>
+ <translation type="unfinished">网络</translation>
+ </message>
+ <message>
+ <source>Inbound</source>
+ <extracomment>An Inbound Connection from a Peer.</extracomment>
+ <translation type="unfinished">传入</translation>
+ </message>
+ <message>
+ <source>Outbound</source>
+ <extracomment>An Outbound Connection to a Peer.</extracomment>
+ <translation type="unfinished">传出</translation>
+ </message>
+</context>
+<context>
+ <name>QRImageWidget</name>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">保存图像(&amp;S)...</translation>
+ </message>
+ <message>
+ <source>&amp;Copy Image</source>
+ <translation type="unfinished">复制图像(&amp;C)</translation>
+ </message>
+ <message>
+ <source>Resulting URI too long, try to reduce the text for label / message.</source>
+ <translation type="unfinished">URI 太长,请试着精简标签或消息文本。</translation>
+ </message>
+ <message>
+ <source>Error encoding URI into QR Code.</source>
+ <translation type="unfinished">把 URI 编码成二维码时发生错误。</translation>
+ </message>
+ <message>
+ <source>QR code support not available.</source>
+ <translation type="unfinished">不支持二维码。</translation>
+ </message>
+ <message>
+ <source>Save QR Code</source>
+ <translation type="unfinished">保存二维码</translation>
+ </message>
+ <message>
+ <source>PNG Image</source>
+ <extracomment>Expanded name of the PNG file format. See: https://en.wikipedia.org/wiki/Portable_Network_Graphics.</extracomment>
+ <translation type="unfinished">PNG图像</translation>
+ </message>
+</context>
<context>
<name>RPCConsole</name>
<message>
+ <source>N/A</source>
+ <translation type="unfinished">不可用</translation>
+ </message>
+ <message>
+ <source>Client version</source>
+ <translation type="unfinished">客户端版本</translation>
+ </message>
+ <message>
+ <source>&amp;Information</source>
+ <translation type="unfinished">信息(&amp;I)</translation>
+ </message>
+ <message>
+ <source>General</source>
+ <translation type="unfinished">常规</translation>
+ </message>
+ <message>
+ <source>Datadir</source>
+ <translation type="unfinished">数据目录</translation>
+ </message>
+ <message>
+ <source>To specify a non-default location of the data directory use the '%1' option.</source>
+ <translation type="unfinished">如果不想用默认的数据目录位置,请用 '%1' 这个选项来指定新的位置。</translation>
+ </message>
+ <message>
+ <source>Blocksdir</source>
+ <translation type="unfinished">区块存储目录</translation>
+ </message>
+ <message>
+ <source>To specify a non-default location of the blocks directory use the '%1' option.</source>
+ <translation type="unfinished">如果要自定义区块存储目录的位置,请用 '%1' 这个选项来指定新的位置。</translation>
+ </message>
+ <message>
+ <source>Startup time</source>
+ <translation type="unfinished">启动时间</translation>
+ </message>
+ <message>
+ <source>Network</source>
+ <translation type="unfinished">网络</translation>
+ </message>
+ <message>
+ <source>Name</source>
+ <translation type="unfinished">名称</translation>
+ </message>
+ <message>
+ <source>Number of connections</source>
+ <translation type="unfinished">连接数</translation>
+ </message>
+ <message>
+ <source>Block chain</source>
+ <translation type="unfinished">区块链</translation>
+ </message>
+ <message>
+ <source>Memory Pool</source>
+ <translation type="unfinished">内存池</translation>
+ </message>
+ <message>
+ <source>Current number of transactions</source>
+ <translation type="unfinished">当前交易数量</translation>
+ </message>
+ <message>
+ <source>Memory usage</source>
+ <translation type="unfinished">内存使用</translation>
+ </message>
+ <message>
+ <source>Wallet: </source>
+ <translation type="unfinished">钱包:</translation>
+ </message>
+ <message>
+ <source>(none)</source>
+ <translation type="unfinished">(无)</translation>
+ </message>
+ <message>
+ <source>&amp;Reset</source>
+ <translation type="unfinished">重置(&amp;R)</translation>
+ </message>
+ <message>
+ <source>Received</source>
+ <translation type="unfinished">已接收</translation>
+ </message>
+ <message>
+ <source>Sent</source>
+ <translation type="unfinished">已发送</translation>
+ </message>
+ <message>
+ <source>&amp;Peers</source>
+ <translation type="unfinished">节点(&amp;P)</translation>
+ </message>
+ <message>
+ <source>Banned peers</source>
+ <translation type="unfinished">已封禁节点</translation>
+ </message>
+ <message>
+ <source>Select a peer to view detailed information.</source>
+ <translation type="unfinished">选择节点查看详细信息。</translation>
+ </message>
+ <message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">传输层版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">传输</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">十六进制格式的BIP324会话ID,如果有的话。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">会话ID</translation>
+ </message>
+ <message>
+ <source>Version</source>
+ <translation type="unfinished">版本</translation>
+ </message>
+ <message>
<source>Whether we relay transactions to this peer.</source>
<translation type="unfinished">是否要将交易转发给这个节点。</translation>
</message>
@@ -928,10 +2379,30 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">交易转发</translation>
</message>
<message>
+ <source>Starting Block</source>
+ <translation type="unfinished">起步区块</translation>
+ </message>
+ <message>
+ <source>Synced Headers</source>
+ <translation type="unfinished">已同步区块头</translation>
+ </message>
+ <message>
+ <source>Synced Blocks</source>
+ <translation type="unfinished">已同步区块</translation>
+ </message>
+ <message>
<source>Last Transaction</source>
<translation type="unfinished">最近交易</translation>
</message>
<message>
+ <source>The mapped Autonomous System used for diversifying peer selection.</source>
+ <translation type="unfinished">映射到的自治系统,被用来多样化选择节点</translation>
+ </message>
+ <message>
+ <source>Mapped AS</source>
+ <translation type="unfinished">映射到的AS</translation>
+ </message>
+ <message>
<source>Whether we relay addresses to this peer.</source>
<extracomment>Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
<translation type="unfinished">是否把地址转发给这个节点。</translation>
@@ -962,8 +2433,219 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">被频率限制丢弃的地址</translation>
</message>
<message>
+ <source>User Agent</source>
+ <translation type="unfinished">用户代理</translation>
+ </message>
+ <message>
<source>Node window</source>
- <translation type="unfinished">结点窗口</translation>
+ <translation type="unfinished">节点窗口</translation>
+ </message>
+ <message>
+ <source>Current block height</source>
+ <translation type="unfinished">当前区块高度</translation>
+ </message>
+ <message>
+ <source>Open the %1 debug log file from the current data directory. This can take a few seconds for large log files.</source>
+ <translation type="unfinished">打开当前数据目录中的 %1 调试日志文件。日志文件大的话可能要等上几秒钟。</translation>
+ </message>
+ <message>
+ <source>Decrease font size</source>
+ <translation type="unfinished">缩小字体大小</translation>
+ </message>
+ <message>
+ <source>Increase font size</source>
+ <translation type="unfinished">放大字体大小</translation>
+ </message>
+ <message>
+ <source>Permissions</source>
+ <translation type="unfinished">权限</translation>
+ </message>
+ <message>
+ <source>The direction and type of peer connection: %1</source>
+ <translation type="unfinished">节点连接的方向和类型: %1</translation>
+ </message>
+ <message>
+ <source>Direction/Type</source>
+ <translation type="unfinished">方向/类型</translation>
+ </message>
+ <message>
+ <source>The network protocol this peer is connected through: IPv4, IPv6, Onion, I2P, or CJDNS.</source>
+ <translation type="unfinished">这个节点是通过这种网络协议连接到的: IPv4, IPv6, Onion, I2P, 或 CJDNS.</translation>
+ </message>
+ <message>
+ <source>Services</source>
+ <translation type="unfinished">服务</translation>
+ </message>
+ <message>
+ <source>High bandwidth BIP152 compact block relay: %1</source>
+ <translation type="unfinished">高带宽BIP152密实区块转发: %1</translation>
+ </message>
+ <message>
+ <source>High Bandwidth</source>
+ <translation type="unfinished">高带宽</translation>
+ </message>
+ <message>
+ <source>Connection Time</source>
+ <translation type="unfinished">连接时间</translation>
+ </message>
+ <message>
+ <source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
+ <translation type="unfinished">自从这个节点上一次发来可通过初始有效性检查的新区块以来到现在经过的时间</translation>
+ </message>
+ <message>
+ <source>Last Block</source>
+ <translation type="unfinished">上一个区块</translation>
+ </message>
+ <message>
+ <source>Elapsed time since a novel transaction accepted into our mempool was received from this peer.</source>
+ <extracomment>Tooltip text for the Last Transaction field in the peer details area.</extracomment>
+ <translation type="unfinished">自从这个节点上一次发来被我们的内存池接受的新交易到现在经过的时间</translation>
+ </message>
+ <message>
+ <source>Last Send</source>
+ <translation type="unfinished">上次发送</translation>
+ </message>
+ <message>
+ <source>Last Receive</source>
+ <translation type="unfinished">上次接收</translation>
+ </message>
+ <message>
+ <source>Ping Time</source>
+ <translation type="unfinished">Ping 延时</translation>
+ </message>
+ <message>
+ <source>The duration of a currently outstanding ping.</source>
+ <translation type="unfinished">目前这一次 ping 已经过去的时间。</translation>
+ </message>
+ <message>
+ <source>Ping Wait</source>
+ <translation type="unfinished">Ping 等待</translation>
+ </message>
+ <message>
+ <source>Min Ping</source>
+ <translation type="unfinished">最小 Ping 值</translation>
+ </message>
+ <message>
+ <source>Time Offset</source>
+ <translation type="unfinished">时间偏移</translation>
+ </message>
+ <message>
+ <source>Last block time</source>
+ <translation type="unfinished">上一区块时间</translation>
+ </message>
+ <message>
+ <source>&amp;Open</source>
+ <translation type="unfinished">打开(&amp;O)</translation>
+ </message>
+ <message>
+ <source>&amp;Console</source>
+ <translation type="unfinished">控制台(&amp;C)</translation>
+ </message>
+ <message>
+ <source>&amp;Network Traffic</source>
+ <translation type="unfinished">网络流量(&amp;N)</translation>
+ </message>
+ <message>
+ <source>Totals</source>
+ <translation type="unfinished">总数</translation>
+ </message>
+ <message>
+ <source>Debug log file</source>
+ <translation type="unfinished">调试日志文件</translation>
+ </message>
+ <message>
+ <source>Clear console</source>
+ <translation type="unfinished">清空控制台</translation>
+ </message>
+ <message>
+ <source>In:</source>
+ <translation type="unfinished">传入:</translation>
+ </message>
+ <message>
+ <source>Out:</source>
+ <translation type="unfinished">传出:</translation>
+ </message>
+ <message>
+ <source>Inbound: initiated by peer</source>
+ <extracomment>Explanatory text for an inbound peer connection.</extracomment>
+ <translation type="unfinished">入站: 由对端发起</translation>
+ </message>
+ <message>
+ <source>Outbound Full Relay: default</source>
+ <extracomment>Explanatory text for an outbound peer connection that relays all network information. This is the default behavior for outbound connections.</extracomment>
+ <translation type="unfinished">出站完整转发: 默认</translation>
+ </message>
+ <message>
+ <source>Outbound Block Relay: does not relay transactions or addresses</source>
+ <extracomment>Explanatory text for an outbound peer connection that relays network information about blocks and not transactions or addresses.</extracomment>
+ <translation type="unfinished">出站区块转发: 不转发交易和地址</translation>
+ </message>
+ <message>
+ <source>Outbound Manual: added using RPC %1 or %2/%3 configuration options</source>
+ <extracomment>Explanatory text for an outbound peer connection that was established manually through one of several methods. The numbered arguments are stand-ins for the methods available to establish manual connections.</extracomment>
+ <translation type="unfinished">出站手动: 加入使用RPC %1 或 %2/%3 配置选项</translation>
+ </message>
+ <message>
+ <source>Outbound Feeler: short-lived, for testing addresses</source>
+ <extracomment>Explanatory text for a short-lived outbound peer connection that is used to test the aliveness of known addresses.</extracomment>
+ <translation type="unfinished">出站触须: 短暂,用于测试地址</translation>
+ </message>
+ <message>
+ <source>Outbound Address Fetch: short-lived, for soliciting addresses</source>
+ <extracomment>Explanatory text for a short-lived outbound peer connection that is used to request addresses from a peer.</extracomment>
+ <translation type="unfinished">出站地址取回: 短暂,用于请求取回地址</translation>
+ </message>
+ <message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">检测中: 节点可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文传输协议</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密传输协议</translation>
+ </message>
+ <message>
+ <source>we selected the peer for high bandwidth relay</source>
+ <translation type="unfinished">我们选择了用于高带宽转发的节点</translation>
+ </message>
+ <message>
+ <source>the peer selected us for high bandwidth relay</source>
+ <translation type="unfinished">对端选择了我们用于高带宽转发</translation>
+ </message>
+ <message>
+ <source>no high bandwidth relay selected</source>
+ <translation type="unfinished">未选择高带宽转发</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <extracomment>Context menu action to copy the address of a peer.</extracomment>
+ <translation type="unfinished">复制地址(&amp;C)</translation>
+ </message>
+ <message>
+ <source>&amp;Disconnect</source>
+ <translation type="unfinished">断开(&amp;D)</translation>
+ </message>
+ <message>
+ <source>1 &amp;hour</source>
+ <translation type="unfinished">1 小时(&amp;H)</translation>
+ </message>
+ <message>
+ <source>1 d&amp;ay</source>
+ <translation type="unfinished">1 天(&amp;A)</translation>
+ </message>
+ <message>
+ <source>1 &amp;week</source>
+ <translation type="unfinished">1 周(&amp;W)</translation>
+ </message>
+ <message>
+ <source>1 &amp;year</source>
+ <translation type="unfinished">1 年(&amp;Y)</translation>
</message>
<message>
<source>&amp;Copy IP/Netmask</source>
@@ -971,6 +2653,22 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">复制IP/网络掩码(&amp;C)</translation>
</message>
<message>
+ <source>&amp;Unban</source>
+ <translation type="unfinished">解封(&amp;U)</translation>
+ </message>
+ <message>
+ <source>Network activity disabled</source>
+ <translation type="unfinished">网络活动已禁用</translation>
+ </message>
+ <message>
+ <source>Executing command without any wallet</source>
+ <translation type="unfinished">不使用任何钱包执行命令</translation>
+ </message>
+ <message>
+ <source>Executing command using "%1" wallet</source>
+ <translation type="unfinished">使用“%1”钱包执行命令</translation>
+ </message>
+ <message>
<source>Welcome to the %1 RPC console.
Use up and down arrows to navigate history, and %2 to clear screen.
Use %3 and %4 to increase or decrease the font size.
@@ -987,10 +2685,139 @@ For more information on using this console, type %6.
%7 警告:骗子们很活跃,他们会让用户在这里输入命令以便偷走用户钱包中的内容。所以请您不要在不完全了解一个命令的后果的情况下使用此控制台。%8</translation>
</message>
- </context>
+ <message>
+ <source>Executing…</source>
+ <extracomment>A console message indicating an entered command is currently being executed.</extracomment>
+ <translation type="unfinished">执行中……</translation>
+ </message>
+ <message>
+ <source>(peer: %1)</source>
+ <translation type="unfinished">(节点: %1)</translation>
+ </message>
+ <message>
+ <source>via %1</source>
+ <translation type="unfinished">通过 %1</translation>
+ </message>
+ <message>
+ <source>Yes</source>
+ <translation type="unfinished">是</translation>
+ </message>
+ <message>
+ <source>No</source>
+ <translation type="unfinished">否</translation>
+ </message>
+ <message>
+ <source>To</source>
+ <translation type="unfinished">到</translation>
+ </message>
+ <message>
+ <source>From</source>
+ <translation type="unfinished">来自</translation>
+ </message>
+ <message>
+ <source>Ban for</source>
+ <translation type="unfinished">封禁时长</translation>
+ </message>
+ <message>
+ <source>Never</source>
+ <translation type="unfinished">永不</translation>
+ </message>
+ <message>
+ <source>Unknown</source>
+ <translation type="unfinished">未知</translation>
+ </message>
+</context>
<context>
<name>ReceiveCoinsDialog</name>
<message>
+ <source>&amp;Amount:</source>
+ <translation type="unfinished">金额(&amp;A):</translation>
+ </message>
+ <message>
+ <source>&amp;Label:</source>
+ <translation type="unfinished">标签(&amp;L):</translation>
+ </message>
+ <message>
+ <source>&amp;Message:</source>
+ <translation type="unfinished">消息(&amp;M):</translation>
+ </message>
+ <message>
+ <source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source>
+ <translation type="unfinished">可在支付请求上备注一条信息,在打开支付请求时可以看到。注意:该消息不是通过比特币网络传送。</translation>
+ </message>
+ <message>
+ <source>An optional label to associate with the new receiving address.</source>
+ <translation type="unfinished">可为新建的收款地址添加一个标签。</translation>
+ </message>
+ <message>
+ <source>Use this form to request payments. All fields are &lt;b&gt;optional&lt;/b&gt;.</source>
+ <translation type="unfinished">使用此表单请求付款。所有字段都是&lt;b&gt;可选&lt;/b&gt;的。</translation>
+ </message>
+ <message>
+ <source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source>
+ <translation type="unfinished">可选的请求金额。留空或填零为不要求具体金额。</translation>
+ </message>
+ <message>
+ <source>An optional label to associate with the new receiving address (used by you to identify an invoice). It is also attached to the payment request.</source>
+ <translation type="unfinished">一个关联到新收款地址(被您用来识别发票)的可选标签。它也会被附加到付款请求中。</translation>
+ </message>
+ <message>
+ <source>An optional message that is attached to the payment request and may be displayed to the sender.</source>
+ <translation type="unfinished">一条附加到付款请求中的可选消息,可以显示给付款方。</translation>
+ </message>
+ <message>
+ <source>&amp;Create new receiving address</source>
+ <translation type="unfinished">新建收款地址(&amp;C)</translation>
+ </message>
+ <message>
+ <source>Clear all fields of the form.</source>
+ <translation type="unfinished">清除此表单的所有字段。</translation>
+ </message>
+ <message>
+ <source>Clear</source>
+ <translation type="unfinished">清除</translation>
+ </message>
+ <message>
+ <source>Requested payments history</source>
+ <translation type="unfinished">付款请求历史</translation>
+ </message>
+ <message>
+ <source>Show the selected request (does the same as double clicking an entry)</source>
+ <translation type="unfinished">显示选中的请求 (直接双击项目也可以显示)</translation>
+ </message>
+ <message>
+ <source>Show</source>
+ <translation type="unfinished">显示</translation>
+ </message>
+ <message>
+ <source>Remove the selected entries from the list</source>
+ <translation type="unfinished">从列表中移除选中的条目</translation>
+ </message>
+ <message>
+ <source>Remove</source>
+ <translation type="unfinished">移除</translation>
+ </message>
+ <message>
+ <source>Copy &amp;URI</source>
+ <translation type="unfinished">复制 &amp;URI</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">复制地址(&amp;C)</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">复制标签(&amp;L)</translation>
+ </message>
+ <message>
+ <source>Copy &amp;message</source>
+ <translation type="unfinished">复制消息(&amp;M)</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">复制金额(&amp;A)</translation>
+ </message>
+ <message>
<source>Base58 (Legacy)</source>
<translation type="unfinished">Base58 (旧式)</translation>
</message>
@@ -1014,21 +2841,252 @@ For more information on using this console, type %6.
<source>Could not unlock wallet.</source>
<translation type="unfinished">无法解锁钱包。</translation>
</message>
- </context>
+ <message>
+ <source>Could not generate new %1 address</source>
+ <translation type="unfinished">无法生成新的%1地址</translation>
+ </message>
+</context>
+<context>
+ <name>ReceiveRequestDialog</name>
+ <message>
+ <source>Request payment to …</source>
+ <translation type="unfinished">请求支付至...</translation>
+ </message>
+ <message>
+ <source>Address:</source>
+ <translation type="unfinished">地址:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">金额:</translation>
+ </message>
+ <message>
+ <source>Label:</source>
+ <translation type="unfinished">标签:</translation>
+ </message>
+ <message>
+ <source>Message:</source>
+ <translation type="unfinished">消息:</translation>
+ </message>
+ <message>
+ <source>Wallet:</source>
+ <translation type="unfinished">钱包:</translation>
+ </message>
+ <message>
+ <source>Copy &amp;URI</source>
+ <translation type="unfinished">复制 &amp;URI</translation>
+ </message>
+ <message>
+ <source>Copy &amp;Address</source>
+ <translation type="unfinished">复制地址(&amp;A)</translation>
+ </message>
+ <message>
+ <source>&amp;Verify</source>
+ <translation type="unfinished">验证(&amp;V)</translation>
+ </message>
+ <message>
+ <source>Verify this address on e.g. a hardware wallet screen</source>
+ <translation type="unfinished">在像是硬件钱包屏幕的地方检验这个地址</translation>
+ </message>
+ <message>
+ <source>&amp;Save Image…</source>
+ <translation type="unfinished">保存图像(&amp;S)...</translation>
+ </message>
+ <message>
+ <source>Payment information</source>
+ <translation type="unfinished">付款信息</translation>
+ </message>
+ <message>
+ <source>Request payment to %1</source>
+ <translation type="unfinished">请求付款到 %1</translation>
+ </message>
+</context>
<context>
<name>RecentRequestsTableModel</name>
<message>
+ <source>Date</source>
+ <translation type="unfinished">日期</translation>
+ </message>
+ <message>
<source>Label</source>
<translation type="unfinished">标签</translation>
</message>
<message>
+ <source>Message</source>
+ <translation type="unfinished">消息</translation>
+ </message>
+ <message>
<source>(no label)</source>
<translation type="unfinished">(无标签)</translation>
</message>
- </context>
+ <message>
+ <source>(no message)</source>
+ <translation type="unfinished">(无消息)</translation>
+ </message>
+ <message>
+ <source>(no amount requested)</source>
+ <translation type="unfinished">(未填写请求金额)</translation>
+ </message>
+ <message>
+ <source>Requested</source>
+ <translation type="unfinished">请求金额</translation>
+ </message>
+</context>
<context>
<name>SendCoinsDialog</name>
<message>
+ <source>Send Coins</source>
+ <translation type="unfinished">发币</translation>
+ </message>
+ <message>
+ <source>Coin Control Features</source>
+ <translation type="unfinished">手动选币功能</translation>
+ </message>
+ <message>
+ <source>automatically selected</source>
+ <translation type="unfinished">自动选择</translation>
+ </message>
+ <message>
+ <source>Insufficient funds!</source>
+ <translation type="unfinished">金额不足!</translation>
+ </message>
+ <message>
+ <source>Quantity:</source>
+ <translation type="unfinished">总量:</translation>
+ </message>
+ <message>
+ <source>Bytes:</source>
+ <translation type="unfinished">字节数:</translation>
+ </message>
+ <message>
+ <source>Amount:</source>
+ <translation type="unfinished">金额:</translation>
+ </message>
+ <message>
+ <source>Fee:</source>
+ <translation type="unfinished">费用:</translation>
+ </message>
+ <message>
+ <source>After Fee:</source>
+ <translation type="unfinished">加上交易费用后:</translation>
+ </message>
+ <message>
+ <source>Change:</source>
+ <translation type="unfinished">找零:</translation>
+ </message>
+ <message>
+ <source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source>
+ <translation type="unfinished">在激活该选项后,如果填写了无效的找零地址,或者干脆没填找零地址,找零资金将会被转入新生成的地址。</translation>
+ </message>
+ <message>
+ <source>Custom change address</source>
+ <translation type="unfinished">自定义找零地址</translation>
+ </message>
+ <message>
+ <source>Transaction Fee:</source>
+ <translation type="unfinished">交易手续费:</translation>
+ </message>
+ <message>
+ <source>Using the fallbackfee can result in sending a transaction that will take several hours or days (or never) to confirm. Consider choosing your fee manually or wait until you have validated the complete chain.</source>
+ <translation type="unfinished">如果使用备用手续费设置,有可能会导致交易经过几个小时、几天(甚至永远)无法被确认。请考虑手动选择手续费,或等待整个链完成验证。</translation>
+ </message>
+ <message>
+ <source>Warning: Fee estimation is currently not possible.</source>
+ <translation type="unfinished">警告: 目前无法进行手续费估计。</translation>
+ </message>
+ <message>
+ <source>per kilobyte</source>
+ <translation type="unfinished">每KB</translation>
+ </message>
+ <message>
+ <source>Hide</source>
+ <translation type="unfinished">隐藏</translation>
+ </message>
+ <message>
+ <source>Recommended:</source>
+ <translation type="unfinished">推荐:</translation>
+ </message>
+ <message>
+ <source>Custom:</source>
+ <translation type="unfinished">自定义:</translation>
+ </message>
+ <message>
+ <source>Send to multiple recipients at once</source>
+ <translation type="unfinished">一次发送给多个收款人</translation>
+ </message>
+ <message>
+ <source>Add &amp;Recipient</source>
+ <translation type="unfinished">添加收款人(&amp;R)</translation>
+ </message>
+ <message>
+ <source>Clear all fields of the form.</source>
+ <translation type="unfinished">清除此表单的所有字段。</translation>
+ </message>
+ <message>
+ <source>Inputs…</source>
+ <translation type="unfinished">输入...</translation>
+ </message>
+ <message>
+ <source>Choose…</source>
+ <translation type="unfinished">选择...</translation>
+ </message>
+ <message>
+ <source>Hide transaction fee settings</source>
+ <translation type="unfinished">隐藏交易手续费设置</translation>
+ </message>
+ <message>
+ <source>Specify a custom fee per kB (1,000 bytes) of the transaction's virtual size.
+
+Note: Since the fee is calculated on a per-byte basis, a fee rate of "100 satoshis per kvB" for a transaction size of 500 virtual bytes (half of 1 kvB) would ultimately yield a fee of only 50 satoshis.</source>
+ <translation type="unfinished">指定交易虚拟大小的每kB (1,000字节) 自定义费率。
+
+附注:因为矿工费是按字节计费的,所以如果费率是“每kvB支付100聪”,那么对于一笔500虚拟字节 (1kvB的一半) 的交易,最终将只会产生50聪的矿工费。(译注:这里就是提醒单位是字节,而不是千字节,如果搞错的话,矿工费会过低,导致交易长时间无法确认,或者压根无法发出)</translation>
+ </message>
+ <message>
+ <source>When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
+ <translation type="unfinished">当交易量小于可用区块空间时,矿工和中继节点可能会执行最低手续费率限制。按照这个最低费率来支付手续费也是可以的,但请注意,一旦交易需求超出比特币网络能处理的限度,你的交易可能永远也无法确认。</translation>
+ </message>
+ <message>
+ <source>A too low fee might result in a never confirming transaction (read the tooltip)</source>
+ <translation type="unfinished">过低的手续费率可能导致交易永远无法确认(请阅读工具提示)</translation>
+ </message>
+ <message>
+ <source>(Smart fee not initialized yet. This usually takes a few blocks…)</source>
+ <translation type="unfinished">(智能矿工费尚未被初始化。这一般需要几个区块...)</translation>
+ </message>
+ <message>
+ <source>Confirmation time target:</source>
+ <translation type="unfinished">确认时间目标:</translation>
+ </message>
+ <message>
+ <source>Enable Replace-By-Fee</source>
+ <translation type="unfinished">启用手续费追加</translation>
+ </message>
+ <message>
+ <source>With Replace-By-Fee (BIP-125) you can increase a transaction's fee after it is sent. Without this, a higher fee may be recommended to compensate for increased transaction delay risk.</source>
+ <translation type="unfinished">手续费追加(Replace-By-Fee,BIP-125)可以让你在送出交易后继续追加手续费。不用这个功能的话,建议付比较高的手续费来降低交易延迟的风险。</translation>
+ </message>
+ <message>
+ <source>Clear &amp;All</source>
+ <translation type="unfinished">清除所有(&amp;A)</translation>
+ </message>
+ <message>
+ <source>Balance:</source>
+ <translation type="unfinished">余额:</translation>
+ </message>
+ <message>
+ <source>Confirm the send action</source>
+ <translation type="unfinished">确认发送操作</translation>
+ </message>
+ <message>
+ <source>S&amp;end</source>
+ <translation type="unfinished">发送(&amp;E)</translation>
+ </message>
+ <message>
+ <source>Copy quantity</source>
+ <translation type="unfinished">复制数目</translation>
+ </message>
+ <message>
<source>Copy amount</source>
<translation type="unfinished">复制金额</translation>
</message>
@@ -1037,6 +3095,105 @@ For more information on using this console, type %6.
<translation type="unfinished">复制手续费</translation>
</message>
<message>
+ <source>Copy after fee</source>
+ <translation type="unfinished">复制含交易费的金额</translation>
+ </message>
+ <message>
+ <source>Copy bytes</source>
+ <translation type="unfinished">复制字节数</translation>
+ </message>
+ <message>
+ <source>Copy change</source>
+ <translation type="unfinished">复制找零金额</translation>
+ </message>
+ <message>
+ <source>%1 (%2 blocks)</source>
+ <translation type="unfinished">%1 (%2个块)</translation>
+ </message>
+ <message>
+ <source>Sign on device</source>
+ <extracomment>"device" usually means a hardware wallet.</extracomment>
+ <translation type="unfinished">在设备上签名</translation>
+ </message>
+ <message>
+ <source>Connect your hardware wallet first.</source>
+ <translation type="unfinished">请先连接您的硬件钱包。</translation>
+ </message>
+ <message>
+ <source>Set external signer script path in Options -&gt; Wallet</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">在 选项 -&gt; 钱包 中设置外部签名器脚本路径</translation>
+ </message>
+ <message>
+ <source>Cr&amp;eate Unsigned</source>
+ <translation type="unfinished">创建未签名交易(&amp;E)</translation>
+ </message>
+ <message>
+ <source>Creates a Partially Signed Bitcoin Transaction (PSBT) for use with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
+ <translation type="unfinished">创建一个“部分签名比特币交易”(PSBT),以用于诸如离线%1钱包,或是兼容PSBT的硬件钱包这类用途。</translation>
+ </message>
+ <message>
+ <source> from wallet '%1'</source>
+ <translation type="unfinished">从钱包%1</translation>
+ </message>
+ <message>
+ <source>%1 to '%2'</source>
+ <translation type="unfinished">%1 到 '%2'</translation>
+ </message>
+ <message>
+ <source>%1 to %2</source>
+ <translation type="unfinished">%1 到 %2</translation>
+ </message>
+ <message>
+ <source>To review recipient list click "Show Details…"</source>
+ <translation type="unfinished">点击“查看详情”以审核收款人列表</translation>
+ </message>
+ <message>
+ <source>Sign failed</source>
+ <translation type="unfinished">签名失败</translation>
+ </message>
+ <message>
+ <source>External signer not found</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">未找到外部签名器</translation>
+ </message>
+ <message>
+ <source>External signer failure</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">外部签名器失败</translation>
+ </message>
+ <message>
+ <source>Save Transaction Data</source>
+ <translation type="unfinished">保存交易数据</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (Binary)</source>
+ <extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
+ <translation type="unfinished">部分签名交易(二进制)</translation>
+ </message>
+ <message>
+ <source>PSBT saved</source>
+ <extracomment>Popup message when a PSBT has been saved to a file</extracomment>
+ <translation type="unfinished">已保存PSBT</translation>
+ </message>
+ <message>
+ <source>External balance:</source>
+ <translation type="unfinished">外部余额:</translation>
+ </message>
+ <message>
+ <source>or</source>
+ <translation type="unfinished">或</translation>
+ </message>
+ <message>
+ <source>You can increase the fee later (signals Replace-By-Fee, BIP-125).</source>
+ <translation type="unfinished">你可以后来再追加手续费(打上支持BIP-125手续费追加的标记)</translation>
+ </message>
+ <message>
+ <source>Please, review your transaction proposal. This will produce a Partially Signed Bitcoin Transaction (PSBT) which you can save or copy and then sign with e.g. an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
+ <extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can only create a PSBT. This string is displayed when private keys are disabled and an external signer is not available.</extracomment>
+ <translation type="unfinished">请务必仔细检查您的交易请求。这会产生一个部分签名比特币交易(PSBT),可以把保存下来或复制出去,然后就可以对它进行签名,比如用离线%1钱包,或是用兼容PSBT的硬件钱包。</translation>
+ </message>
+ <message>
<source>Do you want to create this transaction?</source>
<extracomment>Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</extracomment>
<translation type="unfinished">要创建这笔交易吗?</translation>
@@ -1047,6 +3204,23 @@ For more information on using this console, type %6.
<translation type="unfinished">请务必仔细检查您的交易。你可以创建并发送这笔交易;也可以创建一个“部分签名比特币交易(PSBT)”,它可以被保存下来或被复制出去,然后就可以对它进行签名,比如用离线%1钱包,或是用兼容PSBT的硬件钱包。</translation>
</message>
<message>
+ <source>Please, review your transaction.</source>
+ <extracomment>Text to prompt a user to review the details of the transaction they are attempting to send.</extracomment>
+ <translation type="unfinished">请检查您的交易。</translation>
+ </message>
+ <message>
+ <source>Transaction fee</source>
+ <translation type="unfinished">交易手续费</translation>
+ </message>
+ <message>
+ <source>Not signalling Replace-By-Fee, BIP-125.</source>
+ <translation type="unfinished">没有打上BIP-125手续费追加的标记。</translation>
+ </message>
+ <message>
+ <source>Total Amount</source>
+ <translation type="unfinished">总额</translation>
+ </message>
+ <message>
<source>Unsigned Transaction</source>
<comment>PSBT copied</comment>
<extracomment>Caption of "PSBT has been copied" messagebox</extracomment>
@@ -1058,7 +3232,43 @@ For more information on using this console, type %6.
</message>
<message>
<source>PSBT saved to disk</source>
- <translation type="unfinished">PSBT已保存到磁盘</translation>
+ <translation type="unfinished">已保存PSBT到磁盘</translation>
+ </message>
+ <message>
+ <source>Confirm send coins</source>
+ <translation type="unfinished">确认发币</translation>
+ </message>
+ <message>
+ <source>Watch-only balance:</source>
+ <translation type="unfinished">仅观察余额:</translation>
+ </message>
+ <message>
+ <source>The recipient address is not valid. Please recheck.</source>
+ <translation type="unfinished">接收人地址无效。请重新检查。</translation>
+ </message>
+ <message>
+ <source>The amount to pay must be larger than 0.</source>
+ <translation type="unfinished">支付金额必须大于0。</translation>
+ </message>
+ <message>
+ <source>The amount exceeds your balance.</source>
+ <translation type="unfinished">金额超出您的余额。</translation>
+ </message>
+ <message>
+ <source>The total exceeds your balance when the %1 transaction fee is included.</source>
+ <translation type="unfinished">计入 %1 手续费后,金额超出了您的余额。</translation>
+ </message>
+ <message>
+ <source>Duplicate address found: addresses should only be used once each.</source>
+ <translation type="unfinished">发现重复地址:每个地址应该只使用一次。</translation>
+ </message>
+ <message>
+ <source>Transaction creation failed!</source>
+ <translation type="unfinished">交易创建失败!</translation>
+ </message>
+ <message>
+ <source>A fee higher than %1 is considered an absurdly high fee.</source>
+ <translation type="unfinished">超过 %1 的手续费被视为高得离谱。</translation>
</message>
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
@@ -1067,17 +3277,239 @@ For more information on using this console, type %6.
</translation>
</message>
<message>
+ <source>Warning: Invalid Bitcoin address</source>
+ <translation type="unfinished">警告: 比特币地址无效</translation>
+ </message>
+ <message>
+ <source>Warning: Unknown change address</source>
+ <translation type="unfinished">警告:未知的找零地址</translation>
+ </message>
+ <message>
+ <source>Confirm custom change address</source>
+ <translation type="unfinished">确认自定义找零地址</translation>
+ </message>
+ <message>
+ <source>The address you selected for change is not part of this wallet. Any or all funds in your wallet may be sent to this address. Are you sure?</source>
+ <translation type="unfinished">你选择的找零地址未被包含在本钱包中,你钱包中的部分或全部金额将被发送至该地址。你确定要这样做吗?</translation>
+ </message>
+ <message>
<source>(no label)</source>
<translation type="unfinished">(无标签)</translation>
</message>
</context>
<context>
+ <name>SendCoinsEntry</name>
+ <message>
+ <source>A&amp;mount:</source>
+ <translation type="unfinished">金额(&amp;M)</translation>
+ </message>
+ <message>
+ <source>Pay &amp;To:</source>
+ <translation type="unfinished">付给(&amp;T):</translation>
+ </message>
+ <message>
+ <source>&amp;Label:</source>
+ <translation type="unfinished">标签(&amp;L):</translation>
+ </message>
+ <message>
+ <source>Choose previously used address</source>
+ <translation type="unfinished">选择以前用过的地址</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address to send the payment to</source>
+ <translation type="unfinished">付款目的地址</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <translation type="unfinished">从剪贴板粘贴地址</translation>
+ </message>
+ <message>
+ <source>Remove this entry</source>
+ <translation type="unfinished">移除此项</translation>
+ </message>
+ <message>
+ <source>The amount to send in the selected unit</source>
+ <translation type="unfinished">用被选单位表示的待发送金额</translation>
+ </message>
+ <message>
+ <source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source>
+ <translation type="unfinished">交易费将从发送金额中扣除。接收人收到的比特币将会比您在金额框中输入的更少。如果选中了多个收件人,交易费平分。</translation>
+ </message>
+ <message>
+ <source>S&amp;ubtract fee from amount</source>
+ <translation type="unfinished">从金额中减去交易费(&amp;U)</translation>
+ </message>
+ <message>
+ <source>Use available balance</source>
+ <translation type="unfinished">使用全部可用余额</translation>
+ </message>
+ <message>
+ <source>Message:</source>
+ <translation type="unfinished">消息:</translation>
+ </message>
+ <message>
+ <source>Enter a label for this address to add it to the list of used addresses</source>
+ <translation type="unfinished">请为此地址输入一个标签以将它加入已用地址列表</translation>
+ </message>
+ <message>
+ <source>A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network.</source>
+ <translation type="unfinished">bitcoin: URI 附带的备注信息,将会和交易一起存储,备查。 注意:该消息不会通过比特币网络传输。</translation>
+ </message>
+</context>
+<context>
<name>SendConfirmationDialog</name>
<message>
<source>Send</source>
<translation type="unfinished">发送</translation>
</message>
- </context>
+ <message>
+ <source>Create Unsigned</source>
+ <translation type="unfinished">创建未签名交易</translation>
+ </message>
+</context>
+<context>
+ <name>SignVerifyMessageDialog</name>
+ <message>
+ <source>Signatures - Sign / Verify a Message</source>
+ <translation type="unfinished">签名 - 为消息签名/验证签名消息</translation>
+ </message>
+ <message>
+ <source>&amp;Sign Message</source>
+ <translation type="unfinished">消息签名(&amp;S)</translation>
+ </message>
+ <message>
+ <source>You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source>
+ <translation type="unfinished">您可以用你的地址对消息/协议进行签名,以证明您可以接收发送到该地址的比特币。注意不要对任何模棱两可或者随机的消息进行签名,以免遭受钓鱼式攻击。请确保消息内容准确的表达了您的真实意愿。</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address to sign the message with</source>
+ <translation type="unfinished">用来对消息签名的地址</translation>
+ </message>
+ <message>
+ <source>Choose previously used address</source>
+ <translation type="unfinished">选择以前用过的地址</translation>
+ </message>
+ <message>
+ <source>Paste address from clipboard</source>
+ <translation type="unfinished">从剪贴板粘贴地址</translation>
+ </message>
+ <message>
+ <source>Enter the message you want to sign here</source>
+ <translation type="unfinished">在这里输入您想要签名的消息</translation>
+ </message>
+ <message>
+ <source>Signature</source>
+ <translation type="unfinished">签名</translation>
+ </message>
+ <message>
+ <source>Copy the current signature to the system clipboard</source>
+ <translation type="unfinished">复制当前签名至剪贴板</translation>
+ </message>
+ <message>
+ <source>Sign the message to prove you own this Bitcoin address</source>
+ <translation type="unfinished">签名消息,以证明这个地址属于您</translation>
+ </message>
+ <message>
+ <source>Sign &amp;Message</source>
+ <translation type="unfinished">签名消息(&amp;M)</translation>
+ </message>
+ <message>
+ <source>Reset all sign message fields</source>
+ <translation type="unfinished">清空所有签名消息栏</translation>
+ </message>
+ <message>
+ <source>Clear &amp;All</source>
+ <translation type="unfinished">清除所有(&amp;A)</translation>
+ </message>
+ <message>
+ <source>&amp;Verify Message</source>
+ <translation type="unfinished">消息验证(&amp;V)</translation>
+ </message>
+ <message>
+ <source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source>
+ <translation type="unfinished">请在下面输入接收者地址、消息(确保换行符、空格符、制表符等完全相同)和签名以验证消息。请仔细核对签名信息,以提防中间人攻击。请注意,这只是证明接收方可以用这个地址签名,它不能证明任何交易的发送人身份!</translation>
+ </message>
+ <message>
+ <source>The Bitcoin address the message was signed with</source>
+ <translation type="unfinished">用来签名消息的地址</translation>
+ </message>
+ <message>
+ <source>The signed message to verify</source>
+ <translation type="unfinished">待验证的已签名消息</translation>
+ </message>
+ <message>
+ <source>The signature given when the message was signed</source>
+ <translation type="unfinished">对消息进行签署得到的签名数据</translation>
+ </message>
+ <message>
+ <source>Verify the message to ensure it was signed with the specified Bitcoin address</source>
+ <translation type="unfinished">验证消息,确保消息是由指定的比特币地址签名过的。</translation>
+ </message>
+ <message>
+ <source>Verify &amp;Message</source>
+ <translation type="unfinished">验证消息签名(&amp;M)</translation>
+ </message>
+ <message>
+ <source>Reset all verify message fields</source>
+ <translation type="unfinished">清空所有验证消息栏</translation>
+ </message>
+ <message>
+ <source>Click "Sign Message" to generate signature</source>
+ <translation type="unfinished">单击“签名消息“产生签名。</translation>
+ </message>
+ <message>
+ <source>The entered address is invalid.</source>
+ <translation type="unfinished">输入的地址无效。</translation>
+ </message>
+ <message>
+ <source>Please check the address and try again.</source>
+ <translation type="unfinished">请检查地址后重试。</translation>
+ </message>
+ <message>
+ <source>The entered address does not refer to a key.</source>
+ <translation type="unfinished">找不到与输入地址相关的密钥。</translation>
+ </message>
+ <message>
+ <source>Wallet unlock was cancelled.</source>
+ <translation type="unfinished">已取消解锁钱包。</translation>
+ </message>
+ <message>
+ <source>No error</source>
+ <translation type="unfinished">没有错误</translation>
+ </message>
+ <message>
+ <source>Private key for the entered address is not available.</source>
+ <translation type="unfinished">找不到输入地址关联的私钥。</translation>
+ </message>
+ <message>
+ <source>Message signing failed.</source>
+ <translation type="unfinished">消息签名失败。</translation>
+ </message>
+ <message>
+ <source>Message signed.</source>
+ <translation type="unfinished">消息已签名。</translation>
+ </message>
+ <message>
+ <source>The signature could not be decoded.</source>
+ <translation type="unfinished">签名无法解码。</translation>
+ </message>
+ <message>
+ <source>Please check the signature and try again.</source>
+ <translation type="unfinished">请检查签名后重试。</translation>
+ </message>
+ <message>
+ <source>The signature did not match the message digest.</source>
+ <translation type="unfinished">签名与消息摘要不匹配。</translation>
+ </message>
+ <message>
+ <source>Message verification failed.</source>
+ <translation type="unfinished">消息验证失败。</translation>
+ </message>
+ <message>
+ <source>Message verified.</source>
+ <translation type="unfinished">消息验证成功。</translation>
+ </message>
+</context>
<context>
<name>SplashScreen</name>
<message>
@@ -1092,6 +3524,11 @@ For more information on using this console, type %6.
<context>
<name>TransactionDesc</name>
<message>
+ <source>conflicted with a transaction with %1 confirmations</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that conflicts with a confirmed transaction.</extracomment>
+ <translation type="unfinished">与一个有 %1 个确认的交易冲突</translation>
+ </message>
+ <message>
<source>0/unconfirmed, in memory pool</source>
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
<translation type="unfinished">0/未确认,在内存池中</translation>
@@ -1101,37 +3538,387 @@ For more information on using this console, type %6.
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
<translation type="unfinished">0/未确认,不在内存池中</translation>
</message>
+ <message>
+ <source>abandoned</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an abandoned transaction.</extracomment>
+ <translation type="unfinished">已丢弃</translation>
+ </message>
+ <message>
+ <source>%1/unconfirmed</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in at least one block, but less than 6 blocks.</extracomment>
+ <translation type="unfinished">%1/未确认</translation>
+ </message>
+ <message>
+ <source>%1 confirmations</source>
+ <extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents a transaction confirmed in 6 or more blocks.</extracomment>
+ <translation type="unfinished">%1 个确认</translation>
+ </message>
+ <message>
+ <source>Status</source>
+ <translation type="unfinished">状态</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">日期</translation>
+ </message>
+ <message>
+ <source>Source</source>
+ <translation type="unfinished">来源</translation>
+ </message>
+ <message>
+ <source>Generated</source>
+ <translation type="unfinished">挖矿生成</translation>
+ </message>
+ <message>
+ <source>From</source>
+ <translation type="unfinished">来自</translation>
+ </message>
+ <message>
+ <source>unknown</source>
+ <translation type="unfinished">未知</translation>
+ </message>
+ <message>
+ <source>To</source>
+ <translation type="unfinished">到</translation>
+ </message>
+ <message>
+ <source>own address</source>
+ <translation type="unfinished">自己的地址</translation>
+ </message>
+ <message>
+ <source>watch-only</source>
+ <translation type="unfinished">仅观察:</translation>
+ </message>
+ <message>
+ <source>label</source>
+ <translation type="unfinished">标签</translation>
+ </message>
+ <message>
+ <source>Credit</source>
+ <translation type="unfinished">收入</translation>
+ </message>
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
<numerusform>在%n个区块内成熟</numerusform>
</translation>
</message>
- </context>
+ <message>
+ <source>not accepted</source>
+ <translation type="unfinished">未被接受</translation>
+ </message>
+ <message>
+ <source>Debit</source>
+ <translation type="unfinished">支出</translation>
+ </message>
+ <message>
+ <source>Total debit</source>
+ <translation type="unfinished">总支出</translation>
+ </message>
+ <message>
+ <source>Total credit</source>
+ <translation type="unfinished">总收入</translation>
+ </message>
+ <message>
+ <source>Transaction fee</source>
+ <translation type="unfinished">交易手续费</translation>
+ </message>
+ <message>
+ <source>Net amount</source>
+ <translation type="unfinished">净额</translation>
+ </message>
+ <message>
+ <source>Message</source>
+ <translation type="unfinished">消息</translation>
+ </message>
+ <message>
+ <source>Comment</source>
+ <translation type="unfinished">备注</translation>
+ </message>
+ <message>
+ <source>Transaction ID</source>
+ <translation type="unfinished">交易 ID</translation>
+ </message>
+ <message>
+ <source>Transaction total size</source>
+ <translation type="unfinished">交易总大小</translation>
+ </message>
+ <message>
+ <source>Transaction virtual size</source>
+ <translation type="unfinished">交易虚拟大小</translation>
+ </message>
+ <message>
+ <source>Output index</source>
+ <translation type="unfinished">输出索引</translation>
+ </message>
+ <message>
+ <source> (Certificate was not verified)</source>
+ <translation type="unfinished">(证书未被验证)</translation>
+ </message>
+ <message>
+ <source>Merchant</source>
+ <translation type="unfinished">商家</translation>
+ </message>
+ <message>
+ <source>Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source>
+ <translation type="unfinished">新挖出的比特币在可以使用前必须经过 %1 个区块确认的成熟过程。当您挖出此区块后,它将被广播到网络中以加入区块链。如果它未成功进入区块链,其状态将变更为“不接受”并且不可使用。这可能偶尔会发生,在另一个节点比你早几秒钟成功挖出一个区块时就会这样。</translation>
+ </message>
+ <message>
+ <source>Debug information</source>
+ <translation type="unfinished">调试信息</translation>
+ </message>
+ <message>
+ <source>Transaction</source>
+ <translation type="unfinished">交易</translation>
+ </message>
+ <message>
+ <source>Inputs</source>
+ <translation type="unfinished">输入</translation>
+ </message>
+ <message>
+ <source>Amount</source>
+ <translation type="unfinished">金额</translation>
+ </message>
+ <message>
+ <source>true</source>
+ <translation type="unfinished">是</translation>
+ </message>
+ <message>
+ <source>false</source>
+ <translation type="unfinished">否</translation>
+ </message>
+</context>
+<context>
+ <name>TransactionDescDialog</name>
+ <message>
+ <source>This pane shows a detailed description of the transaction</source>
+ <translation type="unfinished">当前面板显示了交易的详细信息</translation>
+ </message>
+ <message>
+ <source>Details for %1</source>
+ <translation type="unfinished">%1 详情</translation>
+ </message>
+</context>
<context>
<name>TransactionTableModel</name>
<message>
+ <source>Date</source>
+ <translation type="unfinished">日期</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <translation type="unfinished">类型</translation>
+ </message>
+ <message>
<source>Label</source>
<translation type="unfinished">标签</translation>
</message>
<message>
+ <source>Unconfirmed</source>
+ <translation type="unfinished">未确认</translation>
+ </message>
+ <message>
+ <source>Abandoned</source>
+ <translation type="unfinished">已丢弃</translation>
+ </message>
+ <message>
+ <source>Confirming (%1 of %2 recommended confirmations)</source>
+ <translation type="unfinished">确认中 (推荐 %2个确认,已经有 %1个确认)</translation>
+ </message>
+ <message>
+ <source>Confirmed (%1 confirmations)</source>
+ <translation type="unfinished">已确认 (%1 个确认)</translation>
+ </message>
+ <message>
+ <source>Conflicted</source>
+ <translation type="unfinished">有冲突</translation>
+ </message>
+ <message>
+ <source>Immature (%1 confirmations, will be available after %2)</source>
+ <translation type="unfinished">未成熟 (%1 个确认,将在 %2 个后可用)</translation>
+ </message>
+ <message>
+ <source>Generated but not accepted</source>
+ <translation type="unfinished">已生成但未被接受</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">接收到</translation>
+ </message>
+ <message>
+ <source>Received from</source>
+ <translation type="unfinished">接收自</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">发送到</translation>
+ </message>
+ <message>
+ <source>Mined</source>
+ <translation type="unfinished">挖矿所得</translation>
+ </message>
+ <message>
+ <source>watch-only</source>
+ <translation type="unfinished">仅观察:</translation>
+ </message>
+ <message>
+ <source>(n/a)</source>
+ <translation type="unfinished">(不可用)</translation>
+ </message>
+ <message>
<source>(no label)</source>
<translation type="unfinished">(无标签)</translation>
</message>
- </context>
+ <message>
+ <source>Transaction status. Hover over this field to show number of confirmations.</source>
+ <translation type="unfinished">交易状态。 鼠标移到此区域可显示确认数。</translation>
+ </message>
+ <message>
+ <source>Date and time that the transaction was received.</source>
+ <translation type="unfinished">交易被接收的时间和日期。</translation>
+ </message>
+ <message>
+ <source>Type of transaction.</source>
+ <translation type="unfinished">交易类型。</translation>
+ </message>
+ <message>
+ <source>Whether or not a watch-only address is involved in this transaction.</source>
+ <translation type="unfinished">该交易中是否涉及仅观察地址。</translation>
+ </message>
+ <message>
+ <source>User-defined intent/purpose of the transaction.</source>
+ <translation type="unfinished">用户自定义的该交易的意图/目的。</translation>
+ </message>
+ <message>
+ <source>Amount removed from or added to balance.</source>
+ <translation type="unfinished">从余额增加或移除的金额。</translation>
+ </message>
+</context>
<context>
<name>TransactionView</name>
<message>
+ <source>All</source>
+ <translation type="unfinished">全部</translation>
+ </message>
+ <message>
+ <source>Today</source>
+ <translation type="unfinished">今天</translation>
+ </message>
+ <message>
+ <source>This week</source>
+ <translation type="unfinished">本周</translation>
+ </message>
+ <message>
+ <source>This month</source>
+ <translation type="unfinished">本月</translation>
+ </message>
+ <message>
+ <source>Last month</source>
+ <translation type="unfinished">上个月</translation>
+ </message>
+ <message>
+ <source>This year</source>
+ <translation type="unfinished">今年</translation>
+ </message>
+ <message>
+ <source>Received with</source>
+ <translation type="unfinished">接收到</translation>
+ </message>
+ <message>
+ <source>Sent to</source>
+ <translation type="unfinished">发送到</translation>
+ </message>
+ <message>
+ <source>Mined</source>
+ <translation type="unfinished">挖矿所得</translation>
+ </message>
+ <message>
+ <source>Other</source>
+ <translation type="unfinished">其它</translation>
+ </message>
+ <message>
+ <source>Enter address, transaction id, or label to search</source>
+ <translation type="unfinished">输入地址、交易ID或标签进行搜索</translation>
+ </message>
+ <message>
+ <source>Min amount</source>
+ <translation type="unfinished">最小金额</translation>
+ </message>
+ <message>
+ <source>Range…</source>
+ <translation type="unfinished">范围...</translation>
+ </message>
+ <message>
+ <source>&amp;Copy address</source>
+ <translation type="unfinished">复制地址(&amp;C)</translation>
+ </message>
+ <message>
+ <source>Copy &amp;label</source>
+ <translation type="unfinished">复制标签(&amp;L)</translation>
+ </message>
+ <message>
+ <source>Copy &amp;amount</source>
+ <translation type="unfinished">复制金额(&amp;A)</translation>
+ </message>
+ <message>
+ <source>Copy transaction &amp;ID</source>
+ <translation type="unfinished">复制交易 &amp;ID</translation>
+ </message>
+ <message>
+ <source>Copy &amp;raw transaction</source>
+ <translation type="unfinished">复制原始交易(&amp;R)</translation>
+ </message>
+ <message>
+ <source>Copy full transaction &amp;details</source>
+ <translation type="unfinished">复制完整交易详情(&amp;D)</translation>
+ </message>
+ <message>
+ <source>&amp;Show transaction details</source>
+ <translation type="unfinished">显示交易详情(&amp;S)</translation>
+ </message>
+ <message>
+ <source>Increase transaction &amp;fee</source>
+ <translation type="unfinished">增加矿工费(&amp;F)</translation>
+ </message>
+ <message>
+ <source>A&amp;bandon transaction</source>
+ <translation type="unfinished">放弃交易(&amp;B)</translation>
+ </message>
+ <message>
+ <source>&amp;Edit address label</source>
+ <translation type="unfinished">编辑地址标签(&amp;E)</translation>
+ </message>
+ <message>
<source>Show in %1</source>
<extracomment>Transactions table context menu action to show the selected transaction in a third-party block explorer. %1 is a stand-in argument for the URL of the explorer.</extracomment>
<translation type="unfinished">在 %1中显示</translation>
</message>
<message>
+ <source>Export Transaction History</source>
+ <translation type="unfinished">导出交易历史</translation>
+ </message>
+ <message>
<source>Comma separated file</source>
<extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
<translation type="unfinished">逗号分隔文件</translation>
</message>
<message>
+ <source>Confirmed</source>
+ <translation type="unfinished">已确认</translation>
+ </message>
+ <message>
+ <source>Watch-only</source>
+ <translation type="unfinished">仅观察</translation>
+ </message>
+ <message>
+ <source>Date</source>
+ <translation type="unfinished">日期</translation>
+ </message>
+ <message>
+ <source>Type</source>
+ <translation type="unfinished">类型</translation>
+ </message>
+ <message>
<source>Label</source>
<translation type="unfinished">标签</translation>
</message>
@@ -1143,22 +3930,135 @@ For more information on using this console, type %6.
<source>Exporting Failed</source>
<translation type="unfinished">导出失败</translation>
</message>
- </context>
+ <message>
+ <source>There was an error trying to save the transaction history to %1.</source>
+ <translation type="unfinished">尝试把交易历史保存到 %1 时发生了错误。</translation>
+ </message>
+ <message>
+ <source>Exporting Successful</source>
+ <translation type="unfinished">导出成功</translation>
+ </message>
+ <message>
+ <source>The transaction history was successfully saved to %1.</source>
+ <translation type="unfinished">已成功将交易历史保存到 %1。</translation>
+ </message>
+ <message>
+ <source>Range:</source>
+ <translation type="unfinished">范围:</translation>
+ </message>
+ <message>
+ <source>to</source>
+ <translation type="unfinished">到</translation>
+ </message>
+</context>
<context>
<name>WalletFrame</name>
<message>
+ <source>No wallet has been loaded.
+Go to File &gt; Open Wallet to load a wallet.
+- OR -</source>
+ <translation type="unfinished">未加载钱包。
+请转到“文件”菜单 &gt; “打开钱包”来加载一个钱包。
+- 或者 -</translation>
+ </message>
+ <message>
+ <source>Create a new wallet</source>
+ <translation type="unfinished">创建一个新的钱包</translation>
+ </message>
+ <message>
<source>Error</source>
<translation type="unfinished">错误</translation>
</message>
- </context>
+ <message>
+ <source>Unable to decode PSBT from clipboard (invalid base64)</source>
+ <translation type="unfinished">无法从剪贴板解码PSBT(Base64值无效)</translation>
+ </message>
+ <message>
+ <source>Load Transaction Data</source>
+ <translation type="unfinished">加载交易数据</translation>
+ </message>
+ <message>
+ <source>Partially Signed Transaction (*.psbt)</source>
+ <translation type="unfinished">部分签名交易 (*.psbt)</translation>
+ </message>
+ <message>
+ <source>PSBT file must be smaller than 100 MiB</source>
+ <translation type="unfinished">PSBT文件必须小于100MiB</translation>
+ </message>
+ <message>
+ <source>Unable to decode PSBT</source>
+ <translation type="unfinished">无法解码PSBT</translation>
+ </message>
+</context>
<context>
<name>WalletModel</name>
<message>
+ <source>Send Coins</source>
+ <translation type="unfinished">发币</translation>
+ </message>
+ <message>
+ <source>Fee bump error</source>
+ <translation type="unfinished">追加手续费出错</translation>
+ </message>
+ <message>
+ <source>Increasing transaction fee failed</source>
+ <translation type="unfinished">追加交易手续费失败</translation>
+ </message>
+ <message>
+ <source>Do you want to increase the fee?</source>
+ <extracomment>Asks a user if they would like to manually increase the fee of a transaction that has already been created.</extracomment>
+ <translation type="unfinished">您想追加手续费吗?</translation>
+ </message>
+ <message>
+ <source>Current fee:</source>
+ <translation type="unfinished">当前手续费:</translation>
+ </message>
+ <message>
+ <source>Increase:</source>
+ <translation type="unfinished">增加量:</translation>
+ </message>
+ <message>
+ <source>New fee:</source>
+ <translation type="unfinished">新交易费:</translation>
+ </message>
+ <message>
+ <source>Warning: This may pay the additional fee by reducing change outputs or adding inputs, when necessary. It may add a new change output if one does not already exist. These changes may potentially leak privacy.</source>
+ <translation type="unfinished">警告: 因为在必要的时候会减少找零输出个数或增加输入个数,这可能要付出额外的费用。在没有找零输出的情况下可能会新增一个。这些变更可能会导致潜在的隐私泄露。</translation>
+ </message>
+ <message>
+ <source>Confirm fee bump</source>
+ <translation type="unfinished">确认手续费追加</translation>
+ </message>
+ <message>
+ <source>Can't draft transaction.</source>
+ <translation type="unfinished">无法起草交易。</translation>
+ </message>
+ <message>
+ <source>PSBT copied</source>
+ <translation type="unfinished">已复制PSBT</translation>
+ </message>
+ <message>
<source>Copied to clipboard</source>
<comment>Fee-bump PSBT saved</comment>
<translation type="unfinished">复制到剪贴板</translation>
</message>
- </context>
+ <message>
+ <source>Can't sign transaction.</source>
+ <translation type="unfinished">无法签名交易</translation>
+ </message>
+ <message>
+ <source>Could not commit transaction</source>
+ <translation type="unfinished">无法提交交易</translation>
+ </message>
+ <message>
+ <source>Can't display address</source>
+ <translation type="unfinished">无法显示地址</translation>
+ </message>
+ <message>
+ <source>default wallet</source>
+ <translation type="unfinished">默认钱包</translation>
+ </message>
+</context>
<context>
<name>WalletView</name>
<message>
@@ -1167,20 +4067,77 @@ For more information on using this console, type %6.
</message>
<message>
<source>Export the data in the current tab to a file</source>
- <translation type="unfinished">将当前选项卡中的数据导出到文件</translation>
+ <translation type="unfinished">将当前标签页数据导出到文件</translation>
</message>
- </context>
+ <message>
+ <source>Backup Wallet</source>
+ <translation type="unfinished">备份钱包</translation>
+ </message>
+ <message>
+ <source>Wallet Data</source>
+ <extracomment>Name of the wallet data file format.</extracomment>
+ <translation type="unfinished">钱包数据</translation>
+ </message>
+ <message>
+ <source>Backup Failed</source>
+ <translation type="unfinished">备份失败</translation>
+ </message>
+ <message>
+ <source>There was an error trying to save the wallet data to %1.</source>
+ <translation type="unfinished">尝试保存钱包数据至 %1 时发生了错误。</translation>
+ </message>
+ <message>
+ <source>Backup Successful</source>
+ <translation type="unfinished">备份成功</translation>
+ </message>
+ <message>
+ <source>The wallet data was successfully saved to %1.</source>
+ <translation type="unfinished">已成功保存钱包数据至 %1。</translation>
+ </message>
+ <message>
+ <source>Cancel</source>
+ <translation type="unfinished">取消</translation>
+ </message>
+</context>
<context>
<name>bitcoin-core</name>
<message>
+ <source>The %s developers</source>
+ <translation type="unfinished">%s 开发者</translation>
+ </message>
+ <message>
+ <source>%s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup.</source>
+ <translation type="unfinished">%s损坏。请尝试用bitcoin-wallet钱包工具来对其进行急救。或者用一个备份进行还原。</translation>
+ </message>
+ <message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
</message>
<message>
+ <source>Cannot downgrade wallet from version %i to version %i. Wallet version unchanged.</source>
+ <translation type="unfinished">无法把钱包版本从%i降级到%i。钱包版本未改变。</translation>
+ </message>
+ <message>
+ <source>Cannot obtain a lock on data directory %s. %s is probably already running.</source>
+ <translation type="unfinished">无法锁定数据目录 %s。%s 可能已经在运行。</translation>
+ </message>
+ <message>
+ <source>Cannot upgrade a non HD split wallet from version %i to version %i without upgrading to support pre-split keypool. Please use version %i or no version specified.</source>
+ <translation type="unfinished">无法在不支持“拆分前的密钥池”(pre split keypool)的情况下把“非拆分HD钱包”(non HD split wallet)从版本%i升级到%i。请使用版本号%i,或者压根不要指定版本号。</translation>
+ </message>
+ <message>
<source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
<translation type="unfinished">%s的磁盘空间可能无法容纳区块文件。大约要在这个目录中储存 %uGB 的数据。</translation>
</message>
<message>
+ <source>Distributed under the MIT software license, see the accompanying file %s or %s</source>
+ <translation type="unfinished">在MIT协议下分发,参见附带的 %s 或 %s 文件</translation>
+ </message>
+ <message>
<source>Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
<translation type="unfinished">加载钱包时出错。需要下载区块才能加载钱包,而且在使用assumeutxo快照时,下载区块是不按顺序的,这个时候软件不支持加载钱包。在节点同步至高度%s之后就应该可以加载钱包了。</translation>
</message>
@@ -1189,6 +4146,18 @@ For more information on using this console, type %6.
<translation type="unfinished">读取%s出错!交易数据可能丢失或有误。重新扫描钱包中。</translation>
</message>
<message>
+ <source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
+ <translation type="unfinished">错误: 转储文件格式不正确。得到是"%s",而预期本应得到的是 "format"。</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile identifier record is incorrect. Got "%s", expected "%s".</source>
+ <translation type="unfinished">错误: 转储文件标识符记录不正确。得到的是 "%s",而预期本应得到的是 "%s"。</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
+ <translation type="unfinished">错误: 转储文件版本不被支持。这个版本的 bitcoin-wallet 只支持版本为 1 的转储文件。得到的转储文件版本却是%s</translation>
+ </message>
+ <message>
<source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
<translation type="unfinished">错误: 旧式钱包只支持 "legacy", "p2sh-segwit", 和 "bech32" 这三种地址类型</translation>
</message>
@@ -1197,16 +4166,100 @@ For more information on using this console, type %6.
<translation type="unfinished">错误: 无法为该旧式钱包生成描述符。如果钱包已被加密,请确保提供的钱包加密密码正确。</translation>
</message>
<message>
+ <source>File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
+ <translation type="unfinished">文件%s已经存在。如果你确定这就是你想做的,先把这个文件挪开。</translation>
+ </message>
+ <message>
<source>Invalid or corrupt peers.dat (%s). If you believe this is a bug, please report it to %s. As a workaround, you can move the file (%s) out of the way (rename, move, or delete) to have a new one created on the next start.</source>
<translation type="unfinished">无效或损坏的peers.dat (%s)。如果你确信这是一个bug,请反馈到%s。作为变通办法,你可以把现有文件 (%s) 移开(重命名、移动或删除),这样就可以在下次启动时创建一个新文件了。</translation>
</message>
<message>
+ <source>More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
+ <translation type="unfinished">提供多个洋葱路由绑定地址。对自动创建的洋葱服务用%s</translation>
+ </message>
+ <message>
+ <source>No dump file provided. To use createfromdump, -dumpfile=&lt;filename&gt; must be provided.</source>
+ <translation type="unfinished">没有提供转储文件。要使用 createfromdump ,必须提供 -dumpfile=&lt;filename&gt;。</translation>
+ </message>
+ <message>
+ <source>No dump file provided. To use dump, -dumpfile=&lt;filename&gt; must be provided.</source>
+ <translation type="unfinished">没有提供转储文件。要使用 dump ,必须提供 -dumpfile=&lt;filename&gt;。</translation>
+ </message>
+ <message>
+ <source>No wallet file format provided. To use createfromdump, -format=&lt;format&gt; must be provided.</source>
+ <translation type="unfinished">没有提供钱包格式。要使用 createfromdump ,必须提供 -format=&lt;format&gt;</translation>
+ </message>
+ <message>
+ <source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
+ <translation type="unfinished">请检查电脑的日期时间设置是否正确!时间错误可能会导致 %s 运行异常。</translation>
+ </message>
+ <message>
+ <source>Please contribute if you find %s useful. Visit %s for further information about the software.</source>
+ <translation type="unfinished">如果你认为%s对你比较有用的话,请对我们进行一些自愿贡献。请访问%s网站来获取有关这个软件的更多信息。</translation>
+ </message>
+ <message>
+ <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source>
+ <translation type="unfinished">修剪被设置得太小,已经低于最小值%d MiB,请使用更大的数值。</translation>
+ </message>
+ <message>
<source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
<translation type="unfinished">修剪模式与 -reindex-chainstate 不兼容。请进行一次完整的 -reindex 。</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
+ <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
+ <translation type="unfinished">修剪:上次同步钱包的位置已经超出(落后于)现有修剪后数据的范围。你需要进行-reindex(对于已经启用修剪节点,就需要重新下载整个区块链)</translation>
+ </message>
+ <message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失败。您需要手动移走或删除无效的快照目录 %s来解决这个问题,不然的话您就会在下一次启动时遇到相同的错误。</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
+ <translation type="unfinished">SQLiteDatabase: SQLite钱包schema版本%d未知。只支持%d版本</translation>
+ </message>
+ <message>
+ <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
+ <translation type="unfinished">区块数据库包含未来的交易,这可能是由本机的日期时间错误引起。若确认本机日期时间正确,请重新建立区块数据库。</translation>
+ </message>
+ <message>
+ <source>The transaction amount is too small to send after the fee has been deducted</source>
+ <translation type="unfinished">这笔交易在扣除手续费后的金额太小,以至于无法送出</translation>
+ </message>
+ <message>
+ <source>This error could occur if this wallet was not shutdown cleanly and was last loaded using a build with a newer version of Berkeley DB. If so, please use the software that last loaded this wallet</source>
+ <translation type="unfinished">如果这个钱包之前没有正确关闭,而且上一次是被新版的Berkeley DB加载过,就会发生这个错误。如果是这样,请使用上次加载过这个钱包的那个软件。</translation>
+ </message>
+ <message>
+ <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source>
+ <translation type="unfinished">这是测试用的预发布版本 - 请谨慎使用 - 不要用来挖矿,或者在正式商用环境下使用</translation>
+ </message>
+ <message>
+ <source>This is the maximum transaction fee you pay (in addition to the normal fee) to prioritize partial spend avoidance over regular coin selection.</source>
+ <translation type="unfinished">为了在常规选币过程中优先考虑避免“只花出一个地址上的一部分币”(partial spend)这种情况,您最多还需要(在常规手续费之外)付出的交易手续费。</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you may discard if change is smaller than dust at this level</source>
+ <translation type="unfinished">找零低于当前粉尘阈值时会被舍弃,并计入手续费,这些交易手续费就是在这种情况下产生的。</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you may pay when fee estimates are not available.</source>
+ <translation type="unfinished">不能估计手续费时,你会付出这个手续费金额。</translation>
+ </message>
+ <message>
+ <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source>
+ <translation type="unfinished">网络版本字符串的总长度 (%i) 超过最大长度 (%i) 了。请减少 uacomment 参数的数目或长度。</translation>
+ </message>
+ <message>
+ <source>Unable to replay blocks. You will need to rebuild the database using -reindex-chainstate.</source>
+ <translation type="unfinished">无法重放区块。你需要先用-reindex-chainstate参数来重建数据库。</translation>
+ </message>
+ <message>
+ <source>Unknown wallet file format "%s" provided. Please provide one of "bdb" or "sqlite".</source>
+ <translation type="unfinished">提供了未知的钱包格式 "%s" 。请使用 "bdb" 或 "sqlite" 中的一种。</translation>
+ </message>
+ <message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支持的类别限定日志等级 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的类别: %3$s 。有效的日志等级: %4$s 。</translation>
</message>
<message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
@@ -1217,32 +4270,60 @@ For more information on using this console, type %6.
<translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
</message>
<message>
- <source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
- <translation type="unfinished">在 -dnsseed 被设为 false 时无法将 -forcednsseed 设为 true 。</translation>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">钱包加载成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。可以使用 migratewallet 命令将旧式钱包迁移至输出描述符钱包。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
+ <source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
+ <translation type="unfinished">警告: 转储文件的钱包格式 "%s" 与命令行指定的格式 "%s" 不符。</translation>
</message>
<message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上以供诊断问题的原因。</translation>
+ <source>Warning: Private keys detected in wallet {%s} with disabled private keys</source>
+ <translation type="unfinished">警告:在已经禁用私钥的钱包 {%s} 中仍然检测到私钥</translation>
</message>
<message>
- <source>%s is set very high! Fees this large could be paid on a single transaction.</source>
- <translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
+ <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source>
+ <translation type="unfinished">警告:我们和其他节点似乎没达成共识!您可能需要升级,或者就是其他节点可能需要升级。</translation>
+ </message>
+ <message>
+ <source>Witness data for blocks after height %d requires validation. Please restart with -reindex.</source>
+ <translation type="unfinished">需要验证高度在%d之后的区块见证数据。请使用 -reindex 重新启动。</translation>
+ </message>
+ <message>
+ <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source>
+ <translation type="unfinished">您需要使用 -reindex 重新构建数据库以回到未修剪模式。这将重新下载整个区块链</translation>
+ </message>
+ <message>
+ <source>%s is set very high!</source>
+ <translation type="unfinished">%s非常高!</translation>
+ </message>
+ <message>
+ <source>-maxmempool must be at least %d MB</source>
+ <translation type="unfinished">-maxmempool 最小为%d MB</translation>
+ </message>
+ <message>
+ <source>A fatal internal error occurred, see debug.log for details</source>
+ <translation type="unfinished">发生了致命的内部错误,请在debug.log中查看详情</translation>
+ </message>
+ <message>
+ <source>Cannot resolve -%s address: '%s'</source>
+ <translation type="unfinished">无法解析 - %s 地址: '%s'</translation>
+ </message>
+ <message>
+ <source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
+ <translation type="unfinished">在 -dnsseed 被设为 false 时无法将 -forcednsseed 设为 true 。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
+ <source>Cannot set -peerblockfilters without -blockfilterindex.</source>
+ <translation type="unfinished">没有启用-blockfilterindex,就不能启用-peerblockfilters。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
+ <source>Cannot write to data directory '%s'; check permissions.</source>
+ <translation type="unfinished">不能写入到数据目录'%s';请检查文件权限。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
+ <source>%s is set very high! Fees this large could be paid on a single transaction.</source>
+ <translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
</message>
<message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
@@ -1253,6 +4334,10 @@ For more information on using this console, type %6.
<translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">读取 %s 时出错! 所有密钥都被正确读取,但交易数据或地址元数据可能缺失或有误。</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
</message>
@@ -1265,12 +4350,16 @@ For more information on using this console, type %6.
<translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">计算追加手续费失败,因为未确认UTXO依赖了大量未确认交易的簇集。</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
</message>
<message>
<source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
- <translation type="unfinished">手续费估计失败。而且备用手续费估计(fallbackfee)已被禁用。请再等一些区块,或者启用%s。</translation>
+ <translation type="unfinished">手续费估计失败。而且备用手续费估计(fallbackfee)已被禁用。请再等几个区块,或者启用%s。</translation>
</message>
<message>
<source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
@@ -1314,7 +4403,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
- <translation type="unfinished">未确认UTXO可用,但花掉它们将会创建一条会被内存池拒绝的交易链</translation>
+ <translation type="unfinished">未确认UTXO可用,但花掉它们会创建出一条会被内存池拒绝的交易链</translation>
</message>
<message>
<source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
@@ -1339,10 +4428,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -1359,10 +4444,90 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">区块验证已中断</translation>
</message>
<message>
+ <source>Config setting for %s only applied on %s network when in [%s] section.</source>
+ <translation type="unfinished">对 %s 的配置设置只对 %s 网络生效,如果它位于配置的 [%s] 章节的话。</translation>
+ </message>
+ <message>
+ <source>Copyright (C) %i-%i</source>
+ <translation type="unfinished">版权所有 (C) %i-%i</translation>
+ </message>
+ <message>
+ <source>Corrupted block database detected</source>
+ <translation type="unfinished">检测到区块数据库损坏</translation>
+ </message>
+ <message>
+ <source>Could not find asmap file %s</source>
+ <translation type="unfinished">找不到asmap文件%s</translation>
+ </message>
+ <message>
+ <source>Could not parse asmap file %s</source>
+ <translation type="unfinished">无法解析asmap文件%s</translation>
+ </message>
+ <message>
+ <source>Disk space is too low!</source>
+ <translation type="unfinished">磁盘空间太低!</translation>
+ </message>
+ <message>
+ <source>Do you want to rebuild the block database now?</source>
+ <translation type="unfinished">你想现在就重建区块数据库吗?</translation>
+ </message>
+ <message>
+ <source>Done loading</source>
+ <translation type="unfinished">加载完成</translation>
+ </message>
+ <message>
+ <source>Dump file %s does not exist.</source>
+ <translation type="unfinished">转储文件 %s 不存在</translation>
+ </message>
+ <message>
+ <source>Error creating %s</source>
+ <translation type="unfinished">创建%s时出错</translation>
+ </message>
+ <message>
+ <source>Error initializing block database</source>
+ <translation type="unfinished">初始化区块数据库时出错</translation>
+ </message>
+ <message>
+ <source>Error initializing wallet database environment %s!</source>
+ <translation type="unfinished">初始化钱包数据库环境错误 %s!</translation>
+ </message>
+ <message>
+ <source>Error loading %s</source>
+ <translation type="unfinished">载入 %s 时发生错误</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Private keys can only be disabled during creation</source>
+ <translation type="unfinished">加载 %s 时出错:只能在创建钱包时禁用私钥。</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Wallet corrupted</source>
+ <translation type="unfinished">%s 加载出错:钱包损坏</translation>
+ </message>
+ <message>
+ <source>Error loading %s: Wallet requires newer version of %s</source>
+ <translation type="unfinished">%s 加载错误:请升级到最新版 %s</translation>
+ </message>
+ <message>
+ <source>Error loading block database</source>
+ <translation type="unfinished">加载区块数据库时出错</translation>
+ </message>
+ <message>
+ <source>Error opening block database</source>
+ <translation type="unfinished">打开区块数据库时出错</translation>
+ </message>
+ <message>
<source>Error reading configuration file: %s</source>
<translation type="unfinished">读取配置文件失败: %s</translation>
</message>
<message>
+ <source>Error reading from database, shutting down.</source>
+ <translation type="unfinished">读取数据库出错,关闭中。</translation>
+ </message>
+ <message>
+ <source>Error reading next record from wallet database</source>
+ <translation type="unfinished">从钱包数据库读取下一条记录时出错</translation>
+ </message>
+ <message>
<source>Error: Cannot extract destination from the generated scriptpubkey</source>
<translation type="unfinished">错误: 无法从生成的scriptpubkey提取目标</translation>
</message>
@@ -1375,10 +4540,42 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误:无法删除仅观察交易</translation>
</message>
<message>
+ <source>Error: Couldn't create cursor into database</source>
+ <translation type="unfinished">错误: 无法在数据库中创建指针</translation>
+ </message>
+ <message>
+ <source>Error: Disk space is low for %s</source>
+ <translation type="unfinished">错误: %s 所在的磁盘空间低。</translation>
+ </message>
+ <message>
+ <source>Error: Dumpfile checksum does not match. Computed %s, expected %s</source>
+ <translation type="unfinished">错误: 转储文件的校验和不符。计算得到%s,预料中本应该得到%s</translation>
+ </message>
+ <message>
<source>Error: Failed to create new watchonly wallet</source>
<translation type="unfinished">错误:创建新仅观察钱包失败</translation>
</message>
<message>
+ <source>Error: Got key that was not hex: %s</source>
+ <translation type="unfinished">错误: 得到了不是十六进制的键:%s</translation>
+ </message>
+ <message>
+ <source>Error: Got value that was not hex: %s</source>
+ <translation type="unfinished">错误: 得到了不是十六进制的数值:%s</translation>
+ </message>
+ <message>
+ <source>Error: Keypool ran out, please call keypoolrefill first</source>
+ <translation type="unfinished">错误: 密钥池已被耗尽,请先调用keypoolrefill</translation>
+ </message>
+ <message>
+ <source>Error: Missing checksum</source>
+ <translation type="unfinished">错误:跳过检查检验和</translation>
+ </message>
+ <message>
+ <source>Error: No %s addresses available.</source>
+ <translation type="unfinished">错误: 没有可用的%s地址。</translation>
+ </message>
+ <message>
<source>Error: Not all watchonly txs could be deleted</source>
<translation type="unfinished">错误:有些仅观察交易无法被删除</translation>
</message>
@@ -1399,6 +4596,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误:无法为你的钱包创建备份</translation>
</message>
<message>
+ <source>Error: Unable to parse version %u as a uint32_t</source>
+ <translation type="unfinished">错误:无法把版本号%u作为unit32_t解析</translation>
+ </message>
+ <message>
<source>Error: Unable to read all records in the database</source>
<translation type="unfinished">错误:无法读取这个数据库中的所有记录</translation>
</message>
@@ -1407,14 +4608,74 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误:无法移除仅观察地址簿数据</translation>
</message>
<message>
+ <source>Error: Unable to write record to new wallet</source>
+ <translation type="unfinished">错误: 无法写入记录到新钱包</translation>
+ </message>
+ <message>
+ <source>Failed to listen on any port. Use -listen=0 if you want this.</source>
+ <translation type="unfinished">监听端口失败。如果你愿意的话,请使用 -listen=0 参数。</translation>
+ </message>
+ <message>
+ <source>Failed to rescan the wallet during initialization</source>
+ <translation type="unfinished">初始化时重扫描钱包失败</translation>
+ </message>
+ <message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">无法启动索引,关闭中...</translation>
+ </message>
+ <message>
+ <source>Failed to verify database</source>
+ <translation type="unfinished">校验数据库失败</translation>
+ </message>
+ <message>
+ <source>Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
+ <translation type="unfinished">手续费率 (%s) 低于最大手续费率设置 (%s)</translation>
+ </message>
+ <message>
+ <source>Ignoring duplicate -wallet %s.</source>
+ <translation type="unfinished">忽略重复的 -wallet %s。</translation>
+ </message>
+ <message>
+ <source>Importing…</source>
+ <translation type="unfinished">导入...</translation>
+ </message>
+ <message>
+ <source>Incorrect or no genesis block found. Wrong datadir for network?</source>
+ <translation type="unfinished">没有找到创世区块,或者创世区块不正确。是否把数据目录错误地设成了另一个网络(比如测试网络)的?</translation>
+ </message>
+ <message>
+ <source>Initialization sanity check failed. %s is shutting down.</source>
+ <translation type="unfinished">初始化完整性检查失败。%s 即将关闭。</translation>
+ </message>
+ <message>
<source>Input not found or already spent</source>
- <translation type="unfinished">找不到交易項,或可能已經花掉了</translation>
+ <translation type="unfinished">找不到交易输入项,可能已经被花掉了</translation>
</message>
<message>
<source>Insufficient dbcache for block verification</source>
<translation type="unfinished">dbcache不足以用于区块验证</translation>
</message>
<message>
+ <source>Insufficient funds</source>
+ <translation type="unfinished">金额不足</translation>
+ </message>
+ <message>
+ <source>Invalid -i2psam address or hostname: '%s'</source>
+ <translation type="unfinished">无效的 -i2psam 地址或主机名: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid -onion address or hostname: '%s'</source>
+ <translation type="unfinished">无效的 -onion 地址: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid -proxy address or hostname: '%s'</source>
+ <translation type="unfinished">无效的 -proxy 地址或主机名: '%s'</translation>
+ </message>
+ <message>
+ <source>Invalid P2P permission: '%s'</source>
+ <translation type="unfinished">无效的 P2P 权限:'%s'</translation>
+ </message>
+ <message>
<source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least %s)</source>
<translation type="unfinished">%s=&lt;amount&gt;: '%s' 中指定了非法的金额 (必须至少达到 %s)</translation>
</message>
@@ -1423,6 +4684,14 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">%s=&lt;amount&gt;: '%s' 中指定了非法的金额</translation>
</message>
<message>
+ <source>Invalid amount for -%s=&lt;amount&gt;: '%s'</source>
+ <translation type="unfinished">参数 -%s=&lt;amount&gt;: '%s' 指定了无效的金额</translation>
+ </message>
+ <message>
+ <source>Invalid netmask specified in -whitelist: '%s'</source>
+ <translation type="unfinished">参数 -whitelist: '%s' 指定了无效的网络掩码</translation>
+ </message>
+ <message>
<source>Invalid port specified in %s: '%s'</source>
<translation type="unfinished">%s指定了无效的端口号: '%s'</translation>
</message>
@@ -1435,16 +4704,40 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">监听外部连接失败 (listen函数返回了错误 %s)</translation>
</message>
<message>
+ <source>Loading P2P addresses…</source>
+ <translation type="unfinished">加载P2P地址...</translation>
+ </message>
+ <message>
+ <source>Loading banlist…</source>
+ <translation type="unfinished">加载封禁列表...</translation>
+ </message>
+ <message>
+ <source>Loading block index…</source>
+ <translation type="unfinished">加载区块索引...</translation>
+ </message>
+ <message>
+ <source>Loading wallet…</source>
+ <translation type="unfinished">加载钱包...</translation>
+ </message>
+ <message>
<source>Missing amount</source>
- <translation type="unfinished">缺少金額</translation>
+ <translation type="unfinished">找不到金额</translation>
</message>
<message>
<source>Missing solving data for estimating transaction size</source>
- <translation type="unfinished">缺少用於估計交易規模的求解數據</translation>
+ <translation type="unfinished">找不到用于估计交易大小的解答数据</translation>
+ </message>
+ <message>
+ <source>Need to specify a port with -whitebind: '%s'</source>
+ <translation type="unfinished">-whitebind: '%s' 需要指定一个端口</translation>
</message>
<message>
<source>No addresses available</source>
- <translation type="unfinished">沒有可用的地址</translation>
+ <translation type="unfinished">没有可用的地址</translation>
+ </message>
+ <message>
+ <source>Not enough file descriptors available.</source>
+ <translation type="unfinished">没有足够的文件描述符可用。</translation>
</message>
<message>
<source>Not found pre-selected input %s</source>
@@ -1455,36 +4748,224 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">无法求解的预先选择输入%s</translation>
</message>
<message>
+ <source>Prune cannot be configured with a negative value.</source>
+ <translation type="unfinished">不能把修剪配置成一个负数。</translation>
+ </message>
+ <message>
+ <source>Prune mode is incompatible with -txindex.</source>
+ <translation type="unfinished">修剪模式与 -txindex 不兼容。</translation>
+ </message>
+ <message>
+ <source>Pruning blockstore…</source>
+ <translation type="unfinished">修剪区块存储...</translation>
+ </message>
+ <message>
+ <source>Reducing -maxconnections from %d to %d, because of system limitations.</source>
+ <translation type="unfinished">因为系统的限制,将 -maxconnections 参数从 %d 降到了 %d</translation>
+ </message>
+ <message>
+ <source>Replaying blocks…</source>
+ <translation type="unfinished">重放区块...</translation>
+ </message>
+ <message>
+ <source>Rescanning…</source>
+ <translation type="unfinished">重扫描...</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to execute statement to verify database: %s</source>
+ <translation type="unfinished">SQLiteDatabase: 执行校验数据库语句时失败: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to prepare statement to verify database: %s</source>
+ <translation type="unfinished">SQLiteDatabase: 预处理用于校验数据库的语句时失败: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Failed to read database verification error: %s</source>
+ <translation type="unfinished">SQLiteDatabase: 读取数据库失败,校验错误: %s</translation>
+ </message>
+ <message>
+ <source>SQLiteDatabase: Unexpected application id. Expected %u, got %u</source>
+ <translation type="unfinished">SQLiteDatabase: 意料之外的应用ID。预期为%u,实际为%u</translation>
+ </message>
+ <message>
+ <source>Section [%s] is not recognized.</source>
+ <translation type="unfinished">无法识别配置章节 [%s]。</translation>
+ </message>
+ <message>
+ <source>Signing transaction failed</source>
+ <translation type="unfinished">签名交易失败</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" does not exist</source>
+ <translation type="unfinished">参数 -walletdir "%s" 指定了不存在的路径</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" is a relative path</source>
+ <translation type="unfinished">参数 -walletdir "%s" 指定了相对路径</translation>
+ </message>
+ <message>
+ <source>Specified -walletdir "%s" is not a directory</source>
+ <translation type="unfinished">参数 -walletdir "%s" 指定的路径不是目录</translation>
+ </message>
+ <message>
+ <source>Specified blocks directory "%s" does not exist.</source>
+ <translation type="unfinished">指定的区块目录"%s"不存在。</translation>
+ </message>
+ <message>
<source>Specified data directory "%s" does not exist.</source>
<translation type="unfinished">指定的数据目录 "%s" 不存在。</translation>
</message>
<message>
+ <source>Starting network threads…</source>
+ <translation type="unfinished">启动网络线程...</translation>
+ </message>
+ <message>
+ <source>The source code is available from %s.</source>
+ <translation type="unfinished">可以从 %s 获取源代码。</translation>
+ </message>
+ <message>
+ <source>The specified config file %s does not exist</source>
+ <translation type="unfinished">指定的配置文件%s不存在</translation>
+ </message>
+ <message>
+ <source>The transaction amount is too small to pay the fee</source>
+ <translation type="unfinished">交易金额太小,不足以支付交易费</translation>
+ </message>
+ <message>
+ <source>The wallet will avoid paying less than the minimum relay fee.</source>
+ <translation type="unfinished">钱包会避免让手续费低于最小转发费率(minrelay fee)。</translation>
+ </message>
+ <message>
+ <source>This is experimental software.</source>
+ <translation type="unfinished">这是实验性的软件。</translation>
+ </message>
+ <message>
+ <source>This is the minimum transaction fee you pay on every transaction.</source>
+ <translation type="unfinished">这是你每次交易付款时最少要付的手续费。</translation>
+ </message>
+ <message>
+ <source>This is the transaction fee you will pay if you send a transaction.</source>
+ <translation type="unfinished">如果发送交易,这将是你要支付的手续费。</translation>
+ </message>
+ <message>
+ <source>Transaction amount too small</source>
+ <translation type="unfinished">交易金额太小</translation>
+ </message>
+ <message>
+ <source>Transaction amounts must not be negative</source>
+ <translation type="unfinished">交易金额不不可为负数</translation>
+ </message>
+ <message>
<source>Transaction change output index out of range</source>
- <translation type="unfinished">交易尋找零輸出項超出範圍</translation>
+ <translation type="unfinished">交易找零输出项编号超出范围</translation>
+ </message>
+ <message>
+ <source>Transaction has too long of a mempool chain</source>
+ <translation type="unfinished">此交易在内存池中的存在过长的链条</translation>
+ </message>
+ <message>
+ <source>Transaction must have at least one recipient</source>
+ <translation type="unfinished">交易必须包含至少一个收款人</translation>
</message>
<message>
<source>Transaction needs a change address, but we can't generate it.</source>
<translation type="unfinished">交易需要一个找零地址,但是我们无法生成它。</translation>
</message>
<message>
+ <source>Transaction too large</source>
+ <translation type="unfinished">交易过大</translation>
+ </message>
+ <message>
<source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
<translation type="unfinished">无法为 -maxsigcachesize: '%s' MiB 分配内存</translation>
</message>
<message>
+ <source>Unable to bind to %s on this computer (bind returned error %s)</source>
+ <translation type="unfinished">无法在本机绑定%s端口 (bind函数返回了错误 %s)</translation>
+ </message>
+ <message>
+ <source>Unable to bind to %s on this computer. %s is probably already running.</source>
+ <translation type="unfinished">无法在本机绑定 %s 端口。%s 可能已经在运行。</translation>
+ </message>
+ <message>
+ <source>Unable to create the PID file '%s': %s</source>
+ <translation type="unfinished">无法创建PID文件'%s': %s</translation>
+ </message>
+ <message>
<source>Unable to find UTXO for external input</source>
<translation type="unfinished">无法为外部输入找到UTXO</translation>
</message>
<message>
+ <source>Unable to generate initial keys</source>
+ <translation type="unfinished">无法生成初始密钥</translation>
+ </message>
+ <message>
+ <source>Unable to generate keys</source>
+ <translation type="unfinished">无法生成密钥</translation>
+ </message>
+ <message>
+ <source>Unable to open %s for writing</source>
+ <translation type="unfinished">无法打开%s用于写入</translation>
+ </message>
+ <message>
<source>Unable to parse -maxuploadtarget: '%s'</source>
- <translation type="unfinished">無法解析-最大上傳目標:'%s'</translation>
+ <translation type="unfinished">无法解析 -maxuploadtarget: '%s'</translation>
+ </message>
+ <message>
+ <source>Unable to start HTTP server. See debug log for details.</source>
+ <translation type="unfinished">无法启动HTTP服务,查看日志获取更多信息</translation>
</message>
<message>
<source>Unable to unload the wallet before migrating</source>
<translation type="unfinished">在迁移前无法卸载钱包</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unknown -blockfilterindex value %s.</source>
+ <translation type="unfinished">未知的 -blockfilterindex 数值 %s。</translation>
+ </message>
+ <message>
+ <source>Unknown address type '%s'</source>
+ <translation type="unfinished">未知的地址类型 '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown change type '%s'</source>
+ <translation type="unfinished">未知的找零类型 '%s'</translation>
+ </message>
+ <message>
+ <source>Unknown network specified in -onlynet: '%s'</source>
+ <translation type="unfinished">-onlynet 指定的是未知网络: %s</translation>
+ </message>
+ <message>
+ <source>Unknown new rules activated (versionbit %i)</source>
+ <translation type="unfinished">不明的交易规则已经激活 (versionbit %i)</translation>
+ </message>
+ <message>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s 。</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上 acceptstalefeeestimates 不受支持。</translation>
+ </message>
+ <message>
+ <source>Unsupported logging category %s=%s.</source>
+ <translation type="unfinished">不支持的日志分类 %s=%s。</translation>
+ </message>
+ <message>
+ <source>User Agent comment (%s) contains unsafe characters.</source>
+ <translation type="unfinished">用户代理备注(%s)包含不安全的字符。</translation>
+ </message>
+ <message>
+ <source>Verifying blocks…</source>
+ <translation type="unfinished">验证区块...</translation>
+ </message>
+ <message>
+ <source>Verifying wallet(s)…</source>
+ <translation type="unfinished">验证钱包...</translation>
+ </message>
+ <message>
+ <source>Wallet needed to be rewritten: restart %s to complete</source>
+ <translation type="unfinished">钱包需要被重写:请重新启动%s来完成</translation>
</message>
<message>
<source>Settings file could not be read</source>
diff --git a/src/qt/locale/bitcoin_zh_HK.ts b/src/qt/locale/bitcoin_zh_HK.ts
index 492937c0e7..c43300fbcd 100644
--- a/src/qt/locale/bitcoin_zh_HK.ts
+++ b/src/qt/locale/bitcoin_zh_HK.ts
@@ -58,14 +58,6 @@
<translation type="unfinished">選擇 &amp;h</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">付款地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">收款地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">這些是你要付款過去的 Bitcoin 位址。在付款之前,務必要檢查金額和收款位址是否正確。</translation>
</message>
@@ -101,6 +93,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">儲存地址列表到 %1 時發生錯誤。請再試一次。</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">匯出失敗</translation>
</message>
@@ -689,8 +689,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">关闭所有钱包</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">迁移一个钱包</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
- <translation type="unfinished">显示%1帮助消息以获得可能包含Bitcoin命令行选项的列表</translation>
+ <translation type="unfinished">显示 %1 帮助信息,获取可用命令行选项列表</translation>
</message>
<message>
<source>&amp;Mask values</source>
@@ -784,6 +792,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">預先同步標頭(%1%)</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">创建钱包时出错</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">无法创建新钱包,软件编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
<translation type="unfinished">錯誤: %1</translation>
</message>
@@ -866,10 +882,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">手动选币</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">計費後金額:</translation>
</message>
@@ -934,10 +946,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -946,14 +954,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(%1已锁定)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">當任何一個收款金額小於目前的灰塵金額上限時,文字會變紅色。</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">每个输入可能有 +/- %1 聪 (satoshi) 的误差。</translation>
</message>
@@ -996,6 +996,57 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您确定想要迁移钱包&lt;i&gt;%1&lt;/i&gt;吗?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">迁移钱包将会把这个钱包转换成一个或多个输出描述符钱包。将会需要创建一个新的钱包备份。
+如果这个钱包包含仅观察脚本,将会创建包含那些仅观察脚本的新钱包。
+如果这个钱包包含可解但又未被监视的脚本,将会创建一个不同的钱包以包含那些脚本。
+
+迁移过程开始前将会创建一个钱包备份。备份文件将会被命名为 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然后被保存在该钱包所在目录下。如果迁移过程出错,可以使用“恢复钱包”功能恢复备份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">迁移钱包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">迁移钱包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功迁移钱包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">仅观察脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished"> 可解但又未被监视的脚本已被迁移至名为 '%1' 的新钱包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">迁移失败</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">迁移成功</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1053,6 +1104,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Closing the wallet for too long can result in having to resync the entire chain if pruning is enabled.</source>
<translation type="unfinished">启用修剪时,如果一个钱包被卸载太久,就必须重新同步整条区块链才能再次加载它。</translation>
</message>
+ <message>
+ <source>Close all wallets</source>
+ <translation type="unfinished">关闭所有钱包</translation>
+ </message>
</context>
<context>
<name>CreateWalletDialog</name>
@@ -1061,8 +1116,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">新增錢包</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距离创建您的新钱包只有一步之遥了!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">请指定一个名字,如果需要的话还可以启用高级选项</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
- <translation type="unfinished">錢包名稱</translation>
+ <translation type="unfinished">钱包名称</translation>
</message>
<message>
<source>Wallet</source>
@@ -1092,14 +1155,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Make Blank Wallet</source>
<translation type="unfinished">製作空白錢包</translation>
</message>
- <message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">使用输出描述符进行scriptPubKey管理</translation>
- </message>
- <message>
- <source>Compiled without sqlite support (required for descriptor wallets)</source>
- <translation type="unfinished">编译时未启用SQLite支持(输出描述符钱包需要它)</translation>
- </message>
</context>
<context>
<name>EditAddressDialog</name>
@@ -1187,10 +1242,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
<translation type="unfinished">此目录中至少会保存 %1 GB 的数据,并且大小还会随着时间增长。</translation>
</message>
- <message>
- <source>Approximately %1 GB of data will be stored in this directory.</source>
- <translation type="unfinished">会在此目录中存储约 %1 GB 的数据。</translation>
- </message>
<message numerus="yes">
<source>(sufficient to restore backups %n day(s) old)</source>
<extracomment>Explanatory text on the capability of the current prune target.</extracomment>
@@ -1219,10 +1270,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">欢迎</translation>
</message>
<message>
- <source>Welcome to %1.</source>
- <translation type="unfinished">欢迎使用 %1</translation>
- </message>
- <message>
<source>As this is the first time the program is launched, you can choose where %1 will store its data.</source>
<translation type="unfinished">由于这是第一次启动此程序,您可以选择%1存储数据的位置</translation>
</message>
@@ -1250,10 +1297,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<context>
<name>HelpMessageDialog</name>
<message>
- <source>version</source>
- <translation type="unfinished">版本</translation>
- </message>
- <message>
<source>About %1</source>
<translation type="unfinished">关于 %1</translation>
</message>
@@ -1268,11 +1311,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>%1 is shutting down…</source>
<translation type="unfinished">%1正在关闭...</translation>
</message>
- <message>
- <source>Do not shut down the computer until this window disappears.</source>
- <translation type="unfinished">在此窗口消失前不要关闭计算机。</translation>
- </message>
-</context>
+ </context>
<context>
<name>ModalOverlay</name>
<message>
@@ -1280,18 +1319,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">窗体</translation>
</message>
<message>
- <source>Recent transactions may not yet be visible, and therefore your wallet's balance might be incorrect. This information will be correct once your wallet has finished synchronizing with the bitcoin network, as detailed below.</source>
- <translation type="unfinished">近期交易可能尚未显示,因此当前余额可能不准确。以上信息将在与比特币网络完全同步后更正。详情如下</translation>
- </message>
- <message>
- <source>Attempting to spend bitcoins that are affected by not-yet-displayed transactions will not be accepted by the network.</source>
- <translation type="unfinished">尝试使用受未可见交易影响的余额将不被网络接受。</translation>
- </message>
- <message>
- <source>Number of blocks left</source>
- <translation type="unfinished">剩余区块数量</translation>
- </message>
- <message>
<source>Unknown…</source>
<translation type="unfinished">未知...</translation>
</message>
@@ -1300,10 +1327,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">计算中...</translation>
</message>
<message>
- <source>Last block time</source>
- <translation type="unfinished">上一区块时间</translation>
- </message>
- <message>
<source>Progress</source>
<translation type="unfinished">进度</translation>
</message>
@@ -1312,10 +1335,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">每小时进度增加</translation>
</message>
<message>
- <source>Estimated time left until synced</source>
- <translation type="unfinished">预计剩余同步时间</translation>
- </message>
- <message>
<source>Hide</source>
<translation type="unfinished">隐藏</translation>
</message>
@@ -1896,6 +1915,22 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">选择节点查看详细信息。</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">传输层版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">传输</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">十六进制格式的BIP324会话ID,如果有的话。</translation>
+ </message>
+ <message>
+ <source>Session ID</source>
+ <translation type="unfinished">会话ID</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">版本</translation>
</message>
@@ -2075,6 +2110,21 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">出站触须: 短暂,用于测试地址</translation>
</message>
<message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">检测中: 节点可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文传输协议</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密传输协议</translation>
+ </message>
+ <message>
<source>we selected the peer for high bandwidth relay</source>
<translation type="unfinished">我们选择了用于高带宽转发的节点</translation>
</message>
@@ -2359,10 +2409,6 @@ For more information on using this console, type %6.
<translation type="unfinished">增加收款人(&amp;R)</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>Choose…</source>
<translation type="unfinished">选择...</translation>
</message>
@@ -2403,10 +2449,6 @@ For more information on using this console, type %6.
<translation type="unfinished">复制字节数</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -2820,10 +2862,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">付給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -2879,10 +2917,6 @@ For more information on using this console, type %6.
<translation type="unfinished">发送到</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -3108,6 +3142,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s 開發人員</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
<translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
</message>
@@ -3144,6 +3182,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误: 转储文件版本不被支持。这个版本的 bitcoin-wallet 只支持版本为 1 的转储文件。得到的转储文件版本却是%s</translation>
</message>
<message>
+ <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
+ <translation type="unfinished">错误: 旧式钱包只支持 "legacy", "p2sh-segwit", 和 "bech32" 这三种地址类型</translation>
+ </message>
+ <message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
<translation type="unfinished">错误: 无法为该旧式钱包生成描述符。如果钱包已被加密,请确保提供的钱包加密密码正确。</translation>
</message>
@@ -3168,6 +3210,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">修剪:上次同步钱包的位置已经超出(落后于)现有修剪后数据的范围。你需要进行-reindex(对于已经启用修剪节点,就需要重新下载整个区块链)</translation>
</message>
<message>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失败。您需要手动移走或删除无效的快照目录 %s来解决这个问题,不然的话您就会在下一次启动时遇到相同的错误。</translation>
+ </message>
+ <message>
<source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
<translation type="unfinished">SQLiteDatabase: SQLite钱包schema版本%d未知。只支持%d版本</translation>
</message>
@@ -3176,10 +3222,6 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">區塊資料庫中有來自未來的區塊。可能是你電腦的日期時間不對。如果確定電腦日期時間沒錯的話,就重建區塊資料庫看看。</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
- </message>
- <message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
<translation type="unfinished">扣除手續費後的交易金額太少而不能傳送</translation>
</message>
@@ -3212,6 +3254,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">提供了未知的钱包格式 "%s" 。请使用 "bdb" 或 "sqlite" 中的一种。</translation>
</message>
<message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支持的类别限定日志等级 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的类别: %3$s 。有效的日志等级: %4$s 。</translation>
+ </message>
+ <message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
<translation type="unfinished">找到了不受支持的 chainstate 数据库格式。请使用 -reindex-chainstate 参数重启。这将会重建 chainstate 数据库。</translation>
</message>
@@ -3220,6 +3266,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
</message>
<message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">钱包加载成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。可以使用 migratewallet 命令将旧式钱包迁移至输出描述符钱包。</translation>
+ </message>
+ <message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
<translation type="unfinished">警告: 转储文件的钱包格式 "%s" 与命令行指定的格式 "%s" 不符。</translation>
</message>
@@ -3260,30 +3310,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">不能写入到数据目录'%s';请检查文件权限。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上,以供诊断问题的原因。</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
<translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
</message>
<message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
<translation type="unfinished">在使用地址管理器(addrman)寻找出站连接时,无法同时提供特定的连接。</translation>
</message>
@@ -3292,6 +3322,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
</message>
<message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">读取 %s 时出错! 所有密钥都被正确读取,但交易数据或地址元数据可能缺失或有误。</translation>
+ </message>
+ <message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
<translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
</message>
@@ -3304,6 +3338,10 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
</message>
<message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">计算追加手续费失败,因为未确认UTXO依赖了大量未确认交易的簇集。</translation>
+ </message>
+ <message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
<translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
</message>
@@ -3378,10 +3416,6 @@ Please try running the latest software version.
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
@@ -3510,6 +3544,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">错误: 无法写入记录到新钱包</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">无法启动索引,关闭中...</translation>
+ </message>
+ <message>
<source>Failed to verify database</source>
<translation type="unfinished">校验数据库失败</translation>
</message>
@@ -3750,8 +3788,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">在 -onlynet 指定了不明的網路別: '%s'</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上acceptstalefeeestimates 不受支持。</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_zh_TW.ts b/src/qt/locale/bitcoin_zh_TW.ts
index 82f833e60c..1c5db2757a 100644
--- a/src/qt/locale/bitcoin_zh_TW.ts
+++ b/src/qt/locale/bitcoin_zh_TW.ts
@@ -54,14 +54,6 @@
<translation type="unfinished">選擇 (&amp;h)</translation>
</message>
<message>
- <source>Sending addresses</source>
- <translation type="unfinished">發送地址</translation>
- </message>
- <message>
- <source>Receiving addresses</source>
- <translation type="unfinished">接收地址</translation>
- </message>
- <message>
<source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source>
<translation type="unfinished">這些是你要發送過去的 比特幣地址。在發送幣之前,務必要檢查金額和接收地址是否正確。</translation>
</message>
@@ -97,6 +89,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">儲存地址清單到 %1 時發生錯誤。請重試一次。</translation>
</message>
<message>
+ <source>Sending addresses - %1</source>
+ <translation type="unfinished">付款地址 - %1</translation>
+ </message>
+ <message>
+ <source>Receiving addresses - %1</source>
+ <translation type="unfinished">收款地址 - %1</translation>
+ </message>
+ <message>
<source>Exporting Failed</source>
<translation type="unfinished">匯出失敗</translation>
</message>
@@ -220,7 +220,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>The passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character. If this is successful, please set a new passphrase to avoid this issue in the future.</source>
- <translation type="unfinished">输入的密码有误,无法解密钱包。输入的密码中包含空字符(例如,一个值为零的字节)。如果密码是在此软件早于25.0的版本上设置的,请只输入密码中首个空字符(不包括空字符本身)之前的部分来再尝试一次。如果这样可以成功解密,为避免未来出现问题,请设置一个新的密码。</translation>
+ <translation type="unfinished">輸入的密碼有誤,無法解密錢包。 輸入的密碼中包含空字元(例如,零值的位元組)。 如果密碼是在此軟體早於25.0的版本上設定的,請只輸入非空字元的密碼(不包括零值元本身)再嘗試一次。 如果這樣可以成功解密,為避免未來出現問題,請設定新的密碼。</translation>
</message>
<message>
<source>Wallet passphrase was successfully changed.</source>
@@ -228,11 +228,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Passphrase change failed</source>
- <translation type="unfinished">修改密码失败</translation>
+ <translation type="unfinished">修改密碼失敗</translation>
</message>
<message>
<source>The old passphrase entered for the wallet decryption is incorrect. It contains a null character (ie - a zero byte). If the passphrase was set with a version of this software prior to 25.0, please try again with only the characters up to — but not including — the first null character.</source>
- <translation type="unfinished">输入的旧密码有误,无法解密钱包。输入的密码中包含空字符(例如,一个值为零的字节)。如果密码是在此软件早于25.0的版本上设置的,请只输入密码中首个空字符(不包括空字符本身)之前的部分来再尝试一次。</translation>
+ <translation type="unfinished">輸入的舊密碼有誤,無法解密錢包。 輸入的密碼中包含空字元(例如,一個值為零的位元組)。 如果密碼是在此軟體早於25.0的版本上設定的,請只輸入密碼中首個空字元(不包括空字元本身)之前的部分來再嘗試一次。</translation>
</message>
<message>
<source>Warning: The Caps Lock key is on!</source>
@@ -261,6 +261,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">失控異常</translation>
</message>
<message>
+ <source>A fatal error occurred. %1 can no longer continue safely and will quit.</source>
+ <translation type="unfinished">發生致命錯誤。%1 無法再繼續安全地運行並離開。</translation>
+ </message>
+ <message>
<source>Internal error</source>
<translation type="unfinished">內部錯誤</translation>
</message>
@@ -283,7 +287,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Error: %1</source>
- <translation type="unfinished">错误:%1</translation>
+ <translation type="unfinished">錯誤:%1</translation>
</message>
<message>
<source>%1 didn't yet exit safely…</source>
@@ -308,22 +312,22 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Inbound</source>
<extracomment>An inbound connection from a peer. An inbound connection is a connection initiated by a peer.</extracomment>
- <translation type="unfinished">進來</translation>
+ <translation type="unfinished">傳入</translation>
</message>
<message>
<source>Outbound</source>
<extracomment>An outbound connection to a peer. An outbound connection is a connection initiated by us.</extracomment>
- <translation type="unfinished">出去</translation>
+ <translation type="unfinished">傳出</translation>
</message>
<message>
<source>Block Relay</source>
<extracomment>Peer connection type that relays network information about blocks and not transactions or addresses.</extracomment>
- <translation type="unfinished">区块转发</translation>
+ <translation type="unfinished">區塊轉發</translation>
</message>
<message>
<source>Manual</source>
<extracomment>Peer connection type established manually through one of several methods.</extracomment>
- <translation type="unfinished">手册</translation>
+ <translation type="unfinished">手冊</translation>
</message>
<message>
<source>%1 d</source>
@@ -362,13 +366,13 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message numerus="yes">
<source>%n minute(s)</source>
<translation type="unfinished">
- <numerusform>%n分钟</numerusform>
+ <numerusform>%n分鐘</numerusform>
</translation>
</message>
<message numerus="yes">
<source>%n hour(s)</source>
<translation type="unfinished">
- <numerusform>%n 小时</numerusform>
+ <numerusform>%n 小時</numerusform>
</translation>
</message>
<message numerus="yes">
@@ -380,7 +384,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message numerus="yes">
<source>%n week(s)</source>
<translation type="unfinished">
- <numerusform>%n 周</numerusform>
+ <numerusform>%n 週</numerusform>
</translation>
</message>
<message>
@@ -429,6 +433,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">結束應用程式</translation>
</message>
<message>
+ <source>&amp;About %1</source>
+ <translation type="unfinished">關於%1(&amp;A)</translation>
+ </message>
+ <message>
<source>Show information about %1</source>
<translation type="unfinished">顯示 %1 的相關資訊</translation>
</message>
@@ -532,15 +540,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Close Wallet…</source>
- <translation type="unfinished">关钱包...</translation>
+ <translation type="unfinished">關錢包..</translation>
</message>
<message>
<source>Create Wallet…</source>
- <translation type="unfinished">创建钱包...</translation>
+ <translation type="unfinished">創建錢包...</translation>
</message>
<message>
<source>Close All Wallets…</source>
- <translation type="unfinished">关所有钱包...</translation>
+ <translation type="unfinished">關所有錢包...</translation>
</message>
<message>
<source>&amp;File</source>
@@ -576,7 +584,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Connecting to peers…</source>
- <translation type="unfinished">连到同行...</translation>
+ <translation type="unfinished">正在跟其他節點連線中...</translation>
</message>
<message>
<source>Request payments (generates QR codes and bitcoin: URIs)</source>
@@ -606,7 +614,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Catching up…</source>
- <translation type="unfinished">赶上...</translation>
+ <translation type="unfinished">追上中...</translation>
</message>
<message>
<source>Last received block was generated %1 ago.</source>
@@ -691,6 +699,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">關閉所有錢包</translation>
</message>
<message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">遷移錢包</translation>
+ </message>
+ <message>
+ <source>Migrate a wallet</source>
+ <translation type="unfinished">遷移一個錢包</translation>
+ </message>
+ <message>
<source>Show the %1 help message to get a list with possible Bitcoin command-line options</source>
<translation type="unfinished">顯示 %1 的說明訊息,來取得可用命令列選項的列表</translation>
</message>
@@ -704,7 +720,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">默认钱包</translation>
+ <translation type="unfinished">預設錢包</translation>
</message>
<message>
<source>No wallets available</source>
@@ -786,8 +802,16 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">預先同步標頭(%1%)</translation>
</message>
<message>
+ <source>Error creating wallet</source>
+ <translation type="unfinished">創建錢包時出錯</translation>
+ </message>
+ <message>
+ <source>Cannot create new wallet, the software was compiled without sqlite support (required for descriptor wallets)</source>
+ <translation type="unfinished">無法建立新錢包,軟體編譯時未啟用SQLite支援(descriptor錢包需要它)</translation>
+ </message>
+ <message>
<source>Error: %1</source>
- <translation type="unfinished">错误:%1</translation>
+ <translation type="unfinished">錯誤:%1</translation>
</message>
<message>
<source>Warning: %1</source>
@@ -892,10 +916,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">手續費:</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>After Fee:</source>
<translation type="unfinished">計費後金額:</translation>
</message>
@@ -945,15 +965,15 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>&amp;Copy address</source>
- <translation type="unfinished">&amp;复制地址</translation>
+ <translation type="unfinished">&amp;複製地址</translation>
</message>
<message>
<source>Copy &amp;label</source>
- <translation type="unfinished">复制和标签</translation>
+ <translation type="unfinished">複製 &amp;label</translation>
</message>
<message>
<source>Copy &amp;amount</source>
- <translation type="unfinished">复制和数量</translation>
+ <translation type="unfinished">複製 &amp;amount</translation>
</message>
<message>
<source>Copy transaction &amp;ID and output index</source>
@@ -984,10 +1004,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">複製位元組數</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -996,18 +1012,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">(鎖定 %1 枚)</translation>
</message>
<message>
- <source>yes</source>
- <translation type="unfinished">是</translation>
- </message>
- <message>
- <source>no</source>
- <translation type="unfinished">否</translation>
- </message>
- <message>
- <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source>
- <translation type="unfinished">當任何一個收款金額小於目前的灰塵金額上限時,文字會變紅色。</translation>
- </message>
- <message>
<source>Can vary +/- %1 satoshi(s) per input.</source>
<translation type="unfinished">每組輸入可能有 +/- %1 個 satoshi 的誤差。</translation>
</message>
@@ -1054,6 +1058,57 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
</context>
<context>
+ <name>MigrateWalletActivity</name>
+ <message>
+ <source>Migrate wallet</source>
+ <translation type="unfinished">遷移錢包</translation>
+ </message>
+ <message>
+ <source>Are you sure you wish to migrate the wallet &lt;i&gt;%1&lt;/i&gt;?</source>
+ <translation type="unfinished">您確定想要遷移錢包&lt;i&gt;%1&lt;/i&gt;嗎?</translation>
+ </message>
+ <message>
+ <source>Migrating the wallet will convert this wallet to one or more descriptor wallets. A new wallet backup will need to be made.
+If this wallet contains any watchonly scripts, a new wallet will be created which contains those watchonly scripts.
+If this wallet contains any solvable but not watched scripts, a different and new wallet will be created which contains those scripts.
+
+The migration process will create a backup of the wallet before migrating. This backup file will be named &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak and can be found in the directory for this wallet. In the event of an incorrect migration, the backup can be restored with the "Restore Wallet" functionality.</source>
+ <translation type="unfinished">遷移錢包將會把這個錢包轉換成一個或多數的descriptor錢包。 將會需要建立一個新的錢包備份。
+如果這個錢包包含僅觀察腳本,將會建立一個包含那些只觀察腳本的新錢包。
+如果這個錢包包含可解但又未被監視的腳本,將會創建一個不同的錢包以包含那些腳本。
+
+遷移過程開始前將會建立一個錢包備份。 備份檔案將會被命名為 &lt;wallet name&gt;-&lt;timestamp&gt;.legacy.bak 然後被保存在該錢包所在目錄下。 如果遷移過程出錯,可以使用「恢復錢包」功能來恢復備份。</translation>
+ </message>
+ <message>
+ <source>Migrate Wallet</source>
+ <translation type="unfinished">遷移錢包</translation>
+ </message>
+ <message>
+ <source>Migrating Wallet &lt;b&gt;%1&lt;/b&gt;…</source>
+ <translation type="unfinished">遷移錢包 &lt;b&gt;%1&lt;/b&gt;...</translation>
+ </message>
+ <message>
+ <source>The wallet '%1' was migrated successfully.</source>
+ <translation type="unfinished">已成功遷移錢包 '%1' 。</translation>
+ </message>
+ <message>
+ <source> Watchonly scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">僅觀察腳本(watch-only)已被移轉到名為 '%1' 的新錢包中。</translation>
+ </message>
+ <message>
+ <source> Solvable but not watched scripts have been migrated to a new wallet named '%1'.</source>
+ <translation type="unfinished">可解但又未被監視的腳本已被遷移至名為 '%1' 的新錢包中。</translation>
+ </message>
+ <message>
+ <source>Migration failed</source>
+ <translation type="unfinished">遷移失敗</translation>
+ </message>
+ <message>
+ <source>Migration Successful</source>
+ <translation type="unfinished">遷移成功</translation>
+ </message>
+</context>
+<context>
<name>OpenWalletActivity</name>
<message>
<source>Open wallet failed</source>
@@ -1065,7 +1120,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>default wallet</source>
- <translation type="unfinished">默认钱包</translation>
+ <translation type="unfinished">預設錢包</translation>
</message>
<message>
<source>Open Wallet</source>
@@ -1127,6 +1182,14 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">新增錢包</translation>
</message>
<message>
+ <source>You are one step away from creating your new wallet!</source>
+ <translation type="unfinished">距離創建您的新錢包只有一步之遙了!</translation>
+ </message>
+ <message>
+ <source>Please provide a name and, if desired, enable any advanced options</source>
+ <translation type="unfinished">請指定名稱,如果需要的話,還可以啟用進階選項</translation>
+ </message>
+ <message>
<source>Wallet Name</source>
<translation type="unfinished">錢包名稱</translation>
</message>
@@ -1163,14 +1226,6 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">製作空白錢包</translation>
</message>
<message>
- <source>Use descriptors for scriptPubKey management</source>
- <translation type="unfinished">使用descriptors(描述符)進行scriptPubKey管理</translation>
- </message>
- <message>
- <source>Descriptor Wallet</source>
- <translation type="unfinished">描述符錢包</translation>
- </message>
- <message>
<source>Create</source>
<translation type="unfinished">產生</translation>
</message>
@@ -1271,7 +1326,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Choose data directory</source>
- <translation type="unfinished">选择数据目录</translation>
+ <translation type="unfinished">指定數據質料目錄</translation>
</message>
<message>
<source>At least %1 GB of data will be stored in this directory, and it will grow over time.</source>
@@ -1317,6 +1372,10 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">因為這是程式第一次啓動,你可以選擇 %1 儲存資料的地方。</translation>
</message>
<message>
+ <source>Limit block chain storage to</source>
+ <translation type="unfinished">將區塊鏈儲存限制為</translation>
+ </message>
+ <message>
<source>Reverting this setting requires re-downloading the entire blockchain. It is faster to download the full chain first and prune it later. Disables some advanced features.</source>
<translation type="unfinished">還原此設置需要重新下載整個區塊鏈。首先下載完整的鏈,然後再修剪它是更快的。禁用某些高級功能。</translation>
</message>
@@ -1360,7 +1419,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<name>ShutdownWindow</name>
<message>
<source>%1 is shutting down…</source>
- <translation type="unfinished">%1正在关闭...</translation>
+ <translation type="unfinished">%1正在關閉..</translation>
</message>
<message>
<source>Do not shut down the computer until this window disappears.</source>
@@ -1391,7 +1450,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>calculating…</source>
- <translation type="unfinished">计算...</translation>
+ <translation type="unfinished">計算...</translation>
</message>
<message>
<source>Last block time</source>
@@ -1419,7 +1478,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Unknown. Syncing Headers (%1, %2%)…</source>
- <translation type="unfinished">未知。同步区块头(%1, %2%)...</translation>
+ <translation type="unfinished">未知。同步區塊標頭(%1, %2%)中...</translation>
</message>
<message>
<source>Unknown. Pre-syncing Headers (%1, %2%)…</source>
@@ -1458,7 +1517,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Enabling pruning significantly reduces the disk space required to store transactions. All blocks are still fully validated. Reverting this setting requires re-downloading the entire blockchain.</source>
- <translation type="unfinished">启用区块修剪会显著减小存储交易对磁盘空间的需求。所有的区块仍然会被完整校验。取消这个设置需要重新下载整条区块链。</translation>
+ <translation type="unfinished">啟用區塊修剪(pruning)會顯著減少儲存交易對儲存空間的需求。 所有的區塊仍然會被完整校驗。 取消這個設定需要再重新下載整個區塊鏈。</translation>
</message>
<message>
<source>Size of &amp;database cache</source>
@@ -1470,7 +1529,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Full path to a %1 compatible script (e.g. C:\Downloads\hwi.exe or /Users/you/Downloads/hwi.py). Beware: malware can steal your coins!</source>
- <translation type="unfinished">与%1兼容的脚本文件路径(例如 C:\Downloads\hwi.exe 或者 /Users/you/Downloads/hwi.py )。注意:恶意软件可以偷币!</translation>
+ <translation type="unfinished">與%1相容的腳本檔案路徑(例如 C:\Downloads\hwi.exe 或者 /Users/you/Downloads/hwi.py )。注意:惡意軟體可以偷幣!</translation>
</message>
<message>
<source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source>
@@ -1486,7 +1545,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Options set in this dialog are overridden by the command line:</source>
- <translation type="unfinished">这个对话框中的设置已被如下命令行选项覆盖:</translation>
+ <translation type="unfinished">這個窗面中的設定已被如下命令列選項覆蓋:</translation>
</message>
<message>
<source>Open the %1 configuration file from the working directory.</source>
@@ -1523,12 +1582,12 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Maximum database cache size. A larger cache can contribute to faster sync, after which the benefit is less pronounced for most use cases. Lowering the cache size will reduce memory usage. Unused mempool memory is shared for this cache.</source>
<extracomment>Tooltip text for Options window setting that sets the size of the database cache. Explains the corresponding effects of increasing/decreasing this value.</extracomment>
- <translation type="unfinished">数据库缓存的最大大小。加大缓存有助于加快同步,但对于大多数使用场景来说,继续加大后收效会越来越不明显。降低缓存大小将会减小内存使用量。内存池中尚未被使用的那部分内存也会被共享用于这里的数据库缓存。</translation>
+ <translation type="unfinished">資料庫快取的最大大小。 增加快取有助於加快同步,但對於大多數使用場景來說,繼續增加後收效會越來越不明顯。 降低快取大小將會減少記憶體使用量。 記憶體池中尚未被使用的那部分記憶體也會被共享用於這裡的資料庫快取。</translation>
</message>
<message>
<source>Set the number of script verification threads. Negative values correspond to the number of cores you want to leave free to the system.</source>
<extracomment>Tooltip text for Options window setting that sets the number of script verification threads. Explains that negative values mean to leave these many cores free to the system.</extracomment>
- <translation type="unfinished">设置脚本验证线程的数量。负值则表示你想要保留给系统的核心数量。</translation>
+ <translation type="unfinished">設定驗證執行緒的數量。 負值則表示你想要保留給系統的核心數量。</translation>
</message>
<message>
<source>(0 = auto, &lt;0 = leave that many cores free)</source>
@@ -1537,12 +1596,12 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>This allows you or a third party tool to communicate with the node through command-line and JSON-RPC commands.</source>
<extracomment>Tooltip text for Options window setting that enables the RPC server.</extracomment>
- <translation type="unfinished">这允许作为用户的你或第三方工具通过命令行和JSON-RPC命令行与节点通信。</translation>
+ <translation type="unfinished">這允許作為使用者的你或第三方工具透過命令列和JSON-RPC命令列與節點通訊。</translation>
</message>
<message>
<source>Enable R&amp;PC server</source>
<extracomment>An Options window setting to enable the RPC server.</extracomment>
- <translation type="unfinished">启用R&amp;PC服务器</translation>
+ <translation type="unfinished">啟動R&amp;PC伺服器</translation>
</message>
<message>
<source>W&amp;allet</source>
@@ -1551,12 +1610,12 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Whether to set subtract fee from amount as default or not.</source>
<extracomment>Tooltip text for Options window setting that sets subtracting the fee from a sending amount as default.</extracomment>
- <translation type="unfinished">是否要默认从金额中减去手续费。</translation>
+ <translation type="unfinished">是否金額中減去手續費當為預設行為</translation>
</message>
<message>
<source>Subtract &amp;fee from amount by default</source>
<extracomment>An Options window setting to set subtracting the fee from a sending amount as default.</extracomment>
- <translation type="unfinished">默认从金额中减去交易手续费(&amp;F)</translation>
+ <translation type="unfinished">預設從金額中減去交易手續費(&amp;F)</translation>
</message>
<message>
<source>Expert</source>
@@ -1577,16 +1636,20 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Enable &amp;PSBT controls</source>
<extracomment>An options window setting to enable PSBT controls.</extracomment>
- <translation type="unfinished">启用&amp;PSBT控件</translation>
+ <translation type="unfinished">啟動&amp;PSBT功能</translation>
</message>
<message>
<source>Whether to show PSBT controls.</source>
<extracomment>Tooltip text for options window setting that enables PSBT controls.</extracomment>
- <translation type="unfinished">是否要显示PSBT控件</translation>
+ <translation type="unfinished">是否要顯示PSBT功能選項</translation>
+ </message>
+ <message>
+ <source>External Signer (e.g. hardware wallet)</source>
+ <translation type="unfinished">外接簽證設備 (e.g. 硬體錢包)</translation>
</message>
<message>
<source>&amp;External signer script path</source>
- <translation type="unfinished">外部签名器脚本路径(&amp;E)</translation>
+ <translation type="unfinished">外接簽證設備執行檔路徑(&amp;E)</translation>
</message>
<message>
<source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source>
@@ -1666,11 +1729,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Third-party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source>
- <translation type="unfinished">这个第三方网址(比如区块浏览器)会出现在交易选项卡的右键菜单中。 网址中的%s代表交易哈希。多个网址需要用竖线 | 相互分隔。</translation>
+ <translation type="unfinished">這個第三方網址(例如區塊瀏覽器)會出現在交易標籤的右鍵選單中。 網址中的%s代表交易哈希。 多個網址需要用垂直線 | 相互分隔。</translation>
</message>
<message>
<source>&amp;Third-party transaction URLs</source>
- <translation type="unfinished">第三方交易网址(&amp;T)</translation>
+ <translation type="unfinished">第三方交易網址(&amp;T)</translation>
</message>
<message>
<source>Whether to show coin control features or not.</source>
@@ -1701,6 +1764,11 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<translation type="unfinished">取消(&amp;C)</translation>
</message>
<message>
+ <source>Compiled without external signing support (required for external signing)</source>
+ <extracomment>"External signing" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">軟體未編譯外接簽證功能所需的軟體庫(外接簽證必須有此功能)</translation>
+ </message>
+ <message>
<source>default</source>
<translation type="unfinished">預設值</translation>
</message>
@@ -1721,7 +1789,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Current settings will be backed up at "%1".</source>
<extracomment>Text explaining to the user that the client's current settings will be backed up at a specific location. %1 is a stand-in argument for the backup location's path.</extracomment>
- <translation type="unfinished">当前设置将会被备份到 "%1"。</translation>
+ <translation type="unfinished">當前設定將會備份到 "%1"。</translation>
</message>
<message>
<source>Client will be shut down. Do you want to proceed?</source>
@@ -1740,7 +1808,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Continue</source>
- <translation type="unfinished">继续</translation>
+ <translation type="unfinished">繼續</translation>
</message>
<message>
<source>Cancel</source>
@@ -1767,7 +1835,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<name>OptionsModel</name>
<message>
<source>Could not read setting "%1", %2.</source>
- <translation type="unfinished">无法读取设置 "%1",%2。</translation>
+ <translation type="unfinished">無法讀取設定 "%1",%2。</translation>
</message>
</context>
<context>
@@ -1869,7 +1937,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Save…</source>
- <translation type="unfinished">拯救...</translation>
+ <translation type="unfinished">儲存...</translation>
</message>
<message>
<source>Close</source>
@@ -1877,7 +1945,7 @@ Signing is only possible with addresses of the type 'legacy'.</source>
</message>
<message>
<source>Cannot sign inputs while wallet is locked.</source>
- <translation type="unfinished">钱包已锁定,无法签名交易输入项。</translation>
+ <translation type="unfinished">錢包已鎖定,無法簽署交易輸入項。</translation>
</message>
<message>
<source>Could not sign any more inputs.</source>
@@ -1902,13 +1970,17 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<message>
<source>Partially Signed Transaction (Binary)</source>
<extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
- <translation type="unfinished">部分签名交易(二进制)</translation>
+ <translation type="unfinished">部分簽名交易(二進位)</translation>
</message>
<message>
<source>PSBT saved to disk.</source>
<translation type="unfinished">PSBT已儲存到磁碟。</translation>
</message>
<message>
+ <source>own address</source>
+ <translation type="unfinished">自己的地址</translation>
+ </message>
+ <message>
<source>Unable to calculate transaction fee or total transaction amount.</source>
<translation type="unfinished">無法計算交易手續費或總交易金額。</translation>
</message>
@@ -1975,9 +2047,9 @@ Signing is only possible with addresses of the type 'legacy'.</source>
<source>Cannot process payment request because BIP70 is not supported.
Due to widespread security flaws in BIP70 it's strongly recommended that any merchant instructions to switch wallets be ignored.
If you are receiving this error you should request the merchant provide a BIP21 compatible URI.</source>
- <translation type="unfinished">因为不支持BIP70,无法处理付款请求。
-由于BIP70具有广泛的安全缺陷,无论哪个商家指引要求您更换钱包,我们都强烈建议您不要听信。
-如果您看到了这个错误,您应该要求商家提供兼容BIP21的URI。</translation>
+ <translation type="unfinished">因為不支援BIP70,無法處理付款請求。
+由於BIP70具有廣泛的安全缺陷,無論哪個商家指引要求更換錢包,強烈建議不要更換。
+如果您看到了這個錯誤,您應該要求商家提供與BIP21相容的URI。</translation>
</message>
<message>
<source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source>
@@ -2003,12 +2075,12 @@ If you are receiving this error you should request the merchant provide a BIP21
<message>
<source>Peer</source>
<extracomment>Title of Peers Table column which contains a unique number used to identify a connection.</extracomment>
- <translation type="unfinished">同行</translation>
+ <translation type="unfinished">節點</translation>
</message>
<message>
<source>Age</source>
<extracomment>Title of Peers Table column which indicates the duration (length of time) since the peer connection started.</extracomment>
- <translation type="unfinished">连接时间</translation>
+ <translation type="unfinished">連接時間</translation>
</message>
<message>
<source>Direction</source>
@@ -2055,7 +2127,7 @@ If you are receiving this error you should request the merchant provide a BIP21
<name>QRImageWidget</name>
<message>
<source>&amp;Save Image…</source>
- <translation type="unfinished">保存图像(&amp;S)...</translation>
+ <translation type="unfinished">保存圖片(&amp;S)...</translation>
</message>
<message>
<source>&amp;Copy Image</source>
@@ -2063,7 +2135,7 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<source>Resulting URI too long, try to reduce the text for label / message.</source>
- <translation type="unfinished">URI 太长,请试着精简标签或消息文本。</translation>
+ <translation type="unfinished">URI 太長,請縮短標籤或訊息文字。</translation>
</message>
<message>
<source>Error encoding URI into QR Code.</source>
@@ -2080,7 +2152,7 @@ If you are receiving this error you should request the merchant provide a BIP21
<message>
<source>PNG Image</source>
<extracomment>Expanded name of the PNG file format. See: https://en.wikipedia.org/wiki/Portable_Network_Graphics.</extracomment>
- <translation type="unfinished">PNG图像</translation>
+ <translation type="unfinished">PNG 圖</translation>
</message>
</context>
<context>
@@ -2107,15 +2179,15 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<source>To specify a non-default location of the data directory use the '%1' option.</source>
- <translation type="unfinished">如果不想用默认的数据目录位置,请用 '%1' 这个选项来指定新的位置。</translation>
+ <translation type="unfinished">如果不想用預設的資料目錄位置,請使用'%1' 這個選項來指定新的位置。</translation>
</message>
<message>
<source>Blocksdir</source>
- <translation type="unfinished">区块存储目录</translation>
+ <translation type="unfinished">區塊儲存目錄</translation>
</message>
<message>
<source>To specify a non-default location of the blocks directory use the '%1' option.</source>
- <translation type="unfinished">如果要自定义区块存储目录的位置,请用 '%1' 这个选项来指定新的位置。</translation>
+ <translation type="unfinished">如果要自訂區塊儲存目錄的位置,請使用 '%1' 這個選項來指定新的位置。</translation>
</message>
<message>
<source>Startup time</source>
@@ -2182,16 +2254,28 @@ If you are receiving this error you should request the merchant provide a BIP21
<translation type="unfinished">選一個節點來看詳細資訊</translation>
</message>
<message>
+ <source>The transport layer version: %1</source>
+ <translation type="unfinished">傳輸層版本: %1</translation>
+ </message>
+ <message>
+ <source>Transport</source>
+ <translation type="unfinished">傳輸</translation>
+ </message>
+ <message>
+ <source>The BIP324 session ID string in hex, if any.</source>
+ <translation type="unfinished">HEX格式的BIP324 session ID,如果有的話。</translation>
+ </message>
+ <message>
<source>Version</source>
<translation type="unfinished">版本</translation>
</message>
<message>
<source>Whether we relay transactions to this peer.</source>
- <translation type="unfinished">是否要将交易转发给这个节点。</translation>
+ <translation type="unfinished">是否要將交易轉送給這個節點。</translation>
</message>
<message>
<source>Transaction Relay</source>
- <translation type="unfinished">交易转发</translation>
+ <translation type="unfinished">交易轉發</translation>
</message>
<message>
<source>Starting Block</source>
@@ -2199,7 +2283,7 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<source>Synced Headers</source>
- <translation type="unfinished">已同步前導資料</translation>
+ <translation type="unfinished">已同步區塊頭標</translation>
</message>
<message>
<source>Synced Blocks</source>
@@ -2220,32 +2304,32 @@ If you are receiving this error you should request the merchant provide a BIP21
<message>
<source>Whether we relay addresses to this peer.</source>
<extracomment>Tooltip text for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
- <translation type="unfinished">是否把地址转发给这个节点。</translation>
+ <translation type="unfinished">是否把位址轉寄給這個節點。</translation>
</message>
<message>
<source>Address Relay</source>
<extracomment>Text title for the Address Relay field in the peer details area, which displays whether we relay addresses to this peer (Yes/No).</extracomment>
- <translation type="unfinished">地址转发</translation>
+ <translation type="unfinished">地址轉發</translation>
</message>
<message>
<source>The total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</source>
<extracomment>Tooltip text for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
- <translation type="unfinished">从这个节点接收并处理过的地址总数(除去因频次限制而丢弃的那些地址)。</translation>
+ <translation type="unfinished">從這個節點接收並處理過的位址總數(除去因頻次限製而丟棄的那些位址)。</translation>
</message>
<message>
<source>The total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</source>
<extracomment>Tooltip text for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">从这个节点接收后又因频次限制而丢弃(未被处理)的地址总数。</translation>
+ <translation type="unfinished">從這個節點接收後又因頻次限製而丟棄(未被處理)的位址總數。</translation>
</message>
<message>
<source>Addresses Processed</source>
<extracomment>Text title for the Addresses Processed field in the peer details area, which displays the total number of addresses received from this peer that were processed (excludes addresses that were dropped due to rate-limiting).</extracomment>
- <translation type="unfinished">已处理地址</translation>
+ <translation type="unfinished">已處理地址</translation>
</message>
<message>
<source>Addresses Rate-Limited</source>
<extracomment>Text title for the Addresses Rate-Limited field in the peer details area, which displays the total number of addresses received from this peer that were dropped (not processed) due to rate-limiting.</extracomment>
- <translation type="unfinished">被频率限制丢弃的地址</translation>
+ <translation type="unfinished">被頻率限制丟棄的地址</translation>
</message>
<message>
<source>User Agent</source>
@@ -2277,15 +2361,15 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<source>The direction and type of peer connection: %1</source>
- <translation type="unfinished">节点连接的方向和类型: %1</translation>
+ <translation type="unfinished">節點連接的方向和類型: %1</translation>
</message>
<message>
<source>Direction/Type</source>
- <translation type="unfinished">方向/类型</translation>
+ <translation type="unfinished">方向/類型</translation>
</message>
<message>
<source>The network protocol this peer is connected through: IPv4, IPv6, Onion, I2P, or CJDNS.</source>
- <translation type="unfinished">这个节点是通过这种网络协议连接到的: IPv4, IPv6, Onion, I2P, 或 CJDNS.</translation>
+ <translation type="unfinished">這個節點是透過這種網路協定連接到的: IPv4, IPv6, Onion, I2P, 或 CJDNS.</translation>
</message>
<message>
<source>Services</source>
@@ -2293,19 +2377,28 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<source>High bandwidth BIP152 compact block relay: %1</source>
- <translation type="unfinished">高带宽BIP152密实区块转发: %1</translation>
+ <translation type="unfinished">高頻寬BIP152密集區塊轉發: %1</translation>
</message>
<message>
<source>High Bandwidth</source>
- <translation type="unfinished">高带宽</translation>
+ <translation type="unfinished">高頻寬</translation>
</message>
<message>
<source>Connection Time</source>
<translation type="unfinished">連線時間</translation>
</message>
<message>
+ <source>Elapsed time since a novel block passing initial validity checks was received from this peer.</source>
+ <translation type="unfinished">來自這個節點上次成功驗證新區塊已經過的時間</translation>
+ </message>
+ <message>
<source>Last Block</source>
- <translation type="unfinished">上一个区块</translation>
+ <translation type="unfinished">上一個區塊</translation>
+ </message>
+ <message>
+ <source>Elapsed time since a novel transaction accepted into our mempool was received from this peer.</source>
+ <extracomment>Tooltip text for the Last Transaction field in the peer details area.</extracomment>
+ <translation type="unfinished">來自這個節點上次成功驗證新交易進入內存池已經過的時間</translation>
</message>
<message>
<source>Last Send</source>
@@ -2365,49 +2458,73 @@ If you are receiving this error you should request the merchant provide a BIP21
</message>
<message>
<source>In:</source>
- <translation type="unfinished">來:</translation>
+ <translation type="unfinished">傳入:</translation>
</message>
<message>
<source>Out:</source>
- <translation type="unfinished">去:</translation>
+ <translation type="unfinished">傳出:</translation>
</message>
<message>
<source>Inbound: initiated by peer</source>
<extracomment>Explanatory text for an inbound peer connection.</extracomment>
- <translation type="unfinished">入站: 由对端发起</translation>
+ <translation type="unfinished">Inbound: 由對端節點發起</translation>
</message>
<message>
<source>Outbound Full Relay: default</source>
<extracomment>Explanatory text for an outbound peer connection that relays all network information. This is the default behavior for outbound connections.</extracomment>
- <translation type="unfinished">出站完整转发: 默认</translation>
+ <translation type="unfinished">完整轉發: 預設</translation>
</message>
<message>
<source>Outbound Block Relay: does not relay transactions or addresses</source>
<extracomment>Explanatory text for an outbound peer connection that relays network information about blocks and not transactions or addresses.</extracomment>
- <translation type="unfinished">出站区块转发: 不转发交易和地址</translation>
+ <translation type="unfinished">出站區塊轉送: 不轉送交易和地址</translation>
</message>
<message>
<source>Outbound Manual: added using RPC %1 or %2/%3 configuration options</source>
<extracomment>Explanatory text for an outbound peer connection that was established manually through one of several methods. The numbered arguments are stand-ins for the methods available to establish manual connections.</extracomment>
- <translation type="unfinished">出站手动: 加入使用RPC %1 或 %2/%3 配置选项</translation>
+ <translation type="unfinished">手動Outbound: 加入使用RPC %1 或 %2/%3 配置選項</translation>
</message>
<message>
<source>Outbound Feeler: short-lived, for testing addresses</source>
<extracomment>Explanatory text for a short-lived outbound peer connection that is used to test the aliveness of known addresses.</extracomment>
- <translation type="unfinished">出站触须: 短暂,用于测试地址</translation>
+ <translation type="unfinished">Outbound Feeler: 用於短暫,暫時 測試地址</translation>
+ </message>
+ <message>
+ <source>Outbound Address Fetch: short-lived, for soliciting addresses</source>
+ <extracomment>Explanatory text for a short-lived outbound peer connection that is used to request addresses from a peer.</extracomment>
+ <translation type="unfinished">Outbound 地址取得: 用於短暫,暫時 測試地址</translation>
+ </message>
+ <message>
+ <source>detecting: peer could be v1 or v2</source>
+ <extracomment>Explanatory text for "detecting" transport type.</extracomment>
+ <translation type="unfinished">檢測中: 節點可能是v1或是v2</translation>
+ </message>
+ <message>
+ <source>v1: unencrypted, plaintext transport protocol</source>
+ <extracomment>Explanatory text for v1 transport type.</extracomment>
+ <translation type="unfinished">v1: 未加密,明文傳輸協定</translation>
+ </message>
+ <message>
+ <source>v2: BIP324 encrypted transport protocol</source>
+ <extracomment>Explanatory text for v2 transport type.</extracomment>
+ <translation type="unfinished">v2: BIP324加密傳輸協議</translation>
</message>
<message>
<source>we selected the peer for high bandwidth relay</source>
- <translation type="unfinished">我们选择了用于高带宽转发的节点</translation>
+ <translation type="unfinished">我們選擇了用於高頻寬轉送的節點</translation>
</message>
<message>
<source>the peer selected us for high bandwidth relay</source>
- <translation type="unfinished">对端选择了我们用于高带宽转发</translation>
+ <translation type="unfinished">對端選擇了我們用於高頻寬轉發</translation>
+ </message>
+ <message>
+ <source>no high bandwidth relay selected</source>
+ <translation type="unfinished">未選擇高頻寬轉發點</translation>
</message>
<message>
<source>&amp;Copy address</source>
<extracomment>Context menu action to copy the address of a peer.</extracomment>
- <translation type="unfinished">&amp;复制地址</translation>
+ <translation type="unfinished">&amp;複製地址</translation>
</message>
<message>
<source>&amp;Disconnect</source>
@@ -2428,7 +2545,7 @@ If you are receiving this error you should request the merchant provide a BIP21
<message>
<source>&amp;Copy IP/Netmask</source>
<extracomment>Context menu action to copy the IP/Netmask of a banned peer. IP/Netmask is the combination of a peer's IP address and its Netmask. For IP address, see: https://en.wikipedia.org/wiki/IP_address.</extracomment>
- <translation type="unfinished">复制IP/网络掩码(&amp;C)</translation>
+ <translation type="unfinished">複製IP/遮罩(&amp;C)</translation>
</message>
<message>
<source>&amp;Unban</source>
@@ -2455,18 +2572,18 @@ For more information on using this console, type %6.
%7WARNING: Scammers have been active, telling users to type commands here, stealing their wallet contents. Do not use this console without fully understanding the ramifications of a command.%8</source>
<extracomment>RPC console welcome message. Placeholders %7 and %8 are style tags for the warning content, and they are not space separated from the rest of the text intentionally.</extracomment>
- <translation type="unfinished">欢迎来到 %1 RPC 控制台。
-使用上与下箭头以进行历史导航,%2 以清除屏幕。
-使用%3 和 %4 以增加或减小字体大小。
-输入 %5 以显示可用命令的概览。
-查看更多关于此控制台的信息,输入 %6。
+ <translation type="unfinished">歡迎來到 %1 RPC 控制台。
+使用上與下箭頭以進行歷史導航,%2 以清除螢幕。
+使用%3 和 %4 以增加或減少字體大小。
+輸入 %5 以顯示可用命令的概覽。
+查看更多關於此控制台的信息,輸入 %6。
-%7 警告:骗子们很活跃,告诉用户在这里输入命令,偷走他们钱包中的内容。不要在不完全了解一个命令的后果的情况下使用此控制台。%8</translation>
+%7 警告:騙子們很狡猾,告訴用戶在這裡輸入命令,清空錢包。 不要在不完全了解一個命令的後果的情況下使用此控制台。%8</translation>
</message>
<message>
<source>Executing…</source>
<extracomment>A console message indicating an entered command is currently being executed.</extracomment>
- <translation type="unfinished">执行中……</translation>
+ <translation type="unfinished">執行中……</translation>
</message>
<message>
<source>via %1</source>
@@ -2581,35 +2698,35 @@ For more information on using this console, type %6.
</message>
<message>
<source>Copy &amp;label</source>
- <translation type="unfinished">复制和标签</translation>
+ <translation type="unfinished">複製和標籤</translation>
</message>
<message>
<source>Copy &amp;message</source>
- <translation type="unfinished">复制消息(&amp;M)</translation>
+ <translation type="unfinished">複製訊息(&amp;M)</translation>
</message>
<message>
<source>Copy &amp;amount</source>
- <translation type="unfinished">复制和数量</translation>
+ <translation type="unfinished">複製金額 &amp;amount</translation>
</message>
<message>
<source>Base58 (Legacy)</source>
- <translation type="unfinished">Base58 (旧式)</translation>
+ <translation type="unfinished">Base58 (舊式)</translation>
</message>
<message>
<source>Not recommended due to higher fees and less protection against typos.</source>
- <translation type="unfinished">因手续费较高,而且打字错误防护较弱,故不推荐。</translation>
+ <translation type="unfinished">因手續費較高,打字錯誤防護較弱,故不推薦。</translation>
</message>
<message>
<source>Generates an address compatible with older wallets.</source>
- <translation type="unfinished">生成一个与旧版钱包兼容的地址。</translation>
+ <translation type="unfinished">產生一個與舊版錢包相容的位址。</translation>
</message>
<message>
<source>Generates a native segwit address (BIP-173). Some old wallets don't support it.</source>
- <translation type="unfinished">生成一个原生隔离见证地址 (BIP-173) 。不被部分旧版本钱包所支持。</translation>
+ <translation type="unfinished">產生一個原生隔離見證Segwit 位址 (BIP-173) 。 被部分舊版錢包不支援。</translation>
</message>
<message>
<source>Bech32m (BIP-350) is an upgrade to Bech32, wallet support is still limited.</source>
- <translation type="unfinished">Bech32m (BIP-350) 是对 Bech32 的更新升级,支持它的钱包仍然比较有限。</translation>
+ <translation type="unfinished">Bech32m (BIP-350) 是 Bech32 的更新升級,支援它的錢包仍然比較有限。</translation>
</message>
<message>
<source>Could not unlock wallet.</source>
@@ -2620,7 +2737,7 @@ For more information on using this console, type %6.
<name>ReceiveRequestDialog</name>
<message>
<source>Request payment to …</source>
- <translation type="unfinished">请求支付至...</translation>
+ <translation type="unfinished">請求支付至...</translation>
</message>
<message>
<source>Address:</source>
@@ -2652,7 +2769,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>&amp;Save Image…</source>
- <translation type="unfinished">保存图像(&amp;S)...</translation>
+ <translation type="unfinished">儲存圖片(&amp;S)...</translation>
</message>
<message>
<source>Payment information</source>
@@ -2785,12 +2902,8 @@ For more information on using this console, type %6.
<translation type="unfinished">把表單中的所有欄位清空。</translation>
</message>
<message>
- <source>Dust:</source>
- <translation type="unfinished">零散錢:</translation>
- </message>
- <message>
<source>Choose…</source>
- <translation type="unfinished">选择...</translation>
+ <translation type="unfinished">選擇...</translation>
</message>
<message>
<source>Hide transaction fee settings</source>
@@ -2798,13 +2911,17 @@ For more information on using this console, type %6.
</message>
<message>
<source>When there is less transaction volume than space in the blocks, miners as well as relaying nodes may enforce a minimum fee. Paying only this minimum fee is just fine, but be aware that this can result in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source>
- <translation type="unfinished">当交易量小于可用区块空间时,矿工和中继节点可能会执行最低手续费率限制。按照这个最低费率来支付手续费也是可以的,但请注意,一旦交易需求超出比特币网络能处理的限度,你的交易可能永远也无法确认。</translation>
+ <translation type="unfinished">當交易量小於可用區塊空間時,礦工和節點可能會執行最低手續費率限制。 以這個最低費率來支付手續費也是可以的,但請注意,一旦交易需求超出比特幣網路能處理的限度,你的交易可能永遠無法確認。</translation>
</message>
<message>
<source>A too low fee might result in a never confirming transaction (read the tooltip)</source>
<translation type="unfinished">手續費太低的話可能會造成永遠無法確認的交易(請參考提示)</translation>
</message>
<message>
+ <source>(Smart fee not initialized yet. This usually takes a few blocks…)</source>
+ <translation type="unfinished">(手續費智慧演算法還沒準備好。通常都要等幾個區塊才行...)</translation>
+ </message>
+ <message>
<source>Confirmation time target:</source>
<translation type="unfinished">目標確認時間:</translation>
</message>
@@ -2853,10 +2970,6 @@ For more information on using this console, type %6.
<translation type="unfinished">複製位元組數</translation>
</message>
<message>
- <source>Copy dust</source>
- <translation type="unfinished">複製零散金額</translation>
- </message>
- <message>
<source>Copy change</source>
<translation type="unfinished">複製找零金額</translation>
</message>
@@ -2865,6 +2978,20 @@ For more information on using this console, type %6.
<translation type="unfinished">%1 (%2 個區塊)</translation>
</message>
<message>
+ <source>Sign on device</source>
+ <extracomment>"device" usually means a hardware wallet.</extracomment>
+ <translation type="unfinished">在設備上簽證</translation>
+ </message>
+ <message>
+ <source>Connect your hardware wallet first.</source>
+ <translation type="unfinished">請先連接硬體錢包</translation>
+ </message>
+ <message>
+ <source>Set external signer script path in Options -&gt; Wallet</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">在 選項 -&gt; 錢包 中設定外部簽名器腳本路徑 </translation>
+ </message>
+ <message>
<source>Cr&amp;eate Unsigned</source>
<translation type="unfinished">Cr&eate未簽名</translation>
</message>
@@ -2881,13 +3008,22 @@ For more information on using this console, type %6.
<translation type="unfinished">%1 給 %2</translation>
</message>
<message>
+ <source>To review recipient list click "Show Details…"</source>
+ <translation type="unfinished">要查看收件人列表,請單擊"顯示詳細訊息..."</translation>
+ </message>
+ <message>
<source>Sign failed</source>
<translation type="unfinished">簽署失敗</translation>
</message>
<message>
+ <source>External signer not found</source>
+ <extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
+ <translation type="unfinished">未找到外部簽名器</translation>
+ </message>
+ <message>
<source>External signer failure</source>
<extracomment>"External signer" means using devices such as hardware wallets.</extracomment>
- <translation type="unfinished">外部签名器失败</translation>
+ <translation type="unfinished">外部簽名器失敗</translation>
</message>
<message>
<source>Save Transaction Data</source>
@@ -2896,7 +3032,7 @@ For more information on using this console, type %6.
<message>
<source>Partially Signed Transaction (Binary)</source>
<extracomment>Expanded name of the binary PSBT file format. See: BIP 174.</extracomment>
- <translation type="unfinished">部分签名交易(二进制)</translation>
+ <translation type="unfinished">部分簽名交易(二進位)</translation>
</message>
<message>
<source>PSBT saved</source>
@@ -2914,12 +3050,12 @@ For more information on using this console, type %6.
<message>
<source>Do you want to create this transaction?</source>
<extracomment>Message displayed when attempting to create a transaction. Cautionary text to prompt the user to verify that the displayed transaction details represent the transaction the user intends to create.</extracomment>
- <translation type="unfinished">要创建这笔交易吗?</translation>
+ <translation type="unfinished">要創建這筆交易嗎?</translation>
</message>
<message>
<source>Please, review your transaction. You can create and send this transaction or create a Partially Signed Bitcoin Transaction (PSBT), which you can save or copy and then sign with, e.g., an offline %1 wallet, or a PSBT-compatible hardware wallet.</source>
<extracomment>Text to inform a user attempting to create a transaction of their current options. At this stage, a user can send their transaction or create a PSBT. This string is displayed when both private keys and PSBT controls are enabled.</extracomment>
- <translation type="unfinished">请务必仔细检查您的交易。你可以创建并发送这笔交易;也可以创建一个“部分签名比特币交易(PSBT)”,它可以被保存下来或被复制出去,然后就可以对它进行签名,比如用离线%1钱包,或是用兼容PSBT的硬件钱包。</translation>
+ <translation type="unfinished">請務必仔細檢查您的交易。 你可以創建並發送這筆交易;也可以創建一個“部分簽名比特幣交易(PSBT)”,它可以被保存下來或被複製出去,然後就可以對它進行簽名,比如用離線%1錢包,或 是用相容PSBT的硬體錢包。</translation>
</message>
<message>
<source>Please, review your transaction.</source>
@@ -2942,15 +3078,15 @@ For more information on using this console, type %6.
<source>Unsigned Transaction</source>
<comment>PSBT copied</comment>
<extracomment>Caption of "PSBT has been copied" messagebox</extracomment>
- <translation type="unfinished">未签名交易</translation>
+ <translation type="unfinished">未被簽名交易</translation>
</message>
<message>
<source>The PSBT has been copied to the clipboard. You can also save it.</source>
- <translation type="unfinished">PSBT已被复制到剪贴板。您也可以保存它。</translation>
+ <translation type="unfinished">PSBT已被複製到剪貼簿。 您也可以保存它。</translation>
</message>
<message>
<source>PSBT saved to disk</source>
- <translation type="unfinished">PSBT已保存到磁盘</translation>
+ <translation type="unfinished">PSBT已儲存到磁碟。</translation>
</message>
<message>
<source>Confirm send coins</source>
@@ -2991,7 +3127,7 @@ For more information on using this console, type %6.
<message numerus="yes">
<source>Estimated to begin confirmation within %n block(s).</source>
<translation type="unfinished">
- <numerusform>预计%n个区块内确认。</numerusform>
+ <numerusform>預計%n個區塊內確認。</numerusform>
</translation>
</message>
<message>
@@ -3236,7 +3372,7 @@ For more information on using this console, type %6.
</message>
<message>
<source>press q to shutdown</source>
- <translation type="unfinished">按q键关闭并退出</translation>
+ <translation type="unfinished">按q鍵關閉並退出</translation>
</message>
</context>
<context>
@@ -3249,12 +3385,12 @@ For more information on using this console, type %6.
<message>
<source>0/unconfirmed, in memory pool</source>
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is in the memory pool.</extracomment>
- <translation type="unfinished">0/未确认,在内存池中</translation>
+ <translation type="unfinished">0/未確認,在內存池中</translation>
</message>
<message>
<source>0/unconfirmed, not in memory pool</source>
<extracomment>Text explaining the current status of a transaction, shown in the status field of the details window for this transaction. This status represents an unconfirmed transaction that is not in the memory pool.</extracomment>
- <translation type="unfinished">0/未确认,不在内存池中</translation>
+ <translation type="unfinished">0/未確認,不在內存池中</translation>
</message>
<message>
<source>abandoned</source>
@@ -3318,7 +3454,7 @@ For more information on using this console, type %6.
<message numerus="yes">
<source>matures in %n more block(s)</source>
<translation type="unfinished">
- <numerusform>在%n个区块内成熟</numerusform>
+ <numerusform>在%n個區塊內成熟</numerusform>
</translation>
</message>
<message>
@@ -3472,10 +3608,6 @@ For more information on using this console, type %6.
<translation type="unfinished">付款</translation>
</message>
<message>
- <source>Payment to yourself</source>
- <translation type="unfinished">付給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -3551,10 +3683,6 @@ For more information on using this console, type %6.
<translation type="unfinished">付款</translation>
</message>
<message>
- <source>To yourself</source>
- <translation type="unfinished">給自己</translation>
- </message>
- <message>
<source>Mined</source>
<translation type="unfinished">開採所得</translation>
</message>
@@ -3576,15 +3704,15 @@ For more information on using this console, type %6.
</message>
<message>
<source>&amp;Copy address</source>
- <translation type="unfinished">&amp;复制地址</translation>
+ <translation type="unfinished">&amp;複製地址</translation>
</message>
<message>
<source>Copy &amp;label</source>
- <translation type="unfinished">复制和标签</translation>
+ <translation type="unfinished">複製 &amp;label</translation>
</message>
<message>
<source>Copy &amp;amount</source>
- <translation type="unfinished">复制和数量</translation>
+ <translation type="unfinished">複製金額 &amp;amount</translation>
</message>
<message>
<source>Copy transaction &amp;ID</source>
@@ -3592,20 +3720,32 @@ For more information on using this console, type %6.
</message>
<message>
<source>Copy &amp;raw transaction</source>
- <translation type="unfinished">复制原始交易(&amp;R)</translation>
+ <translation type="unfinished">複製交易(原始)</translation>
+ </message>
+ <message>
+ <source>Copy full transaction &amp;details</source>
+ <translation type="unfinished">複製完整交易明細</translation>
+ </message>
+ <message>
+ <source>&amp;Show transaction details</source>
+ <translation type="unfinished">顯示交易明細</translation>
</message>
<message>
<source>Increase transaction &amp;fee</source>
- <translation type="unfinished">增加矿工费(&amp;F)</translation>
+ <translation type="unfinished">增加礦工費(&amp;fee)</translation>
+ </message>
+ <message>
+ <source>A&amp;bandon transaction</source>
+ <translation type="unfinished">放棄交易(&amp;b)</translation>
</message>
<message>
<source>&amp;Edit address label</source>
- <translation type="unfinished">编辑地址标签(&amp;E)</translation>
+ <translation type="unfinished">編輯地址標籤(&amp;E)</translation>
</message>
<message>
<source>Show in %1</source>
<extracomment>Transactions table context menu action to show the selected transaction in a third-party block explorer. %1 is a stand-in argument for the URL of the explorer.</extracomment>
- <translation type="unfinished">在 %1中显示</translation>
+ <translation type="unfinished">在 %1中顯示</translation>
</message>
<message>
<source>Export Transaction History</source>
@@ -3741,7 +3881,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Warning: This may pay the additional fee by reducing change outputs or adding inputs, when necessary. It may add a new change output if one does not already exist. These changes may potentially leak privacy.</source>
- <translation type="unfinished">警告: 因为在必要的时候会减少找零输出个数或增加输入个数,这可能要付出额外的费用。在没有找零输出的情况下可能会新增一个。这些变更可能会导致潜在的隐私泄露。</translation>
+ <translation type="unfinished">警告: 因為在必要的時候會減少找零輸出個數或增加輸入個數,這可能要付出額外的費用。 在沒有找零輸出的情況下可能會新增一個。 這些變更可能會導致潛在的隱私洩漏。</translation>
</message>
<message>
<source>Confirm fee bump</source>
@@ -3753,12 +3893,12 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>PSBT copied</source>
- <translation type="unfinished">PSBT已復制</translation>
+ <translation type="unfinished">PSBT已複製</translation>
</message>
<message>
<source>Copied to clipboard</source>
<comment>Fee-bump PSBT saved</comment>
- <translation type="unfinished">复制到剪贴板</translation>
+ <translation type="unfinished">複製到剪贴板</translation>
</message>
<message>
<source>Can't sign transaction.</source>
@@ -3769,15 +3909,19 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">沒辦法提交交易</translation>
</message>
<message>
+ <source>Can't display address</source>
+ <translation type="unfinished">無法顯示地址</translation>
+ </message>
+ <message>
<source>default wallet</source>
- <translation type="unfinished">默认钱包</translation>
+ <translation type="unfinished">預設錢包</translation>
</message>
</context>
<context>
<name>WalletView</name>
<message>
<source>&amp;Export</source>
- <translation type="unfinished">&amp;匯出</translation>
+ <translation type="unfinished">匯出 &amp;E</translation>
</message>
<message>
<source>Export the data in the current tab to a file</source>
@@ -3820,12 +3964,16 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">%s 開發人員</translation>
</message>
<message>
+ <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate will be left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
+ <translation type="unfinished">%s 驗證 -assumeutxo 快照狀態失敗。 這顯示硬體可能有問題,也可能是軟體bug,或是軟體被不當修改、從而讓非法快照也能夠載入。 因此,將關閉節點並停止使用從這個快照建構出的任何狀態,並將鏈高度從 %d 重置到 %d 。下次啟動時,節點將會不使用快照資料從 %d 繼續同步。 請將這個事件回報給 %s 並在報告中包括您是如何獲得這份快照的。 無效的鏈狀態快照仍保存至磁碟上,以供診斷問題的原因。</translation>
+ </message>
+ <message>
<source>%s request to listen on port %u. This port is considered "bad" and thus it is unlikely that any peer will connect to it. See doc/p2p-bad-ports.md for details and a full list.</source>
- <translation type="unfinished">%s请求监听端口%u。此端口被认为是“坏的”,所以不太可能有其他节点会连接过来。详情以及完整的端口列表请参见 doc/p2p-bad-ports.md 。</translation>
+ <translation type="unfinished">%s請求監聽端口%u。此連接埠被認為是“壞的”,所以不太可能有其他節點會連接過來。 詳情以及完整的連接埠清單請參閱 doc/p2p-bad-ports.md 。</translation>
</message>
<message>
<source>Cannot downgrade wallet from version %i to version %i. Wallet version unchanged.</source>
- <translation type="unfinished">无法把钱包版本从%i降级到%i。钱包版本未改变。</translation>
+ <translation type="unfinished">無法把皮夾版本從%i降級到%i。錢包版本未改變。</translation>
</message>
<message>
<source>Cannot obtain a lock on data directory %s. %s is probably already running.</source>
@@ -3833,11 +3981,11 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Cannot upgrade a non HD split wallet from version %i to version %i without upgrading to support pre-split keypool. Please use version %i or no version specified.</source>
- <translation type="unfinished">无法在不支持“拆分前的密钥池”(pre split keypool)的情况下把“非拆分HD钱包”(non HD split wallet)从版本%i升级到%i。请使用版本号%i,或者压根不要指定版本号。</translation>
+ <translation type="unfinished">無法在不支援「分割前的金鑰池」(pre split keypool)的情況下把「非分割HD錢包」(non HD split wallet)從版本%i升级到%i。請使用版本號%i,或壓根不要指定版本號。</translation>
</message>
<message>
<source>Disk space for %s may not accommodate the block files. Approximately %u GB of data will be stored in this directory.</source>
- <translation type="unfinished">%s的磁盘空间可能无法容纳区块文件。大约要在这个目录中储存 %uGB 的数据。</translation>
+ <translation type="unfinished">%s的硬碟空間可能無法容納區塊文件。 大約要在這個目錄中儲存 %uGB的數據。</translation>
</message>
<message>
<source>Distributed under the MIT software license, see the accompanying file %s or %s</source>
@@ -3845,39 +3993,51 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Error loading wallet. Wallet requires blocks to be downloaded, and software does not currently support loading wallets while blocks are being downloaded out of order when using assumeutxo snapshots. Wallet should be able to load successfully after node sync reaches height %s</source>
- <translation type="unfinished">加载钱包时出错。需要下载区块才能加载钱包,而且在使用assumeutxo快照时,下载区块是不按顺序的,这个时候软件不支持加载钱包。在节点同步至高度%s之后就应该可以加载钱包了。</translation>
- </message>
- <message>
- <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source>
- <translation type="unfinished">讀取錢包檔 %s 時發生錯誤!所有的鑰匙都正確讀取了,但是交易資料或地址簿資料可能會缺少或不正確。</translation>
+ <translation type="unfinished">加載錢包時發生錯誤。 需要下載區塊才能載入錢包,而且在使用assumeutxo快照時,下載區塊是不按順序的,這個時候軟體不支援載入錢包。 在節點同步至高度%s之後就應該可以加載錢包了。</translation>
</message>
<message>
<source>Error reading %s! Transaction data may be missing or incorrect. Rescanning wallet.</source>
- <translation type="unfinished">读取%s出错!交易数据可能丢失或有误。重新扫描钱包中。</translation>
+ <translation type="unfinished">讀取%s出錯! 交易資料可能遺失或有誤。 重新掃描錢包中。</translation>
</message>
<message>
<source>Error: Dumpfile format record is incorrect. Got "%s", expected "format".</source>
- <translation type="unfinished">错误: 转储文件格式不正确。得到是"%s",而预期本应得到的是 "format"。</translation>
+ <translation type="unfinished">錯誤: 轉儲文件格式不正確。 得到是"%s",而預期本應得到的是 "format"。</translation>
</message>
<message>
<source>Error: Dumpfile version is not supported. This version of bitcoin-wallet only supports version 1 dumpfiles. Got dumpfile with version %s</source>
- <translation type="unfinished">错误: 转储文件版本不被支持。这个版本的 bitcoin-wallet 只支持版本为 1 的转储文件。得到的转储文件版本却是%s</translation>
+ <translation type="unfinished">錯誤: 轉儲文件版本不支援。 這個版本的 bitcoin-wallet 只支援版本為 1 的轉儲檔案。 得到的轉儲文件版本是%s</translation>
+ </message>
+ <message>
+ <source>Error: Legacy wallets only support the "legacy", "p2sh-segwit", and "bech32" address types</source>
+ <translation type="unfinished">錯誤: 舊式錢包只支援 "legacy", "p2sh-segwit", 和 "bech32" 這三種位址類型</translation>
</message>
<message>
<source>Error: Unable to produce descriptors for this legacy wallet. Make sure to provide the wallet's passphrase if it is encrypted.</source>
- <translation type="unfinished">错误: 无法为该旧式钱包生成描述符。如果钱包已被加密,请确保提供的钱包加密密码正确。</translation>
+ <translation type="unfinished">錯誤: 無法為該舊式錢包產生描述符。 如果錢包已加密,請確保提供的錢包加密密碼正確。</translation>
+ </message>
+ <message>
+ <source>File %s already exists. If you are sure this is what you want, move it out of the way first.</source>
+ <translation type="unfinished">檔案%s已經存在。 如果你確定這就是你想做的,先把這份檔案移開。</translation>
</message>
<message>
<source>Invalid or corrupt peers.dat (%s). If you believe this is a bug, please report it to %s. As a workaround, you can move the file (%s) out of the way (rename, move, or delete) to have a new one created on the next start.</source>
- <translation type="unfinished">无效或损坏的peers.dat (%s)。如果你确信这是一个bug,请反馈到%s。作为变通办法,你可以把现有文件 (%s) 移开(重命名、移动或删除),这样就可以在下次启动时创建一个新文件了。</translation>
+ <translation type="unfinished">無效或損壞的peers.dat(%s)。如果你確信這是一個bug,請回饋到%s。作為變通辦法,你可以把現有文件 (%s) 移開(重新命名、移動或刪除),這樣就可以在下次啟動時建立一個新檔案了。</translation>
+ </message>
+ <message>
+ <source>More than one onion bind address is provided. Using %s for the automatically created Tor onion service.</source>
+ <translation type="unfinished">提供多數TOR路由綁定位址。 對自動建立的Tor服務用%s</translation>
</message>
<message>
<source>No dump file provided. To use createfromdump, -dumpfile=&lt;filename&gt; must be provided.</source>
- <translation type="unfinished">没有提供转储文件。要使用 createfromdump ,必须提供 -dumpfile=&lt;filename&gt;。</translation>
+ <translation type="unfinished">沒有提供轉儲文件。 要使用 createfromdump ,必須提供 -dumpfile=&lt;filename&gt;。</translation>
+ </message>
+ <message>
+ <source>No dump file provided. To use dump, -dumpfile=&lt;filename&gt; must be provided.</source>
+ <translation type="unfinished">沒有提供轉儲文件。 要使用 dump ,必須提供 -dumpfile=&lt;filename&gt;。</translation>
</message>
<message>
<source>No wallet file format provided. To use createfromdump, -format=&lt;format&gt; must be provided.</source>
- <translation type="unfinished">没有提供钱包格式。要使用 createfromdump ,必须提供 -format=&lt;format&gt;</translation>
+ <translation type="unfinished">沒有提供錢包格式。 要使用 createfromdump ,必須提供 -format=&lt;format&gt;</translation>
</message>
<message>
<source>Please check that your computer's date and time are correct! If your clock is wrong, %s will not work properly.</source>
@@ -3893,19 +4053,23 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Prune mode is incompatible with -reindex-chainstate. Use full -reindex instead.</source>
- <translation type="unfinished">修剪模式与 -reindex-chainstate 不兼容。请进行一次完整的 -reindex 。</translation>
+ <translation type="unfinished">修剪模式與 -reindex-chainstate 不相容。 請進行一次完整的 -reindex 。</translation>
</message>
<message>
<source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source>
<translation type="unfinished">修剪模式:錢包的最後同步狀態是在被修剪掉的區塊資料中。你需要用 -reindex 參數執行(會重新下載整個區塊鏈)</translation>
</message>
<message>
- <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
- <translation type="unfinished">區塊資料庫中有來自未來的區塊。可能是你電腦的日期時間不對。如果確定電腦日期時間沒錯的話,就重建區塊資料庫看看。</translation>
+ <source>Rename of '%s' -&gt; '%s' failed. You should resolve this by manually moving or deleting the invalid snapshot directory %s, otherwise you will encounter the same error again on the next startup.</source>
+ <translation type="unfinished">重命名 '%s' -&gt; '%s' 失敗。 您需要手動移除或刪除無效的快照目錄 %s來解決這個問題,不然的話您就會在下一次啟動時遇到相同的錯誤。</translation>
</message>
<message>
- <source>The block index db contains a legacy 'txindex'. To clear the occupied disk space, run a full -reindex, otherwise ignore this error. This error message will not be displayed again.</source>
- <translation type="unfinished">区块索引数据库含有历史遗留的 'txindex' 。可以运行完整的 -reindex 来清理被占用的磁盘空间;也可以忽略这个错误。这个错误消息将不会再次显示。</translation>
+ <source>SQLiteDatabase: Unknown sqlite wallet schema version %d. Only version %d is supported</source>
+ <translation type="unfinished">SQLiteDatabase: SQLite錢包schema版本%d未知。 只支持%d版本</translation>
+ </message>
+ <message>
+ <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source>
+ <translation type="unfinished">區塊資料庫中有來自未來的區塊。可能是你電腦的日期時間不對。如果確定電腦日期時間沒錯的話,就重建區塊資料庫看看。</translation>
</message>
<message>
<source>The transaction amount is too small to send after the fee has been deducted</source>
@@ -3941,19 +4105,27 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Unknown wallet file format "%s" provided. Please provide one of "bdb" or "sqlite".</source>
- <translation type="unfinished">提供了未知的钱包格式 "%s" 。请使用 "bdb" 或 "sqlite" 中的一种。</translation>
+ <translation type="unfinished">提供了未知的錢包格式 "%s" 。請使用 "bdb" 或 "sqlite" 中的一種。</translation>
+ </message>
+ <message>
+ <source>Unsupported category-specific logging level %1$s=%2$s. Expected %1$s=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %3$s. Valid loglevels: %4$s.</source>
+ <translation type="unfinished">不支援的類別限定日誌等級 %1$s=%2$s 。 预期参数 %1$s=&lt;category&gt;:&lt;loglevel&gt;。 有效的類別: %3$s 。有效的日誌等級: %4$s 。</translation>
</message>
<message>
<source>Unsupported chainstate database format found. Please restart with -reindex-chainstate. This will rebuild the chainstate database.</source>
- <translation type="unfinished">找到了不受支持的 chainstate 数据库格式。请使用 -reindex-chainstate 参数重启。这将会重建 chainstate 数据库。</translation>
+ <translation type="unfinished">找到了不受支援的 chainstate 資料庫格式。 請使用 -reindex-chainstate 參數重新啟動。 這將會重建 chainstate 資料庫。</translation>
</message>
<message>
<source>Wallet created successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future.</source>
- <translation type="unfinished">钱包创建成功。旧式钱包已被弃用,未来将不再支持创建或打开旧式钱包。</translation>
+ <translation type="unfinished">錢包創建成功。 舊式錢包已被棄用,未來將不再支援創建或打開舊式錢包。</translation>
+ </message>
+ <message>
+ <source>Wallet loaded successfully. The legacy wallet type is being deprecated and support for creating and opening legacy wallets will be removed in the future. Legacy wallets can be migrated to a descriptor wallet with migratewallet.</source>
+ <translation type="unfinished">錢包加載成功。 舊式錢包已被棄用,未來將不再支援創建或打開舊式錢包。 可以使用 migratewallet 指令將舊式錢包遷移至輸出描述符錢包。</translation>
</message>
<message>
<source>Warning: Dumpfile wallet format "%s" does not match command line specified format "%s".</source>
- <translation type="unfinished">警告: 转储文件的钱包格式 "%s" 与命令行指定的格式 "%s" 不符。</translation>
+ <translation type="unfinished">警告: 轉儲文件的錢包格式 "%s" 與命令列指定的格式 "%s" 不符。</translation>
</message>
<message>
<source>Warning: Private keys detected in wallet {%s} with disabled private keys</source>
@@ -3965,7 +4137,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Witness data for blocks after height %d requires validation. Please restart with -reindex.</source>
- <translation type="unfinished">需要验证高度在%d之后的区块见证数据。请使用 -reindex 重新启动。</translation>
+ <translation type="unfinished">需要驗證高度在%d之後的區塊見證數據。 請使用 -reindex 重新啟動。</translation>
</message>
<message>
<source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source>
@@ -3989,7 +4161,7 @@ Go to File &gt; Open Wallet to load a wallet.
</message>
<message>
<source>Cannot set -forcednsseed to true when setting -dnsseed to false.</source>
- <translation type="unfinished">在 -dnsseed 被设为 false 时无法将 -forcednsseed 设为 true 。</translation>
+ <translation type="unfinished">在 -dnsseed 被設為 false 時無法將 -forcednsseed 設為 true 。</translation>
</message>
<message>
<source>Cannot set -peerblockfilters without -blockfilterindex.</source>
@@ -4000,109 +4172,97 @@ Go to File &gt; Open Wallet to load a wallet.
<translation type="unfinished">沒辦法寫入資料目錄 '%s',請檢查是否有權限。</translation>
</message>
<message>
- <source>The -txindex upgrade started by a previous version cannot be completed. Restart with the previous version or run a full -reindex.</source>
- <translation type="unfinished">无法完成由之前版本启动的 -txindex 升级。请用之前的版本重新启动,或者进行一次完整的 -reindex 。</translation>
- </message>
- <message>
- <source>%s failed to validate the -assumeutxo snapshot state. This indicates a hardware problem, or a bug in the software, or a bad software modification that allowed an invalid snapshot to be loaded. As a result of this, the node will shut down and stop using any state that was built on the snapshot, resetting the chain height from %d to %d. On the next restart, the node will resume syncing from %d without using any snapshot data. Please report this incident to %s, including how you obtained the snapshot. The invalid snapshot chainstate has been left on disk in case it is helpful in diagnosing the issue that caused this error.</source>
- <translation type="unfinished">%s 验证 -assumeutxo 快照状态失败。这表明硬件可能有问题,也可能是软件bug,或者还可能是软件被不当修改、从而让非法快照也能够被加载。因此,将关闭节点并停止使用从这个快照构建出的任何状态,并将链高度从 %d 重置到 %d 。下次启动时,节点将会不使用快照数据从 %d 继续同步。请将这个事件报告给 %s 并在报告中包括您是如何获得这份快照的。无效的链状态快照仍被保存至磁盘上以供诊断问题的原因。</translation>
- </message>
- <message>
<source>%s is set very high! Fees this large could be paid on a single transaction.</source>
- <translation type="unfinished">%s被设置得很高! 这可是一次交易就有可能付出的手续费。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -blockfilterindex. Please temporarily disable blockfilterindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -blockfilterindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 blockfilterindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -coinstatsindex. Please temporarily disable coinstatsindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -coinstatsindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 coinstatsindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
- </message>
- <message>
- <source>-reindex-chainstate option is not compatible with -txindex. Please temporarily disable txindex while using -reindex-chainstate, or replace -reindex-chainstate with -reindex to fully rebuild all indexes.</source>
- <translation type="unfinished">-reindex-chainstate 与 -txindex 不兼容。请在进行 -reindex-chainstate 时临时禁用 txindex ,或者改用 -reindex (而不是 -reindex-chainstate )来完整地重建所有索引。</translation>
+ <translation type="unfinished">%s被設定得很高! 這可是一次交易就有可能付出的手續費。</translation>
</message>
<message>
<source>Cannot provide specific connections and have addrman find outgoing connections at the same time.</source>
- <translation type="unfinished">在使用地址管理器(addrman)寻找出站连接时,无法同时提供特定的连接。</translation>
+ <translation type="unfinished">在使用位址管理器(addrman)尋找出站連線時,無法同時提供特定的連線。</translation>
</message>
<message>
<source>Error loading %s: External signer wallet being loaded without external signer support compiled</source>
- <translation type="unfinished">加载%s时出错: 编译时未启用外部签名器支持,却仍然试图加载外部签名器钱包</translation>
+ <translation type="unfinished">載入%s時出錯: 編譯時未啟用外部簽章器支持,卻仍試圖載入外部簽章器錢包</translation>
+ </message>
+ <message>
+ <source>Error reading %s! All keys read correctly, but transaction data or address metadata may be missing or incorrect.</source>
+ <translation type="unfinished">讀取 %s 時出錯! 所有金鑰都被正確讀取,但交易資料或位址元資料可能缺失或有誤。</translation>
</message>
<message>
<source>Error: Address book data in wallet cannot be identified to belong to migrated wallets</source>
- <translation type="unfinished">错误:钱包中的地址簿数据无法被识别为属于迁移后的钱包</translation>
+ <translation type="unfinished">錯誤:錢包中的通訊錄資料無法被辨識為屬於遷移後的錢包</translation>
</message>
<message>
<source>Error: Duplicate descriptors created during migration. Your wallet may be corrupted.</source>
- <translation type="unfinished">错误:迁移过程中创建了重复的输出描述符。你的钱包可能已损坏。</translation>
+ <translation type="unfinished">錯誤:遷移過程中創建了重複的輸出描述符。 你的錢包可能已損壞。</translation>
</message>
<message>
<source>Error: Transaction %s in wallet cannot be identified to belong to migrated wallets</source>
- <translation type="unfinished">错误:钱包中的交易%s无法被识别为属于迁移后的钱包</translation>
+ <translation type="unfinished">錯誤:錢包中的交易%s無法被辨識為屬於遷移後的錢包</translation>
+ </message>
+ <message>
+ <source>Failed to calculate bump fees, because unconfirmed UTXOs depend on enormous cluster of unconfirmed transactions.</source>
+ <translation type="unfinished">計算追加手續費失敗,因為未確認UTXO依賴了大量未確認交易的簇集。</translation>
</message>
<message>
<source>Failed to rename invalid peers.dat file. Please move or delete it and try again.</source>
- <translation type="unfinished">无法重命名无效的 peers.dat 文件。 请移动或删除它,然后重试。</translation>
+ <translation type="unfinished">無法重新命名無效的 peers.dat 檔案。 請移動或刪除它,然後重試。</translation>
</message>
<message>
<source>Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable %s.</source>
- <translation type="unfinished">手续费估计失败。而且备用手续费估计(fallbackfee)已被禁用。请再等一些区块,或者启用%s。</translation>
+ <translation type="unfinished">手續費估計失敗。 而且備用手續費估計(fallbackfee)已停用。 請再等一些區塊,或啟用%s。</translation>
</message>
<message>
<source>Incompatible options: -dnsseed=1 was explicitly specified, but -onlynet forbids connections to IPv4/IPv6</source>
- <translation type="unfinished">互不兼容的选项:-dnsseed=1 已被显式指定,但 -onlynet 禁止了IPv4/IPv6 连接</translation>
+ <translation type="unfinished">互不相容的選項:-dnsseed=1 已被明確指定,但 -onlynet 禁止了IPv4/IPv6 連接</translation>
</message>
<message>
<source>Invalid amount for %s=&lt;amount&gt;: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source>
- <translation type="unfinished">%s=&lt;amount&gt;: '%s' 中指定了非法的金额 (手续费必须至少达到最小转发费率(minrelay fee) %s 以避免交易卡着发不出去)</translation>
+ <translation type="unfinished">%s=&lt;amount&gt;: '%s' 中指定了非法的金額 (手續費必須至少達到最小轉送費率(minrelay fee) %s 以避免交易卡著發不出去)</translation>
</message>
<message>
<source>Outbound connections restricted to CJDNS (-onlynet=cjdns) but -cjdnsreachable is not provided</source>
- <translation type="unfinished">传出连接被限制为仅使用CJDNS (-onlynet=cjdns) ,但却未提供 -cjdnsreachable 参数。</translation>
+ <translation type="unfinished">傳出連線被限制為僅使用CJDNS (-onlynet=cjdns) ,但卻未提供 -cjdnsreachable 參數。</translation>
</message>
<message>
<source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is explicitly forbidden: -onion=0</source>
- <translation type="unfinished">出站连接被限制为仅使用 Tor (-onlynet=onion),但是到达 Tor 网络的代理被显式禁止: -onion=0</translation>
+ <translation type="unfinished">Outbound連線被限制為僅使用 Tor (-onlynet=onion),但到達 Tor 網路的代理被明確禁止: -onion=0</translation>
</message>
<message>
<source>Outbound connections restricted to Tor (-onlynet=onion) but the proxy for reaching the Tor network is not provided: none of -proxy, -onion or -listenonion is given</source>
- <translation type="unfinished">出站连接被限制为仅使用 Tor (-onlynet=onion),但是未提供到达 Tor 网络的代理:没有提供 -proxy=, -onion= 或 -listenonion 参数</translation>
+ <translation type="unfinished">Outbound連線被限制為僅使用 Tor (-onlynet=onion),但未提供到達 Tor 網路的代理:沒有提供 -proxy=, -onion= 或 -listenonion 參數</translation>
</message>
<message>
<source>Outbound connections restricted to i2p (-onlynet=i2p) but -i2psam is not provided</source>
- <translation type="unfinished">传出连接被限制为仅使用I2P (-onlynet=i2p) ,但却未提供 -i2psam 参数。</translation>
+ <translation type="unfinished">Outbound連線被限制為僅使用I2P (-onlynet=i2p) ,但卻未提供 -i2psam 參數。</translation>
</message>
<message>
<source>The inputs size exceeds the maximum weight. Please try sending a smaller amount or manually consolidating your wallet's UTXOs</source>
- <translation type="unfinished">输入大小超出了最大重量。请尝试减少发出的金额,或者手动整合一下钱包UTXO</translation>
+ <translation type="unfinished">輸入大小超出了最大重量。 請嘗試減少發出的金額,或手動整合錢包UTXO</translation>
</message>
<message>
<source>The preselected coins total amount does not cover the transaction target. Please allow other inputs to be automatically selected or include more coins manually</source>
- <translation type="unfinished">预先选择的币总金额不能覆盖交易目标。请允许自动选择其他输入,或者手动加入更多的币</translation>
+ <translation type="unfinished">預先選擇的幣總金額不能覆蓋交易目標。 請允許自動選擇其他輸入,或手動加入更多的幣</translation>
</message>
<message>
<source>Transaction requires one destination of non-0 value, a non-0 feerate, or a pre-selected input</source>
- <translation type="unfinished">交易要求一个非零值目标,或是非零值手续费率,或是预选中的输入。</translation>
+ <translation type="unfinished">交易要求一個非零值目標,或是非零值手續費率,或是預先選取的輸入。</translation>
</message>
<message>
<source>UTXO snapshot failed to validate. Restart to resume normal initial block download, or try loading a different snapshot.</source>
- <translation type="unfinished">验证UTXO快照失败。重启后,可以普通方式继续初始区块下载,或者也可以加载一个不同的快照。</translation>
+ <translation type="unfinished">驗證UTXO快照失敗。 重啟後,可以普通方式繼續初始區塊下載,或者也可以載入一個不同的快照。</translation>
</message>
<message>
<source>Unconfirmed UTXOs are available, but spending them creates a chain of transactions that will be rejected by the mempool</source>
- <translation type="unfinished">未确认UTXO可用,但花掉它们将会创建一条会被内存池拒绝的交易链</translation>
+ <translation type="unfinished">未確認UTXO可用,但花掉它們將會創建一條會被記憶體池拒絕的交易鏈</translation>
</message>
<message>
<source>Unexpected legacy entry in descriptor wallet found. Loading wallet %s
The wallet might have been tampered with or created with malicious intent.
</source>
- <translation type="unfinished">在描述符钱包中意料之外地找到了旧式条目。加载钱包%s
+ <translation type="unfinished">在描述符錢包中意料之外地找到了舊式條目。 加載錢包%s
-钱包可能被篡改过,或者是出于恶意而被构建的。
+錢包可能被竄改過,或是出於惡意而被建構的。
</translation>
</message>
<message>
@@ -4111,35 +4271,31 @@ The wallet might have been tampered with or created with malicious intent.
The wallet might had been created on a newer version.
Please try running the latest software version.
</source>
- <translation type="unfinished">找到无法识别的输出描述符。加载钱包%s
+ <translation type="unfinished">找到無法辨識的輸出描述符。 加載錢包%s
-钱包可能由新版软件创建,
-请尝试运行最新的软件版本。
+錢包可能由新版軟體創建,
+請嘗試執行最新的軟體版本。
</translation>
</message>
<message>
- <source>Unsupported category-specific logging level -loglevel=%s. Expected -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s. Valid loglevels: %s.</source>
- <translation type="unfinished">不支持的类别限定日志等级 -loglevel=%s。预期参数 -loglevel=&lt;category&gt;:&lt;loglevel&gt;. Valid categories: %s。有效的类别: %s。</translation>
- </message>
- <message>
<source>
Unable to cleanup failed migration</source>
<translation type="unfinished">
-无法清理失败的迁移</translation>
+無法清理失敗的遷移</translation>
</message>
<message>
<source>
Unable to restore backup of wallet.</source>
<translation type="unfinished">
-无法还原钱包备份</translation>
+無法還原錢包備份</translation>
</message>
<message>
<source>Block verification was interrupted</source>
- <translation type="unfinished">区块验证已中断</translation>
+ <translation type="unfinished">區塊驗證已中斷</translation>
</message>
<message>
<source>Config setting for %s only applied on %s network when in [%s] section.</source>
- <translation type="unfinished">对 %s 的配置设置只对 %s 网络生效,如果它位于配置的 [%s] 章节的话</translation>
+ <translation type="unfinished">對 %s 的配置設定只對 %s 網路生效,如果它位於配置的 [%s] 章節的話</translation>
</message>
<message>
<source>Copyright (C) %i-%i</source>
@@ -4150,6 +4306,10 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">發現區塊資料庫壞掉了</translation>
</message>
<message>
+ <source>Could not parse asmap file %s</source>
+ <translation type="unfinished">無法解析asmap文件%s</translation>
+ </message>
+ <message>
<source>Disk space is too low!</source>
<translation type="unfinished">硬碟空間太小!</translation>
</message>
@@ -4163,11 +4323,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Dump file %s does not exist.</source>
- <translation type="unfinished">转储文件 %s 不存在</translation>
+ <translation type="unfinished">轉儲文件 %s 不存在</translation>
</message>
<message>
<source>Error creating %s</source>
- <translation type="unfinished">创建%s时出错</translation>
+ <translation type="unfinished">創建%s時出錯</translation>
</message>
<message>
<source>Error initializing block database</source>
@@ -4203,35 +4363,39 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error reading configuration file: %s</source>
- <translation type="unfinished">读取配置文件失败: %s</translation>
+ <translation type="unfinished">讀取設定檔失敗: %s</translation>
</message>
<message>
<source>Error reading from database, shutting down.</source>
<translation type="unfinished">讀取資料庫時發生錯誤,要關閉了。</translation>
</message>
<message>
+ <source>Error reading next record from wallet database</source>
+ <translation type="unfinished">從錢包資料庫讀取下一筆記錄時出錯</translation>
+ </message>
+ <message>
<source>Error: Cannot extract destination from the generated scriptpubkey</source>
- <translation type="unfinished">错误: 无法从生成的scriptpubkey提取目标</translation>
+ <translation type="unfinished">錯誤: 無法從產生的scriptpubkey提取目標</translation>
</message>
<message>
<source>Error: Could not add watchonly tx to watchonly wallet</source>
- <translation type="unfinished">错误:无法添加仅观察交易至仅观察钱包</translation>
+ <translation type="unfinished">錯誤:無法新增僅觀察交易至僅觀察錢包</translation>
</message>
<message>
<source>Error: Could not delete watchonly transactions</source>
- <translation type="unfinished">错误:无法删除仅观察交易</translation>
+ <translation type="unfinished">錯誤:無法刪除僅觀察交易</translation>
</message>
<message>
<source>Error: Couldn't create cursor into database</source>
- <translation type="unfinished">错误: 无法在数据库中创建指针</translation>
+ <translation type="unfinished">錯誤: 無法在資料庫中建立指針</translation>
</message>
<message>
<source>Error: Disk space is low for %s</source>
- <translation type="unfinished">错误: %s 所在的磁盘空间低。</translation>
+ <translation type="unfinished">錯誤: 硬碟空間不足 %s</translation>
</message>
<message>
<source>Error: Failed to create new watchonly wallet</source>
- <translation type="unfinished">错误:创建新仅观察钱包失败</translation>
+ <translation type="unfinished">錯誤:建立新僅觀察錢包失敗</translation>
</message>
<message>
<source>Error: Keypool ran out, please call keypoolrefill first</source>
@@ -4239,39 +4403,39 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Error: Not all watchonly txs could be deleted</source>
- <translation type="unfinished">错误:有些仅观察交易无法被删除</translation>
+ <translation type="unfinished">錯誤:有些僅觀察交易無法刪除</translation>
</message>
<message>
<source>Error: This wallet already uses SQLite</source>
- <translation type="unfinished">错误:此钱包已经在使用SQLite</translation>
+ <translation type="unfinished">錯誤:此錢包已經在使用SQLite</translation>
</message>
<message>
<source>Error: This wallet is already a descriptor wallet</source>
- <translation type="unfinished">错误:这个钱包已经是输出描述符钱包</translation>
+ <translation type="unfinished">錯誤:這個錢包已經是輸出描述符descriptor錢包</translation>
</message>
<message>
<source>Error: Unable to begin reading all records in the database</source>
- <translation type="unfinished">错误:无法开始读取这个数据库中的所有记录</translation>
+ <translation type="unfinished">錯誤:無法開始讀取這個資料庫中的所有記錄</translation>
</message>
<message>
<source>Error: Unable to make a backup of your wallet</source>
- <translation type="unfinished">错误:无法为你的钱包创建备份</translation>
+ <translation type="unfinished">錯誤:無法為你的錢包建立備份</translation>
</message>
<message>
<source>Error: Unable to parse version %u as a uint32_t</source>
- <translation type="unfinished">错误:无法把版本号%u作为unit32_t解析</translation>
+ <translation type="unfinished">錯誤:無法把版本號%u作為unit32_t解析</translation>
</message>
<message>
<source>Error: Unable to read all records in the database</source>
- <translation type="unfinished">错误:无法读取这个数据库中的所有记录</translation>
+ <translation type="unfinished">錯誤:無法讀取這個資料庫中的所有記錄</translation>
</message>
<message>
<source>Error: Unable to remove watchonly address book data</source>
- <translation type="unfinished">错误:无法移除仅观察地址簿数据</translation>
+ <translation type="unfinished">錯誤:無法移除僅觀察地址簿數據</translation>
</message>
<message>
<source>Error: Unable to write record to new wallet</source>
- <translation type="unfinished">错误: 无法写入记录到新钱包</translation>
+ <translation type="unfinished">錯誤: 無法寫入記錄到新錢包</translation>
</message>
<message>
<source>Failed to listen on any port. Use -listen=0 if you want this.</source>
@@ -4282,6 +4446,14 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">初始化時重新掃描錢包失敗了</translation>
</message>
<message>
+ <source>Failed to start indexes, shutting down..</source>
+ <translation type="unfinished">無法啟動索引,關閉中...</translation>
+ </message>
+ <message>
+ <source>Failed to verify database</source>
+ <translation type="unfinished">無法驗證資料庫</translation>
+ </message>
+ <message>
<source>Fee rate (%s) is lower than the minimum fee rate setting (%s)</source>
<translation type="unfinished">手續費費率(%s) 低於最低費率設置(%s)</translation>
</message>
@@ -4311,7 +4483,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Invalid -i2psam address or hostname: '%s'</source>
- <translation type="unfinished">无效的 -i2psam 地址或主机名: '%s'</translation>
+ <translation type="unfinished">無效的 -i2psam 位址或主機名稱: '%s'</translation>
</message>
<message>
<source>Invalid -onion address or hostname: '%s'</source>
@@ -4343,15 +4515,15 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Invalid port specified in %s: '%s'</source>
- <translation type="unfinished">%s指定了无效的端口号: '%s'</translation>
+ <translation type="unfinished">%s指定了無效的連接埠號: '%s'</translation>
</message>
<message>
<source>Invalid pre-selected input %s</source>
- <translation type="unfinished">无效的预先选择输入%s</translation>
+ <translation type="unfinished">無效的預先選擇輸入%s</translation>
</message>
<message>
<source>Listening for incoming connections failed (listen returned error %s)</source>
- <translation type="unfinished">监听外部连接失败 (listen函数返回了错误 %s)</translation>
+ <translation type="unfinished">監聽外部連線失敗 (listen函數回傳了錯誤 %s)</translation>
</message>
<message>
<source>Loading P2P addresses…</source>
@@ -4391,11 +4563,11 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Not found pre-selected input %s</source>
- <translation type="unfinished">找不到预先选择输入%s</translation>
+ <translation type="unfinished">找不到預先選擇輸入%s</translation>
</message>
<message>
<source>Not solvable pre-selected input %s</source>
- <translation type="unfinished">无法求解的预先选择输入%s</translation>
+ <translation type="unfinished">無法求解的預先選擇輸入%s</translation>
</message>
<message>
<source>Prune cannot be configured with a negative value.</source>
@@ -4423,7 +4595,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Section [%s] is not recognized.</source>
- <translation type="unfinished">无法识别配置章节 [%s]。</translation>
+ <translation type="unfinished">無法辨識配置章節 [%s]。</translation>
</message>
<message>
<source>Signing transaction failed</source>
@@ -4447,7 +4619,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Specified data directory "%s" does not exist.</source>
- <translation type="unfinished">指定的数据目录 "%s" 不存在。</translation>
+ <translation type="unfinished">指定的資料目錄 "%s" 不存在。</translation>
</message>
<message>
<source>Starting network threads…</source>
@@ -4511,7 +4683,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Unable to allocate memory for -maxsigcachesize: '%s' MiB</source>
- <translation type="unfinished">无法为 -maxsigcachesize: '%s' MiB 分配内存</translation>
+ <translation type="unfinished">無法為 -maxsigcachesize: '%s' MiB 分配内存</translation>
</message>
<message>
<source>Unable to bind to %s on this computer (bind returned error %s)</source>
@@ -4527,7 +4699,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Unable to find UTXO for external input</source>
- <translation type="unfinished">无法为外部输入找到UTXO</translation>
+ <translation type="unfinished">無法為外部輸入找到UTXO</translation>
</message>
<message>
<source>Unable to generate initial keys</source>
@@ -4551,7 +4723,7 @@ Unable to restore backup of wallet.</source>
</message>
<message>
<source>Unable to unload the wallet before migrating</source>
- <translation type="unfinished">在迁移前无法卸载钱包</translation>
+ <translation type="unfinished">在遷移前無法卸載錢包</translation>
</message>
<message>
<source>Unknown -blockfilterindex value %s.</source>
@@ -4574,8 +4746,12 @@ Unable to restore backup of wallet.</source>
<translation type="unfinished">未知的交易已經有新規則激活 (versionbit %i)</translation>
</message>
<message>
- <source>Unsupported global logging level -loglevel=%s. Valid values: %s.</source>
- <translation type="unfinished">不支持的全局日志等级 -loglevel=%s 。有效的数值:%s 。</translation>
+ <source>Unsupported global logging level %s=%s. Valid values: %s.</source>
+ <translation type="unfinished">不支持的全局日志等级 %s=%s。有效数值: %s.</translation>
+ </message>
+ <message>
+ <source>acceptstalefeeestimates is not supported on %s chain.</source>
+ <translation type="unfinished">%s链上acceptstalefeeestimates 不受支持。</translation>
</message>
<message>
<source>Unsupported logging category %s=%s.</source>
diff --git a/src/qt/locale/bitcoin_zu.ts b/src/qt/locale/bitcoin_zu.ts
index be77b79c6e..efab844068 100644
--- a/src/qt/locale/bitcoin_zu.ts
+++ b/src/qt/locale/bitcoin_zu.ts
@@ -10,10 +10,6 @@
<translation type="unfinished">&amp;Kopisha</translation>
</message>
<message>
- <source>Receiving addresses</source>
- <translation type="unfinished">Amakheli ukuthola</translation>
- </message>
- <message>
<source>Comma separated file</source>
<extracomment>Expanded name of the CSV file format. See: https://en.wikipedia.org/wiki/Comma-separated_values.</extracomment>
<translation type="unfinished">Ifayela elehlukaniswe ngo khefana.</translation>
diff --git a/src/qt/optionsdialog.cpp b/src/qt/optionsdialog.cpp
index 6e1d36effb..a87bef796c 100644
--- a/src/qt/optionsdialog.cpp
+++ b/src/qt/optionsdialog.cpp
@@ -23,14 +23,70 @@
#include <chrono>
+#include <QApplication>
#include <QDataWidgetMapper>
#include <QDir>
+#include <QFontDialog>
#include <QIntValidator>
#include <QLocale>
#include <QMessageBox>
#include <QSystemTrayIcon>
#include <QTimer>
+int setFontChoice(QComboBox* cb, const OptionsModel::FontChoice& fc)
+{
+ int i;
+ for (i = cb->count(); --i >= 0; ) {
+ QVariant item_data = cb->itemData(i);
+ if (!item_data.canConvert<OptionsModel::FontChoice>()) continue;
+ if (item_data.value<OptionsModel::FontChoice>() == fc) {
+ break;
+ }
+ }
+ if (i == -1) {
+ // New item needed
+ QFont chosen_font = OptionsModel::getFontForChoice(fc);
+ QSignalBlocker block_currentindexchanged_signal(cb); // avoid triggering QFontDialog
+ cb->insertItem(0, QFontInfo(chosen_font).family(), QVariant::fromValue(fc));
+ i = 0;
+ }
+
+ cb->setCurrentIndex(i);
+ return i;
+}
+
+void setupFontOptions(QComboBox* cb, QLabel* preview)
+{
+ QFont embedded_font{GUIUtil::fixedPitchFont(true)};
+ QFont system_font{GUIUtil::fixedPitchFont(false)};
+ cb->addItem(QObject::tr("Embedded \"%1\"").arg(QFontInfo(embedded_font).family()), QVariant::fromValue(OptionsModel::FontChoice{OptionsModel::FontChoiceAbstract::EmbeddedFont}));
+ cb->addItem(QObject::tr("Default system font \"%1\"").arg(QFontInfo(system_font).family()), QVariant::fromValue(OptionsModel::FontChoice{OptionsModel::FontChoiceAbstract::BestSystemFont}));
+ cb->addItem(QObject::tr("Custom…"));
+
+ const auto& on_font_choice_changed = [cb, preview](int index) {
+ static int previous_index = -1;
+ QVariant item_data = cb->itemData(index);
+ QFont f;
+ if (item_data.canConvert<OptionsModel::FontChoice>()) {
+ f = OptionsModel::getFontForChoice(item_data.value<OptionsModel::FontChoice>());
+ } else {
+ bool ok;
+ f = QFontDialog::getFont(&ok, GUIUtil::fixedPitchFont(false), cb->parentWidget());
+ if (!ok) {
+ cb->setCurrentIndex(previous_index);
+ return;
+ }
+ index = setFontChoice(cb, OptionsModel::FontChoice{f});
+ }
+ if (preview) {
+ preview->setFont(f);
+ }
+ previous_index = index;
+ };
+ QObject::connect(cb, QOverload<int>::of(&QComboBox::currentIndexChanged), on_font_choice_changed);
+ on_font_choice_changed(cb->currentIndex());
+}
+
OptionsDialog::OptionsDialog(QWidget* parent, bool enableWallet)
: QDialog(parent, GUIUtil::dialog_flags),
ui(new Ui::OptionsDialog)
@@ -148,19 +204,7 @@ OptionsDialog::OptionsDialog(QWidget* parent, bool enableWallet)
ui->minimizeToTray->setEnabled(false);
}
- QFont embedded_font{GUIUtil::fixedPitchFont(true)};
- ui->embeddedFont_radioButton->setText(ui->embeddedFont_radioButton->text().arg(QFontInfo(embedded_font).family()));
- embedded_font.setWeight(QFont::Bold);
- ui->embeddedFont_label_1->setFont(embedded_font);
- ui->embeddedFont_label_9->setFont(embedded_font);
-
- QFont system_font{GUIUtil::fixedPitchFont(false)};
- ui->systemFont_radioButton->setText(ui->systemFont_radioButton->text().arg(QFontInfo(system_font).family()));
- system_font.setWeight(QFont::Bold);
- ui->systemFont_label_1->setFont(system_font);
- ui->systemFont_label_9->setFont(system_font);
- // Checking the embeddedFont_radioButton automatically unchecks the systemFont_radioButton.
- ui->systemFont_radioButton->setChecked(true);
+ setupFontOptions(ui->moneyFont, ui->moneyFont_preview);
GUIUtil::handleCloseWindowShortcut(this);
}
@@ -198,6 +242,9 @@ void OptionsDialog::setModel(OptionsModel *_model)
setMapper();
mapper->toFirst();
+ const auto& font_for_money = _model->data(_model->index(OptionsModel::FontForMoney, 0), Qt::EditRole).value<OptionsModel::FontChoice>();
+ setFontChoice(ui->moneyFont, font_for_money);
+
updateDefaultProxyNets();
}
@@ -275,7 +322,6 @@ void OptionsDialog::setMapper()
mapper->addMapping(ui->lang, OptionsModel::Language);
mapper->addMapping(ui->unit, OptionsModel::DisplayUnit);
mapper->addMapping(ui->thirdPartyTxUrls, OptionsModel::ThirdPartyTxUrls);
- mapper->addMapping(ui->embeddedFont_radioButton, OptionsModel::UseEmbeddedMonospacedFont);
}
void OptionsDialog::setOkButtonState(bool fState)
@@ -337,6 +383,8 @@ void OptionsDialog::on_openBitcoinConfButton_clicked()
void OptionsDialog::on_okButton_clicked()
{
+ model->setData(model->index(OptionsModel::FontForMoney, 0), ui->moneyFont->itemData(ui->moneyFont->currentIndex()));
+
mapper->submit();
accept();
updateDefaultProxyNets();
diff --git a/src/qt/optionsmodel.cpp b/src/qt/optionsmodel.cpp
index 43564dad16..d816a72ca3 100644
--- a/src/qt/optionsmodel.cpp
+++ b/src/qt/optionsmodel.cpp
@@ -119,6 +119,37 @@ struct ProxySetting {
static ProxySetting ParseProxyString(const std::string& proxy);
static std::string ProxyString(bool is_set, QString ip, QString port);
+static const QLatin1String fontchoice_str_embedded{"embedded"};
+static const QLatin1String fontchoice_str_best_system{"best_system"};
+static const QString fontchoice_str_custom_prefix{QStringLiteral("custom, ")};
+
+QString OptionsModel::FontChoiceToString(const OptionsModel::FontChoice& f)
+{
+ if (std::holds_alternative<FontChoiceAbstract>(f)) {
+ if (f == UseBestSystemFont) {
+ return fontchoice_str_best_system;
+ } else {
+ return fontchoice_str_embedded;
+ }
+ }
+ return fontchoice_str_custom_prefix + std::get<QFont>(f).toString();
+}
+
+OptionsModel::FontChoice OptionsModel::FontChoiceFromString(const QString& s)
+{
+ if (s == fontchoice_str_best_system) {
+ return FontChoiceAbstract::BestSystemFont;
+ } else if (s == fontchoice_str_embedded) {
+ return FontChoiceAbstract::EmbeddedFont;
+ } else if (s.startsWith(fontchoice_str_custom_prefix)) {
+ QFont f;
+ f.fromString(s.mid(fontchoice_str_custom_prefix.size()));
+ return f;
+ } else {
+ return FontChoiceAbstract::EmbeddedFont; // default
+ }
+}
+
OptionsModel::OptionsModel(interfaces::Node& node, QObject *parent) :
QAbstractListModel(parent), m_node{node}
{
@@ -216,11 +247,16 @@ bool OptionsModel::Init(bilingual_str& error)
#endif
// Display
- if (!settings.contains("UseEmbeddedMonospacedFont")) {
- settings.setValue("UseEmbeddedMonospacedFont", "true");
+ if (settings.contains("FontForMoney")) {
+ m_font_money = FontChoiceFromString(settings.value("FontForMoney").toString());
+ } else if (settings.contains("UseEmbeddedMonospacedFont")) {
+ if (settings.value("UseEmbeddedMonospacedFont").toBool()) {
+ m_font_money = FontChoiceAbstract::EmbeddedFont;
+ } else {
+ m_font_money = FontChoiceAbstract::BestSystemFont;
+ }
}
- m_use_embedded_monospaced_font = settings.value("UseEmbeddedMonospacedFont").toBool();
- Q_EMIT useEmbeddedMonospacedFontChanged(m_use_embedded_monospaced_font);
+ Q_EMIT fontForMoneyChanged(getFontForMoney());
m_mask_values = settings.value("mask_values", false).toBool();
@@ -428,8 +464,8 @@ QVariant OptionsModel::getOption(OptionID option, const std::string& suffix) con
return strThirdPartyTxUrls;
case Language:
return QString::fromStdString(SettingToString(setting(), ""));
- case UseEmbeddedMonospacedFont:
- return m_use_embedded_monospaced_font;
+ case FontForMoney:
+ return QVariant::fromValue(m_font_money);
case CoinControlFeatures:
return fCoinControlFeatures;
case EnablePSBTControls:
@@ -455,6 +491,23 @@ QVariant OptionsModel::getOption(OptionID option, const std::string& suffix) con
}
}
+QFont OptionsModel::getFontForChoice(const FontChoice& fc)
+{
+ QFont f;
+ if (std::holds_alternative<FontChoiceAbstract>(fc)) {
+ f = GUIUtil::fixedPitchFont(fc != UseBestSystemFont);
+ f.setWeight(QFont::Bold);
+ } else {
+ f = std::get<QFont>(fc);
+ }
+ return f;
+}
+
+QFont OptionsModel::getFontForMoney() const
+{
+ return getFontForChoice(m_font_money);
+}
+
bool OptionsModel::setOption(OptionID option, const QVariant& value, const std::string& suffix)
{
auto changed = [&] { return value.isValid() && value != getOption(option, suffix); };
@@ -587,11 +640,15 @@ bool OptionsModel::setOption(OptionID option, const QVariant& value, const std::
setRestartRequired(true);
}
break;
- case UseEmbeddedMonospacedFont:
- m_use_embedded_monospaced_font = value.toBool();
- settings.setValue("UseEmbeddedMonospacedFont", m_use_embedded_monospaced_font);
- Q_EMIT useEmbeddedMonospacedFontChanged(m_use_embedded_monospaced_font);
+ case FontForMoney:
+ {
+ const auto& new_font = value.value<FontChoice>();
+ if (m_font_money == new_font) break;
+ settings.setValue("FontForMoney", FontChoiceToString(new_font));
+ m_font_money = new_font;
+ Q_EMIT fontForMoneyChanged(getFontForMoney());
break;
+ }
case CoinControlFeatures:
fCoinControlFeatures = value.toBool();
settings.setValue("fCoinControlFeatures", fCoinControlFeatures);
diff --git a/src/qt/optionsmodel.h b/src/qt/optionsmodel.h
index f28a1087ba..b5ea6c783e 100644
--- a/src/qt/optionsmodel.h
+++ b/src/qt/optionsmodel.h
@@ -10,8 +10,10 @@
#include <qt/guiconstants.h>
#include <QAbstractListModel>
+#include <QFont>
#include <assert.h>
+#include <variant>
struct bilingual_str;
namespace interfaces {
@@ -60,7 +62,7 @@ public:
DisplayUnit, // BitcoinUnit
ThirdPartyTxUrls, // QString
Language, // QString
- UseEmbeddedMonospacedFont, // bool
+ FontForMoney, // FontChoice
CoinControlFeatures, // bool
SubFeeFromAmount, // bool
ThreadsScriptVerif, // int
@@ -76,6 +78,14 @@ public:
OptionIDRowCount,
};
+ enum class FontChoiceAbstract {
+ EmbeddedFont,
+ BestSystemFont,
+ };
+ typedef std::variant<FontChoiceAbstract, QFont> FontChoice;
+ static inline const FontChoice UseBestSystemFont{FontChoiceAbstract::BestSystemFont};
+ static QFont getFontForChoice(const FontChoice& fc);
+
bool Init(bilingual_str& error);
void Reset();
@@ -93,7 +103,7 @@ public:
bool getMinimizeOnClose() const { return fMinimizeOnClose; }
BitcoinUnit getDisplayUnit() const { return m_display_bitcoin_unit; }
QString getThirdPartyTxUrls() const { return strThirdPartyTxUrls; }
- bool getUseEmbeddedMonospacedFont() const { return m_use_embedded_monospaced_font; }
+ QFont getFontForMoney() const;
bool getCoinControlFeatures() const { return fCoinControlFeatures; }
bool getSubFeeFromAmount() const { return m_sub_fee_from_amount; }
bool getEnablePSBTControls() const { return m_enable_psbt_controls; }
@@ -120,7 +130,7 @@ private:
QString language;
BitcoinUnit m_display_bitcoin_unit;
QString strThirdPartyTxUrls;
- bool m_use_embedded_monospaced_font;
+ FontChoice m_font_money{FontChoiceAbstract::EmbeddedFont};
bool fCoinControlFeatures;
bool m_sub_fee_from_amount;
bool m_enable_psbt_controls;
@@ -129,6 +139,9 @@ private:
/* settings that were overridden by command-line */
QString strOverriddenByCommandLine;
+ static QString FontChoiceToString(const OptionsModel::FontChoice&);
+ static FontChoice FontChoiceFromString(const QString&);
+
// Add option to list of GUI options overridden through command line/config file
void addOverriddenOption(const std::string &option);
@@ -139,7 +152,9 @@ Q_SIGNALS:
void displayUnitChanged(BitcoinUnit unit);
void coinControlFeaturesChanged(bool);
void showTrayIconChanged(bool);
- void useEmbeddedMonospacedFontChanged(bool);
+ void fontForMoneyChanged(const QFont&);
};
+Q_DECLARE_METATYPE(OptionsModel::FontChoice)
+
#endif // BITCOIN_QT_OPTIONSMODEL_H
diff --git a/src/qt/overviewpage.cpp b/src/qt/overviewpage.cpp
index 0f00d167f7..7d58492082 100644
--- a/src/qt/overviewpage.cpp
+++ b/src/qt/overviewpage.cpp
@@ -250,8 +250,8 @@ void OverviewPage::setClientModel(ClientModel *model)
connect(model, &ClientModel::alertsChanged, this, &OverviewPage::updateAlerts);
updateAlerts(model->getStatusBarWarnings());
- connect(model->getOptionsModel(), &OptionsModel::useEmbeddedMonospacedFontChanged, this, &OverviewPage::setMonospacedFont);
- setMonospacedFont(model->getOptionsModel()->getUseEmbeddedMonospacedFont());
+ connect(model->getOptionsModel(), &OptionsModel::fontForMoneyChanged, this, &OverviewPage::setMonospacedFont);
+ setMonospacedFont(clientModel->getOptionsModel()->getFontForMoney());
}
}
@@ -340,10 +340,8 @@ void OverviewPage::showOutOfSyncWarning(bool fShow)
ui->labelTransactionsStatus->setVisible(fShow);
}
-void OverviewPage::setMonospacedFont(bool use_embedded_font)
+void OverviewPage::setMonospacedFont(const QFont& f)
{
- QFont f = GUIUtil::fixedPitchFont(use_embedded_font);
- f.setWeight(QFont::Bold);
ui->labelBalance->setFont(f);
ui->labelUnconfirmed->setFont(f);
ui->labelImmature->setFont(f);
diff --git a/src/qt/overviewpage.h b/src/qt/overviewpage.h
index 5c487ee116..fc7a99f319 100644
--- a/src/qt/overviewpage.h
+++ b/src/qt/overviewpage.h
@@ -65,7 +65,7 @@ private Q_SLOTS:
void handleTransactionClicked(const QModelIndex &index);
void updateAlerts(const QString &warnings);
void updateWatchOnlyLabels(bool showWatchOnly);
- void setMonospacedFont(bool use_embedded_font);
+ void setMonospacedFont(const QFont&);
};
#endif // BITCOIN_QT_OVERVIEWPAGE_H
diff --git a/src/qt/rpcconsole.cpp b/src/qt/rpcconsole.cpp
index ceaa3ac46b..4ef45490d9 100644
--- a/src/qt/rpcconsole.cpp
+++ b/src/qt/rpcconsole.cpp
@@ -581,6 +581,8 @@ RPCConsole::RPCConsole(interfaces::Node& node, const PlatformStyle *_platformSty
clear();
GUIUtil::handleCloseWindowShortcut(this);
+
+ updateWindowTitle();
}
RPCConsole::~RPCConsole()
@@ -1387,3 +1389,13 @@ void RPCConsole::updateAlerts(const QString& warnings)
this->ui->label_alerts->setVisible(!warnings.isEmpty());
this->ui->label_alerts->setText(warnings);
}
+
+void RPCConsole::updateWindowTitle()
+{
+ const ChainType chain = Params().GetChainType();
+ if (chain == ChainType::MAIN) return;
+
+ const QString chainType = QString::fromStdString(Params().GetChainTypeString());
+ const QString title = tr("Node window - [%1]").arg(chainType);
+ this->setWindowTitle(title);
+} \ No newline at end of file
diff --git a/src/qt/rpcconsole.h b/src/qt/rpcconsole.h
index 65eef7fbba..358f68c3c8 100644
--- a/src/qt/rpcconsole.h
+++ b/src/qt/rpcconsole.h
@@ -189,6 +189,8 @@ private:
return time_at_event.count() ? GUIUtil::formatDurationStr(time_now - time_at_event) : tr("Never");
}
+ void updateWindowTitle();
+
private Q_SLOTS:
void updateAlerts(const QString& warnings);
};
diff --git a/src/qt/test/optiontests.cpp b/src/qt/test/optiontests.cpp
index e5a5179d87..7100603616 100644
--- a/src/qt/test/optiontests.cpp
+++ b/src/qt/test/optiontests.cpp
@@ -61,7 +61,11 @@ void OptionTests::migrateSettings()
QVERIFY(!settings.contains("addrSeparateProxyTor"));
std::ifstream file(gArgs.GetDataDirNet() / "settings.json");
+ std::string default_warning = strprintf("This file is automatically generated and updated by %s. Please do not edit this file while the node "
+ "is running, as any changes might be ignored or overwritten.",
+ PACKAGE_NAME);
QCOMPARE(std::string(std::istreambuf_iterator<char>(file), std::istreambuf_iterator<char>()).c_str(), "{\n"
+ " \"_warning_\": \""+ default_warning+"\",\n"
" \"dbcache\": \"600\",\n"
" \"listen\": false,\n"
" \"onion\": \"onion:234\",\n"
diff --git a/src/qt/utilitydialog.cpp b/src/qt/utilitydialog.cpp
index f43b993628..22fe219def 100644
--- a/src/qt/utilitydialog.cpp
+++ b/src/qt/utilitydialog.cpp
@@ -58,7 +58,8 @@ HelpMessageDialog::HelpMessageDialog(QWidget *parent, bool about) :
ui->helpMessage->setVisible(false);
} else {
setWindowTitle(tr("Command-line options"));
- QString header = "Usage: bitcoin-qt [command-line options] \n";
+ QString header = "Usage: bitcoin-qt [command-line options] [URI]\n\n"
+ "Optional URI is a Bitcoin address in BIP21 URI format.\n";
QTextCursor cursor(ui->helpMessage->document());
cursor.insertText(version);
cursor.insertBlock();
diff --git a/src/qt/walletmodel.cpp b/src/qt/walletmodel.cpp
index 9821f8504a..c2da76fc15 100644
--- a/src/qt/walletmodel.cpp
+++ b/src/qt/walletmodel.cpp
@@ -448,6 +448,13 @@ void WalletModel::unsubscribeFromCoreSignals()
// WalletModel::UnlockContext implementation
WalletModel::UnlockContext WalletModel::requestUnlock()
{
+ // Bugs in earlier versions may have resulted in wallets with private keys disabled to become "encrypted"
+ // (encryption keys are present, but not actually doing anything).
+ // To avoid issues with such wallets, check if the wallet has private keys disabled, and if so, return a context
+ // that indicates the wallet is not encrypted.
+ if (m_wallet->privateKeysDisabled()) {
+ return UnlockContext(this, /*valid=*/true, /*relock=*/false);
+ }
bool was_locked = getEncryptionStatus() == Locked;
if(was_locked)
{
diff --git a/src/qt/winshutdownmonitor.h b/src/qt/winshutdownmonitor.h
index 78f287637f..060d8546e3 100644
--- a/src/qt/winshutdownmonitor.h
+++ b/src/qt/winshutdownmonitor.h
@@ -10,7 +10,7 @@
#include <QString>
#include <functional>
-#include <windef.h> // for HWND
+#include <windows.h>
#include <QAbstractNativeEventFilter>
diff --git a/src/rpc/blockchain.cpp b/src/rpc/blockchain.cpp
index 7d04fb06d5..34d308211b 100644
--- a/src/rpc/blockchain.cpp
+++ b/src/rpc/blockchain.cpp
@@ -2785,12 +2785,11 @@ static RPCHelpMan loadtxoutset()
if (!chainman.ActivateSnapshot(afile, metadata, false)) {
throw JSONRPCError(RPC_INTERNAL_ERROR, "Unable to load UTXO snapshot " + fs::PathToString(path));
}
- CBlockIndex* new_tip{WITH_LOCK(::cs_main, return chainman.ActiveTip())};
UniValue result(UniValue::VOBJ);
result.pushKV("coins_loaded", metadata.m_coins_count);
- result.pushKV("tip_hash", new_tip->GetBlockHash().ToString());
- result.pushKV("base_height", new_tip->nHeight);
+ result.pushKV("tip_hash", snapshot_start_block->GetBlockHash().ToString());
+ result.pushKV("base_height", snapshot_start_block->nHeight);
result.pushKV("path", fs::PathToString(path));
return result;
},
diff --git a/src/rpc/client.cpp b/src/rpc/client.cpp
index b0771a75fc..5825efdf82 100644
--- a/src/rpc/client.cpp
+++ b/src/rpc/client.cpp
@@ -303,6 +303,7 @@ static const CRPCConvertParam vRPCConvertParams[] =
{ "sendmsgtopeer", 0, "peer_id" },
{ "stop", 0, "wait" },
{ "addnode", 2, "v2transport" },
+ { "addconnection", 2, "v2transport" },
};
// clang-format on
diff --git a/src/rpc/mempool.cpp b/src/rpc/mempool.cpp
index f6d9d42f0f..25bfec2d45 100644
--- a/src/rpc/mempool.cpp
+++ b/src/rpc/mempool.cpp
@@ -45,7 +45,7 @@ static RPCHelpMan sendrawtransaction()
{"hexstring", RPCArg::Type::STR_HEX, RPCArg::Optional::NO, "The hex string of the raw transaction"},
{"maxfeerate", RPCArg::Type::AMOUNT, RPCArg::Default{FormatMoney(DEFAULT_MAX_RAW_TX_FEE_RATE.GetFeePerK())},
"Reject transactions whose fee rate is higher than the specified value, expressed in " + CURRENCY_UNIT +
- "/kvB.\nSet to 0 to accept any fee rate."},
+ "/kvB.\nFee rates larger than 1BTC/kvB are rejected.\nSet to 0 to accept any fee rate."},
{"maxburnamount", RPCArg::Type::AMOUNT, RPCArg::Default{FormatMoney(0)},
"Reject transactions with provably unspendable outputs (e.g. 'datacarrier' outputs that use the OP_RETURN opcode) greater than the specified value, expressed in " + CURRENCY_UNIT + ".\n"
"If burning funds through unspendable outputs is desired, increase this value.\n"
@@ -81,9 +81,7 @@ static RPCHelpMan sendrawtransaction()
CTransactionRef tx(MakeTransactionRef(std::move(mtx)));
- const CFeeRate max_raw_tx_fee_rate = request.params[1].isNull() ?
- DEFAULT_MAX_RAW_TX_FEE_RATE :
- CFeeRate(AmountFromValue(request.params[1]));
+ const CFeeRate max_raw_tx_fee_rate{ParseFeeRate(self.Arg<UniValue>(1))};
int64_t virtual_size = GetVirtualTransactionSize(*tx);
CAmount max_raw_tx_fee = max_raw_tx_fee_rate.GetFee(virtual_size);
@@ -117,7 +115,8 @@ static RPCHelpMan testmempoolaccept()
},
},
{"maxfeerate", RPCArg::Type::AMOUNT, RPCArg::Default{FormatMoney(DEFAULT_MAX_RAW_TX_FEE_RATE.GetFeePerK())},
- "Reject transactions whose fee rate is higher than the specified value, expressed in " + CURRENCY_UNIT + "/kvB\n"},
+ "Reject transactions whose fee rate is higher than the specified value, expressed in " + CURRENCY_UNIT +
+ "/kvB.\nFee rates larger than 1BTC/kvB are rejected.\nSet to 0 to accept any fee rate."},
},
RPCResult{
RPCResult::Type::ARR, "", "The result of the mempool acceptance test for each raw transaction in the input array.\n"
@@ -162,9 +161,7 @@ static RPCHelpMan testmempoolaccept()
"Array must contain between 1 and " + ToString(MAX_PACKAGE_COUNT) + " transactions.");
}
- const CFeeRate max_raw_tx_fee_rate = request.params[1].isNull() ?
- DEFAULT_MAX_RAW_TX_FEE_RATE :
- CFeeRate(AmountFromValue(request.params[1]));
+ const CFeeRate max_raw_tx_fee_rate{ParseFeeRate(self.Arg<UniValue>(1))};
std::vector<CTransactionRef> txns;
txns.reserve(raw_transactions.size());
@@ -199,7 +196,7 @@ static RPCHelpMan testmempoolaccept()
result_inner.pushKV("txid", tx->GetHash().GetHex());
result_inner.pushKV("wtxid", tx->GetWitnessHash().GetHex());
if (package_result.m_state.GetResult() == PackageValidationResult::PCKG_POLICY) {
- result_inner.pushKV("package-error", package_result.m_state.GetRejectReason());
+ result_inner.pushKV("package-error", package_result.m_state.ToString());
}
auto it = package_result.m_tx_results.find(tx->GetWitnessHash());
if (exit_early || it == package_result.m_tx_results.end()) {
@@ -353,17 +350,15 @@ UniValue MempoolToJSON(const CTxMemPool& pool, bool verbose, bool include_mempoo
}
return o;
} else {
+ UniValue a(UniValue::VARR);
uint64_t mempool_sequence;
- std::vector<uint256> vtxid;
{
LOCK(pool.cs);
- pool.queryHashes(vtxid);
+ for (const CTxMemPoolEntry& e : pool.entryAll()) {
+ a.push_back(e.GetTx().GetHash().ToString());
+ }
mempool_sequence = pool.GetSequence();
}
- UniValue a(UniValue::VARR);
- for (const uint256& hash : vtxid)
- a.push_back(hash.ToString());
-
if (!include_mempool_sequence) {
return a;
} else {
@@ -909,7 +904,7 @@ static RPCHelpMan submitpackage()
case PackageValidationResult::PCKG_TX:
{
// Package-wide error we want to return, but we also want to return individual responses
- package_msg = package_result.m_state.GetRejectReason();
+ package_msg = package_result.m_state.ToString();
CHECK_NONFATAL(package_result.m_tx_results.size() == txns.size() ||
package_result.m_tx_results.empty());
break;
diff --git a/src/rpc/mining.cpp b/src/rpc/mining.cpp
index 49b51b83ae..f1abfb6396 100644
--- a/src/rpc/mining.cpp
+++ b/src/rpc/mining.cpp
@@ -27,11 +27,11 @@
#include <script/descriptor.h>
#include <script/script.h>
#include <script/signingprovider.h>
-#include <timedata.h>
#include <txmempool.h>
#include <univalue.h>
#include <util/strencodings.h>
#include <util/string.h>
+#include <util/time.h>
#include <util/translation.h>
#include <validation.h>
#include <validationinterface.h>
@@ -383,7 +383,7 @@ static RPCHelpMan generateblock()
LOCK(cs_main);
BlockValidationState state;
- if (!TestBlockValidity(state, chainman.GetParams(), chainman.ActiveChainstate(), block, chainman.m_blockman.LookupBlockIndex(block.hashPrevBlock), GetAdjustedTime, false, false)) {
+ if (!TestBlockValidity(state, chainman.GetParams(), chainman.ActiveChainstate(), block, chainman.m_blockman.LookupBlockIndex(block.hashPrevBlock), false, false)) {
throw JSONRPCError(RPC_VERIFY_ERROR, strprintf("TestBlockValidity failed: %s", state.ToString()));
}
}
@@ -697,7 +697,7 @@ static RPCHelpMan getblocktemplate()
if (block.hashPrevBlock != pindexPrev->GetBlockHash())
return "inconclusive-not-best-prevblk";
BlockValidationState state;
- TestBlockValidity(state, chainman.GetParams(), active_chainstate, block, pindexPrev, GetAdjustedTime, false, true);
+ TestBlockValidity(state, chainman.GetParams(), active_chainstate, block, pindexPrev, false, true);
return BIP22ValidationResult(state);
}
diff --git a/src/rpc/net.cpp b/src/rpc/net.cpp
index e53f889897..5e6f42b596 100644
--- a/src/rpc/net.cpp
+++ b/src/rpc/net.cpp
@@ -371,6 +371,7 @@ static RPCHelpMan addconnection()
{
{"address", RPCArg::Type::STR, RPCArg::Optional::NO, "The IP address and port to attempt connecting to."},
{"connection_type", RPCArg::Type::STR, RPCArg::Optional::NO, "Type of connection to open (\"outbound-full-relay\", \"block-relay-only\", \"addr-fetch\" or \"feeler\")."},
+ {"v2transport", RPCArg::Type::BOOL, RPCArg::Optional::NO, "Attempt to connect using BIP324 v2 transport protocol"},
},
RPCResult{
RPCResult::Type::OBJ, "", "",
@@ -379,8 +380,8 @@ static RPCHelpMan addconnection()
{ RPCResult::Type::STR, "connection_type", "Type of connection opened." },
}},
RPCExamples{
- HelpExampleCli("addconnection", "\"192.168.0.6:8333\" \"outbound-full-relay\"")
- + HelpExampleRpc("addconnection", "\"192.168.0.6:8333\" \"outbound-full-relay\"")
+ HelpExampleCli("addconnection", "\"192.168.0.6:8333\" \"outbound-full-relay\" true")
+ + HelpExampleRpc("addconnection", "\"192.168.0.6:8333\" \"outbound-full-relay\" true")
},
[&](const RPCHelpMan& self, const JSONRPCRequest& request) -> UniValue
{
@@ -402,11 +403,16 @@ static RPCHelpMan addconnection()
} else {
throw JSONRPCError(RPC_INVALID_PARAMETER, self.ToString());
}
+ bool use_v2transport = self.Arg<bool>(2);
NodeContext& node = EnsureAnyNodeContext(request.context);
CConnman& connman = EnsureConnman(node);
- const bool success = connman.AddConnection(address, conn_type);
+ if (use_v2transport && !(connman.GetLocalServices() & NODE_P2P_V2)) {
+ throw JSONRPCError(RPC_INVALID_PARAMETER, "Error: Adding v2transport connections requires -v2transport init flag to be set.");
+ }
+
+ const bool success = connman.AddConnection(address, conn_type, use_v2transport);
if (!success) {
throw JSONRPCError(RPC_CLIENT_NODE_CAPACITY_REACHED, "Error: Already at capacity for specified connection type.");
}
diff --git a/src/rpc/rawtransaction_util.cpp b/src/rpc/rawtransaction_util.cpp
index c471986a44..a9e11622a7 100644
--- a/src/rpc/rawtransaction_util.cpp
+++ b/src/rpc/rawtransaction_util.cpp
@@ -70,7 +70,7 @@ void AddInputs(CMutableTransaction& rawTx, const UniValue& inputs_in, std::optio
}
}
-void AddOutputs(CMutableTransaction& rawTx, const UniValue& outputs_in)
+UniValue NormalizeOutputs(const UniValue& outputs_in)
{
if (outputs_in.isNull()) {
throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, output argument must be non-null");
@@ -94,11 +94,15 @@ void AddOutputs(CMutableTransaction& rawTx, const UniValue& outputs_in)
}
outputs = std::move(outputs_dict);
}
+ return outputs;
+}
+std::vector<std::pair<CTxDestination, CAmount>> ParseOutputs(const UniValue& outputs)
+{
// Duplicate checking
std::set<CTxDestination> destinations;
+ std::vector<std::pair<CTxDestination, CAmount>> parsed_outputs;
bool has_data{false};
-
for (const std::string& name_ : outputs.getKeys()) {
if (name_ == "data") {
if (has_data) {
@@ -106,11 +110,12 @@ void AddOutputs(CMutableTransaction& rawTx, const UniValue& outputs_in)
}
has_data = true;
std::vector<unsigned char> data = ParseHexV(outputs[name_].getValStr(), "Data");
-
- CTxOut out(0, CScript() << OP_RETURN << data);
- rawTx.vout.push_back(out);
+ CTxDestination destination{CNoDestination{CScript() << OP_RETURN << data}};
+ CAmount amount{0};
+ parsed_outputs.emplace_back(destination, amount);
} else {
- CTxDestination destination = DecodeDestination(name_);
+ CTxDestination destination{DecodeDestination(name_)};
+ CAmount amount{AmountFromValue(outputs[name_])};
if (!IsValidDestination(destination)) {
throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, std::string("Invalid Bitcoin address: ") + name_);
}
@@ -118,13 +123,23 @@ void AddOutputs(CMutableTransaction& rawTx, const UniValue& outputs_in)
if (!destinations.insert(destination).second) {
throw JSONRPCError(RPC_INVALID_PARAMETER, std::string("Invalid parameter, duplicated address: ") + name_);
}
+ parsed_outputs.emplace_back(destination, amount);
+ }
+ }
+ return parsed_outputs;
+}
+
+void AddOutputs(CMutableTransaction& rawTx, const UniValue& outputs_in)
+{
+ UniValue outputs(UniValue::VOBJ);
+ outputs = NormalizeOutputs(outputs_in);
- CScript scriptPubKey = GetScriptForDestination(destination);
- CAmount nAmount = AmountFromValue(outputs[name_]);
+ std::vector<std::pair<CTxDestination, CAmount>> parsed_outputs = ParseOutputs(outputs);
+ for (const auto& [destination, nAmount] : parsed_outputs) {
+ CScript scriptPubKey = GetScriptForDestination(destination);
- CTxOut out(nAmount, scriptPubKey);
- rawTx.vout.push_back(out);
- }
+ CTxOut out(nAmount, scriptPubKey);
+ rawTx.vout.push_back(out);
}
}
diff --git a/src/rpc/rawtransaction_util.h b/src/rpc/rawtransaction_util.h
index a863432b7a..964d0b095b 100644
--- a/src/rpc/rawtransaction_util.h
+++ b/src/rpc/rawtransaction_util.h
@@ -5,6 +5,8 @@
#ifndef BITCOIN_RPC_RAWTRANSACTION_UTIL_H
#define BITCOIN_RPC_RAWTRANSACTION_UTIL_H
+#include <addresstype.h>
+#include <consensus/amount.h>
#include <map>
#include <string>
#include <optional>
@@ -38,11 +40,16 @@ void SignTransactionResultToJSON(CMutableTransaction& mtx, bool complete, const
*/
void ParsePrevouts(const UniValue& prevTxsUnival, FillableSigningProvider* keystore, std::map<COutPoint, Coin>& coins);
-
/** Normalize univalue-represented inputs and add them to the transaction */
void AddInputs(CMutableTransaction& rawTx, const UniValue& inputs_in, bool rbf);
-/** Normalize univalue-represented outputs and add them to the transaction */
+/** Normalize univalue-represented outputs */
+UniValue NormalizeOutputs(const UniValue& outputs_in);
+
+/** Parse normalized outputs into destination, amount tuples */
+std::vector<std::pair<CTxDestination, CAmount>> ParseOutputs(const UniValue& outputs);
+
+/** Normalize, parse, and add outputs to the transaction */
void AddOutputs(CMutableTransaction& rawTx, const UniValue& outputs_in);
/** Create a transaction from univalue parameters */
diff --git a/src/rpc/util.cpp b/src/rpc/util.cpp
index cf48ee11e7..a64ec133cf 100644
--- a/src/rpc/util.cpp
+++ b/src/rpc/util.cpp
@@ -75,6 +75,13 @@ CAmount AmountFromValue(const UniValue& value, int decimals)
return amount;
}
+CFeeRate ParseFeeRate(const UniValue& json)
+{
+ CAmount val{AmountFromValue(json)};
+ if (val >= COIN) throw JSONRPCError(RPC_INVALID_PARAMETER, "Fee rates larger than or equal to 1BTC/kvB are not accepted");
+ return CFeeRate{val};
+}
+
uint256 ParseHashV(const UniValue& v, std::string_view name)
{
const std::string& strHex(v.get_str());
@@ -678,11 +685,13 @@ static void CheckRequiredOrDefault(const RPCArg& param)
void force_semicolon(ret_type)
// Optional arg (without default). Can also be called on required args, if needed.
+TMPL_INST(nullptr, const UniValue*, maybe_arg;);
TMPL_INST(nullptr, std::optional<double>, maybe_arg ? std::optional{maybe_arg->get_real()} : std::nullopt;);
TMPL_INST(nullptr, std::optional<bool>, maybe_arg ? std::optional{maybe_arg->get_bool()} : std::nullopt;);
TMPL_INST(nullptr, const std::string*, maybe_arg ? &maybe_arg->get_str() : nullptr;);
// Required arg or optional arg with default value.
+TMPL_INST(CheckRequiredOrDefault, const UniValue&, *CHECK_NONFATAL(maybe_arg););
TMPL_INST(CheckRequiredOrDefault, bool, CHECK_NONFATAL(maybe_arg)->get_bool(););
TMPL_INST(CheckRequiredOrDefault, int, CHECK_NONFATAL(maybe_arg)->getInt<int>(););
TMPL_INST(CheckRequiredOrDefault, uint64_t, CHECK_NONFATAL(maybe_arg)->getInt<uint64_t>(););
diff --git a/src/rpc/util.h b/src/rpc/util.h
index e2d5ed333c..ad3ed97b2e 100644
--- a/src/rpc/util.h
+++ b/src/rpc/util.h
@@ -103,6 +103,11 @@ std::vector<unsigned char> ParseHexO(const UniValue& o, std::string_view strKey)
* @returns a CAmount if the various checks pass.
*/
CAmount AmountFromValue(const UniValue& value, int decimals = 8);
+/**
+ * Parse a json number or string, denoting BTC/kvB, into a CFeeRate (sat/kvB).
+ * Reject negative values or rates larger than 1BTC/kvB.
+ */
+CFeeRate ParseFeeRate(const UniValue& json);
using RPCArgList = std::vector<std::pair<std::string, UniValue>>;
std::string HelpExampleCli(const std::string& methodname, const std::string& args);
diff --git a/src/serialize.h b/src/serialize.h
index 19585c630a..a0b012b25c 100644
--- a/src/serialize.h
+++ b/src/serialize.h
@@ -710,14 +710,12 @@ template<typename Stream, typename C> void Unserialize(Stream& is, std::basic_st
/**
* prevector
- * prevectors of unsigned char are a special case and are intended to be serialized as a single opaque blob.
*/
template<typename Stream, unsigned int N, typename T> inline void Serialize(Stream& os, const prevector<N, T>& v);
template<typename Stream, unsigned int N, typename T> inline void Unserialize(Stream& is, prevector<N, T>& v);
/**
* vector
- * vectors of unsigned char are a special case and are intended to be serialized as a single opaque blob.
*/
template<typename Stream, typename T, typename A> inline void Serialize(Stream& os, const std::vector<T, A>& v);
template<typename Stream, typename T, typename A> inline void Unserialize(Stream& is, std::vector<T, A>& v);
@@ -820,10 +818,9 @@ void Unserialize(Stream& is, std::basic_string<C>& str)
template <typename Stream, unsigned int N, typename T>
void Serialize(Stream& os, const prevector<N, T>& v)
{
- if constexpr (std::is_same_v<T, unsigned char>) {
+ if constexpr (BasicByte<T>) { // Use optimized version for unformatted basic bytes
WriteCompactSize(os, v.size());
- if (!v.empty())
- os.write(MakeByteSpan(v));
+ if (!v.empty()) os.write(MakeByteSpan(v));
} else {
Serialize(os, Using<VectorFormatter<DefaultFormatter>>(v));
}
@@ -833,7 +830,7 @@ void Serialize(Stream& os, const prevector<N, T>& v)
template <typename Stream, unsigned int N, typename T>
void Unserialize(Stream& is, prevector<N, T>& v)
{
- if constexpr (std::is_same_v<T, unsigned char>) {
+ if constexpr (BasicByte<T>) { // Use optimized version for unformatted basic bytes
// Limit size per read so bogus size value won't cause out of memory
v.clear();
unsigned int nSize = ReadCompactSize(is);
@@ -856,10 +853,9 @@ void Unserialize(Stream& is, prevector<N, T>& v)
template <typename Stream, typename T, typename A>
void Serialize(Stream& os, const std::vector<T, A>& v)
{
- if constexpr (std::is_same_v<T, unsigned char>) {
+ if constexpr (BasicByte<T>) { // Use optimized version for unformatted basic bytes
WriteCompactSize(os, v.size());
- if (!v.empty())
- os.write(MakeByteSpan(v));
+ if (!v.empty()) os.write(MakeByteSpan(v));
} else if constexpr (std::is_same_v<T, bool>) {
// A special case for std::vector<bool>, as dereferencing
// std::vector<bool>::const_iterator does not result in a const bool&
@@ -877,7 +873,7 @@ void Serialize(Stream& os, const std::vector<T, A>& v)
template <typename Stream, typename T, typename A>
void Unserialize(Stream& is, std::vector<T, A>& v)
{
- if constexpr (std::is_same_v<T, unsigned char>) {
+ if constexpr (BasicByte<T>) { // Use optimized version for unformatted basic bytes
// Limit size per read so bogus size value won't cause out of memory
v.clear();
unsigned int nSize = ReadCompactSize(is);
diff --git a/src/span.h b/src/span.h
index 2c27a54fc7..c974c265ce 100644
--- a/src/span.h
+++ b/src/span.h
@@ -287,9 +287,11 @@ Span<std::byte> MakeWritableByteSpan(V&& v) noexcept
// Helper functions to safely cast basic byte pointers to unsigned char pointers.
inline unsigned char* UCharCast(char* c) { return reinterpret_cast<unsigned char*>(c); }
inline unsigned char* UCharCast(unsigned char* c) { return c; }
+inline unsigned char* UCharCast(signed char* c) { return reinterpret_cast<unsigned char*>(c); }
inline unsigned char* UCharCast(std::byte* c) { return reinterpret_cast<unsigned char*>(c); }
inline const unsigned char* UCharCast(const char* c) { return reinterpret_cast<const unsigned char*>(c); }
inline const unsigned char* UCharCast(const unsigned char* c) { return c; }
+inline const unsigned char* UCharCast(const signed char* c) { return reinterpret_cast<const unsigned char*>(c); }
inline const unsigned char* UCharCast(const std::byte* c) { return reinterpret_cast<const unsigned char*>(c); }
// Helper concept for the basic byte types.
template <typename B>
diff --git a/src/test/.gitignore b/src/test/.gitignore
new file mode 100644
index 0000000000..036df1430c
--- /dev/null
+++ b/src/test/.gitignore
@@ -0,0 +1,2 @@
+# capnp generated files
+*.capnp.*
diff --git a/src/test/README.md b/src/test/README.md
index 90d0e7102d..0876db7a72 100644
--- a/src/test/README.md
+++ b/src/test/README.md
@@ -15,7 +15,8 @@ that runs all of the unit tests. The main source file for the test library is fo
Unit tests will be automatically compiled if dependencies were met in `./configure`
and tests weren't explicitly disabled.
-After configuring, they can be run with `make check`.
+After configuring, they can be run with `make check`, which includes unit tests from
+subtrees, or `make && make -C src check-unit` for just the unit tests.
To run the unit tests manually, launch `src/test/test_bitcoin`. To recompile
after a test file was modified, run `make` and then run the test again. If you
diff --git a/src/test/data/tx_valid.json b/src/test/data/tx_valid.json
index b874f6f26c..70df0d0f69 100644
--- a/src/test/data/tx_valid.json
+++ b/src/test/data/tx_valid.json
@@ -319,6 +319,10 @@
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "HASH160 0x14 0x7c17aff532f22beb54069942f9bf567a66133eaf EQUAL"]],
"0200000001000100000000000000000000000000000000000000000000000000000000000000000000030251b2010000000100000000000000000000000000", "NONE"],
+["Valid CHECKSEQUENCEVERIFY even with negative tx version number"],
+[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "HASH160 0x14 0x7c17aff532f22beb54069942f9bf567a66133eaf EQUAL"]],
+"ffffffff01000100000000000000000000000000000000000000000000000000000000000000000000030251b2010000000100000000000000000000000000", "NONE"],
+
["Valid P2WPKH (Private key of segwit tests is L5AQtV2HDm4xGsseLokK2VAT2EtYKcTm3c7HwqnJBFt9LdaQULsM)"],
[[["0000000000000000000000000000000000000000000000000000000000000100", 0, "0x00 0x14 0x4c9c3dfac4207d5d8cb89df5722cb3d712385e3f", 1000]],
"0100000000010100010000000000000000000000000000000000000000000000000000000000000000000000ffffffff01e8030000000000001976a9144c9c3dfac4207d5d8cb89df5722cb3d712385e3f88ac02483045022100cfb07164b36ba64c1b1e8c7720a56ad64d96f6ef332d3d37f9cb3c96477dc44502200a464cd7a9cf94cd70f66ce4f4f0625ef650052c7afcfe29d7d7e01830ff91ed012103596d3451025c19dbbdeb932d6bf8bfb4ad499b95b6f88db8899efac102e5fc7100000000", "NONE"],
diff --git a/src/test/fuzz/addrman.cpp b/src/test/fuzz/addrman.cpp
index ece396aadf..8a54cc656d 100644
--- a/src/test/fuzz/addrman.cpp
+++ b/src/test/fuzz/addrman.cpp
@@ -64,26 +64,13 @@ FUZZ_TARGET(data_stream_addr_man, .init = initialize_addrman)
CNetAddr RandAddr(FuzzedDataProvider& fuzzed_data_provider, FastRandomContext& fast_random_context)
{
CNetAddr addr;
- if (fuzzed_data_provider.remaining_bytes() > 1 && fuzzed_data_provider.ConsumeBool()) {
- addr = ConsumeNetAddr(fuzzed_data_provider);
- } else {
- // The networks [1..6] correspond to CNetAddr::BIP155Network (private).
- static const std::map<uint8_t, uint8_t> net_len_map = {{1, ADDR_IPV4_SIZE},
- {2, ADDR_IPV6_SIZE},
- {4, ADDR_TORV3_SIZE},
- {5, ADDR_I2P_SIZE},
- {6, ADDR_CJDNS_SIZE}};
- uint8_t net = fast_random_context.randrange(5) + 1; // [1..5]
- if (net == 3) {
- net = 6;
+ assert(!addr.IsValid());
+ for (size_t i = 0; i < 8 && !addr.IsValid(); ++i) {
+ if (fuzzed_data_provider.remaining_bytes() > 1 && fuzzed_data_provider.ConsumeBool()) {
+ addr = ConsumeNetAddr(fuzzed_data_provider);
+ } else {
+ addr = ConsumeNetAddr(fuzzed_data_provider, &fast_random_context);
}
-
- DataStream s{};
-
- s << net;
- s << fast_random_context.randbytes(net_len_map.at(net));
-
- s >> CAddress::V2_NETWORK(addr);
}
// Return a dummy IPv4 5.5.5.5 if we generated an invalid address.
diff --git a/src/test/fuzz/banman.cpp b/src/test/fuzz/banman.cpp
index 4a040c56de..b26151f63c 100644
--- a/src/test/fuzz/banman.cpp
+++ b/src/test/fuzz/banman.cpp
@@ -70,11 +70,13 @@ FUZZ_TARGET(banman, .init = initialize_banman)
fuzzed_data_provider,
[&] {
CNetAddr net_addr{ConsumeNetAddr(fuzzed_data_provider)};
- const std::optional<CNetAddr>& addr{LookupHost(net_addr.ToStringAddr(), /*fAllowLookup=*/false)};
- if (addr.has_value() && addr->IsValid()) {
- net_addr = *addr;
- } else {
- contains_invalid = true;
+ if (!net_addr.IsCJDNS() || !net_addr.IsValid()) {
+ const std::optional<CNetAddr>& addr{LookupHost(net_addr.ToStringAddr(), /*fAllowLookup=*/false)};
+ if (addr.has_value() && addr->IsValid()) {
+ net_addr = *addr;
+ } else {
+ contains_invalid = true;
+ }
}
ban_man.Ban(net_addr, ConsumeBanTimeOffset(fuzzed_data_provider), fuzzed_data_provider.ConsumeBool());
},
diff --git a/src/test/fuzz/integer.cpp b/src/test/fuzz/integer.cpp
index 9b97958a5d..2577f9e97a 100644
--- a/src/test/fuzz/integer.cpp
+++ b/src/test/fuzz/integer.cpp
@@ -213,7 +213,6 @@ FUZZ_TARGET(integer, .init = initialize_integer)
{
const ServiceFlags service_flags = (ServiceFlags)u64;
- (void)HasAllDesirableServiceFlags(service_flags);
(void)MayHaveUsefulAddressDB(service_flags);
}
diff --git a/src/test/fuzz/net_permissions.cpp b/src/test/fuzz/net_permissions.cpp
index ae343602e9..6ea2139c46 100644
--- a/src/test/fuzz/net_permissions.cpp
+++ b/src/test/fuzz/net_permissions.cpp
@@ -17,7 +17,7 @@
FUZZ_TARGET(net_permissions)
{
FuzzedDataProvider fuzzed_data_provider(buffer.data(), buffer.size());
- const std::string s = fuzzed_data_provider.ConsumeRandomLengthString(32);
+ const std::string s = fuzzed_data_provider.ConsumeRandomLengthString(1000);
const NetPermissionFlags net_permission_flags = ConsumeWeakEnum(fuzzed_data_provider, ALL_NET_PERMISSION_FLAGS);
NetWhitebindPermissions net_whitebind_permissions;
diff --git a/src/test/fuzz/netaddress.cpp b/src/test/fuzz/netaddress.cpp
index 5141d3362d..4803cdccad 100644
--- a/src/test/fuzz/netaddress.cpp
+++ b/src/test/fuzz/netaddress.cpp
@@ -26,6 +26,12 @@ FUZZ_TARGET(netaddress)
if (net_addr.GetNetwork() == Network::NET_ONION) {
assert(net_addr.IsTor());
}
+ if (net_addr.GetNetwork() == Network::NET_I2P) {
+ assert(net_addr.IsI2P());
+ }
+ if (net_addr.GetNetwork() == Network::NET_CJDNS) {
+ assert(net_addr.IsCJDNS());
+ }
if (net_addr.GetNetwork() == Network::NET_INTERNAL) {
assert(net_addr.IsInternal());
}
@@ -69,6 +75,12 @@ FUZZ_TARGET(netaddress)
if (net_addr.IsTor()) {
assert(net_addr.GetNetwork() == Network::NET_ONION);
}
+ if (net_addr.IsI2P()) {
+ assert(net_addr.GetNetwork() == Network::NET_I2P);
+ }
+ if (net_addr.IsCJDNS()) {
+ assert(net_addr.GetNetwork() == Network::NET_CJDNS);
+ }
(void)net_addr.IsValid();
(void)net_addr.ToStringAddr();
diff --git a/src/test/fuzz/package_eval.cpp b/src/test/fuzz/package_eval.cpp
index 5a08d0ff44..9e658e0ced 100644
--- a/src/test/fuzz/package_eval.cpp
+++ b/src/test/fuzz/package_eval.cpp
@@ -6,6 +6,7 @@
#include <node/context.h>
#include <node/mempool_args.h>
#include <node/miner.h>
+#include <policy/v3_policy.h>
#include <test/fuzz/FuzzedDataProvider.h>
#include <test/fuzz/fuzz.h>
#include <test/fuzz/util.h>
@@ -119,7 +120,8 @@ CTxMemPool MakeMempool(FuzzedDataProvider& fuzzed_data_provider, const NodeConte
mempool_opts.limits.descendant_size_vbytes = fuzzed_data_provider.ConsumeIntegralInRange<unsigned>(0, 202) * 1'000;
mempool_opts.max_size_bytes = fuzzed_data_provider.ConsumeIntegralInRange<unsigned>(0, 200) * 1'000'000;
mempool_opts.expiry = std::chrono::hours{fuzzed_data_provider.ConsumeIntegralInRange<unsigned>(0, 999)};
- nBytesPerSigOp = fuzzed_data_provider.ConsumeIntegralInRange<unsigned>(1, 999);
+ // Only interested in 2 cases: sigop cost 0 or when single legacy sigop cost is >> 1KvB
+ nBytesPerSigOp = fuzzed_data_provider.ConsumeIntegralInRange<unsigned>(0, 1) * 10'000;
mempool_opts.check_ratio = 1;
mempool_opts.require_standard = fuzzed_data_provider.ConsumeBool();
@@ -171,11 +173,11 @@ FUZZ_TARGET(tx_package_eval, .init = initialize_tx_pool)
// Create transaction to add to the mempool
const CTransactionRef tx = [&] {
CMutableTransaction tx_mut;
- tx_mut.nVersion = CTransaction::CURRENT_VERSION;
+ tx_mut.nVersion = fuzzed_data_provider.ConsumeBool() ? 3 : CTransaction::CURRENT_VERSION;
tx_mut.nLockTime = fuzzed_data_provider.ConsumeBool() ? 0 : fuzzed_data_provider.ConsumeIntegral<uint32_t>();
// Last tx will sweep all outpoints in package
const auto num_in = last_tx ? package_outpoints.size() : fuzzed_data_provider.ConsumeIntegralInRange<int>(1, mempool_outpoints.size());
- const auto num_out = fuzzed_data_provider.ConsumeIntegralInRange<int>(1, mempool_outpoints.size() * 2);
+ auto num_out = fuzzed_data_provider.ConsumeIntegralInRange<int>(1, mempool_outpoints.size() * 2);
auto& outpoints = last_tx ? package_outpoints : mempool_outpoints;
@@ -211,17 +213,24 @@ FUZZ_TARGET(tx_package_eval, .init = initialize_tx_pool)
tx_mut.vin.push_back(tx_mut.vin.back());
}
- // Refer to a non-existant input
+ // Refer to a non-existent input
if (fuzzed_data_provider.ConsumeBool()) {
tx_mut.vin.emplace_back();
}
+ // Make a p2pk output to make sigops adjusted vsize to violate v3, potentially, which is never spent
+ if (last_tx && amount_in > 1000 && fuzzed_data_provider.ConsumeBool()) {
+ tx_mut.vout.emplace_back(1000, CScript() << std::vector<unsigned char>(33, 0x02) << OP_CHECKSIG);
+ // Don't add any other outputs.
+ num_out = 1;
+ amount_in -= 1000;
+ }
+
const auto amount_fee = fuzzed_data_provider.ConsumeIntegralInRange<CAmount>(0, amount_in);
const auto amount_out = (amount_in - amount_fee) / num_out;
for (int i = 0; i < num_out; ++i) {
tx_mut.vout.emplace_back(amount_out, P2WSH_EMPTY);
}
- // TODO vary transaction sizes to catch size-related issues
auto tx = MakeTransactionRef(tx_mut);
// Restore previously removed outpoints, except in-package outpoints
if (!last_tx) {
@@ -261,7 +270,6 @@ FUZZ_TARGET(tx_package_eval, .init = initialize_tx_pool)
std::set<CTransactionRef> added;
auto txr = std::make_shared<TransactionsDelta>(added);
RegisterSharedValidationInterface(txr);
- const bool bypass_limits = fuzzed_data_provider.ConsumeBool();
// When there are multiple transactions in the package, we call ProcessNewPackage(txs, test_accept=false)
// and AcceptToMemoryPool(txs.back(), test_accept=true). When there is only 1 transaction, we might flip it
@@ -271,17 +279,20 @@ FUZZ_TARGET(tx_package_eval, .init = initialize_tx_pool)
const auto result_package = WITH_LOCK(::cs_main,
return ProcessNewPackage(chainstate, tx_pool, txs, /*test_accept=*/single_submit));
- const auto res = WITH_LOCK(::cs_main, return AcceptToMemoryPool(chainstate, txs.back(), GetTime(), bypass_limits, /*test_accept=*/!single_submit));
- const bool accepted = res.m_result_type == MempoolAcceptResult::ResultType::VALID;
+ // Always set bypass_limits to false because it is not supported in ProcessNewPackage and
+ // can be a source of divergence.
+ const auto res = WITH_LOCK(::cs_main, return AcceptToMemoryPool(chainstate, txs.back(), GetTime(),
+ /*bypass_limits=*/false, /*test_accept=*/!single_submit));
+ const bool passed = res.m_result_type == MempoolAcceptResult::ResultType::VALID;
SyncWithValidationInterfaceQueue();
UnregisterSharedValidationInterface(txr);
// There is only 1 transaction in the package. We did a test-package-accept and a ATMP
if (single_submit) {
- Assert(accepted != added.empty());
- Assert(accepted == res.m_state.IsValid());
- if (accepted) {
+ Assert(passed != added.empty());
+ Assert(passed == res.m_state.IsValid());
+ if (passed) {
Assert(added.size() == 1);
Assert(txs.back() == *added.begin());
}
@@ -295,6 +306,8 @@ FUZZ_TARGET(tx_package_eval, .init = initialize_tx_pool)
// This is empty if it fails early checks, or "full" if transactions are looked at deeper
Assert(result_package.m_tx_results.size() == txs.size() || result_package.m_tx_results.empty());
}
+
+ CheckMempoolV3Invariants(tx_pool);
}
UnregisterSharedValidationInterface(outpoints_updater);
diff --git a/src/test/fuzz/tx_pool.cpp b/src/test/fuzz/tx_pool.cpp
index 4ad0956201..fcf230642a 100644
--- a/src/test/fuzz/tx_pool.cpp
+++ b/src/test/fuzz/tx_pool.cpp
@@ -6,6 +6,7 @@
#include <node/context.h>
#include <node/mempool_args.h>
#include <node/miner.h>
+#include <policy/v3_policy.h>
#include <test/fuzz/FuzzedDataProvider.h>
#include <test/fuzz/fuzz.h>
#include <test/fuzz/util.h>
@@ -101,9 +102,7 @@ void Finish(FuzzedDataProvider& fuzzed_data_provider, MockedTxPool& tx_pool, Cha
if (!info_all.empty()) {
const auto& tx_to_remove = *PickValue(fuzzed_data_provider, info_all).tx;
WITH_LOCK(tx_pool.cs, tx_pool.removeRecursive(tx_to_remove, MemPoolRemovalReason::BLOCK /* dummy */));
- std::vector<uint256> all_txids;
- tx_pool.queryHashes(all_txids);
- assert(all_txids.size() < info_all.size());
+ assert(tx_pool.size() < info_all.size());
WITH_LOCK(::cs_main, tx_pool.check(chainstate.CoinsTip(), chainstate.m_chain.Height() + 1));
}
SyncWithValidationInterfaceQueue();
@@ -229,7 +228,7 @@ FUZZ_TARGET(tx_pool_standard, .init = initialize_tx_pool)
// Create transaction to add to the mempool
const CTransactionRef tx = [&] {
CMutableTransaction tx_mut;
- tx_mut.nVersion = CTransaction::CURRENT_VERSION;
+ tx_mut.nVersion = fuzzed_data_provider.ConsumeBool() ? 3 : CTransaction::CURRENT_VERSION;
tx_mut.nLockTime = fuzzed_data_provider.ConsumeBool() ? 0 : fuzzed_data_provider.ConsumeIntegral<uint32_t>();
const auto num_in = fuzzed_data_provider.ConsumeIntegralInRange<int>(1, outpoints_rbf.size());
const auto num_out = fuzzed_data_provider.ConsumeIntegralInRange<int>(1, outpoints_rbf.size() * 2);
@@ -315,6 +314,7 @@ FUZZ_TARGET(tx_pool_standard, .init = initialize_tx_pool)
if (accepted) {
Assert(added.size() == 1); // For now, no package acceptance
Assert(tx == *added.begin());
+ CheckMempoolV3Invariants(tx_pool);
} else {
// Do not consider rejected transaction removed
removed.erase(tx);
@@ -407,6 +407,7 @@ FUZZ_TARGET(tx_pool, .init = initialize_tx_pool)
const bool accepted = res.m_result_type == MempoolAcceptResult::ResultType::VALID;
if (accepted) {
txids.push_back(tx->GetHash());
+ CheckMempoolV3Invariants(tx_pool);
}
}
Finish(fuzzed_data_provider, tx_pool, chainstate);
diff --git a/src/test/fuzz/util/net.cpp b/src/test/fuzz/util/net.cpp
index eb0f14ede0..99151bb84d 100644
--- a/src/test/fuzz/util/net.cpp
+++ b/src/test/fuzz/util/net.cpp
@@ -25,33 +25,63 @@
class CNode;
-CNetAddr ConsumeNetAddr(FuzzedDataProvider& fuzzed_data_provider) noexcept
+CNetAddr ConsumeNetAddr(FuzzedDataProvider& fuzzed_data_provider, FastRandomContext* rand) noexcept
{
- const Network network = fuzzed_data_provider.PickValueInArray({Network::NET_IPV4, Network::NET_IPV6, Network::NET_INTERNAL, Network::NET_ONION});
- CNetAddr net_addr;
- if (network == Network::NET_IPV4) {
- in_addr v4_addr = {};
- v4_addr.s_addr = fuzzed_data_provider.ConsumeIntegral<uint32_t>();
- net_addr = CNetAddr{v4_addr};
- } else if (network == Network::NET_IPV6) {
- if (fuzzed_data_provider.remaining_bytes() >= 16) {
- in6_addr v6_addr = {};
- auto addr_bytes = fuzzed_data_provider.ConsumeBytes<uint8_t>(16);
- if (addr_bytes[0] == CJDNS_PREFIX) { // Avoid generating IPv6 addresses that look like CJDNS.
- addr_bytes[0] = 0x55; // Just an arbitrary number, anything != CJDNS_PREFIX would do.
- }
- memcpy(v6_addr.s6_addr, addr_bytes.data(), 16);
- net_addr = CNetAddr{v6_addr, fuzzed_data_provider.ConsumeIntegral<uint32_t>()};
+ struct NetAux {
+ Network net;
+ CNetAddr::BIP155Network bip155;
+ size_t len;
+ };
+
+ static constexpr std::array<NetAux, 6> nets{
+ NetAux{.net = Network::NET_IPV4, .bip155 = CNetAddr::BIP155Network::IPV4, .len = ADDR_IPV4_SIZE},
+ NetAux{.net = Network::NET_IPV6, .bip155 = CNetAddr::BIP155Network::IPV6, .len = ADDR_IPV6_SIZE},
+ NetAux{.net = Network::NET_ONION, .bip155 = CNetAddr::BIP155Network::TORV3, .len = ADDR_TORV3_SIZE},
+ NetAux{.net = Network::NET_I2P, .bip155 = CNetAddr::BIP155Network::I2P, .len = ADDR_I2P_SIZE},
+ NetAux{.net = Network::NET_CJDNS, .bip155 = CNetAddr::BIP155Network::CJDNS, .len = ADDR_CJDNS_SIZE},
+ NetAux{.net = Network::NET_INTERNAL, .bip155 = CNetAddr::BIP155Network{0}, .len = 0},
+ };
+
+ const size_t nets_index{rand == nullptr
+ ? fuzzed_data_provider.ConsumeIntegralInRange<size_t>(0, nets.size() - 1)
+ : static_cast<size_t>(rand->randrange(nets.size()))};
+
+ const auto& aux = nets[nets_index];
+
+ CNetAddr addr;
+
+ if (aux.net == Network::NET_INTERNAL) {
+ if (rand == nullptr) {
+ addr.SetInternal(fuzzed_data_provider.ConsumeBytesAsString(32));
+ } else {
+ const auto v = rand->randbytes(32);
+ addr.SetInternal(std::string{v.begin(), v.end()});
}
- } else if (network == Network::NET_INTERNAL) {
- net_addr.SetInternal(fuzzed_data_provider.ConsumeBytesAsString(32));
- } else if (network == Network::NET_ONION) {
- auto pub_key{fuzzed_data_provider.ConsumeBytes<uint8_t>(ADDR_TORV3_SIZE)};
- pub_key.resize(ADDR_TORV3_SIZE);
- const bool ok{net_addr.SetSpecial(OnionToString(pub_key))};
- assert(ok);
+ return addr;
+ }
+
+ DataStream s;
+
+ s << static_cast<uint8_t>(aux.bip155);
+
+ std::vector<uint8_t> addr_bytes;
+ if (rand == nullptr) {
+ addr_bytes = fuzzed_data_provider.ConsumeBytes<uint8_t>(aux.len);
+ addr_bytes.resize(aux.len);
+ } else {
+ addr_bytes = rand->randbytes(aux.len);
}
- return net_addr;
+ if (aux.net == NET_IPV6 && addr_bytes[0] == CJDNS_PREFIX) { // Avoid generating IPv6 addresses that look like CJDNS.
+ addr_bytes[0] = 0x55; // Just an arbitrary number, anything != CJDNS_PREFIX would do.
+ }
+ if (aux.net == NET_CJDNS) { // Avoid generating CJDNS addresses that don't start with CJDNS_PREFIX because those are !IsValid().
+ addr_bytes[0] = CJDNS_PREFIX;
+ }
+ s << addr_bytes;
+
+ s >> CAddress::V2_NETWORK(addr);
+
+ return addr;
}
CAddress ConsumeAddress(FuzzedDataProvider& fuzzed_data_provider) noexcept
diff --git a/src/test/fuzz/util/net.h b/src/test/fuzz/util/net.h
index 47e4a2fac0..a6c9e23f2e 100644
--- a/src/test/fuzz/util/net.h
+++ b/src/test/fuzz/util/net.h
@@ -24,7 +24,15 @@
#include <optional>
#include <string>
-CNetAddr ConsumeNetAddr(FuzzedDataProvider& fuzzed_data_provider) noexcept;
+/**
+ * Create a CNetAddr. It may have `addr.IsValid() == false`.
+ * @param[in,out] fuzzed_data_provider Take data for the address from this, if `rand` is `nullptr`.
+ * @param[in,out] rand If not nullptr, take data from it instead of from `fuzzed_data_provider`.
+ * Prefer generating addresses using `fuzzed_data_provider` because it is not uniform. Only use
+ * `rand` if `fuzzed_data_provider` is exhausted or its data is needed for other things.
+ * @return a "random" network address.
+ */
+CNetAddr ConsumeNetAddr(FuzzedDataProvider& fuzzed_data_provider, FastRandomContext* rand = nullptr) noexcept;
class FuzzedSock : public Sock
{
diff --git a/src/test/ipc_test.capnp b/src/test/ipc_test.capnp
new file mode 100644
index 0000000000..55a3dc2683
--- /dev/null
+++ b/src/test/ipc_test.capnp
@@ -0,0 +1,18 @@
+# Copyright (c) 2023 The Bitcoin Core developers
+# Distributed under the MIT software license, see the accompanying
+# file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+@0xd71b0fc8727fdf83;
+
+using Cxx = import "/capnp/c++.capnp";
+$Cxx.namespace("gen");
+
+using Proxy = import "/mp/proxy.capnp";
+$Proxy.include("test/ipc_test.h");
+$Proxy.includeTypes("ipc/capnp/common-types.h");
+
+interface FooInterface $Proxy.wrap("FooImplementation") {
+ add @0 (a :Int32, b :Int32) -> (result :Int32);
+ passOutPoint @1 (arg :Data) -> (result :Data);
+ passUniValue @2 (arg :Text) -> (result :Text);
+}
diff --git a/src/test/ipc_test.cpp b/src/test/ipc_test.cpp
new file mode 100644
index 0000000000..ce4edaceb0
--- /dev/null
+++ b/src/test/ipc_test.cpp
@@ -0,0 +1,67 @@
+// Copyright (c) 2023 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#include <logging.h>
+#include <mp/proxy-types.h>
+#include <test/ipc_test.capnp.h>
+#include <test/ipc_test.capnp.proxy.h>
+#include <test/ipc_test.h>
+
+#include <future>
+#include <kj/common.h>
+#include <kj/memory.h>
+#include <kj/test.h>
+
+#include <boost/test/unit_test.hpp>
+
+//! Unit test that tests execution of IPC calls without actually creating a
+//! separate process. This test is primarily intended to verify behavior of type
+//! conversion code that converts C++ objects to Cap'n Proto messages and vice
+//! versa.
+//!
+//! The test creates a thread which creates a FooImplementation object (defined
+//! in ipc_test.h) and a two-way pipe accepting IPC requests which call methods
+//! on the object through FooInterface (defined in ipc_test.capnp).
+void IpcTest()
+{
+ // Setup: create FooImplemention object and listen for FooInterface requests
+ std::promise<std::unique_ptr<mp::ProxyClient<gen::FooInterface>>> foo_promise;
+ std::function<void()> disconnect_client;
+ std::thread thread([&]() {
+ mp::EventLoop loop("IpcTest", [](bool raise, const std::string& log) { LogPrintf("LOG%i: %s\n", raise, log); });
+ auto pipe = loop.m_io_context.provider->newTwoWayPipe();
+
+ auto connection_client = std::make_unique<mp::Connection>(loop, kj::mv(pipe.ends[0]));
+ auto foo_client = std::make_unique<mp::ProxyClient<gen::FooInterface>>(
+ connection_client->m_rpc_system.bootstrap(mp::ServerVatId().vat_id).castAs<gen::FooInterface>(),
+ connection_client.get(), /* destroy_connection= */ false);
+ foo_promise.set_value(std::move(foo_client));
+ disconnect_client = [&] { loop.sync([&] { connection_client.reset(); }); };
+
+ auto connection_server = std::make_unique<mp::Connection>(loop, kj::mv(pipe.ends[1]), [&](mp::Connection& connection) {
+ auto foo_server = kj::heap<mp::ProxyServer<gen::FooInterface>>(std::make_shared<FooImplementation>(), connection);
+ return capnp::Capability::Client(kj::mv(foo_server));
+ });
+ connection_server->onDisconnect([&] { connection_server.reset(); });
+ loop.loop();
+ });
+ std::unique_ptr<mp::ProxyClient<gen::FooInterface>> foo{foo_promise.get_future().get()};
+
+ // Test: make sure arguments were sent and return value is received
+ BOOST_CHECK_EQUAL(foo->add(1, 2), 3);
+
+ COutPoint txout1{Txid::FromUint256(uint256{100}), 200};
+ COutPoint txout2{foo->passOutPoint(txout1)};
+ BOOST_CHECK(txout1 == txout2);
+
+ UniValue uni1{UniValue::VOBJ};
+ uni1.pushKV("i", 1);
+ uni1.pushKV("s", "two");
+ UniValue uni2{foo->passUniValue(uni1)};
+ BOOST_CHECK_EQUAL(uni1.write(), uni2.write());
+
+ // Test cleanup: disconnect pipe and join thread
+ disconnect_client();
+ thread.join();
+}
diff --git a/src/test/ipc_test.h b/src/test/ipc_test.h
new file mode 100644
index 0000000000..bcfcc2125c
--- /dev/null
+++ b/src/test/ipc_test.h
@@ -0,0 +1,21 @@
+// Copyright (c) 2023 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#ifndef BITCOIN_TEST_IPC_TEST_H
+#define BITCOIN_TEST_IPC_TEST_H
+
+#include <primitives/transaction.h>
+#include <univalue.h>
+
+class FooImplementation
+{
+public:
+ int add(int a, int b) { return a + b; }
+ COutPoint passOutPoint(COutPoint o) { return o; }
+ UniValue passUniValue(UniValue v) { return v; }
+};
+
+void IpcTest();
+
+#endif // BITCOIN_TEST_IPC_TEST_H
diff --git a/src/test/ipc_tests.cpp b/src/test/ipc_tests.cpp
new file mode 100644
index 0000000000..6e144b0f41
--- /dev/null
+++ b/src/test/ipc_tests.cpp
@@ -0,0 +1,13 @@
+// Copyright (c) 2023 The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or http://www.opensource.org/licenses/mit-license.php.
+
+#include <test/ipc_test.h>
+#include <boost/test/unit_test.hpp>
+
+BOOST_AUTO_TEST_SUITE(ipc_tests)
+BOOST_AUTO_TEST_CASE(ipc_tests)
+{
+ IpcTest();
+}
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/src/test/miner_tests.cpp b/src/test/miner_tests.cpp
index 342d2514ed..d50af4c175 100644
--- a/src/test/miner_tests.cpp
+++ b/src/test/miner_tests.cpp
@@ -12,7 +12,6 @@
#include <policy/policy.h>
#include <test/util/random.h>
#include <test/util/txmempool.h>
-#include <timedata.h>
#include <txmempool.h>
#include <uint256.h>
#include <util/strencodings.h>
diff --git a/src/test/peerman_tests.cpp b/src/test/peerman_tests.cpp
new file mode 100644
index 0000000000..2c79329385
--- /dev/null
+++ b/src/test/peerman_tests.cpp
@@ -0,0 +1,76 @@
+// Copyright (c) 2024-present The Bitcoin Core developers
+// Distributed under the MIT software license, see the accompanying
+// file COPYING or https://www.opensource.org/licenses/mit-license.php.
+
+#include <chainparams.h>
+#include <node/miner.h>
+#include <net_processing.h>
+#include <pow.h>
+#include <test/util/setup_common.h>
+#include <validation.h>
+
+#include <boost/test/unit_test.hpp>
+
+BOOST_FIXTURE_TEST_SUITE(peerman_tests, RegTestingSetup)
+
+/** Window, in blocks, for connecting to NODE_NETWORK_LIMITED peers */
+static constexpr int64_t NODE_NETWORK_LIMITED_ALLOW_CONN_BLOCKS = 144;
+
+static void mineBlock(const node::NodeContext& node, std::chrono::seconds block_time)
+{
+ auto curr_time = GetTime<std::chrono::seconds>();
+ SetMockTime(block_time); // update time so the block is created with it
+ CBlock block = node::BlockAssembler{node.chainman->ActiveChainstate(), nullptr}.CreateNewBlock(CScript() << OP_TRUE)->block;
+ while (!CheckProofOfWork(block.GetHash(), block.nBits, node.chainman->GetConsensus())) ++block.nNonce;
+ block.fChecked = true; // little speedup
+ SetMockTime(curr_time); // process block at current time
+ Assert(node.chainman->ProcessNewBlock(std::make_shared<const CBlock>(block), /*force_processing=*/true, /*min_pow_checked=*/true, nullptr));
+ SyncWithValidationInterfaceQueue(); // drain events queue
+}
+
+// Verifying when network-limited peer connections are desirable based on the node's proximity to the tip
+BOOST_AUTO_TEST_CASE(connections_desirable_service_flags)
+{
+ std::unique_ptr<PeerManager> peerman = PeerManager::make(*m_node.connman, *m_node.addrman, nullptr, *m_node.chainman, *m_node.mempool, {});
+ auto consensus = m_node.chainman->GetParams().GetConsensus();
+
+ // Check we start connecting to full nodes
+ ServiceFlags peer_flags{NODE_WITNESS | NODE_NETWORK_LIMITED};
+ BOOST_CHECK(peerman->GetDesirableServiceFlags(peer_flags) == ServiceFlags(NODE_NETWORK | NODE_WITNESS));
+
+ // Make peerman aware of the initial best block and verify we accept limited peers when we start close to the tip time.
+ auto tip = WITH_LOCK(::cs_main, return m_node.chainman->ActiveChain().Tip());
+ uint64_t tip_block_time = tip->GetBlockTime();
+ int tip_block_height = tip->nHeight;
+ peerman->SetBestBlock(tip_block_height, std::chrono::seconds{tip_block_time});
+
+ SetMockTime(tip_block_time + 1); // Set node time to tip time
+ BOOST_CHECK(peerman->GetDesirableServiceFlags(peer_flags) == ServiceFlags(NODE_NETWORK_LIMITED | NODE_WITNESS));
+
+ // Check we don't disallow limited peers connections when we are behind but still recoverable (below the connection safety window)
+ SetMockTime(GetTime<std::chrono::seconds>() + std::chrono::seconds{consensus.nPowTargetSpacing * (NODE_NETWORK_LIMITED_ALLOW_CONN_BLOCKS - 1)});
+ BOOST_CHECK(peerman->GetDesirableServiceFlags(peer_flags) == ServiceFlags(NODE_NETWORK_LIMITED | NODE_WITNESS));
+
+ // Check we disallow limited peers connections when we are further than the limited peers safety window
+ SetMockTime(GetTime<std::chrono::seconds>() + std::chrono::seconds{consensus.nPowTargetSpacing * 2});
+ BOOST_CHECK(peerman->GetDesirableServiceFlags(peer_flags) == ServiceFlags(NODE_NETWORK | NODE_WITNESS));
+
+ // By now, we tested that the connections desirable services flags change based on the node's time proximity to the tip.
+ // Now, perform the same tests for when the node receives a block.
+ RegisterValidationInterface(peerman.get());
+
+ // First, verify a block in the past doesn't enable limited peers connections
+ // At this point, our time is (NODE_NETWORK_LIMITED_ALLOW_CONN_BLOCKS + 1) * 10 minutes ahead the tip's time.
+ mineBlock(m_node, /*block_time=*/std::chrono::seconds{tip_block_time + 1});
+ BOOST_CHECK(peerman->GetDesirableServiceFlags(peer_flags) == ServiceFlags(NODE_NETWORK | NODE_WITNESS));
+
+ // Verify a block close to the tip enables limited peers connections
+ mineBlock(m_node, /*block_time=*/GetTime<std::chrono::seconds>());
+ BOOST_CHECK(peerman->GetDesirableServiceFlags(peer_flags) == ServiceFlags(NODE_NETWORK_LIMITED | NODE_WITNESS));
+
+ // Lastly, verify the stale tip checks can disallow limited peers connections after not receiving blocks for a prolonged period.
+ SetMockTime(GetTime<std::chrono::seconds>() + std::chrono::seconds{consensus.nPowTargetSpacing * NODE_NETWORK_LIMITED_ALLOW_CONN_BLOCKS + 1});
+ BOOST_CHECK(peerman->GetDesirableServiceFlags(peer_flags) == ServiceFlags(NODE_NETWORK | NODE_WITNESS));
+}
+
+BOOST_AUTO_TEST_SUITE_END()
diff --git a/src/test/rbf_tests.cpp b/src/test/rbf_tests.cpp
index fb6a3614c0..e6c135eed9 100644
--- a/src/test/rbf_tests.cpp
+++ b/src/test/rbf_tests.cpp
@@ -135,8 +135,6 @@ BOOST_FIXTURE_TEST_CASE(rbf_helper_functions, TestChain100Setup)
// Tests for EntriesAndTxidsDisjoint
BOOST_CHECK(EntriesAndTxidsDisjoint(empty_set, {tx1->GetHash()}, unused_txid) == std::nullopt);
BOOST_CHECK(EntriesAndTxidsDisjoint(set_12_normal, {tx3->GetHash()}, unused_txid) == std::nullopt);
- // EntriesAndTxidsDisjoint uses txids, not wtxids.
- BOOST_CHECK(EntriesAndTxidsDisjoint({entry2}, {tx2->GetWitnessHash()}, unused_txid) == std::nullopt);
BOOST_CHECK(EntriesAndTxidsDisjoint({entry2}, {tx2->GetHash()}, unused_txid).has_value());
BOOST_CHECK(EntriesAndTxidsDisjoint(set_12_normal, {tx1->GetHash()}, unused_txid).has_value());
BOOST_CHECK(EntriesAndTxidsDisjoint(set_12_normal, {tx2->GetHash()}, unused_txid).has_value());
diff --git a/src/test/settings_tests.cpp b/src/test/settings_tests.cpp
index fa8ceb8dd6..41190b3579 100644
--- a/src/test/settings_tests.cpp
+++ b/src/test/settings_tests.cpp
@@ -99,7 +99,9 @@ BOOST_AUTO_TEST_CASE(ReadWrite)
// Check invalid json not allowed
WriteText(path, R"(invalid json)");
BOOST_CHECK(!common::ReadSettings(path, values, errors));
- std::vector<std::string> fail_parse = {strprintf("Unable to parse settings file %s", fs::PathToString(path))};
+ std::vector<std::string> fail_parse = {strprintf("Settings file %s does not contain valid JSON. This is probably caused by disk corruption or a crash, "
+ "and can be fixed by removing the file, which will reset settings to default values.",
+ fs::PathToString(path))};
BOOST_CHECK_EQUAL_COLLECTIONS(errors.begin(), errors.end(), fail_parse.begin(), fail_parse.end());
}
diff --git a/src/test/transaction_tests.cpp b/src/test/transaction_tests.cpp
index d1cb2531aa..e6cf64611e 100644
--- a/src/test/transaction_tests.cpp
+++ b/src/test/transaction_tests.cpp
@@ -786,7 +786,7 @@ BOOST_AUTO_TEST_CASE(test_IsStandard)
t.nVersion = 0;
CheckIsNotStandard(t, "version");
- t.nVersion = 3;
+ t.nVersion = TX_MAX_STANDARD_VERSION + 1;
CheckIsNotStandard(t, "version");
// Allowed nVersion
diff --git a/src/test/txvalidation_tests.cpp b/src/test/txvalidation_tests.cpp
index ecf0889711..e045949b43 100644
--- a/src/test/txvalidation_tests.cpp
+++ b/src/test/txvalidation_tests.cpp
@@ -4,11 +4,14 @@
#include <consensus/validation.h>
#include <key_io.h>
+#include <policy/v3_policy.h>
#include <policy/packages.h>
#include <policy/policy.h>
#include <primitives/transaction.h>
+#include <random.h>
#include <script/script.h>
#include <test/util/setup_common.h>
+#include <test/util/txmempool.h>
#include <validation.h>
#include <boost/test/unit_test.hpp>
@@ -48,4 +51,294 @@ BOOST_FIXTURE_TEST_CASE(tx_mempool_reject_coinbase, TestChain100Setup)
BOOST_CHECK_EQUAL(result.m_state.GetRejectReason(), "coinbase");
BOOST_CHECK(result.m_state.GetResult() == TxValidationResult::TX_CONSENSUS);
}
+
+// Generate a number of random, nonexistent outpoints.
+static inline std::vector<COutPoint> random_outpoints(size_t num_outpoints) {
+ std::vector<COutPoint> outpoints;
+ for (size_t i{0}; i < num_outpoints; ++i) {
+ outpoints.emplace_back(Txid::FromUint256(GetRandHash()), 0);
+ }
+ return outpoints;
+}
+
+static inline std::vector<CPubKey> random_keys(size_t num_keys) {
+ std::vector<CPubKey> keys;
+ keys.reserve(num_keys);
+ for (size_t i{0}; i < num_keys; ++i) {
+ CKey key;
+ key.MakeNewKey(true);
+ keys.emplace_back(key.GetPubKey());
+ }
+ return keys;
+}
+
+// Creates a placeholder tx (not valid) with 25 outputs. Specify the nVersion and the inputs.
+static inline CTransactionRef make_tx(const std::vector<COutPoint>& inputs, int32_t version)
+{
+ CMutableTransaction mtx = CMutableTransaction{};
+ mtx.nVersion = version;
+ mtx.vin.resize(inputs.size());
+ mtx.vout.resize(25);
+ for (size_t i{0}; i < inputs.size(); ++i) {
+ mtx.vin[i].prevout = inputs[i];
+ }
+ for (auto i{0}; i < 25; ++i) {
+ mtx.vout[i].scriptPubKey = CScript() << OP_TRUE;
+ mtx.vout[i].nValue = 10000;
+ }
+ return MakeTransactionRef(mtx);
+}
+
+BOOST_FIXTURE_TEST_CASE(version3_tests, RegTestingSetup)
+{
+ // Test V3 policy helper functions
+ CTxMemPool& pool = *Assert(m_node.mempool);
+ LOCK2(cs_main, pool.cs);
+ TestMemPoolEntryHelper entry;
+ std::set<Txid> empty_conflicts_set;
+ CTxMemPool::setEntries empty_ancestors;
+
+ auto mempool_tx_v3 = make_tx(random_outpoints(1), /*version=*/3);
+ pool.addUnchecked(entry.FromTx(mempool_tx_v3));
+ auto mempool_tx_v2 = make_tx(random_outpoints(1), /*version=*/2);
+ pool.addUnchecked(entry.FromTx(mempool_tx_v2));
+ // Default values.
+ CTxMemPool::Limits m_limits{};
+
+ // Cannot spend from an unconfirmed v3 transaction unless this tx is also v3.
+ {
+ // mempool_tx_v3
+ // ^
+ // tx_v2_from_v3
+ auto tx_v2_from_v3 = make_tx({COutPoint{mempool_tx_v3->GetHash(), 0}}, /*version=*/2);
+ auto ancestors_v2_from_v3{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v2_from_v3), m_limits)};
+ const auto expected_error_str{strprintf("non-v3 tx %s (wtxid=%s) cannot spend from v3 tx %s (wtxid=%s)",
+ tx_v2_from_v3->GetHash().ToString(), tx_v2_from_v3->GetWitnessHash().ToString(),
+ mempool_tx_v3->GetHash().ToString(), mempool_tx_v3->GetWitnessHash().ToString())};
+ BOOST_CHECK(*SingleV3Checks(tx_v2_from_v3, *ancestors_v2_from_v3, empty_conflicts_set, GetVirtualTransactionSize(*tx_v2_from_v3)) == expected_error_str);
+
+ Package package_v3_v2{mempool_tx_v3, tx_v2_from_v3};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v2_from_v3, GetVirtualTransactionSize(*tx_v2_from_v3), package_v3_v2, empty_ancestors), expected_error_str);
+ CTxMemPool::setEntries entries_mempool_v3{pool.GetIter(mempool_tx_v3->GetHash().ToUint256()).value()};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v2_from_v3, GetVirtualTransactionSize(*tx_v2_from_v3), {tx_v2_from_v3}, entries_mempool_v3), expected_error_str);
+
+ // mempool_tx_v3 mempool_tx_v2
+ // ^ ^
+ // tx_v2_from_v2_and_v3
+ auto tx_v2_from_v2_and_v3 = make_tx({COutPoint{mempool_tx_v3->GetHash(), 0}, COutPoint{mempool_tx_v2->GetHash(), 0}}, /*version=*/2);
+ auto ancestors_v2_from_both{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v2_from_v2_and_v3), m_limits)};
+ const auto expected_error_str_2{strprintf("non-v3 tx %s (wtxid=%s) cannot spend from v3 tx %s (wtxid=%s)",
+ tx_v2_from_v2_and_v3->GetHash().ToString(), tx_v2_from_v2_and_v3->GetWitnessHash().ToString(),
+ mempool_tx_v3->GetHash().ToString(), mempool_tx_v3->GetWitnessHash().ToString())};
+ BOOST_CHECK(*SingleV3Checks(tx_v2_from_v2_and_v3, *ancestors_v2_from_both, empty_conflicts_set, GetVirtualTransactionSize(*tx_v2_from_v2_and_v3))
+ == expected_error_str_2);
+
+ Package package_v3_v2_v2{mempool_tx_v3, mempool_tx_v2, tx_v2_from_v2_and_v3};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v2_from_v2_and_v3, GetVirtualTransactionSize(*tx_v2_from_v2_and_v3), package_v3_v2_v2, empty_ancestors), expected_error_str_2);
+ }
+
+ // V3 cannot spend from an unconfirmed non-v3 transaction.
+ {
+ // mempool_tx_v2
+ // ^
+ // tx_v3_from_v2
+ auto tx_v3_from_v2 = make_tx({COutPoint{mempool_tx_v2->GetHash(), 0}}, /*version=*/3);
+ auto ancestors_v3_from_v2{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v3_from_v2), m_limits)};
+ const auto expected_error_str{strprintf("v3 tx %s (wtxid=%s) cannot spend from non-v3 tx %s (wtxid=%s)",
+ tx_v3_from_v2->GetHash().ToString(), tx_v3_from_v2->GetWitnessHash().ToString(),
+ mempool_tx_v2->GetHash().ToString(), mempool_tx_v2->GetWitnessHash().ToString())};
+ BOOST_CHECK(*SingleV3Checks(tx_v3_from_v2, *ancestors_v3_from_v2, empty_conflicts_set, GetVirtualTransactionSize(*tx_v3_from_v2)) == expected_error_str);
+
+ Package package_v2_v3{mempool_tx_v2, tx_v3_from_v2};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v3_from_v2, GetVirtualTransactionSize(*tx_v3_from_v2), package_v2_v3, empty_ancestors), expected_error_str);
+ CTxMemPool::setEntries entries_mempool_v2{pool.GetIter(mempool_tx_v2->GetHash().ToUint256()).value()};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v3_from_v2, GetVirtualTransactionSize(*tx_v3_from_v2), {tx_v3_from_v2}, entries_mempool_v2), expected_error_str);
+
+ // mempool_tx_v3 mempool_tx_v2
+ // ^ ^
+ // tx_v3_from_v2_and_v3
+ auto tx_v3_from_v2_and_v3 = make_tx({COutPoint{mempool_tx_v3->GetHash(), 0}, COutPoint{mempool_tx_v2->GetHash(), 0}}, /*version=*/3);
+ auto ancestors_v3_from_both{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v3_from_v2_and_v3), m_limits)};
+ const auto expected_error_str_2{strprintf("v3 tx %s (wtxid=%s) cannot spend from non-v3 tx %s (wtxid=%s)",
+ tx_v3_from_v2_and_v3->GetHash().ToString(), tx_v3_from_v2_and_v3->GetWitnessHash().ToString(),
+ mempool_tx_v2->GetHash().ToString(), mempool_tx_v2->GetWitnessHash().ToString())};
+ BOOST_CHECK(*SingleV3Checks(tx_v3_from_v2_and_v3, *ancestors_v3_from_both, empty_conflicts_set, GetVirtualTransactionSize(*tx_v3_from_v2_and_v3))
+ == expected_error_str_2);
+
+ // tx_v3_from_v2_and_v3 also violates V3_ANCESTOR_LIMIT.
+ const auto expected_error_str_3{strprintf("tx %s (wtxid=%s) would have too many ancestors",
+ tx_v3_from_v2_and_v3->GetHash().ToString(), tx_v3_from_v2_and_v3->GetWitnessHash().ToString())};
+ Package package_v3_v2_v3{mempool_tx_v3, mempool_tx_v2, tx_v3_from_v2_and_v3};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v3_from_v2_and_v3, GetVirtualTransactionSize(*tx_v3_from_v2_and_v3), package_v3_v2_v3, empty_ancestors), expected_error_str_3);
+ }
+ // V3 from V3 is ok, and non-V3 from non-V3 is ok.
+ {
+ // mempool_tx_v3
+ // ^
+ // tx_v3_from_v3
+ auto tx_v3_from_v3 = make_tx({COutPoint{mempool_tx_v3->GetHash(), 0}}, /*version=*/3);
+ auto ancestors_v3{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v3_from_v3), m_limits)};
+ BOOST_CHECK(SingleV3Checks(tx_v3_from_v3, *ancestors_v3, empty_conflicts_set, GetVirtualTransactionSize(*tx_v3_from_v3))
+ == std::nullopt);
+
+ Package package_v3_v3{mempool_tx_v3, tx_v3_from_v3};
+ BOOST_CHECK(PackageV3Checks(tx_v3_from_v3, GetVirtualTransactionSize(*tx_v3_from_v3), package_v3_v3, empty_ancestors) == std::nullopt);
+
+ // mempool_tx_v2
+ // ^
+ // tx_v2_from_v2
+ auto tx_v2_from_v2 = make_tx({COutPoint{mempool_tx_v2->GetHash(), 0}}, /*version=*/2);
+ auto ancestors_v2{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v2_from_v2), m_limits)};
+ BOOST_CHECK(SingleV3Checks(tx_v2_from_v2, *ancestors_v2, empty_conflicts_set, GetVirtualTransactionSize(*tx_v2_from_v2))
+ == std::nullopt);
+
+ Package package_v2_v2{mempool_tx_v2, tx_v2_from_v2};
+ BOOST_CHECK(PackageV3Checks(tx_v2_from_v2, GetVirtualTransactionSize(*tx_v2_from_v2), package_v2_v2, empty_ancestors) == std::nullopt);
+ }
+
+ // Tx spending v3 cannot have too many mempool ancestors
+ // Configuration where the tx has multiple direct parents.
+ {
+ Package package_multi_parents;
+ std::vector<COutPoint> mempool_outpoints;
+ mempool_outpoints.emplace_back(mempool_tx_v3->GetHash(), 0);
+ package_multi_parents.emplace_back(mempool_tx_v3);
+ for (size_t i{0}; i < 2; ++i) {
+ auto mempool_tx = make_tx(random_outpoints(i + 1), /*version=*/3);
+ pool.addUnchecked(entry.FromTx(mempool_tx));
+ mempool_outpoints.emplace_back(mempool_tx->GetHash(), 0);
+ package_multi_parents.emplace_back(mempool_tx);
+ }
+ auto tx_v3_multi_parent = make_tx(mempool_outpoints, /*version=*/3);
+ package_multi_parents.emplace_back(tx_v3_multi_parent);
+ auto ancestors{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v3_multi_parent), m_limits)};
+ BOOST_CHECK_EQUAL(ancestors->size(), 3);
+ const auto expected_error_str{strprintf("tx %s (wtxid=%s) would have too many ancestors",
+ tx_v3_multi_parent->GetHash().ToString(), tx_v3_multi_parent->GetWitnessHash().ToString())};
+ BOOST_CHECK_EQUAL(*SingleV3Checks(tx_v3_multi_parent, *ancestors, empty_conflicts_set, GetVirtualTransactionSize(*tx_v3_multi_parent)),
+ expected_error_str);
+
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v3_multi_parent, GetVirtualTransactionSize(*tx_v3_multi_parent), package_multi_parents, empty_ancestors),
+ expected_error_str);
+ }
+
+ // Configuration where the tx is in a multi-generation chain.
+ {
+ Package package_multi_gen;
+ CTransactionRef middle_tx;
+ auto last_outpoint{random_outpoints(1)[0]};
+ for (size_t i{0}; i < 2; ++i) {
+ auto mempool_tx = make_tx({last_outpoint}, /*version=*/3);
+ pool.addUnchecked(entry.FromTx(mempool_tx));
+ last_outpoint = COutPoint{mempool_tx->GetHash(), 0};
+ package_multi_gen.emplace_back(mempool_tx);
+ if (i == 1) middle_tx = mempool_tx;
+ }
+ auto tx_v3_multi_gen = make_tx({last_outpoint}, /*version=*/3);
+ package_multi_gen.emplace_back(tx_v3_multi_gen);
+ auto ancestors{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v3_multi_gen), m_limits)};
+ const auto expected_error_str{strprintf("tx %s (wtxid=%s) would have too many ancestors",
+ tx_v3_multi_gen->GetHash().ToString(), tx_v3_multi_gen->GetWitnessHash().ToString())};
+ BOOST_CHECK_EQUAL(*SingleV3Checks(tx_v3_multi_gen, *ancestors, empty_conflicts_set, GetVirtualTransactionSize(*tx_v3_multi_gen)),
+ expected_error_str);
+
+ // Middle tx is what triggers a failure for the grandchild:
+ BOOST_CHECK_EQUAL(*PackageV3Checks(middle_tx, GetVirtualTransactionSize(*middle_tx), package_multi_gen, empty_ancestors), expected_error_str);
+ BOOST_CHECK(PackageV3Checks(tx_v3_multi_gen, GetVirtualTransactionSize(*tx_v3_multi_gen), package_multi_gen, empty_ancestors) == std::nullopt);
+ }
+
+ // Tx spending v3 cannot be too large in virtual size.
+ auto many_inputs{random_outpoints(100)};
+ many_inputs.emplace_back(mempool_tx_v3->GetHash(), 0);
+ {
+ auto tx_v3_child_big = make_tx(many_inputs, /*version=*/3);
+ const auto vsize{GetVirtualTransactionSize(*tx_v3_child_big)};
+ auto ancestors{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v3_child_big), m_limits)};
+ const auto expected_error_str{strprintf("v3 child tx %s (wtxid=%s) is too big: %u > %u virtual bytes",
+ tx_v3_child_big->GetHash().ToString(), tx_v3_child_big->GetWitnessHash().ToString(), vsize, V3_CHILD_MAX_VSIZE)};
+ BOOST_CHECK_EQUAL(*SingleV3Checks(tx_v3_child_big, *ancestors, empty_conflicts_set, GetVirtualTransactionSize(*tx_v3_child_big)),
+ expected_error_str);
+
+ Package package_child_big{mempool_tx_v3, tx_v3_child_big};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v3_child_big, GetVirtualTransactionSize(*tx_v3_child_big), package_child_big, empty_ancestors),
+ expected_error_str);
+ }
+
+ // Tx spending v3 cannot have too many sigops.
+ // This child has 10 P2WSH multisig inputs.
+ auto multisig_outpoints{random_outpoints(10)};
+ multisig_outpoints.emplace_back(mempool_tx_v3->GetHash(), 0);
+ auto keys{random_keys(2)};
+ CScript script_multisig;
+ script_multisig << OP_1;
+ for (const auto& key : keys) {
+ script_multisig << ToByteVector(key);
+ }
+ script_multisig << OP_2 << OP_CHECKMULTISIG;
+ {
+ CMutableTransaction mtx_many_sigops = CMutableTransaction{};
+ mtx_many_sigops.nVersion = 3;
+ for (const auto& outpoint : multisig_outpoints) {
+ mtx_many_sigops.vin.emplace_back(outpoint);
+ mtx_many_sigops.vin.back().scriptWitness.stack.emplace_back(script_multisig.begin(), script_multisig.end());
+ }
+ mtx_many_sigops.vout.resize(1);
+ mtx_many_sigops.vout.back().scriptPubKey = CScript() << OP_TRUE;
+ mtx_many_sigops.vout.back().nValue = 10000;
+ auto tx_many_sigops{MakeTransactionRef(mtx_many_sigops)};
+
+ auto ancestors{pool.CalculateMemPoolAncestors(entry.FromTx(tx_many_sigops), m_limits)};
+ // legacy uses fAccurate = false, and the maximum number of multisig keys is used
+ const int64_t total_sigops{static_cast<int64_t>(tx_many_sigops->vin.size()) * static_cast<int64_t>(script_multisig.GetSigOpCount(/*fAccurate=*/false))};
+ BOOST_CHECK_EQUAL(total_sigops, tx_many_sigops->vin.size() * MAX_PUBKEYS_PER_MULTISIG);
+ const int64_t bip141_vsize{GetVirtualTransactionSize(*tx_many_sigops)};
+ // Weight limit is not reached...
+ BOOST_CHECK(SingleV3Checks(tx_many_sigops, *ancestors, empty_conflicts_set, bip141_vsize) == std::nullopt);
+ // ...but sigop limit is.
+ const auto expected_error_str{strprintf("v3 child tx %s (wtxid=%s) is too big: %u > %u virtual bytes",
+ tx_many_sigops->GetHash().ToString(), tx_many_sigops->GetWitnessHash().ToString(),
+ total_sigops * DEFAULT_BYTES_PER_SIGOP / WITNESS_SCALE_FACTOR, V3_CHILD_MAX_VSIZE)};
+ BOOST_CHECK_EQUAL(*SingleV3Checks(tx_many_sigops, *ancestors, empty_conflicts_set,
+ GetVirtualTransactionSize(*tx_many_sigops, /*nSigOpCost=*/total_sigops, /*bytes_per_sigop=*/ DEFAULT_BYTES_PER_SIGOP)),
+ expected_error_str);
+
+ Package package_child_sigops{mempool_tx_v3, tx_many_sigops};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_many_sigops, total_sigops * DEFAULT_BYTES_PER_SIGOP / WITNESS_SCALE_FACTOR, package_child_sigops, empty_ancestors),
+ expected_error_str);
+ }
+
+ // Parent + child with v3 in the mempool. Child is allowed as long as it is under V3_CHILD_MAX_VSIZE.
+ auto tx_mempool_v3_child = make_tx({COutPoint{mempool_tx_v3->GetHash(), 0}}, /*version=*/3);
+ {
+ BOOST_CHECK(GetTransactionWeight(*tx_mempool_v3_child) <= V3_CHILD_MAX_VSIZE * WITNESS_SCALE_FACTOR);
+ auto ancestors{pool.CalculateMemPoolAncestors(entry.FromTx(tx_mempool_v3_child), m_limits)};
+ BOOST_CHECK(SingleV3Checks(tx_mempool_v3_child, *ancestors, empty_conflicts_set, GetVirtualTransactionSize(*tx_mempool_v3_child)) == std::nullopt);
+ pool.addUnchecked(entry.FromTx(tx_mempool_v3_child));
+
+ Package package_v3_1p1c{mempool_tx_v3, tx_mempool_v3_child};
+ BOOST_CHECK(PackageV3Checks(tx_mempool_v3_child, GetVirtualTransactionSize(*tx_mempool_v3_child), package_v3_1p1c, empty_ancestors) == std::nullopt);
+ }
+
+ // A v3 transaction cannot have more than 1 descendant.
+ // Configuration where tx has multiple direct children.
+ {
+ auto tx_v3_child2 = make_tx({COutPoint{mempool_tx_v3->GetHash(), 1}}, /*version=*/3);
+ auto ancestors{pool.CalculateMemPoolAncestors(entry.FromTx(tx_v3_child2), m_limits)};
+ const auto expected_error_str{strprintf("tx %s (wtxid=%s) would exceed descendant count limit",
+ mempool_tx_v3->GetHash().ToString(), mempool_tx_v3->GetWitnessHash().ToString())};
+ BOOST_CHECK_EQUAL(*SingleV3Checks(tx_v3_child2, *ancestors, empty_conflicts_set, GetVirtualTransactionSize(*tx_v3_child2)),
+ expected_error_str);
+ // If replacing the child, make sure there is no double-counting.
+ BOOST_CHECK(SingleV3Checks(tx_v3_child2, *ancestors, {tx_mempool_v3_child->GetHash()}, GetVirtualTransactionSize(*tx_v3_child2))
+ == std::nullopt);
+
+ Package package_v3_1p2c{mempool_tx_v3, tx_mempool_v3_child, tx_v3_child2};
+ BOOST_CHECK_EQUAL(*PackageV3Checks(tx_v3_child2, GetVirtualTransactionSize(*tx_v3_child2), package_v3_1p2c, empty_ancestors),
+ expected_error_str);
+ }
+
+ // Configuration where tx has multiple generations of descendants is not tested because that is
+ // equivalent to the tx with multiple generations of ancestors.
+}
+
BOOST_AUTO_TEST_SUITE_END()
diff --git a/src/test/util/setup_common.cpp b/src/test/util/setup_common.cpp
index 8789e86196..9f587d7ec0 100644
--- a/src/test/util/setup_common.cpp
+++ b/src/test/util/setup_common.cpp
@@ -44,7 +44,6 @@
#include <test/util/net.h>
#include <test/util/random.h>
#include <test/util/txmempool.h>
-#include <timedata.h>
#include <txdb.h>
#include <txmempool.h>
#include <util/chaintype.h>
@@ -184,7 +183,6 @@ ChainTestingSetup::ChainTestingSetup(const ChainType chainType, const std::vecto
const ChainstateManager::Options chainman_opts{
.chainparams = chainparams,
.datadir = m_args.GetDataDirNet(),
- .adjusted_time_callback = GetAdjustedTime,
.check_block_index = true,
.notifications = *m_node.notifications,
.worker_threads_num = 2,
diff --git a/src/test/util/txmempool.cpp b/src/test/util/txmempool.cpp
index 379c3c9329..3b4161ddd3 100644
--- a/src/test/util/txmempool.cpp
+++ b/src/test/util/txmempool.cpp
@@ -7,6 +7,7 @@
#include <chainparams.h>
#include <node/context.h>
#include <node/mempool_args.h>
+#include <policy/v3_policy.h>
#include <txmempool.h>
#include <util/check.h>
#include <util/time.h>
@@ -116,3 +117,28 @@ std::optional<std::string> CheckPackageMempoolAcceptResult(const Package& txns,
}
return std::nullopt;
}
+
+void CheckMempoolV3Invariants(const CTxMemPool& tx_pool)
+{
+ LOCK(tx_pool.cs);
+ for (const auto& tx_info : tx_pool.infoAll()) {
+ const auto& entry = *Assert(tx_pool.GetEntry(tx_info.tx->GetHash()));
+ if (tx_info.tx->nVersion == 3) {
+ // Check that special v3 ancestor/descendant limits and rules are always respected
+ Assert(entry.GetCountWithDescendants() <= V3_DESCENDANT_LIMIT);
+ Assert(entry.GetCountWithAncestors() <= V3_ANCESTOR_LIMIT);
+ // If this transaction has at least 1 ancestor, it's a "child" and has restricted weight.
+ if (entry.GetCountWithAncestors() > 1) {
+ Assert(entry.GetTxSize() <= V3_CHILD_MAX_VSIZE);
+ // All v3 transactions must only have v3 unconfirmed parents.
+ const auto& parents = entry.GetMemPoolParentsConst();
+ Assert(parents.begin()->get().GetSharedTx()->nVersion == 3);
+ }
+ } else if (entry.GetCountWithAncestors() > 1) {
+ // All non-v3 transactions must only have non-v3 unconfirmed parents.
+ for (const auto& parent : entry.GetMemPoolParentsConst()) {
+ Assert(parent.get().GetSharedTx()->nVersion != 3);
+ }
+ }
+ }
+}
diff --git a/src/test/util/txmempool.h b/src/test/util/txmempool.h
index a866d1ce74..b3022af7df 100644
--- a/src/test/util/txmempool.h
+++ b/src/test/util/txmempool.h
@@ -46,4 +46,14 @@ std::optional<std::string> CheckPackageMempoolAcceptResult(const Package& txns,
const PackageMempoolAcceptResult& result,
bool expect_valid,
const CTxMemPool* mempool);
+
+/** For every transaction in tx_pool, check v3 invariants:
+ * - a v3 tx's ancestor count must be within V3_ANCESTOR_LIMIT
+ * - a v3 tx's descendant count must be within V3_DESCENDANT_LIMIT
+ * - if a v3 tx has ancestors, its sigop-adjusted vsize must be within V3_CHILD_MAX_VSIZE
+ * - any non-v3 tx must only have non-v3 parents
+ * - any v3 tx must only have v3 parents
+ * */
+void CheckMempoolV3Invariants(const CTxMemPool& tx_pool);
+
#endif // BITCOIN_TEST_UTIL_TXMEMPOOL_H
diff --git a/src/test/validation_chainstatemanager_tests.cpp b/src/test/validation_chainstatemanager_tests.cpp
index 368ba8bee4..a33e71d50e 100644
--- a/src/test/validation_chainstatemanager_tests.cpp
+++ b/src/test/validation_chainstatemanager_tests.cpp
@@ -15,7 +15,6 @@
#include <test/util/random.h>
#include <test/util/setup_common.h>
#include <test/util/validation.h>
-#include <timedata.h>
#include <uint256.h>
#include <validation.h>
#include <validationinterface.h>
@@ -383,7 +382,6 @@ struct SnapshotTestSetup : TestChain100Setup {
const ChainstateManager::Options chainman_opts{
.chainparams = ::Params(),
.datadir = chainman.m_options.datadir,
- .adjusted_time_callback = GetAdjustedTime,
.notifications = *m_node.notifications,
};
const BlockManager::Options blockman_opts{
diff --git a/src/timedata.cpp b/src/timedata.cpp
index 15ca90ee6a..d948de976f 100644
--- a/src/timedata.cpp
+++ b/src/timedata.cpp
@@ -33,11 +33,6 @@ int64_t GetTimeOffset()
return nTimeOffset;
}
-NodeClock::time_point GetAdjustedTime()
-{
- return NodeClock::now() + std::chrono::seconds{GetTimeOffset()};
-}
-
#define BITCOIN_TIMEDATA_MAX_SAMPLES 200
static std::set<CNetAddr> g_sources;
diff --git a/src/timedata.h b/src/timedata.h
index c6c36d9a39..3e76f80452 100644
--- a/src/timedata.h
+++ b/src/timedata.h
@@ -5,11 +5,8 @@
#ifndef BITCOIN_TIMEDATA_H
#define BITCOIN_TIMEDATA_H
-#include <util/time.h>
-
#include <algorithm>
#include <cassert>
-#include <chrono>
#include <cstdint>
#include <vector>
@@ -75,11 +72,10 @@ public:
/** Functions to keep track of adjusted P2P time */
int64_t GetTimeOffset();
-NodeClock::time_point GetAdjustedTime();
void AddTimeData(const CNetAddr& ip, int64_t nTime);
/**
- * Reset the internal state of GetTimeOffset(), GetAdjustedTime() and AddTimeData().
+ * Reset the internal state of GetTimeOffset() and AddTimeData().
*/
void TestOnlyResetTimeData();
diff --git a/src/txmempool.cpp b/src/txmempool.cpp
index acee56fe78..de340f6b6d 100644
--- a/src/txmempool.cpp
+++ b/src/txmempool.cpp
@@ -448,7 +448,7 @@ void CTxMemPool::addUnchecked(const CTxMemPoolEntry &entry, setEntries &setAnces
cachedInnerUsage += entry.DynamicMemoryUsage();
const CTransaction& tx = newit->GetTx();
- std::set<uint256> setParentTransactions;
+ std::set<Txid> setParentTransactions;
for (unsigned int i = 0; i < tx.vin.size(); i++) {
mapNextTx.insert(std::make_pair(&tx.vin[i].prevout, &tx));
setParentTransactions.insert(tx.vin[i].prevout.hash);
@@ -803,19 +803,6 @@ std::vector<CTxMemPool::indexed_transaction_set::const_iterator> CTxMemPool::Get
return iters;
}
-void CTxMemPool::queryHashes(std::vector<uint256>& vtxid) const
-{
- LOCK(cs);
- auto iters = GetSortedDepthAndScore();
-
- vtxid.clear();
- vtxid.reserve(mapTx.size());
-
- for (auto it : iters) {
- vtxid.push_back(it->GetTx().GetHash());
- }
-}
-
static TxMempoolInfo GetInfo(CTxMemPool::indexed_transaction_set::const_iterator it) {
return TxMempoolInfo{it->GetSharedTx(), it->GetTime(), it->GetFee(), it->GetTxSize(), it->GetModifiedFee() - it->GetFee()};
}
@@ -963,7 +950,7 @@ std::optional<CTxMemPool::txiter> CTxMemPool::GetIter(const uint256& txid) const
return std::nullopt;
}
-CTxMemPool::setEntries CTxMemPool::GetIterSet(const std::set<uint256>& hashes) const
+CTxMemPool::setEntries CTxMemPool::GetIterSet(const std::set<Txid>& hashes) const
{
CTxMemPool::setEntries ret;
for (const auto& h : hashes) {
diff --git a/src/txmempool.h b/src/txmempool.h
index 9da51756e6..b98355c65f 100644
--- a/src/txmempool.h
+++ b/src/txmempool.h
@@ -485,7 +485,6 @@ public:
void removeForBlock(const std::vector<CTransactionRef>& vtx, unsigned int nBlockHeight) EXCLUSIVE_LOCKS_REQUIRED(cs);
bool CompareDepthAndScore(const uint256& hasha, const uint256& hashb, bool wtxid=false);
- void queryHashes(std::vector<uint256>& vtxid) const;
bool isSpent(const COutPoint& outpoint) const;
unsigned int GetTransactionsUpdated() const;
void AddTransactionsUpdated(unsigned int n);
@@ -522,7 +521,7 @@ public:
/** Translate a set of hashes into a set of pool iterators to avoid repeated lookups.
* Does not require that all of the hashes correspond to actual transactions in the mempool,
* only returns the ones that exist. */
- setEntries GetIterSet(const std::set<uint256>& hashes) const EXCLUSIVE_LOCKS_REQUIRED(cs);
+ setEntries GetIterSet(const std::set<Txid>& hashes) const EXCLUSIVE_LOCKS_REQUIRED(cs);
/** Translate a list of hashes into a list of mempool iterators to avoid repeated lookups.
* The nth element in txids becomes the nth element in the returned vector. If any of the txids
diff --git a/src/validation.cpp b/src/validation.cpp
index 8c583c586c..0552bde665 100644
--- a/src/validation.cpp
+++ b/src/validation.cpp
@@ -29,6 +29,7 @@
#include <logging/timer.h>
#include <node/blockstorage.h>
#include <node/utxo_snapshot.h>
+#include <policy/v3_policy.h>
#include <policy/policy.h>
#include <policy/rbf.h>
#include <policy/settings.h>
@@ -333,7 +334,9 @@ void Chainstate::MaybeUpdateMempoolForReorg(
// Also updates valid entries' cached LockPoints if needed.
// If false, the tx is still valid and its lockpoints are updated.
// If true, the tx would be invalid in the next block; remove this entry and all of its descendants.
- const auto filter_final_and_mature = [this](CTxMemPool::txiter it)
+ // Note that v3 rules are not applied here, so reorgs may cause violations of v3 inheritance or
+ // topology restrictions.
+ const auto filter_final_and_mature = [&](CTxMemPool::txiter it)
EXCLUSIVE_LOCKS_REQUIRED(m_mempool->cs, ::cs_main) {
AssertLockHeld(m_mempool->cs);
AssertLockHeld(::cs_main);
@@ -583,7 +586,7 @@ private:
struct Workspace {
explicit Workspace(const CTransactionRef& ptx) : m_ptx(ptx), m_hash(ptx->GetHash()) {}
/** Txids of mempool transactions that this transaction directly conflicts with. */
- std::set<uint256> m_conflicts;
+ std::set<Txid> m_conflicts;
/** Iterators to mempool entries that this transaction directly conflicts with. */
CTxMemPool::setEntries m_iters_conflicting;
/** Iterators to all mempool entries that would be replaced by this transaction, including
@@ -761,9 +764,12 @@ bool MemPoolAccept::PreChecks(ATMPArgs& args, Workspace& ws)
// check all unconfirmed ancestors; otherwise an opt-in ancestor
// might be replaced, causing removal of this descendant.
//
- // If replaceability signaling is ignored due to node setting,
- // replacement is always allowed.
- if (!m_pool.m_full_rbf && !SignalsOptInRBF(*ptxConflicting)) {
+ // All V3 transactions are considered replaceable.
+ //
+ // Replaceability signaling of the original transactions may be
+ // ignored due to node setting.
+ const bool allow_rbf{m_pool.m_full_rbf || SignalsOptInRBF(*ptxConflicting) || ptxConflicting->nVersion == 3};
+ if (!allow_rbf) {
return state.Invalid(TxValidationResult::TX_MEMPOOL_POLICY, "txn-mempool-conflict");
}
@@ -865,7 +871,8 @@ bool MemPoolAccept::PreChecks(ATMPArgs& args, Workspace& ws)
// while a tx could be package CPFP'd when entering the mempool, we do not have a DoS-resistant
// method of ensuring the tx remains bumped. For example, the fee-bumping child could disappear
// due to a replacement.
- if (!bypass_limits && ws.m_modified_fees < m_pool.m_min_relay_feerate.GetFee(ws.m_vsize)) {
+ // The only exception is v3 transactions.
+ if (!bypass_limits && ws.m_ptx->nVersion != 3 && ws.m_modified_fees < m_pool.m_min_relay_feerate.GetFee(ws.m_vsize)) {
// Even though this is a fee-related failure, this result is TX_MEMPOOL_POLICY, not
// TX_RECONSIDERABLE, because it cannot be bypassed using package validation.
return state.Invalid(TxValidationResult::TX_MEMPOOL_POLICY, "min relay fee not met",
@@ -947,6 +954,9 @@ bool MemPoolAccept::PreChecks(ATMPArgs& args, Workspace& ws)
}
ws.m_ancestors = *ancestors;
+ if (const auto err_string{SingleV3Checks(ws.m_ptx, ws.m_ancestors, ws.m_conflicts, ws.m_vsize)}) {
+ return state.Invalid(TxValidationResult::TX_MEMPOOL_POLICY, "v3-rule-violation", *err_string);
+ }
// A transaction that spends outputs that would be replaced by it is invalid. Now
// that we have the set of all ancestors we can detect this
@@ -1307,6 +1317,15 @@ PackageMempoolAcceptResult MemPoolAccept::AcceptMultipleTransactions(const std::
m_viewmempool.PackageAddTransaction(ws.m_ptx);
}
+ // At this point we have all in-mempool ancestors, and we know every transaction's vsize.
+ // Run the v3 checks on the package.
+ for (Workspace& ws : workspaces) {
+ if (auto err{PackageV3Checks(ws.m_ptx, ws.m_vsize, txns, ws.m_ancestors)}) {
+ package_state.Invalid(PackageValidationResult::PCKG_POLICY, "v3-violation", err.value());
+ return PackageMempoolAcceptResult(package_state, {});
+ }
+ }
+
// Transactions must meet two minimum feerates: the mempool minimum fee and min relay fee.
// For transactions consisting of exactly one child and its parents, it suffices to use the
// package feerate (total modified fees / total virtual size) to check this requirement.
@@ -2188,7 +2207,7 @@ bool Chainstate::ConnectBlock(const CBlock& block, BlockValidationState& state,
// Also, currently the rule against blocks more than 2 hours in the future
// is enforced in ContextualCheckBlockHeader(); we wouldn't want to
// re-enforce that rule here (at least until we make it impossible for
- // m_adjusted_time_callback() to go backward).
+ // the clock to go backward).
if (!CheckBlock(block, state, params.GetConsensus(), !fJustCheck, !fJustCheck)) {
if (state.GetResult() == BlockValidationResult::BLOCK_MUTATED) {
// We don't write down blocks to disk if they may have been
@@ -3777,7 +3796,7 @@ arith_uint256 CalculateHeadersWork(const std::vector<CBlockHeader>& headers)
* in ConnectBlock().
* Note that -reindex-chainstate skips the validation that happens here!
*/
-static bool ContextualCheckBlockHeader(const CBlockHeader& block, BlockValidationState& state, BlockManager& blockman, const ChainstateManager& chainman, const CBlockIndex* pindexPrev, NodeClock::time_point now) EXCLUSIVE_LOCKS_REQUIRED(::cs_main)
+static bool ContextualCheckBlockHeader(const CBlockHeader& block, BlockValidationState& state, BlockManager& blockman, const ChainstateManager& chainman, const CBlockIndex* pindexPrev) EXCLUSIVE_LOCKS_REQUIRED(::cs_main)
{
AssertLockHeld(::cs_main);
assert(pindexPrev != nullptr);
@@ -3805,7 +3824,7 @@ static bool ContextualCheckBlockHeader(const CBlockHeader& block, BlockValidatio
return state.Invalid(BlockValidationResult::BLOCK_INVALID_HEADER, "time-too-old", "block's timestamp is too early");
// Check timestamp
- if (block.Time() > now + std::chrono::seconds{MAX_FUTURE_BLOCK_TIME}) {
+ if (block.Time() > NodeClock::now() + std::chrono::seconds{MAX_FUTURE_BLOCK_TIME}) {
return state.Invalid(BlockValidationResult::BLOCK_TIME_FUTURE, "time-too-new", "block timestamp too far in the future");
}
@@ -3945,7 +3964,7 @@ bool ChainstateManager::AcceptBlockHeader(const CBlockHeader& block, BlockValida
LogPrint(BCLog::VALIDATION, "header %s has prev block invalid: %s\n", hash.ToString(), block.hashPrevBlock.ToString());
return state.Invalid(BlockValidationResult::BLOCK_INVALID_PREV, "bad-prevblk");
}
- if (!ContextualCheckBlockHeader(block, state, m_blockman, *this, pindexPrev, m_options.adjusted_time_callback())) {
+ if (!ContextualCheckBlockHeader(block, state, m_blockman, *this, pindexPrev)) {
LogPrint(BCLog::VALIDATION, "%s: Consensus::ContextualCheckBlockHeader: %s, %s\n", __func__, hash.ToString(), state.ToString());
return false;
}
@@ -4230,7 +4249,6 @@ bool TestBlockValidity(BlockValidationState& state,
Chainstate& chainstate,
const CBlock& block,
CBlockIndex* pindexPrev,
- const std::function<NodeClock::time_point()>& adjusted_time_callback,
bool fCheckPOW,
bool fCheckMerkleRoot)
{
@@ -4244,7 +4262,7 @@ bool TestBlockValidity(BlockValidationState& state,
indexDummy.phashBlock = &block_hash;
// NOTE: CheckBlockHeader is called by CheckBlock
- if (!ContextualCheckBlockHeader(block, state, chainstate.m_blockman, chainstate.m_chainman, pindexPrev, adjusted_time_callback()))
+ if (!ContextualCheckBlockHeader(block, state, chainstate.m_blockman, chainstate.m_chainman, pindexPrev))
return error("%s: Consensus::ContextualCheckBlockHeader: %s", __func__, state.ToString());
if (!CheckBlock(block, state, chainparams.GetConsensus(), fCheckPOW, fCheckMerkleRoot))
return error("%s: Consensus::CheckBlock: %s", __func__, state.ToString());
@@ -4862,16 +4880,6 @@ void ChainstateManager::CheckBlockIndex()
CBlockIndex* pindexFirstAssumeValid = nullptr; // Oldest ancestor of pindex which has BLOCK_ASSUMED_VALID
while (pindex != nullptr) {
nNodes++;
- // Make sure nChainTx sum is correctly computed.
- unsigned int prev_chain_tx = pindex->pprev ? pindex->pprev->nChainTx : 0;
- assert((pindex->nChainTx == pindex->nTx + prev_chain_tx)
- // For testing, allow transaction counts to be completely unset.
- || (pindex->nChainTx == 0 && pindex->nTx == 0)
- // For testing, allow this nChainTx to be unset if previous is also unset.
- || (pindex->nChainTx == 0 && prev_chain_tx == 0 && pindex->pprev)
- // Transaction counts prior to snapshot are unknown.
- || pindex->IsAssumedValid());
-
if (pindexFirstAssumeValid == nullptr && pindex->nStatus & BLOCK_ASSUMED_VALID) pindexFirstAssumeValid = pindex;
if (pindexFirstInvalid == nullptr && pindex->nStatus & BLOCK_FAILED_VALID) pindexFirstInvalid = pindex;
if (pindexFirstMissing == nullptr && !(pindex->nStatus & BLOCK_HAVE_DATA)) {
@@ -4954,6 +4962,15 @@ void ChainstateManager::CheckBlockIndex()
// Checks for not-invalid blocks.
assert((pindex->nStatus & BLOCK_FAILED_MASK) == 0); // The failed mask cannot be set for blocks without invalid parents.
}
+ // Make sure nChainTx sum is correctly computed.
+ unsigned int prev_chain_tx = pindex->pprev ? pindex->pprev->nChainTx : 0;
+ assert((pindex->nChainTx == pindex->nTx + prev_chain_tx)
+ // Transaction may be completely unset - happens if only the header was accepted but the block hasn't been processed.
+ || (pindex->nChainTx == 0 && pindex->nTx == 0)
+ // nChainTx may be unset, but nTx set (if a block has been accepted, but one of its predecessors hasn't been processed yet)
+ || (pindex->nChainTx == 0 && prev_chain_tx == 0 && pindex->pprev)
+ // Transaction counts prior to snapshot are unknown.
+ || pindex->IsAssumedValid());
// Chainstate-specific checks on setBlockIndexCandidates
for (auto c : GetAll()) {
if (c->m_chain.Tip() == nullptr) continue;
@@ -5781,7 +5798,6 @@ static ChainstateManager::Options&& Flatten(ChainstateManager::Options&& opts)
if (!opts.check_block_index.has_value()) opts.check_block_index = opts.chainparams.DefaultConsistencyChecks();
if (!opts.minimum_chain_work.has_value()) opts.minimum_chain_work = UintToArith256(opts.chainparams.GetConsensus().nMinimumChainWork);
if (!opts.assumed_valid_block.has_value()) opts.assumed_valid_block = opts.chainparams.GetConsensus().defaultAssumeValid;
- Assert(opts.adjusted_time_callback);
return std::move(opts);
}
diff --git a/src/validation.h b/src/validation.h
index 093cecfcd1..fd9b53df8f 100644
--- a/src/validation.h
+++ b/src/validation.h
@@ -377,7 +377,6 @@ bool TestBlockValidity(BlockValidationState& state,
Chainstate& chainstate,
const CBlock& block,
CBlockIndex* pindexPrev,
- const std::function<NodeClock::time_point()>& adjusted_time_callback,
bool fCheckPOW = true,
bool fCheckMerkleRoot = true) EXCLUSIVE_LOCKS_REQUIRED(cs_main);
diff --git a/src/wallet/bdb.cpp b/src/wallet/bdb.cpp
index cbf6c9b1ea..38cca32f80 100644
--- a/src/wallet/bdb.cpp
+++ b/src/wallet/bdb.cpp
@@ -887,7 +887,12 @@ bool BerkeleyBatch::HasKey(DataStream&& key)
bool BerkeleyBatch::ErasePrefix(Span<const std::byte> prefix)
{
- if (!TxnBegin()) return false;
+ // Because this function erases records one by one, ensure that it is executed within a txn context.
+ // Otherwise, consistency is at risk; it's possible that certain records are removed while others
+ // remain due to an internal failure during the procedure.
+ // Additionally, the Dbc::del() cursor delete call below would fail without an active transaction.
+ if (!Assume(activeTxn)) return false;
+
auto cursor{std::make_unique<BerkeleyCursor>(m_database, *this)};
// const_cast is safe below even though prefix_key is an in/out parameter,
// because we are not using the DB_DBT_USERMEM flag, so BDB will allocate
@@ -901,7 +906,7 @@ bool BerkeleyBatch::ErasePrefix(Span<const std::byte> prefix)
ret = cursor->dbc()->del(0);
}
cursor.reset();
- return TxnCommit() && (ret == 0 || ret == DB_NOTFOUND);
+ return ret == 0 || ret == DB_NOTFOUND;
}
void BerkeleyDatabase::AddRef()
diff --git a/src/wallet/coinselection.cpp b/src/wallet/coinselection.cpp
index 391e120932..42615b5d42 100644
--- a/src/wallet/coinselection.cpp
+++ b/src/wallet/coinselection.cpp
@@ -25,14 +25,30 @@ static util::Result<SelectionResult> ErrorMaxWeightExceeded()
"Please try sending a smaller amount or manually consolidating your wallet's UTXOs")};
}
-// Descending order comparator
+// Sort by descending (effective) value prefer lower waste on tie
struct {
bool operator()(const OutputGroup& a, const OutputGroup& b) const
{
+ if (a.GetSelectionAmount() == b.GetSelectionAmount()) {
+ // Lower waste is better when effective_values are tied
+ return (a.fee - a.long_term_fee) < (b.fee - b.long_term_fee);
+ }
return a.GetSelectionAmount() > b.GetSelectionAmount();
}
} descending;
+// Sort by descending (effective) value prefer lower weight on tie
+struct {
+ bool operator()(const OutputGroup& a, const OutputGroup& b) const
+ {
+ if (a.GetSelectionAmount() == b.GetSelectionAmount()) {
+ // Sort lower weight to front on tied effective_value
+ return a.m_weight < b.m_weight;
+ }
+ return a.GetSelectionAmount() > b.GetSelectionAmount();
+ }
+} descending_effval_weight;
+
/*
* This is the Branch and Bound Coin Selection algorithm designed by Murch. It searches for an input
* set that can pay for the spending target and does not exceed the spending target by more than the
@@ -68,6 +84,7 @@ struct {
* bound of the range.
* @param const CAmount& cost_of_change This is the cost of creating and spending a change output.
* This plus selection_target is the upper bound of the range.
+ * @param int max_weight The maximum weight available for the input set.
* @returns The result of this coin selection algorithm, or std::nullopt
*/
@@ -183,6 +200,331 @@ util::Result<SelectionResult> SelectCoinsBnB(std::vector<OutputGroup>& utxo_pool
return result;
}
+/*
+ * TL;DR: Coin Grinder is a DFS-based algorithm that deterministically searches for the minimum-weight input set to fund
+ * the transaction. The algorithm is similar to the Branch and Bound algorithm, but will produce a transaction _with_ a
+ * change output instead of a changeless transaction.
+ *
+ * Full description: CoinGrinder can be thought of as a graph walking algorithm. It explores a binary tree
+ * representation of the powerset of the UTXO pool. Each node in the tree represents a candidate input set. The tree’s
+ * root is the empty set. Each node in the tree has two children which are formed by either adding or skipping the next
+ * UTXO ("inclusion/omission branch"). Each level in the tree after the root corresponds to a decision about one UTXO in
+ * the UTXO pool.
+ *
+ * Example:
+ * We represent UTXOs as _alias=[effective_value/weight]_ and indicate omitted UTXOs with an underscore. Given a UTXO
+ * pool {A=[10/2], B=[7/1], C=[5/1], D=[4/2]} sorted by descending effective value, our search tree looks as follows:
+ *
+ * _______________________ {} ________________________
+ * / \
+ * A=[10/2] __________ {A} _________ __________ {_} _________
+ * / \ / \
+ * B=[7/1] {AB} _ {A_} _ {_B} _ {__} _
+ * / \ / \ / \ / \
+ * C=[5/1] {ABC} {AB_} {A_C} {A__} {_BC} {_B_} {__C} {___}
+ * / \ / \ / \ / \ / \ / \ / \ / \
+ * D=[4/2] {ABCD} {ABC_} {AB_D} {AB__} {A_CD} {A_C_} {A__D} {A___} {_BCD} {_BC_} {_B_D} {_B__} {__CD} {__C_} {___D} {____}
+ *
+ *
+ * CoinGrinder uses a depth-first search to walk this tree. It first tries inclusion branches, then omission branches. A
+ * naive exploration of a tree with four UTXOs requires visiting all 31 nodes:
+ *
+ * {} {A} {AB} {ABC} {ABCD} {ABC_} {AB_} {AB_D} {AB__} {A_} {A_C} {A_CD} {A_C_} {A__} {A__D} {A___} {_} {_B} {_BC}
+ * {_BCD} {_BC_} {_B_} {_B_D} {_B__} {__} {__C} {__CD} {__C} {___} {___D} {____}
+ *
+ * As powersets grow exponentially with the set size, walking the entire tree would quickly get computationally
+ * infeasible with growing UTXO pools. Thanks to traversing the tree in a deterministic order, we can keep track of the
+ * progress of the search solely on basis of the current selection (and the best selection so far). We visit as few
+ * nodes as possible by recognizing and skipping any branches that can only contain solutions worse than the best
+ * solution so far. This makes CoinGrinder a branch-and-bound algorithm
+ * (https://en.wikipedia.org/wiki/Branch_and_bound).
+ * CoinGrinder is searching for the input set with lowest weight that can fund a transaction, so for example we can only
+ * ever find a _better_ candidate input set in a node that adds a UTXO, but never in a node that skips a UTXO. After
+ * visiting {A} and exploring the inclusion branch {AB} and its descendants, the candidate input set in the omission
+ * branch {A_} is equivalent to the parent {A} in effective value and weight. While CoinGrinder does need to visit the
+ * descendants of the omission branch {A_}, it is unnecessary to evaluate the candidate input set in the omission branch
+ * itself. By skipping evaluation of all nodes on an omission branch we reduce the visited nodes to 15:
+ *
+ * {A} {AB} {ABC} {ABCD} {AB_D} {A_C} {A_CD} {A__D} {_B} {_BC} {_BCD} {_B_D} {__C} {__CD} {___D}
+ *
+ * _______________________ {} ________________________
+ * / \
+ * A=[10/2] __________ {A} _________ ___________\____________
+ * / \ / \
+ * B=[7/1] {AB} __ __\_____ {_B} __ __\_____
+ * / \ / \ / \ / \
+ * C=[5/1] {ABC} \ {A_C} \ {_BC} \ {__C} \
+ * / / / / / / / /
+ * D=[4/2] {ABCD} {AB_D} {A_CD} {A__D} {_BCD} {_B_D} {__CD} {___D}
+ *
+ *
+ * We refer to the move from the inclusion branch {AB} via the omission branch {A_} to its inclusion-branch child {A_C}
+ * as _shifting to the omission branch_ or just _SHIFT_. (The index of the ultimate element in the candidate input set
+ * shifts right by one: {AB} ⇒ {A_C}.)
+ * When we reach a leaf node in the last level of the tree, shifting to the omission branch is not possible. Instead we
+ * go to the omission branch of the node’s last ancestor on an inclusion branch: from {ABCD}, we go to {AB_D}. From
+ * {AB_D}, we go to {A_C}. We refer to this operation as a _CUT_. (The ultimate element in
+ * the input set is deselected, and the penultimate element is shifted right by one: {AB_D} ⇒ {A_C}.)
+ * If a candidate input set in a node has not selected sufficient funds to build the transaction, we continue directly
+ * along the next inclusion branch. We call this operation _EXPLORE_. (We go from one inclusion branch to the next
+ * inclusion branch: {_B} ⇒ {_BC}.)
+ * Further, any prefix that already has selected sufficient effective value to fund the transaction cannot be improved
+ * by adding more UTXOs. If for example the candidate input set in {AB} is a valid solution, all potential descendant
+ * solutions {ABC}, {ABCD}, and {AB_D} must have a higher weight, thus instead of exploring the descendants of {AB}, we
+ * can SHIFT from {AB} to {A_C}.
+ *
+ * Given the above UTXO set, using a target of 11, and following these initial observations, the basic implementation of
+ * CoinGrinder visits the following 10 nodes:
+ *
+ * Node [eff_val/weight] Evaluation
+ * ---------------------------------------------------------------
+ * {A} [10/2] Insufficient funds: EXPLORE
+ * {AB} [17/3] Solution: SHIFT to omission branch
+ * {A_C} [15/3] Better solution: SHIFT to omission branch
+ * {A__D} [14/4] Worse solution, shift impossible due to leaf node: CUT to omission branch of {A__D},
+ * i.e. SHIFT to omission branch of {A}
+ * {_B} [7/1] Insufficient funds: EXPLORE
+ * {_BC} [12/2] Better solution: SHIFT to omission branch
+ * {_B_D} [11/3] Worse solution, shift impossible due to leaf node: CUT to omission branch of {_B_D},
+ * i.e. SHIFT to omission branch of {_B}
+ * {__C} [5/1] Insufficient funds: EXPLORE
+ * {__CD} [9/3] Insufficient funds, leaf node: CUT
+ * {___D} [4/2] Insufficient funds, leaf node, cannot CUT since only one UTXO selected: done.
+ *
+ * _______________________ {} ________________________
+ * / \
+ * A=[10/2] __________ {A} _________ ___________\____________
+ * / \ / \
+ * B=[7/1] {AB} __\_____ {_B} __ __\_____
+ * / \ / \ / \
+ * C=[5/1] {A_C} \ {_BC} \ {__C} \
+ * / / / /
+ * D=[4/2] {A__D} {_B_D} {__CD} {___D}
+ *
+ *
+ * We implement this tree walk in the following algorithm:
+ * 1. Add `next_utxo`
+ * 2. Evaluate candidate input set
+ * 3. Determine `next_utxo` by deciding whether to
+ * a) EXPLORE: Add next inclusion branch, e.g. {_B} ⇒ {_B} + `next_uxto`: C
+ * b) SHIFT: Replace last selected UTXO by next higher index, e.g. {A_C} ⇒ {A__} + `next_utxo`: D
+ * c) CUT: deselect last selected UTXO and shift to omission branch of penultimate UTXO, e.g. {AB_D} ⇒ {A_} + `next_utxo: C
+ *
+ * The implementation then adds further optimizations by discovering further situations in which either the inclusion
+ * branch can be skipped, or both the inclusion and omission branch can be skipped after evaluating the candidate input
+ * set in the node.
+ *
+ * @param std::vector<OutputGroup>& utxo_pool The UTXOs that we are choosing from. These UTXOs will be sorted in
+ * descending order by effective value, with lower weight preferred as a tie-breaker. (We can think of an output
+ * group with multiple as a heavier UTXO with the combined amount here.)
+ * @param const CAmount& selection_target This is the minimum amount that we need for the transaction without considering change.
+ * @param const CAmount& change_target The minimum budget for creating a change output, by which we increase the selection_target.
+ * @param int max_weight The maximum permitted weight for the input set.
+ * @returns The result of this coin selection algorithm, or std::nullopt
+ */
+util::Result<SelectionResult> CoinGrinder(std::vector<OutputGroup>& utxo_pool, const CAmount& selection_target, CAmount change_target, int max_weight)
+{
+ std::sort(utxo_pool.begin(), utxo_pool.end(), descending_effval_weight);
+ // The sum of UTXO amounts after this UTXO index, e.g. lookahead[5] = Σ(UTXO[6+].amount)
+ std::vector<CAmount> lookahead(utxo_pool.size());
+ // The minimum UTXO weight among the remaining UTXOs after this UTXO index, e.g. min_tail_weight[5] = min(UTXO[6+].weight)
+ std::vector<int> min_tail_weight(utxo_pool.size());
+
+ // Calculate lookahead values, min_tail_weights, and check that there are sufficient funds
+ CAmount total_available = 0;
+ int min_group_weight = std::numeric_limits<int>::max();
+ for (size_t i = 0; i < utxo_pool.size(); ++i) {
+ size_t index = utxo_pool.size() - 1 - i; // Loop over every element in reverse order
+ lookahead[index] = total_available;
+ min_tail_weight[index] = min_group_weight;
+ // UTXOs with non-positive effective value must have been filtered
+ Assume(utxo_pool[index].GetSelectionAmount() > 0);
+ total_available += utxo_pool[index].GetSelectionAmount();
+ min_group_weight = std::min(min_group_weight, utxo_pool[index].m_weight);
+ }
+
+ const CAmount total_target = selection_target + change_target;
+ if (total_available < total_target) {
+ // Insufficient funds
+ return util::Error();
+ }
+
+ // The current selection and the best input set found so far, stored as the utxo_pool indices of the UTXOs forming them
+ std::vector<size_t> curr_selection;
+ std::vector<size_t> best_selection;
+
+ // The currently selected effective amount, and the effective amount of the best selection so far
+ CAmount curr_amount = 0;
+ CAmount best_selection_amount = MAX_MONEY;
+
+ // The weight of the currently selected input set, and the weight of the best selection
+ int curr_weight = 0;
+ int best_selection_weight = max_weight; // Tie is fine, because we prefer lower selection amount
+
+ // Whether the input sets generated during this search have exceeded the maximum transaction weight at any point
+ bool max_tx_weight_exceeded = false;
+
+ // Index of the next UTXO to consider in utxo_pool
+ size_t next_utxo = 0;
+
+ /*
+ * You can think of the current selection as a vector of booleans that has decided inclusion or exclusion of all
+ * UTXOs before `next_utxo`. When we consider the next UTXO, we extend this hypothetical boolean vector either with
+ * a true value if the UTXO is included or a false value if it is omitted. The equivalent state is stored more
+ * compactly as the list of indices of the included UTXOs and the `next_utxo` index.
+ *
+ * We can never find a new solution by deselecting a UTXO, because we then revisit a previously evaluated
+ * selection. Therefore, we only need to check whether we found a new solution _after adding_ a new UTXO.
+ *
+ * Each iteration of CoinGrinder starts by selecting the `next_utxo` and evaluating the current selection. We
+ * use three state transitions to progress from the current selection to the next promising selection:
+ *
+ * - EXPLORE inclusion branch: We do not have sufficient funds, yet. Add `next_utxo` to the current selection, then
+ * nominate the direct successor of the just selected UTXO as our `next_utxo` for the
+ * following iteration.
+ *
+ * Example:
+ * Current Selection: {0, 5, 7}
+ * Evaluation: EXPLORE, next_utxo: 8
+ * Next Selection: {0, 5, 7, 8}
+ *
+ * - SHIFT to omission branch: Adding more UTXOs to the current selection cannot produce a solution that is better
+ * than the current best, e.g. the current selection weight exceeds the max weight or
+ * the current selection amount is equal to or greater than the target.
+ * We designate our `next_utxo` the one after the tail of our current selection, then
+ * deselect the tail of our current selection.
+ *
+ * Example:
+ * Current Selection: {0, 5, 7}
+ * Evaluation: SHIFT, next_utxo: 8, omit last selected: {0, 5}
+ * Next Selection: {0, 5, 8}
+ *
+ * - CUT entire subtree: We have exhausted the inclusion branch for the penultimately selected UTXO, both the
+ * inclusion and the omission branch of the current prefix are barren. E.g. we have
+ * reached the end of the UTXO pool, so neither further EXPLORING nor SHIFTING can find
+ * any solutions. We designate our `next_utxo` the one after our penultimate selected,
+ * then deselect both the last and penultimate selected.
+ *
+ * Example:
+ * Current Selection: {0, 5, 7}
+ * Evaluation: CUT, next_utxo: 6, omit two last selected: {0}
+ * Next Selection: {0, 6}
+ */
+ auto deselect_last = [&]() {
+ OutputGroup& utxo = utxo_pool[curr_selection.back()];
+ curr_amount -= utxo.GetSelectionAmount();
+ curr_weight -= utxo.m_weight;
+ curr_selection.pop_back();
+ };
+
+ SelectionResult result(selection_target, SelectionAlgorithm::CG);
+ bool is_done = false;
+ size_t curr_try = 0;
+ while (!is_done) {
+ bool should_shift{false}, should_cut{false};
+ // Select `next_utxo`
+ OutputGroup& utxo = utxo_pool[next_utxo];
+ curr_amount += utxo.GetSelectionAmount();
+ curr_weight += utxo.m_weight;
+ curr_selection.push_back(next_utxo);
+ ++next_utxo;
+ ++curr_try;
+
+ // EVALUATE current selection: check for solutions and see whether we can CUT or SHIFT before EXPLORING further
+ auto curr_tail = curr_selection.back();
+ if (curr_amount + lookahead[curr_tail] < total_target) {
+ // Insufficient funds with lookahead: CUT
+ should_cut = true;
+ } else if (curr_weight > best_selection_weight) {
+ // best_selection_weight is initialized to max_weight
+ if (curr_weight > max_weight) max_tx_weight_exceeded = true;
+ // Worse weight than best solution. More UTXOs only increase weight:
+ // CUT if last selected group had minimal weight, else SHIFT
+ if (utxo_pool[curr_tail].m_weight <= min_tail_weight[curr_tail]) {
+ should_cut = true;
+ } else {
+ should_shift = true;
+ }
+ } else if (curr_amount >= total_target) {
+ // Success, adding more weight cannot be better: SHIFT
+ should_shift = true;
+ if (curr_weight < best_selection_weight || (curr_weight == best_selection_weight && curr_amount < best_selection_amount)) {
+ // New lowest weight, or same weight with fewer funds tied up
+ best_selection = curr_selection;
+ best_selection_weight = curr_weight;
+ best_selection_amount = curr_amount;
+ }
+ } else if (!best_selection.empty() && curr_weight + int64_t{min_tail_weight[curr_tail]} * ((total_target - curr_amount + utxo_pool[curr_tail].GetSelectionAmount() - 1) / utxo_pool[curr_tail].GetSelectionAmount()) > best_selection_weight) {
+ // Compare minimal tail weight and last selected amount with the amount missing to gauge whether a better weight is still possible.
+ if (utxo_pool[curr_tail].m_weight <= min_tail_weight[curr_tail]) {
+ should_cut = true;
+ } else {
+ should_shift = true;
+ }
+ }
+
+ if (curr_try >= TOTAL_TRIES) {
+ // Solution is not guaranteed to be optimal if `curr_try` hit TOTAL_TRIES
+ result.SetAlgoCompleted(false);
+ break;
+ }
+
+ if (next_utxo == utxo_pool.size()) {
+ // Last added UTXO was end of UTXO pool, nothing left to add on inclusion or omission branch: CUT
+ should_cut = true;
+ }
+
+ if (should_cut) {
+ // Neither adding to the current selection nor exploring the omission branch of the last selected UTXO can
+ // find any solutions. Redirect to exploring the Omission branch of the penultimate selected UTXO (i.e.
+ // set `next_utxo` to one after the penultimate selected, then deselect the last two selected UTXOs)
+ should_cut = false;
+ deselect_last();
+ should_shift = true;
+ }
+
+ while (should_shift) {
+ // Set `next_utxo` to one after last selected, then deselect last selected UTXO
+ if (curr_selection.empty()) {
+ // Exhausted search space before running into attempt limit
+ is_done = true;
+ result.SetAlgoCompleted(true);
+ break;
+ }
+ next_utxo = curr_selection.back() + 1;
+ deselect_last();
+ should_shift = false;
+
+ // After SHIFTing to an omission branch, the `next_utxo` might have the same effective value as the UTXO we
+ // just omitted. Since lower weight is our tiebreaker on UTXOs with equal effective value for sorting, if it
+ // ties on the effective value, it _must_ have the same weight (i.e. be a "clone" of the prior UTXO) or a
+ // higher weight. If so, selecting `next_utxo` would produce an equivalent or worse selection as one we
+ // previously evaluated. In that case, increment `next_utxo` until we find a UTXO with a differing amount.
+ while (utxo_pool[next_utxo - 1].GetSelectionAmount() == utxo_pool[next_utxo].GetSelectionAmount()) {
+ if (next_utxo >= utxo_pool.size() - 1) {
+ // Reached end of UTXO pool skipping clones: SHIFT instead
+ should_shift = true;
+ break;
+ }
+ // Skip clone: previous UTXO is equivalent and unselected
+ ++next_utxo;
+ }
+ }
+ }
+
+ result.SetSelectionsEvaluated(curr_try);
+
+ if (best_selection.empty()) {
+ return max_tx_weight_exceeded ? ErrorMaxWeightExceeded() : util::Error();
+ }
+
+ for (const size_t& i : best_selection) {
+ result.AddInput(utxo_pool[i]);
+ }
+
+ return result;
+}
+
class MinOutputGroupComparator
{
public:
@@ -509,6 +851,26 @@ void SelectionResult::ComputeAndSetWaste(const CAmount min_viable_change, const
}
}
+void SelectionResult::SetAlgoCompleted(bool algo_completed)
+{
+ m_algo_completed = algo_completed;
+}
+
+bool SelectionResult::GetAlgoCompleted() const
+{
+ return m_algo_completed;
+}
+
+void SelectionResult::SetSelectionsEvaluated(size_t attempts)
+{
+ m_selections_evaluated = attempts;
+}
+
+size_t SelectionResult::GetSelectionsEvaluated() const
+{
+ return m_selections_evaluated;
+}
+
CAmount SelectionResult::GetWaste() const
{
return *Assert(m_waste);
@@ -602,6 +964,7 @@ std::string GetAlgorithmName(const SelectionAlgorithm algo)
case SelectionAlgorithm::BNB: return "bnb";
case SelectionAlgorithm::KNAPSACK: return "knapsack";
case SelectionAlgorithm::SRD: return "srd";
+ case SelectionAlgorithm::CG: return "cg";
case SelectionAlgorithm::MANUAL: return "manual";
// No default case to allow for compiler to warn
}
diff --git a/src/wallet/coinselection.h b/src/wallet/coinselection.h
index 20b2461c04..80c92e1b0e 100644
--- a/src/wallet/coinselection.h
+++ b/src/wallet/coinselection.h
@@ -142,8 +142,8 @@ struct CoinSelectionParams {
size_t change_output_size = 0;
/** Size of the input to spend a change output in virtual bytes. */
size_t change_spend_size = 0;
- /** Mininmum change to target in Knapsack solver: select coins to cover the payment and
- * at least this value of change. */
+ /** Mininmum change to target in Knapsack solver and CoinGrinder:
+ * select coins to cover the payment and at least this value of change. */
CAmount m_min_change_target{0};
/** Minimum amount for creating a change output.
* If change budget is smaller than min_change then we forgo creation of change output.
@@ -311,7 +311,8 @@ enum class SelectionAlgorithm : uint8_t
BNB = 0,
KNAPSACK = 1,
SRD = 2,
- MANUAL = 3,
+ CG = 3,
+ MANUAL = 4,
};
std::string GetAlgorithmName(const SelectionAlgorithm algo);
@@ -329,6 +330,10 @@ private:
bool m_use_effective{false};
/** The computed waste */
std::optional<CAmount> m_waste;
+ /** False if algorithm was cut short by hitting limit of attempts and solution is non-optimal */
+ bool m_algo_completed{true};
+ /** The count of selections that were evaluated by this coin selection attempt */
+ size_t m_selections_evaluated;
/** Total weight of the selected inputs */
int m_weight{0};
/** How much individual inputs overestimated the bump fees for the shared ancestry */
@@ -386,6 +391,18 @@ public:
void ComputeAndSetWaste(const CAmount min_viable_change, const CAmount change_cost, const CAmount change_fee);
[[nodiscard]] CAmount GetWaste() const;
+ /** Tracks that algorithm was able to exhaustively search the entire combination space before hitting limit of tries */
+ void SetAlgoCompleted(bool algo_completed);
+
+ /** Get m_algo_completed */
+ bool GetAlgoCompleted() const;
+
+ /** Record the number of selections that were evaluated */
+ void SetSelectionsEvaluated(size_t attempts);
+
+ /** Get selections_evaluated */
+ size_t GetSelectionsEvaluated() const ;
+
/**
* Combines the @param[in] other selection result into 'this' selection result.
*
@@ -430,6 +447,8 @@ public:
util::Result<SelectionResult> SelectCoinsBnB(std::vector<OutputGroup>& utxo_pool, const CAmount& selection_target, const CAmount& cost_of_change,
int max_weight);
+util::Result<SelectionResult> CoinGrinder(std::vector<OutputGroup>& utxo_pool, const CAmount& selection_target, CAmount change_target, int max_weight);
+
/** Select coins by Single Random Draw. OutputGroups are selected randomly from the eligible
* outputs until the target is satisfied
*
diff --git a/src/wallet/db.h b/src/wallet/db.h
index c263f54144..084fcadc24 100644
--- a/src/wallet/db.h
+++ b/src/wallet/db.h
@@ -20,7 +20,6 @@ class ArgsManager;
struct bilingual_str;
namespace wallet {
-void SplitWalletPath(const fs::path& wallet_path, fs::path& env_directory, std::string& database_filename);
class DatabaseCursor
{
diff --git a/src/wallet/rpc/backup.cpp b/src/wallet/rpc/backup.cpp
index 99c548bf1d..873ebcadfd 100644
--- a/src/wallet/rpc/backup.cpp
+++ b/src/wallet/rpc/backup.cpp
@@ -394,14 +394,8 @@ RPCHelpMan removeprunedfunds()
uint256 hash(ParseHashV(request.params[0], "txid"));
std::vector<uint256> vHash;
vHash.push_back(hash);
- std::vector<uint256> vHashOut;
-
- if (pwallet->ZapSelectTx(vHash, vHashOut) != DBErrors::LOAD_OK) {
- throw JSONRPCError(RPC_WALLET_ERROR, "Could not properly delete the transaction.");
- }
-
- if(vHashOut.empty()) {
- throw JSONRPCError(RPC_INVALID_PARAMETER, "Transaction does not exist in wallet.");
+ if (auto res = pwallet->RemoveTxs(vHash); !res) {
+ throw JSONRPCError(RPC_WALLET_ERROR, util::ErrorString(res).original);
}
return UniValue::VNULL;
diff --git a/src/wallet/rpc/spend.cpp b/src/wallet/rpc/spend.cpp
index 5a13b5ac8e..6060f017ce 100644
--- a/src/wallet/rpc/spend.cpp
+++ b/src/wallet/rpc/spend.cpp
@@ -24,34 +24,15 @@
namespace wallet {
-static void ParseRecipients(const UniValue& address_amounts, const UniValue& subtract_fee_outputs, std::vector<CRecipient>& recipients)
+std::vector<CRecipient> CreateRecipients(const std::vector<std::pair<CTxDestination, CAmount>>& outputs, const std::set<int>& subtract_fee_outputs)
{
- std::set<CTxDestination> destinations;
- int i = 0;
- for (const std::string& address: address_amounts.getKeys()) {
- CTxDestination dest = DecodeDestination(address);
- if (!IsValidDestination(dest)) {
- throw JSONRPCError(RPC_INVALID_ADDRESS_OR_KEY, std::string("Invalid Bitcoin address: ") + address);
- }
-
- if (destinations.count(dest)) {
- throw JSONRPCError(RPC_INVALID_PARAMETER, std::string("Invalid parameter, duplicated address: ") + address);
- }
- destinations.insert(dest);
-
- CAmount amount = AmountFromValue(address_amounts[i++]);
-
- bool subtract_fee = false;
- for (unsigned int idx = 0; idx < subtract_fee_outputs.size(); idx++) {
- const UniValue& addr = subtract_fee_outputs[idx];
- if (addr.get_str() == address) {
- subtract_fee = true;
- }
- }
-
- CRecipient recipient = {dest, amount, subtract_fee};
+ std::vector<CRecipient> recipients;
+ for (size_t i = 0; i < outputs.size(); ++i) {
+ const auto& [destination, amount] = outputs.at(i);
+ CRecipient recipient{destination, amount, subtract_fee_outputs.contains(i)};
recipients.push_back(recipient);
}
+ return recipients;
}
static void InterpretFeeEstimationInstructions(const UniValue& conf_target, const UniValue& estimate_mode, const UniValue& fee_rate, UniValue& options)
@@ -76,6 +57,37 @@ static void InterpretFeeEstimationInstructions(const UniValue& conf_target, cons
}
}
+std::set<int> InterpretSubtractFeeFromOutputInstructions(const UniValue& sffo_instructions, const std::vector<std::string>& destinations)
+{
+ std::set<int> sffo_set;
+ if (sffo_instructions.isNull()) return sffo_set;
+ if (sffo_instructions.isBool()) {
+ if (sffo_instructions.get_bool()) sffo_set.insert(0);
+ return sffo_set;
+ }
+ for (const auto& sffo : sffo_instructions.getValues()) {
+ if (sffo.isStr()) {
+ for (size_t i = 0; i < destinations.size(); ++i) {
+ if (sffo.get_str() == destinations.at(i)) {
+ sffo_set.insert(i);
+ break;
+ }
+ }
+ }
+ if (sffo.isNum()) {
+ int pos = sffo.getInt<int>();
+ if (sffo_set.contains(pos))
+ throw JSONRPCError(RPC_INVALID_PARAMETER, strprintf("Invalid parameter, duplicated position: %d", pos));
+ if (pos < 0)
+ throw JSONRPCError(RPC_INVALID_PARAMETER, strprintf("Invalid parameter, negative position: %d", pos));
+ if (pos >= int(destinations.size()))
+ throw JSONRPCError(RPC_INVALID_PARAMETER, strprintf("Invalid parameter, position too large: %d", pos));
+ sffo_set.insert(pos);
+ }
+ }
+ return sffo_set;
+}
+
static UniValue FinishTransaction(const std::shared_ptr<CWallet> pwallet, const UniValue& options, const CMutableTransaction& rawTx)
{
// Make a blank psbt
@@ -275,11 +287,6 @@ RPCHelpMan sendtoaddress()
if (!request.params[3].isNull() && !request.params[3].get_str().empty())
mapValue["to"] = request.params[3].get_str();
- bool fSubtractFeeFromAmount = false;
- if (!request.params[4].isNull()) {
- fSubtractFeeFromAmount = request.params[4].get_bool();
- }
-
CCoinControl coin_control;
if (!request.params[5].isNull()) {
coin_control.m_signal_bip125_rbf = request.params[5].get_bool();
@@ -296,13 +303,10 @@ RPCHelpMan sendtoaddress()
UniValue address_amounts(UniValue::VOBJ);
const std::string address = request.params[0].get_str();
address_amounts.pushKV(address, request.params[1]);
- UniValue subtractFeeFromAmount(UniValue::VARR);
- if (fSubtractFeeFromAmount) {
- subtractFeeFromAmount.push_back(address);
- }
-
- std::vector<CRecipient> recipients;
- ParseRecipients(address_amounts, subtractFeeFromAmount, recipients);
+ std::vector<CRecipient> recipients = CreateRecipients(
+ ParseOutputs(address_amounts),
+ InterpretSubtractFeeFromOutputInstructions(request.params[4], address_amounts.getKeys())
+ );
const bool verbose{request.params[10].isNull() ? false : request.params[10].get_bool()};
return SendMoney(*pwallet, coin_control, recipients, mapValue, verbose);
@@ -386,10 +390,6 @@ RPCHelpMan sendmany()
if (!request.params[3].isNull() && !request.params[3].get_str().empty())
mapValue["comment"] = request.params[3].get_str();
- UniValue subtractFeeFromAmount(UniValue::VARR);
- if (!request.params[4].isNull())
- subtractFeeFromAmount = request.params[4].get_array();
-
CCoinControl coin_control;
if (!request.params[5].isNull()) {
coin_control.m_signal_bip125_rbf = request.params[5].get_bool();
@@ -397,8 +397,10 @@ RPCHelpMan sendmany()
SetFeeEstimateMode(*pwallet, coin_control, /*conf_target=*/request.params[6], /*estimate_mode=*/request.params[7], /*fee_rate=*/request.params[8], /*override_min_fee=*/false);
- std::vector<CRecipient> recipients;
- ParseRecipients(sendTo, subtractFeeFromAmount, recipients);
+ std::vector<CRecipient> recipients = CreateRecipients(
+ ParseOutputs(sendTo),
+ InterpretSubtractFeeFromOutputInstructions(request.params[4], sendTo.getKeys())
+ );
const bool verbose{request.params[9].isNull() ? false : request.params[9].get_bool()};
return SendMoney(*pwallet, coin_control, recipients, std::move(mapValue), verbose);
@@ -488,17 +490,17 @@ static std::vector<RPCArg> FundTxDoc(bool solving_data = true)
return args;
}
-CreatedTransactionResult FundTransaction(CWallet& wallet, const CMutableTransaction& tx, const UniValue& options, CCoinControl& coinControl, bool override_min_fee)
+CreatedTransactionResult FundTransaction(CWallet& wallet, const CMutableTransaction& tx, const std::vector<CRecipient>& recipients, const UniValue& options, CCoinControl& coinControl, bool override_min_fee)
{
+ // We want to make sure tx.vout is not used now that we are passing outputs as a vector of recipients.
+ // This sets us up to remove tx completely in a future PR in favor of passing the inputs directly.
+ CHECK_NONFATAL(tx.vout.empty());
// Make sure the results are valid at least up to the most recent block
// the user could have gotten from another RPC command prior to now
wallet.BlockUntilSyncedToCurrentChain();
std::optional<unsigned int> change_position;
bool lockUnspents = false;
- UniValue subtractFeeFromOutputs;
- std::set<int> setSubtractFeeFromOutputs;
-
if (!options.isNull()) {
if (options.type() == UniValue::VBOOL) {
// backward compatibility bool only fallback
@@ -553,7 +555,7 @@ CreatedTransactionResult FundTransaction(CWallet& wallet, const CMutableTransact
if (options.exists("changePosition") || options.exists("change_position")) {
int pos = (options.exists("change_position") ? options["change_position"] : options["changePosition"]).getInt<int>();
- if (pos < 0 || (unsigned int)pos > tx.vout.size()) {
+ if (pos < 0 || (unsigned int)pos > recipients.size()) {
throw JSONRPCError(RPC_INVALID_PARAMETER, "changePosition out of bounds");
}
change_position = (unsigned int)pos;
@@ -595,9 +597,6 @@ CreatedTransactionResult FundTransaction(CWallet& wallet, const CMutableTransact
coinControl.fOverrideFeeRate = true;
}
- if (options.exists("subtractFeeFromOutputs") || options.exists("subtract_fee_from_outputs") )
- subtractFeeFromOutputs = (options.exists("subtract_fee_from_outputs") ? options["subtract_fee_from_outputs"] : options["subtractFeeFromOutputs"]).get_array();
-
if (options.exists("replaceable")) {
coinControl.m_signal_bip125_rbf = options["replaceable"].get_bool();
}
@@ -703,21 +702,10 @@ CreatedTransactionResult FundTransaction(CWallet& wallet, const CMutableTransact
}
}
- if (tx.vout.size() == 0)
+ if (recipients.empty())
throw JSONRPCError(RPC_INVALID_PARAMETER, "TX must have at least one output");
- for (unsigned int idx = 0; idx < subtractFeeFromOutputs.size(); idx++) {
- int pos = subtractFeeFromOutputs[idx].getInt<int>();
- if (setSubtractFeeFromOutputs.count(pos))
- throw JSONRPCError(RPC_INVALID_PARAMETER, strprintf("Invalid parameter, duplicated position: %d", pos));
- if (pos < 0)
- throw JSONRPCError(RPC_INVALID_PARAMETER, strprintf("Invalid parameter, negative position: %d", pos));
- if (pos >= int(tx.vout.size()))
- throw JSONRPCError(RPC_INVALID_PARAMETER, strprintf("Invalid parameter, position too large: %d", pos));
- setSubtractFeeFromOutputs.insert(pos);
- }
-
- auto txr = FundTransaction(wallet, tx, change_position, lockUnspents, setSubtractFeeFromOutputs, coinControl);
+ auto txr = FundTransaction(wallet, tx, recipients, change_position, lockUnspents, coinControl);
if (!txr) {
throw JSONRPCError(RPC_WALLET_ERROR, ErrorString(txr).original);
}
@@ -843,11 +831,25 @@ RPCHelpMan fundrawtransaction()
if (!DecodeHexTx(tx, request.params[0].get_str(), try_no_witness, try_witness)) {
throw JSONRPCError(RPC_DESERIALIZATION_ERROR, "TX decode failed");
}
-
+ UniValue options = request.params[1];
+ std::vector<std::pair<CTxDestination, CAmount>> destinations;
+ for (const auto& tx_out : tx.vout) {
+ CTxDestination dest;
+ ExtractDestination(tx_out.scriptPubKey, dest);
+ destinations.emplace_back(dest, tx_out.nValue);
+ }
+ std::vector<std::string> dummy(destinations.size(), "dummy");
+ std::vector<CRecipient> recipients = CreateRecipients(
+ destinations,
+ InterpretSubtractFeeFromOutputInstructions(options["subtractFeeFromOutputs"], dummy)
+ );
CCoinControl coin_control;
// Automatically select (additional) coins. Can be overridden by options.add_inputs.
coin_control.m_allow_other_inputs = true;
- auto txr = FundTransaction(*pwallet, tx, request.params[1], coin_control, /*override_min_fee=*/true);
+ // Clear tx.vout since it is not meant to be used now that we are passing outputs directly.
+ // This sets us up for a future PR to completely remove tx from the function signature in favor of passing inputs directly
+ tx.vout.clear();
+ auto txr = FundTransaction(*pwallet, tx, recipients, options, coin_control, /*override_min_fee=*/true);
UniValue result(UniValue::VOBJ);
result.pushKV("hex", EncodeHexTx(*txr.tx));
@@ -1275,13 +1277,22 @@ RPCHelpMan send()
bool rbf{options.exists("replaceable") ? options["replaceable"].get_bool() : pwallet->m_signal_rbf};
+ UniValue outputs(UniValue::VOBJ);
+ outputs = NormalizeOutputs(request.params[0]);
+ std::vector<CRecipient> recipients = CreateRecipients(
+ ParseOutputs(outputs),
+ InterpretSubtractFeeFromOutputInstructions(options["subtract_fee_from_outputs"], outputs.getKeys())
+ );
CMutableTransaction rawTx = ConstructTransaction(options["inputs"], request.params[0], options["locktime"], rbf);
CCoinControl coin_control;
// Automatically select coins, unless at least one is manually selected. Can
// be overridden by options.add_inputs.
coin_control.m_allow_other_inputs = rawTx.vin.size() == 0;
SetOptionsInputWeights(options["inputs"], options);
- auto txr = FundTransaction(*pwallet, rawTx, options, coin_control, /*override_min_fee=*/false);
+ // Clear tx.vout since it is not meant to be used now that we are passing outputs directly.
+ // This sets us up for a future PR to completely remove tx from the function signature in favor of passing inputs directly
+ rawTx.vout.clear();
+ auto txr = FundTransaction(*pwallet, rawTx, recipients, options, coin_control, /*override_min_fee=*/false);
return FinishTransaction(pwallet, options, CMutableTransaction(*txr.tx));
}
@@ -1711,12 +1722,21 @@ RPCHelpMan walletcreatefundedpsbt()
const UniValue &replaceable_arg = options["replaceable"];
const bool rbf{replaceable_arg.isNull() ? wallet.m_signal_rbf : replaceable_arg.get_bool()};
CMutableTransaction rawTx = ConstructTransaction(request.params[0], request.params[1], request.params[2], rbf);
+ UniValue outputs(UniValue::VOBJ);
+ outputs = NormalizeOutputs(request.params[1]);
+ std::vector<CRecipient> recipients = CreateRecipients(
+ ParseOutputs(outputs),
+ InterpretSubtractFeeFromOutputInstructions(options["subtractFeeFromOutputs"], outputs.getKeys())
+ );
CCoinControl coin_control;
// Automatically select coins, unless at least one is manually selected. Can
// be overridden by options.add_inputs.
coin_control.m_allow_other_inputs = rawTx.vin.size() == 0;
SetOptionsInputWeights(request.params[0], options);
- auto txr = FundTransaction(wallet, rawTx, options, coin_control, /*override_min_fee=*/true);
+ // Clear tx.vout since it is not meant to be used now that we are passing outputs directly.
+ // This sets us up for a future PR to completely remove tx from the function signature in favor of passing inputs directly
+ rawTx.vout.clear();
+ auto txr = FundTransaction(wallet, rawTx, recipients, options, coin_control, /*override_min_fee=*/true);
// Make a blank psbt
PartiallySignedTransaction psbtx(CMutableTransaction(*txr.tx));
diff --git a/src/wallet/rpc/transactions.cpp b/src/wallet/rpc/transactions.cpp
index 0e30d3e0fe..e6c021d426 100644
--- a/src/wallet/rpc/transactions.cpp
+++ b/src/wallet/rpc/transactions.cpp
@@ -415,8 +415,8 @@ static std::vector<RPCResult> TransactionDescriptionString()
{
{RPCResult::Type::STR_HEX, "txid", "The transaction id."},
}},
- {RPCResult::Type::STR_HEX, "replaced_by_txid", /*optional=*/true, "The txid if this tx was replaced."},
- {RPCResult::Type::STR_HEX, "replaces_txid", /*optional=*/true, "The txid if the tx replaces one."},
+ {RPCResult::Type::STR_HEX, "replaced_by_txid", /*optional=*/true, "Only if 'category' is 'send'. The txid if this tx was replaced."},
+ {RPCResult::Type::STR_HEX, "replaces_txid", /*optional=*/true, "Only if 'category' is 'send'. The txid if this tx replaces another."},
{RPCResult::Type::STR, "to", /*optional=*/true, "If a comment to is associated with the transaction."},
{RPCResult::Type::NUM_TIME, "time", "The transaction time expressed in " + UNIX_EPOCH_TIME + "."},
{RPCResult::Type::NUM_TIME, "timereceived", "The time received expressed in " + UNIX_EPOCH_TIME + "."},
diff --git a/src/wallet/rpc/wallet.cpp b/src/wallet/rpc/wallet.cpp
index 391153a2a1..b57571fb03 100644
--- a/src/wallet/rpc/wallet.cpp
+++ b/src/wallet/rpc/wallet.cpp
@@ -748,13 +748,13 @@ RPCHelpMan simulaterawtransaction()
static RPCHelpMan migratewallet()
{
return RPCHelpMan{"migratewallet",
- "EXPERIMENTAL warning: This call may not work as expected and may be changed in future releases\n"
"\nMigrate the wallet to a descriptor wallet.\n"
"A new wallet backup will need to be made.\n"
"\nThe migration process will create a backup of the wallet before migrating. This backup\n"
"file will be named <wallet name>-<timestamp>.legacy.bak and can be found in the directory\n"
"for this wallet. In the event of an incorrect migration, the backup can be restored using restorewallet."
- "\nEncrypted wallets must have the passphrase provided as an argument to this call.",
+ "\nEncrypted wallets must have the passphrase provided as an argument to this call.\n"
+ "\nThis RPC may take a long time to complete. Increasing the RPC client timeout is recommended.",
{
{"wallet_name", RPCArg::Type::STR, RPCArg::DefaultHint{"the wallet name from the RPC endpoint"}, "The name of the wallet to migrate. If provided both here and in the RPC endpoint, the two must be identical."},
{"passphrase", RPCArg::Type::STR, RPCArg::Optional::OMITTED, "The wallet passphrase"},
diff --git a/src/wallet/scriptpubkeyman.cpp b/src/wallet/scriptpubkeyman.cpp
index 6bbe6a1647..e10a17f003 100644
--- a/src/wallet/scriptpubkeyman.cpp
+++ b/src/wallet/scriptpubkeyman.cpp
@@ -225,7 +225,7 @@ isminetype LegacyScriptPubKeyMan::IsMine(const CScript& script) const
assert(false);
}
-bool LegacyScriptPubKeyMan::CheckDecryptionKey(const CKeyingMaterial& master_key, bool accept_no_keys)
+bool LegacyScriptPubKeyMan::CheckDecryptionKey(const CKeyingMaterial& master_key)
{
{
LOCK(cs_KeyStore);
@@ -258,7 +258,7 @@ bool LegacyScriptPubKeyMan::CheckDecryptionKey(const CKeyingMaterial& master_key
LogPrintf("The wallet is probably corrupted: Some keys decrypt but not all.\n");
throw std::runtime_error("Error unlocking wallet: some keys decrypt but not all. Your wallet file may be corrupt.");
}
- if (keyFail || (!keyPass && !accept_no_keys))
+ if (keyFail || !keyPass)
return false;
fDecryptionThoroughlyChecked = true;
}
@@ -652,8 +652,6 @@ TransactionError LegacyScriptPubKeyMan::FillPSBT(PartiallySignedTransaction& psb
// There's no UTXO so we can just skip this now
continue;
}
- SignatureData sigdata;
- input.FillSignatureData(sigdata);
SignPSBTInput(HidingSigningProvider(this, !sign, !bip32derivs), psbtx, i, &txdata, sighash_type, nullptr, finalize);
bool signed_one = PSBTInputSigned(input);
@@ -811,7 +809,9 @@ bool LegacyScriptPubKeyMan::AddKeyPubKeyInner(const CKey& key, const CPubKey &pu
std::vector<unsigned char> vchCryptedSecret;
CKeyingMaterial vchSecret{UCharCast(key.begin()), UCharCast(key.end())};
- if (!EncryptSecret(m_storage.GetEncryptionKey(), vchSecret, pubkey.GetHash(), vchCryptedSecret)) {
+ if (!m_storage.WithEncryptionKey([&](const CKeyingMaterial& encryption_key) {
+ return EncryptSecret(encryption_key, vchSecret, pubkey.GetHash(), vchCryptedSecret);
+ })) {
return false;
}
@@ -997,7 +997,9 @@ bool LegacyScriptPubKeyMan::GetKey(const CKeyID &address, CKey& keyOut) const
{
const CPubKey &vchPubKey = (*mi).second.first;
const std::vector<unsigned char> &vchCryptedSecret = (*mi).second.second;
- return DecryptKey(m_storage.GetEncryptionKey(), vchCryptedSecret, vchPubKey, keyOut);
+ return m_storage.WithEncryptionKey([&](const CKeyingMaterial& encryption_key) {
+ return DecryptKey(encryption_key, vchCryptedSecret, vchPubKey, keyOut);
+ });
}
return false;
}
@@ -1286,6 +1288,9 @@ bool LegacyScriptPubKeyMan::TopUp(unsigned int kpSize)
}
if (!batch.TxnCommit()) throw std::runtime_error(strprintf("Error during keypool top up. Cannot commit changes for wallet %s", m_storage.GetDisplayName()));
NotifyCanGetAddressesChanged();
+ // Note: Unlike with DescriptorSPKM, LegacySPKM does not need to call
+ // m_storage.TopUpCallback() as we do not know what new scripts the LegacySPKM is
+ // watching for. CWallet's scriptPubKey cache is not used for LegacySPKMs.
return true;
}
@@ -2045,7 +2050,7 @@ isminetype DescriptorScriptPubKeyMan::IsMine(const CScript& script) const
return ISMINE_NO;
}
-bool DescriptorScriptPubKeyMan::CheckDecryptionKey(const CKeyingMaterial& master_key, bool accept_no_keys)
+bool DescriptorScriptPubKeyMan::CheckDecryptionKey(const CKeyingMaterial& master_key)
{
LOCK(cs_desc_man);
if (!m_map_keys.empty()) {
@@ -2070,7 +2075,7 @@ bool DescriptorScriptPubKeyMan::CheckDecryptionKey(const CKeyingMaterial& master
LogPrintf("The wallet is probably corrupted: Some keys decrypt but not all.\n");
throw std::runtime_error("Error unlocking wallet: some keys decrypt but not all. Your wallet file may be corrupt.");
}
- if (keyFail || (!keyPass && !accept_no_keys)) {
+ if (keyFail || !keyPass) {
return false;
}
m_decryption_thoroughly_checked = true;
@@ -2128,7 +2133,9 @@ std::map<CKeyID, CKey> DescriptorScriptPubKeyMan::GetKeys() const
const CPubKey& pubkey = key_pair.second.first;
const std::vector<unsigned char>& crypted_secret = key_pair.second.second;
CKey key;
- DecryptKey(m_storage.GetEncryptionKey(), crypted_secret, pubkey, key);
+ m_storage.WithEncryptionKey([&](const CKeyingMaterial& encryption_key) {
+ return DecryptKey(encryption_key, crypted_secret, pubkey, key);
+ });
keys[pubkey.GetID()] = key;
}
return keys;
@@ -2148,6 +2155,7 @@ bool DescriptorScriptPubKeyMan::TopUp(unsigned int size)
bool DescriptorScriptPubKeyMan::TopUpWithDB(WalletBatch& batch, unsigned int size)
{
LOCK(cs_desc_man);
+ std::set<CScript> new_spks;
unsigned int target_size;
if (size > 0) {
target_size = size;
@@ -2178,6 +2186,7 @@ bool DescriptorScriptPubKeyMan::TopUpWithDB(WalletBatch& batch, unsigned int siz
if (!m_wallet_descriptor.descriptor->Expand(i, provider, scripts_temp, out_keys, &temp_cache)) return false;
}
// Add all of the scriptPubKeys to the scriptPubKey set
+ new_spks.insert(scripts_temp.begin(), scripts_temp.end());
for (const CScript& script : scripts_temp) {
m_map_script_pub_keys[script] = i;
}
@@ -2203,6 +2212,7 @@ bool DescriptorScriptPubKeyMan::TopUpWithDB(WalletBatch& batch, unsigned int siz
// By this point, the cache size should be the size of the entire range
assert(m_wallet_descriptor.range_end - 1 == m_max_cached_index);
+ m_storage.TopUpCallback(new_spks, this);
NotifyCanGetAddressesChanged();
return true;
}
@@ -2262,7 +2272,9 @@ bool DescriptorScriptPubKeyMan::AddDescriptorKeyWithDB(WalletBatch& batch, const
std::vector<unsigned char> crypted_secret;
CKeyingMaterial secret{UCharCast(key.begin()), UCharCast(key.end())};
- if (!EncryptSecret(m_storage.GetEncryptionKey(), secret, pubkey.GetHash(), crypted_secret)) {
+ if (!m_storage.WithEncryptionKey([&](const CKeyingMaterial& encryption_key) {
+ return EncryptSecret(encryption_key, secret, pubkey.GetHash(), crypted_secret);
+ })) {
return false;
}
@@ -2520,8 +2532,6 @@ TransactionError DescriptorScriptPubKeyMan::FillPSBT(PartiallySignedTransaction&
// There's no UTXO so we can just skip this now
continue;
}
- SignatureData sigdata;
- input.FillSignatureData(sigdata);
std::unique_ptr<FlatSigningProvider> keys = std::make_unique<FlatSigningProvider>();
std::unique_ptr<FlatSigningProvider> script_keys = GetSigningProvider(script, /*include_private=*/sign);
@@ -2616,6 +2626,7 @@ uint256 DescriptorScriptPubKeyMan::GetID() const
void DescriptorScriptPubKeyMan::SetCache(const DescriptorCache& cache)
{
LOCK(cs_desc_man);
+ std::set<CScript> new_spks;
m_wallet_descriptor.cache = cache;
for (int32_t i = m_wallet_descriptor.range_start; i < m_wallet_descriptor.range_end; ++i) {
FlatSigningProvider out_keys;
@@ -2624,6 +2635,7 @@ void DescriptorScriptPubKeyMan::SetCache(const DescriptorCache& cache)
throw std::runtime_error("Error: Unable to expand wallet descriptor from cache");
}
// Add all of the scriptPubKeys to the scriptPubKey set
+ new_spks.insert(scripts_temp.begin(), scripts_temp.end());
for (const CScript& script : scripts_temp) {
if (m_map_script_pub_keys.count(script) != 0) {
throw std::runtime_error(strprintf("Error: Already loaded script at index %d as being at index %d", i, m_map_script_pub_keys[script]));
@@ -2641,6 +2653,8 @@ void DescriptorScriptPubKeyMan::SetCache(const DescriptorCache& cache)
}
m_max_cached_index++;
}
+ // Make sure the wallet knows about our new spks
+ m_storage.TopUpCallback(new_spks, this);
}
bool DescriptorScriptPubKeyMan::AddKey(const CKeyID& key_id, const CKey& key)
diff --git a/src/wallet/scriptpubkeyman.h b/src/wallet/scriptpubkeyman.h
index 449a75eb6b..04f7f89d68 100644
--- a/src/wallet/scriptpubkeyman.h
+++ b/src/wallet/scriptpubkeyman.h
@@ -22,6 +22,7 @@
#include <boost/signals2/signal.hpp>
+#include <functional>
#include <optional>
#include <unordered_map>
@@ -30,6 +31,7 @@ struct bilingual_str;
namespace wallet {
struct MigrationData;
+class ScriptPubKeyMan;
// Wallet storage things that ScriptPubKeyMans need in order to be able to store things to the wallet database.
// It provides access to things that are part of the entire wallet and not specific to a ScriptPubKeyMan such as
@@ -46,9 +48,12 @@ public:
virtual void UnsetBlankWalletFlag(WalletBatch&) = 0;
virtual bool CanSupportFeature(enum WalletFeature) const = 0;
virtual void SetMinVersion(enum WalletFeature, WalletBatch* = nullptr) = 0;
- virtual const CKeyingMaterial& GetEncryptionKey() const = 0;
+ //! Pass the encryption key to cb().
+ virtual bool WithEncryptionKey(std::function<bool (const CKeyingMaterial&)> cb) const = 0;
virtual bool HasEncryptionKeys() const = 0;
virtual bool IsLocked() const = 0;
+ //! Callback function for after TopUp completes containining any scripts that were added by a SPKMan
+ virtual void TopUpCallback(const std::set<CScript>&, ScriptPubKeyMan*) = 0;
};
//! Constant representing an unknown spkm creation time
@@ -177,7 +182,7 @@ public:
virtual isminetype IsMine(const CScript& script) const { return ISMINE_NO; }
//! Check that the given decryption key is valid for this ScriptPubKeyMan, i.e. it decrypts all of the keys handled by it.
- virtual bool CheckDecryptionKey(const CKeyingMaterial& master_key, bool accept_no_keys = false) { return false; }
+ virtual bool CheckDecryptionKey(const CKeyingMaterial& master_key) { return false; }
virtual bool Encrypt(const CKeyingMaterial& master_key, WalletBatch* batch) { return false; }
virtual util::Result<CTxDestination> GetReservedDestination(const OutputType type, bool internal, int64_t& index, CKeyPool& keypool) { return util::Error{Untranslated("Not supported")}; }
@@ -377,7 +382,7 @@ public:
util::Result<CTxDestination> GetNewDestination(const OutputType type) override;
isminetype IsMine(const CScript& script) const override;
- bool CheckDecryptionKey(const CKeyingMaterial& master_key, bool accept_no_keys = false) override;
+ bool CheckDecryptionKey(const CKeyingMaterial& master_key) override;
bool Encrypt(const CKeyingMaterial& master_key, WalletBatch* batch) override;
util::Result<CTxDestination> GetReservedDestination(const OutputType type, bool internal, int64_t& index, CKeyPool& keypool) override;
@@ -608,7 +613,7 @@ public:
util::Result<CTxDestination> GetNewDestination(const OutputType type) override;
isminetype IsMine(const CScript& script) const override;
- bool CheckDecryptionKey(const CKeyingMaterial& master_key, bool accept_no_keys = false) override;
+ bool CheckDecryptionKey(const CKeyingMaterial& master_key) override;
bool Encrypt(const CKeyingMaterial& master_key, WalletBatch* batch) override;
util::Result<CTxDestination> GetReservedDestination(const OutputType type, bool internal, int64_t& index, CKeyPool& keypool) override;
diff --git a/src/wallet/spend.cpp b/src/wallet/spend.cpp
index b51cd6332f..5d23ebd35a 100644
--- a/src/wallet/spend.cpp
+++ b/src/wallet/spend.cpp
@@ -709,6 +709,15 @@ util::Result<SelectionResult> ChooseSelectionResult(interfaces::Chain& chain, co
results.push_back(*knapsack_result);
} else append_error(knapsack_result);
+ if (coin_selection_params.m_effective_feerate > CFeeRate{3 * coin_selection_params.m_long_term_feerate}) { // Minimize input set for feerates of at least 3×LTFRE (default: 30 ṩ/vB+)
+ if (auto cg_result{CoinGrinder(groups.positive_group, nTargetValue, coin_selection_params.m_min_change_target, max_inputs_weight)}) {
+ cg_result->ComputeAndSetWaste(coin_selection_params.min_viable_change, coin_selection_params.m_cost_of_change, coin_selection_params.m_change_fee);
+ results.push_back(*cg_result);
+ } else {
+ append_error(cg_result);
+ }
+ }
+
if (auto srd_result{SelectCoinsSRD(groups.positive_group, nTargetValue, coin_selection_params.m_change_fee, coin_selection_params.rng_fast, max_inputs_weight)}) {
results.push_back(*srd_result);
} else append_error(srd_result);
@@ -1127,7 +1136,12 @@ static util::Result<CreatedTransactionResult> CreateTransactionInternal(
return util::Error{err.empty() ?_("Insufficient funds") : err};
}
const SelectionResult& result = *select_coins_res;
- TRACE5(coin_selection, selected_coins, wallet.GetName().c_str(), GetAlgorithmName(result.GetAlgo()).c_str(), result.GetTarget(), result.GetWaste(), result.GetSelectedValue());
+ TRACE5(coin_selection, selected_coins,
+ wallet.GetName().c_str(),
+ GetAlgorithmName(result.GetAlgo()).c_str(),
+ result.GetTarget(),
+ result.GetWaste(),
+ result.GetSelectedValue());
const CAmount change_amount = result.GetChange(coin_selection_params.min_viable_change, coin_selection_params.m_change_fee);
if (change_amount > 0) {
@@ -1336,8 +1350,11 @@ util::Result<CreatedTransactionResult> CreateTransaction(
LOCK(wallet.cs_wallet);
auto res = CreateTransactionInternal(wallet, vecSend, change_pos, coin_control, sign);
- TRACE4(coin_selection, normal_create_tx_internal, wallet.GetName().c_str(), bool(res),
- res ? res->fee : 0, res && res->change_pos.has_value() ? *res->change_pos : 0);
+ TRACE4(coin_selection, normal_create_tx_internal,
+ wallet.GetName().c_str(),
+ bool(res),
+ res ? res->fee : 0,
+ res && res->change_pos.has_value() ? int32_t(*res->change_pos) : -1);
if (!res) return res;
const auto& txr_ungrouped = *res;
// try with avoidpartialspends unless it's enabled already
@@ -1354,8 +1371,12 @@ util::Result<CreatedTransactionResult> CreateTransaction(
auto txr_grouped = CreateTransactionInternal(wallet, vecSend, change_pos, tmp_cc, sign);
// if fee of this alternative one is within the range of the max fee, we use this one
const bool use_aps{txr_grouped.has_value() ? (txr_grouped->fee <= txr_ungrouped.fee + wallet.m_max_aps_fee) : false};
- TRACE5(coin_selection, aps_create_tx_internal, wallet.GetName().c_str(), use_aps, txr_grouped.has_value(),
- txr_grouped.has_value() ? txr_grouped->fee : 0, txr_grouped.has_value() && txr_grouped->change_pos.has_value() ? *txr_grouped->change_pos : 0);
+ TRACE5(coin_selection, aps_create_tx_internal,
+ wallet.GetName().c_str(),
+ use_aps,
+ txr_grouped.has_value(),
+ txr_grouped.has_value() ? txr_grouped->fee : 0,
+ txr_grouped.has_value() && txr_grouped->change_pos.has_value() ? int32_t(*txr_grouped->change_pos) : -1);
if (txr_grouped) {
wallet.WalletLogPrintf("Fee non-grouped = %lld, grouped = %lld, using %s\n",
txr_ungrouped.fee, txr_grouped->fee, use_aps ? "grouped" : "non-grouped");
@@ -1365,18 +1386,11 @@ util::Result<CreatedTransactionResult> CreateTransaction(
return res;
}
-util::Result<CreatedTransactionResult> FundTransaction(CWallet& wallet, const CMutableTransaction& tx, std::optional<unsigned int> change_pos, bool lockUnspents, const std::set<int>& setSubtractFeeFromOutputs, CCoinControl coinControl)
+util::Result<CreatedTransactionResult> FundTransaction(CWallet& wallet, const CMutableTransaction& tx, const std::vector<CRecipient>& vecSend, std::optional<unsigned int> change_pos, bool lockUnspents, CCoinControl coinControl)
{
- std::vector<CRecipient> vecSend;
-
- // Turn the txout set into a CRecipient vector.
- for (size_t idx = 0; idx < tx.vout.size(); idx++) {
- const CTxOut& txOut = tx.vout[idx];
- CTxDestination dest;
- ExtractDestination(txOut.scriptPubKey, dest);
- CRecipient recipient = {dest, txOut.nValue, setSubtractFeeFromOutputs.count(idx) == 1};
- vecSend.push_back(recipient);
- }
+ // We want to make sure tx.vout is not used now that we are passing outputs as a vector of recipients.
+ // This sets us up to remove tx completely in a future PR in favor of passing the inputs directly.
+ assert(tx.vout.empty());
// Set the user desired locktime
coinControl.m_locktime = tx.nLockTime;
diff --git a/src/wallet/spend.h b/src/wallet/spend.h
index 3bd37cfd0e..62a7b4e4c8 100644
--- a/src/wallet/spend.h
+++ b/src/wallet/spend.h
@@ -224,7 +224,7 @@ util::Result<CreatedTransactionResult> CreateTransaction(CWallet& wallet, const
* Insert additional inputs into the transaction by
* calling CreateTransaction();
*/
-util::Result<CreatedTransactionResult> FundTransaction(CWallet& wallet, const CMutableTransaction& tx, std::optional<unsigned int> change_pos, bool lockUnspents, const std::set<int>& setSubtractFeeFromOutputs, CCoinControl);
+util::Result<CreatedTransactionResult> FundTransaction(CWallet& wallet, const CMutableTransaction& tx, const std::vector<CRecipient>& recipients, std::optional<unsigned int> change_pos, bool lockUnspents, CCoinControl);
} // namespace wallet
#endif // BITCOIN_WALLET_SPEND_H
diff --git a/src/wallet/sqlite.cpp b/src/wallet/sqlite.cpp
index db9989163d..2cbeedbde6 100644
--- a/src/wallet/sqlite.cpp
+++ b/src/wallet/sqlite.cpp
@@ -110,7 +110,7 @@ Mutex SQLiteDatabase::g_sqlite_mutex;
int SQLiteDatabase::g_sqlite_count = 0;
SQLiteDatabase::SQLiteDatabase(const fs::path& dir_path, const fs::path& file_path, const DatabaseOptions& options, bool mock)
- : WalletDatabase(), m_mock(mock), m_dir_path(fs::PathToString(dir_path)), m_file_path(fs::PathToString(file_path)), m_use_unsafe_sync(options.use_unsafe_sync)
+ : WalletDatabase(), m_mock(mock), m_dir_path(fs::PathToString(dir_path)), m_file_path(fs::PathToString(file_path)), m_write_semaphore(1), m_use_unsafe_sync(options.use_unsafe_sync)
{
{
LOCK(g_sqlite_mutex);
@@ -377,6 +377,17 @@ void SQLiteDatabase::Close()
m_db = nullptr;
}
+bool SQLiteDatabase::HasActiveTxn()
+{
+ // 'sqlite3_get_autocommit' returns true by default, and false if a transaction has begun and not been committed or rolled back.
+ return m_db && sqlite3_get_autocommit(m_db) == 0;
+}
+
+int SQliteExecHandler::Exec(SQLiteDatabase& database, const std::string& statement)
+{
+ return sqlite3_exec(database.m_db, statement.data(), nullptr, nullptr, nullptr);
+}
+
std::unique_ptr<DatabaseBatch> SQLiteDatabase::MakeBatch(bool flush_on_close)
{
// We ignore flush_on_close because we don't do manual flushing for SQLite
@@ -394,12 +405,18 @@ SQLiteBatch::SQLiteBatch(SQLiteDatabase& database)
void SQLiteBatch::Close()
{
- // If m_db is in a transaction (i.e. not in autocommit mode), then abort the transaction in progress
- if (m_database.m_db && sqlite3_get_autocommit(m_database.m_db) == 0) {
+ bool force_conn_refresh = false;
+
+ // If we began a transaction, and it wasn't committed, abort the transaction in progress
+ if (m_txn) {
if (TxnAbort()) {
LogPrintf("SQLiteBatch: Batch closed unexpectedly without the transaction being explicitly committed or aborted\n");
} else {
- LogPrintf("SQLiteBatch: Batch closed and failed to abort transaction\n");
+ // If transaction cannot be aborted, it means there is a bug or there has been data corruption. Try to recover in this case
+ // by closing and reopening the database. Closing the database should also ensure that any changes made since the transaction
+ // was opened will be rolled back and future transactions can succeed without committing old data.
+ force_conn_refresh = true;
+ LogPrintf("SQLiteBatch: Batch closed and failed to abort transaction, resetting db connection..\n");
}
}
@@ -420,6 +437,19 @@ void SQLiteBatch::Close()
}
*stmt_prepared = nullptr;
}
+
+ if (force_conn_refresh) {
+ m_database.Close();
+ try {
+ m_database.Open();
+ // If TxnAbort failed and we refreshed the connection, the semaphore was not released, so release it here to avoid deadlocks on future writes.
+ m_database.m_write_semaphore.post();
+ } catch (const std::runtime_error&) {
+ // If open fails, cleanup this object and rethrow the exception
+ m_database.Close();
+ throw;
+ }
+ }
}
bool SQLiteBatch::ReadKey(DataStream&& key, DataStream& value)
@@ -465,6 +495,9 @@ bool SQLiteBatch::WriteKey(DataStream&& key, DataStream&& value, bool overwrite)
if (!BindBlobToStatement(stmt, 1, key, "key")) return false;
if (!BindBlobToStatement(stmt, 2, value, "value")) return false;
+ // Acquire semaphore if not previously acquired when creating a transaction.
+ if (!m_txn) m_database.m_write_semaphore.wait();
+
// Execute
int res = sqlite3_step(stmt);
sqlite3_clear_bindings(stmt);
@@ -472,6 +505,9 @@ bool SQLiteBatch::WriteKey(DataStream&& key, DataStream&& value, bool overwrite)
if (res != SQLITE_DONE) {
LogPrintf("%s: Unable to execute statement: %s\n", __func__, sqlite3_errstr(res));
}
+
+ if (!m_txn) m_database.m_write_semaphore.post();
+
return res == SQLITE_DONE;
}
@@ -483,6 +519,9 @@ bool SQLiteBatch::ExecStatement(sqlite3_stmt* stmt, Span<const std::byte> blob)
// Bind: leftmost parameter in statement is index 1
if (!BindBlobToStatement(stmt, 1, blob, "key")) return false;
+ // Acquire semaphore if not previously acquired when creating a transaction.
+ if (!m_txn) m_database.m_write_semaphore.wait();
+
// Execute
int res = sqlite3_step(stmt);
sqlite3_clear_bindings(stmt);
@@ -490,6 +529,9 @@ bool SQLiteBatch::ExecStatement(sqlite3_stmt* stmt, Span<const std::byte> blob)
if (res != SQLITE_DONE) {
LogPrintf("%s: Unable to execute statement: %s\n", __func__, sqlite3_errstr(res));
}
+
+ if (!m_txn) m_database.m_write_semaphore.post();
+
return res == SQLITE_DONE;
}
@@ -606,30 +648,43 @@ std::unique_ptr<DatabaseCursor> SQLiteBatch::GetNewPrefixCursor(Span<const std::
bool SQLiteBatch::TxnBegin()
{
- if (!m_database.m_db || sqlite3_get_autocommit(m_database.m_db) == 0) return false;
- int res = sqlite3_exec(m_database.m_db, "BEGIN TRANSACTION", nullptr, nullptr, nullptr);
+ if (!m_database.m_db || m_txn) return false;
+ m_database.m_write_semaphore.wait();
+ Assert(!m_database.HasActiveTxn());
+ int res = Assert(m_exec_handler)->Exec(m_database, "BEGIN TRANSACTION");
if (res != SQLITE_OK) {
LogPrintf("SQLiteBatch: Failed to begin the transaction\n");
+ m_database.m_write_semaphore.post();
+ } else {
+ m_txn = true;
}
return res == SQLITE_OK;
}
bool SQLiteBatch::TxnCommit()
{
- if (!m_database.m_db || sqlite3_get_autocommit(m_database.m_db) != 0) return false;
- int res = sqlite3_exec(m_database.m_db, "COMMIT TRANSACTION", nullptr, nullptr, nullptr);
+ if (!m_database.m_db || !m_txn) return false;
+ Assert(m_database.HasActiveTxn());
+ int res = Assert(m_exec_handler)->Exec(m_database, "COMMIT TRANSACTION");
if (res != SQLITE_OK) {
LogPrintf("SQLiteBatch: Failed to commit the transaction\n");
+ } else {
+ m_txn = false;
+ m_database.m_write_semaphore.post();
}
return res == SQLITE_OK;
}
bool SQLiteBatch::TxnAbort()
{
- if (!m_database.m_db || sqlite3_get_autocommit(m_database.m_db) != 0) return false;
- int res = sqlite3_exec(m_database.m_db, "ROLLBACK TRANSACTION", nullptr, nullptr, nullptr);
+ if (!m_database.m_db || !m_txn) return false;
+ Assert(m_database.HasActiveTxn());
+ int res = Assert(m_exec_handler)->Exec(m_database, "ROLLBACK TRANSACTION");
if (res != SQLITE_OK) {
LogPrintf("SQLiteBatch: Failed to abort the transaction\n");
+ } else {
+ m_txn = false;
+ m_database.m_write_semaphore.post();
}
return res == SQLITE_OK;
}
diff --git a/src/wallet/sqlite.h b/src/wallet/sqlite.h
index f1ce0567e1..0a3243fe19 100644
--- a/src/wallet/sqlite.h
+++ b/src/wallet/sqlite.h
@@ -36,11 +36,21 @@ public:
Status Next(DataStream& key, DataStream& value) override;
};
+/** Class responsible for executing SQL statements in SQLite databases.
+ * Methods are virtual so they can be overridden by unit tests testing unusual database conditions. */
+class SQliteExecHandler
+{
+public:
+ virtual ~SQliteExecHandler() {}
+ virtual int Exec(SQLiteDatabase& database, const std::string& statement);
+};
+
/** RAII class that provides access to a WalletDatabase */
class SQLiteBatch : public DatabaseBatch
{
private:
SQLiteDatabase& m_database;
+ std::unique_ptr<SQliteExecHandler> m_exec_handler{std::make_unique<SQliteExecHandler>()};
sqlite3_stmt* m_read_stmt{nullptr};
sqlite3_stmt* m_insert_stmt{nullptr};
@@ -48,6 +58,18 @@ private:
sqlite3_stmt* m_delete_stmt{nullptr};
sqlite3_stmt* m_delete_prefix_stmt{nullptr};
+ /** Whether this batch has started a database transaction and whether it owns SQLiteDatabase::m_write_semaphore.
+ * If the batch starts a db tx, it acquires the semaphore and sets this to true, keeping the semaphore
+ * until the transaction ends to prevent other batch objects from writing to the database.
+ *
+ * If this batch did not start a transaction, the semaphore is acquired transiently when writing and m_txn
+ * is not set.
+ *
+ * m_txn is different from HasActiveTxn() as it is only true when this batch has started the transaction,
+ * not just when any batch has started a transaction.
+ */
+ bool m_txn{false};
+
void SetupSQLStatements();
bool ExecStatement(sqlite3_stmt* stmt, Span<const std::byte> blob);
@@ -61,6 +83,8 @@ public:
explicit SQLiteBatch(SQLiteDatabase& database);
~SQLiteBatch() override { Close(); }
+ void SetExecHandler(std::unique_ptr<SQliteExecHandler>&& handler) { m_exec_handler = std::move(handler); }
+
/* No-op. See comment on SQLiteDatabase::Flush */
void Flush() override {}
@@ -103,6 +127,10 @@ public:
~SQLiteDatabase();
+ // Batches must acquire this semaphore on writing, and release when done writing.
+ // This ensures that only one batch is modifying the database at a time.
+ CSemaphore m_write_semaphore;
+
bool Verify(bilingual_str& error);
/** Open the database if it is not already opened */
@@ -142,6 +170,9 @@ public:
/** Make a SQLiteBatch connected to this database */
std::unique_ptr<DatabaseBatch> MakeBatch(bool flush_on_close = true) override;
+ /** Return true if there is an on-going txn in this connection */
+ bool HasActiveTxn();
+
sqlite3* m_db{nullptr};
bool m_use_unsafe_sync;
};
diff --git a/src/wallet/test/coinselector_tests.cpp b/src/wallet/test/coinselector_tests.cpp
index 9fea14145f..9a349f0992 100644
--- a/src/wallet/test/coinselector_tests.cpp
+++ b/src/wallet/test/coinselector_tests.cpp
@@ -1090,6 +1090,216 @@ BOOST_AUTO_TEST_CASE(effective_value_test)
BOOST_CHECK_EQUAL(output5.GetEffectiveValue(), nValue); // The effective value should be equal to the absolute value if input_bytes is -1
}
+static util::Result<SelectionResult> CoinGrinder(const CAmount& target,
+ const CoinSelectionParams& cs_params,
+ const node::NodeContext& m_node,
+ int max_weight,
+ std::function<CoinsResult(CWallet&)> coin_setup)
+{
+ std::unique_ptr<CWallet> wallet = NewWallet(m_node);
+ CoinEligibilityFilter filter(0, 0, 0); // accept all coins without ancestors
+ Groups group = GroupOutputs(*wallet, coin_setup(*wallet), cs_params, {{filter}})[filter].all_groups;
+ return CoinGrinder(group.positive_group, target, cs_params.m_min_change_target, max_weight);
+}
+
+BOOST_AUTO_TEST_CASE(coin_grinder_tests)
+{
+ // Test Coin Grinder:
+ // 1) Insufficient funds, select all provided coins and fail.
+ // 2) Exceeded max weight, coin selection always surpasses the max allowed weight.
+ // 3) Select coins without surpassing the max weight (some coins surpasses the max allowed weight, some others not)
+ // 4) Test that two less valuable UTXOs with a combined lower weight are preferred over a more valuable heavier UTXO
+ // 5) Test finding a solution in a UTXO pool with mixed weights
+ // 6) Test that the lightest solution among many clones is found
+ // 7) Test that lots of tiny UTXOs can be skipped if they are too heavy while there are enough funds in lookahead
+
+ FastRandomContext rand;
+ CoinSelectionParams dummy_params{ // Only used to provide the 'avoid_partial' flag.
+ rand,
+ /*change_output_size=*/34,
+ /*change_spend_size=*/68,
+ /*min_change_target=*/CENT,
+ /*effective_feerate=*/CFeeRate(5000),
+ /*long_term_feerate=*/CFeeRate(2000),
+ /*discard_feerate=*/CFeeRate(1000),
+ /*tx_noinputs_size=*/10 + 34, // static header size + output size
+ /*avoid_partial=*/false,
+ };
+
+ {
+ // #########################################################
+ // 1) Insufficient funds, select all provided coins and fail
+ // #########################################################
+ CAmount target = 49.5L * COIN;
+ int max_weight = 10'000; // high enough to not fail for this reason.
+ const auto& res = CoinGrinder(target, dummy_params, m_node, max_weight, [&](CWallet& wallet) {
+ CoinsResult available_coins;
+ for (int j = 0; j < 10; ++j) {
+ add_coin(available_coins, wallet, CAmount(1 * COIN));
+ add_coin(available_coins, wallet, CAmount(2 * COIN));
+ }
+ return available_coins;
+ });
+ BOOST_CHECK(!res);
+ BOOST_CHECK(util::ErrorString(res).empty()); // empty means "insufficient funds"
+ }
+
+ {
+ // ###########################
+ // 2) Test max weight exceeded
+ // ###########################
+ CAmount target = 29.5L * COIN;
+ int max_weight = 3000;
+ const auto& res = CoinGrinder(target, dummy_params, m_node, max_weight, [&](CWallet& wallet) {
+ CoinsResult available_coins;
+ for (int j = 0; j < 10; ++j) {
+ add_coin(available_coins, wallet, CAmount(1 * COIN), CFeeRate(5000), 144, false, 0, true);
+ add_coin(available_coins, wallet, CAmount(2 * COIN), CFeeRate(5000), 144, false, 0, true);
+ }
+ return available_coins;
+ });
+ BOOST_CHECK(!res);
+ BOOST_CHECK(util::ErrorString(res).original.find("The inputs size exceeds the maximum weight") != std::string::npos);
+ }
+
+ {
+ // ###############################################################################################################
+ // 3) Test selection when some coins surpass the max allowed weight while others not. --> must find a good solution
+ // ################################################################################################################
+ CAmount target = 25.33L * COIN;
+ int max_weight = 10'000; // WU
+ const auto& res = CoinGrinder(target, dummy_params, m_node, max_weight, [&](CWallet& wallet) {
+ CoinsResult available_coins;
+ for (int j = 0; j < 60; ++j) { // 60 UTXO --> 19,8 BTC total --> 60 × 272 WU = 16320 WU
+ add_coin(available_coins, wallet, CAmount(0.33 * COIN), CFeeRate(5000), 144, false, 0, true);
+ }
+ for (int i = 0; i < 10; i++) { // 10 UTXO --> 20 BTC total --> 10 × 272 WU = 2720 WU
+ add_coin(available_coins, wallet, CAmount(2 * COIN), CFeeRate(5000), 144, false, 0, true);
+ }
+ return available_coins;
+ });
+ BOOST_CHECK(res);
+ // Demonstrate how following improvements reduce iteration count and catch any regressions in the future.
+ size_t expected_attempts = 37;
+ BOOST_CHECK_MESSAGE(res->GetSelectionsEvaluated() == expected_attempts, strprintf("Expected %i attempts, but got %i", expected_attempts, res->GetSelectionsEvaluated()));
+ }
+
+ {
+ // #################################################################################################################
+ // 4) Test that two less valuable UTXOs with a combined lower weight are preferred over a more valuable heavier UTXO
+ // #################################################################################################################
+ CAmount target = 1.9L * COIN;
+ int max_weight = 400'000; // WU
+ const auto& res = CoinGrinder(target, dummy_params, m_node, max_weight, [&](CWallet& wallet) {
+ CoinsResult available_coins;
+ add_coin(available_coins, wallet, CAmount(2 * COIN), CFeeRate(5000), 144, false, 0, true, 148);
+ add_coin(available_coins, wallet, CAmount(1 * COIN), CFeeRate(5000), 144, false, 0, true, 68);
+ add_coin(available_coins, wallet, CAmount(1 * COIN), CFeeRate(5000), 144, false, 0, true, 68);
+ return available_coins;
+ });
+ SelectionResult expected_result(CAmount(0), SelectionAlgorithm::CG);
+ add_coin(1 * COIN, 1, expected_result);
+ add_coin(1 * COIN, 2, expected_result);
+ BOOST_CHECK(EquivalentResult(expected_result, *res));
+ // Demonstrate how following improvements reduce iteration count and catch any regressions in the future.
+ size_t expected_attempts = 3;
+ BOOST_CHECK_MESSAGE(res->GetSelectionsEvaluated() == expected_attempts, strprintf("Expected %i attempts, but got %i", expected_attempts, res->GetSelectionsEvaluated()));
+ }
+
+ {
+ // ###############################################################################################################
+ // 5) Test finding a solution in a UTXO pool with mixed weights
+ // ################################################################################################################
+ CAmount target = 30L * COIN;
+ int max_weight = 400'000; // WU
+ const auto& res = CoinGrinder(target, dummy_params, m_node, max_weight, [&](CWallet& wallet) {
+ CoinsResult available_coins;
+ for (int j = 0; j < 5; ++j) {
+ // Add heavy coins {3, 6, 9, 12, 15}
+ add_coin(available_coins, wallet, CAmount((3 + 3 * j) * COIN), CFeeRate(5000), 144, false, 0, true, 350);
+ // Add medium coins {2, 5, 8, 11, 14}
+ add_coin(available_coins, wallet, CAmount((2 + 3 * j) * COIN), CFeeRate(5000), 144, false, 0, true, 250);
+ // Add light coins {1, 4, 7, 10, 13}
+ add_coin(available_coins, wallet, CAmount((1 + 3 * j) * COIN), CFeeRate(5000), 144, false, 0, true, 150);
+ }
+ return available_coins;
+ });
+ BOOST_CHECK(res);
+ SelectionResult expected_result(CAmount(0), SelectionAlgorithm::CG);
+ add_coin(14 * COIN, 1, expected_result);
+ add_coin(13 * COIN, 2, expected_result);
+ add_coin(4 * COIN, 3, expected_result);
+ BOOST_CHECK(EquivalentResult(expected_result, *res));
+ // Demonstrate how following improvements reduce iteration count and catch any regressions in the future.
+ size_t expected_attempts = 92;
+ BOOST_CHECK_MESSAGE(res->GetSelectionsEvaluated() == expected_attempts, strprintf("Expected %i attempts, but got %i", expected_attempts, res->GetSelectionsEvaluated()));
+ }
+
+ {
+ // #################################################################################################################
+ // 6) Test that the lightest solution among many clones is found
+ // #################################################################################################################
+ CAmount target = 9.9L * COIN;
+ int max_weight = 400'000; // WU
+ const auto& res = CoinGrinder(target, dummy_params, m_node, max_weight, [&](CWallet& wallet) {
+ CoinsResult available_coins;
+ // Expected Result: 4 + 3 + 2 + 1 = 10 BTC at 400 vB
+ add_coin(available_coins, wallet, CAmount(4 * COIN), CFeeRate(5000), 144, false, 0, true, 100);
+ add_coin(available_coins, wallet, CAmount(3 * COIN), CFeeRate(5000), 144, false, 0, true, 100);
+ add_coin(available_coins, wallet, CAmount(2 * COIN), CFeeRate(5000), 144, false, 0, true, 100);
+ add_coin(available_coins, wallet, CAmount(1 * COIN), CFeeRate(5000), 144, false, 0, true, 100);
+ // Distracting clones:
+ for (int j = 0; j < 100; ++j) {
+ add_coin(available_coins, wallet, CAmount(8 * COIN), CFeeRate(5000), 144, false, 0, true, 1000);
+ }
+ for (int j = 0; j < 100; ++j) {
+ add_coin(available_coins, wallet, CAmount(7 * COIN), CFeeRate(5000), 144, false, 0, true, 800);
+ }
+ for (int j = 0; j < 100; ++j) {
+ add_coin(available_coins, wallet, CAmount(6 * COIN), CFeeRate(5000), 144, false, 0, true, 600);
+ }
+ for (int j = 0; j < 100; ++j) {
+ add_coin(available_coins, wallet, CAmount(5 * COIN), CFeeRate(5000), 144, false, 0, true, 400);
+ }
+ return available_coins;
+ });
+ SelectionResult expected_result(CAmount(0), SelectionAlgorithm::CG);
+ add_coin(4 * COIN, 0, expected_result);
+ add_coin(3 * COIN, 0, expected_result);
+ add_coin(2 * COIN, 0, expected_result);
+ add_coin(1 * COIN, 0, expected_result);
+ BOOST_CHECK(EquivalentResult(expected_result, *res));
+ // Demonstrate how following improvements reduce iteration count and catch any regressions in the future.
+ size_t expected_attempts = 38;
+ BOOST_CHECK_MESSAGE(res->GetSelectionsEvaluated() == expected_attempts, strprintf("Expected %i attempts, but got %i", expected_attempts, res->GetSelectionsEvaluated()));
+ }
+
+ {
+ // #################################################################################################################
+ // 7) Test that lots of tiny UTXOs can be skipped if they are too heavy while there are enough funds in lookahead
+ // #################################################################################################################
+ CAmount target = 1.9L * COIN;
+ int max_weight = 40000; // WU
+ const auto& res = CoinGrinder(target, dummy_params, m_node, max_weight, [&](CWallet& wallet) {
+ CoinsResult available_coins;
+ add_coin(available_coins, wallet, CAmount(1.8 * COIN), CFeeRate(5000), 144, false, 0, true, 2500);
+ add_coin(available_coins, wallet, CAmount(1 * COIN), CFeeRate(5000), 144, false, 0, true, 1000);
+ add_coin(available_coins, wallet, CAmount(1 * COIN), CFeeRate(5000), 144, false, 0, true, 1000);
+ for (int j = 0; j < 100; ++j) {
+ // make a 100 unique coins only differing by one sat
+ add_coin(available_coins, wallet, CAmount(0.01 * COIN + j), CFeeRate(5000), 144, false, 0, true, 110);
+ }
+ return available_coins;
+ });
+ SelectionResult expected_result(CAmount(0), SelectionAlgorithm::CG);
+ add_coin(1 * COIN, 1, expected_result);
+ add_coin(1 * COIN, 2, expected_result);
+ BOOST_CHECK(EquivalentResult(expected_result, *res));
+ // Demonstrate how following improvements reduce iteration count and catch any regressions in the future.
+ size_t expected_attempts = 7;
+ BOOST_CHECK_MESSAGE(res->GetSelectionsEvaluated() == expected_attempts, strprintf("Expected %i attempts, but got %i", expected_attempts, res->GetSelectionsEvaluated()));
+ }
+}
static util::Result<SelectionResult> SelectCoinsSRD(const CAmount& target,
const CoinSelectionParams& cs_params,
@@ -1150,6 +1360,7 @@ BOOST_AUTO_TEST_CASE(srd_tests)
const auto& res = SelectCoinsSRD(target, dummy_params, m_node, max_weight, [&](CWallet& wallet) {
CoinsResult available_coins;
for (int j = 0; j < 10; ++j) {
+ /* 10 × 1 BTC + 10 × 2 BTC = 30 BTC. 20 × 272 WU = 5440 WU */
add_coin(available_coins, wallet, CAmount(1 * COIN), CFeeRate(0), 144, false, 0, true);
add_coin(available_coins, wallet, CAmount(2 * COIN), CFeeRate(0), 144, false, 0, true);
}
diff --git a/src/wallet/test/db_tests.cpp b/src/wallet/test/db_tests.cpp
index d341e84d9b..c933366354 100644
--- a/src/wallet/test/db_tests.cpp
+++ b/src/wallet/test/db_tests.cpp
@@ -205,5 +205,155 @@ BOOST_AUTO_TEST_CASE(db_cursor_prefix_byte_test)
}
}
+BOOST_AUTO_TEST_CASE(db_availability_after_write_error)
+{
+ // Ensures the database remains accessible without deadlocking after a write error.
+ // To simulate the behavior, record overwrites are disallowed, and the test verifies
+ // that the database remains active after failing to store an existing record.
+ for (const auto& database : TestDatabases(m_path_root)) {
+ // Write original record
+ std::unique_ptr<DatabaseBatch> batch = database->MakeBatch();
+ std::string key = "key";
+ std::string value = "value";
+ std::string value2 = "value_2";
+ BOOST_CHECK(batch->Write(key, value));
+ // Attempt to overwrite the record (expect failure)
+ BOOST_CHECK(!batch->Write(key, value2, /*fOverwrite=*/false));
+ // Successfully overwrite the record
+ BOOST_CHECK(batch->Write(key, value2, /*fOverwrite=*/true));
+ // Sanity-check; read and verify the overwritten value
+ std::string read_value;
+ BOOST_CHECK(batch->Read(key, read_value));
+ BOOST_CHECK_EQUAL(read_value, value2);
+ }
+}
+
+// Verify 'ErasePrefix' functionality using db keys similar to the ones used by the wallet.
+// Keys are in the form of std::pair<TYPE, ENTRY_ID>
+BOOST_AUTO_TEST_CASE(erase_prefix)
+{
+ const std::string key = "key";
+ const std::string key2 = "key2";
+ const std::string value = "value";
+ const std::string value2 = "value_2";
+ auto make_key = [](std::string type, std::string id) { return std::make_pair(type, id); };
+
+ for (const auto& database : TestDatabases(m_path_root)) {
+ std::unique_ptr<DatabaseBatch> batch = database->MakeBatch();
+
+ // Write two entries with the same key type prefix, a third one with a different prefix
+ // and a fourth one with the type-id values inverted
+ BOOST_CHECK(batch->Write(make_key(key, value), value));
+ BOOST_CHECK(batch->Write(make_key(key, value2), value2));
+ BOOST_CHECK(batch->Write(make_key(key2, value), value));
+ BOOST_CHECK(batch->Write(make_key(value, key), value));
+
+ // Erase the ones with the same prefix and verify result
+ BOOST_CHECK(batch->TxnBegin());
+ BOOST_CHECK(batch->ErasePrefix(DataStream() << key));
+ BOOST_CHECK(batch->TxnCommit());
+
+ BOOST_CHECK(!batch->Exists(make_key(key, value)));
+ BOOST_CHECK(!batch->Exists(make_key(key, value2)));
+ // Also verify that entries with a different prefix were not erased
+ BOOST_CHECK(batch->Exists(make_key(key2, value)));
+ BOOST_CHECK(batch->Exists(make_key(value, key)));
+ }
+}
+
+#ifdef USE_SQLITE
+
+// Test-only statement execution error
+constexpr int TEST_SQLITE_ERROR = -999;
+
+class DbExecBlocker : public SQliteExecHandler
+{
+private:
+ SQliteExecHandler m_base_exec;
+ std::set<std::string> m_blocked_statements;
+public:
+ DbExecBlocker(std::set<std::string> blocked_statements) : m_blocked_statements(blocked_statements) {}
+ int Exec(SQLiteDatabase& database, const std::string& statement) override {
+ if (m_blocked_statements.contains(statement)) return TEST_SQLITE_ERROR;
+ return m_base_exec.Exec(database, statement);
+ }
+};
+
+BOOST_AUTO_TEST_CASE(txn_close_failure_dangling_txn)
+{
+ // Verifies that there is no active dangling, to-be-reversed db txn
+ // after the batch object that initiated it is destroyed.
+ DatabaseOptions options;
+ DatabaseStatus status;
+ bilingual_str error;
+ std::unique_ptr<SQLiteDatabase> database = MakeSQLiteDatabase(m_path_root / "sqlite", options, status, error);
+
+ std::string key = "key";
+ std::string value = "value";
+
+ std::unique_ptr<SQLiteBatch> batch = std::make_unique<SQLiteBatch>(*database);
+ BOOST_CHECK(batch->TxnBegin());
+ BOOST_CHECK(batch->Write(key, value));
+ // Set a handler to prevent txn abortion during destruction.
+ // Mimicking a db statement execution failure.
+ batch->SetExecHandler(std::make_unique<DbExecBlocker>(std::set<std::string>{"ROLLBACK TRANSACTION"}));
+ // Destroy batch
+ batch.reset();
+
+ // Ensure there is no dangling, to-be-reversed db txn
+ BOOST_CHECK(!database->HasActiveTxn());
+
+ // And, just as a sanity check; verify that new batchs only write what they suppose to write
+ // and nothing else.
+ std::string key2 = "key2";
+ std::unique_ptr<SQLiteBatch> batch2 = std::make_unique<SQLiteBatch>(*database);
+ BOOST_CHECK(batch2->Write(key2, value));
+ // The first key must not exist
+ BOOST_CHECK(!batch2->Exists(key));
+}
+
+BOOST_AUTO_TEST_CASE(concurrent_txn_dont_interfere)
+{
+ std::string key = "key";
+ std::string value = "value";
+ std::string value2 = "value_2";
+
+ DatabaseOptions options;
+ DatabaseStatus status;
+ bilingual_str error;
+ const auto& database = MakeSQLiteDatabase(m_path_root / "sqlite", options, status, error);
+
+ std::unique_ptr<DatabaseBatch> handler = Assert(database)->MakeBatch();
+
+ // Verify concurrent db transactions does not interfere between each other.
+ // Start db txn, write key and check the key does exist within the db txn.
+ BOOST_CHECK(handler->TxnBegin());
+ BOOST_CHECK(handler->Write(key, value));
+ BOOST_CHECK(handler->Exists(key));
+
+ // But, the same key, does not exist in another handler
+ std::unique_ptr<DatabaseBatch> handler2 = Assert(database)->MakeBatch();
+ BOOST_CHECK(handler2->Exists(key));
+
+ // Attempt to commit the handler txn calling the handler2 methods.
+ // Which, must not be possible.
+ BOOST_CHECK(!handler2->TxnCommit());
+ BOOST_CHECK(!handler2->TxnAbort());
+
+ // Only the first handler can commit the changes.
+ BOOST_CHECK(handler->TxnCommit());
+ // And, once commit is completed, handler2 can read the record
+ std::string read_value;
+ BOOST_CHECK(handler2->Read(key, read_value));
+ BOOST_CHECK_EQUAL(read_value, value);
+
+ // Also, once txn is committed, single write statements are re-enabled.
+ // Which means that handler2 can read the record changes directly.
+ BOOST_CHECK(handler->Write(key, value2, /*fOverwrite=*/true));
+ BOOST_CHECK(handler2->Read(key, read_value));
+ BOOST_CHECK_EQUAL(read_value, value2);
+}
+#endif // USE_SQLITE
+
BOOST_AUTO_TEST_SUITE_END()
} // namespace wallet
diff --git a/src/wallet/test/fuzz/coinselection.cpp b/src/wallet/test/fuzz/coinselection.cpp
index 87d419493b..3ffeecdf34 100644
--- a/src/wallet/test/fuzz/coinselection.cpp
+++ b/src/wallet/test/fuzz/coinselection.cpp
@@ -11,6 +11,7 @@
#include <test/util/setup_common.h>
#include <wallet/coinselection.h>
+#include <numeric>
#include <vector>
namespace wallet {
@@ -77,6 +78,144 @@ static SelectionResult ManualSelection(std::vector<COutput>& utxos, const CAmoun
// Returns true if the result contains an error and the message is not empty
static bool HasErrorMsg(const util::Result<SelectionResult>& res) { return !util::ErrorString(res).empty(); }
+FUZZ_TARGET(coin_grinder)
+{
+ FuzzedDataProvider fuzzed_data_provider{buffer.data(), buffer.size()};
+ std::vector<COutput> utxo_pool;
+
+ const CAmount target{fuzzed_data_provider.ConsumeIntegralInRange<CAmount>(1, MAX_MONEY)};
+
+ FastRandomContext fast_random_context{ConsumeUInt256(fuzzed_data_provider)};
+ CoinSelectionParams coin_params{fast_random_context};
+ coin_params.m_subtract_fee_outputs = fuzzed_data_provider.ConsumeBool();
+ coin_params.m_long_term_feerate = CFeeRate{ConsumeMoney(fuzzed_data_provider, /*max=*/COIN)};
+ coin_params.m_effective_feerate = CFeeRate{ConsumeMoney(fuzzed_data_provider, /*max=*/COIN)};
+ coin_params.change_output_size = fuzzed_data_provider.ConsumeIntegralInRange<int>(10, 1000);
+ coin_params.change_spend_size = fuzzed_data_provider.ConsumeIntegralInRange<int>(10, 1000);
+ coin_params.m_cost_of_change= coin_params.m_effective_feerate.GetFee(coin_params.change_output_size) + coin_params.m_long_term_feerate.GetFee(coin_params.change_spend_size);
+ coin_params.m_change_fee = coin_params.m_effective_feerate.GetFee(coin_params.change_output_size);
+ // For other results to be comparable to SRD, we must align the change_target with SRD’s hardcoded behavior
+ coin_params.m_min_change_target = CHANGE_LOWER + coin_params.m_change_fee;
+
+ // Create some coins
+ CAmount total_balance{0};
+ CAmount max_spendable{0};
+ int next_locktime{0};
+ LIMITED_WHILE(fuzzed_data_provider.ConsumeBool(), 10000)
+ {
+ const int n_input{fuzzed_data_provider.ConsumeIntegralInRange<int>(0, 10)};
+ const int n_input_bytes{fuzzed_data_provider.ConsumeIntegralInRange<int>(41, 10000)};
+ const CAmount amount{fuzzed_data_provider.ConsumeIntegralInRange<CAmount>(1, MAX_MONEY)};
+ if (total_balance + amount >= MAX_MONEY) {
+ break;
+ }
+ AddCoin(amount, n_input, n_input_bytes, ++next_locktime, utxo_pool, coin_params.m_effective_feerate);
+ total_balance += amount;
+ CAmount eff_value = amount - coin_params.m_effective_feerate.GetFee(n_input_bytes);
+ max_spendable += eff_value;
+ }
+
+ std::vector<OutputGroup> group_pos;
+ GroupCoins(fuzzed_data_provider, utxo_pool, coin_params, /*positive_only=*/true, group_pos);
+
+ // Run coinselection algorithms
+ auto result_cg = CoinGrinder(group_pos, target, coin_params.m_min_change_target, MAX_STANDARD_TX_WEIGHT);
+ if (target + coin_params.m_min_change_target > max_spendable || HasErrorMsg(result_cg)) return; // We only need to compare algorithms if CoinGrinder has a solution
+ assert(result_cg);
+ if (!result_cg->GetAlgoCompleted()) return; // Bail out if CoinGrinder solution is not optimal
+
+ auto result_srd = SelectCoinsSRD(group_pos, target, coin_params.m_change_fee, fast_random_context, MAX_STANDARD_TX_WEIGHT);
+ if (result_srd && result_srd->GetChange(CHANGE_LOWER, coin_params.m_change_fee) > 0) { // exclude any srd solutions that don’t have change, err on excluding
+ assert(result_srd->GetWeight() >= result_cg->GetWeight());
+ }
+
+ auto result_knapsack = KnapsackSolver(group_pos, target, coin_params.m_min_change_target, fast_random_context, MAX_STANDARD_TX_WEIGHT);
+ if (result_knapsack && result_knapsack->GetChange(CHANGE_LOWER, coin_params.m_change_fee) > 0) { // exclude any knapsack solutions that don’t have change, err on excluding
+ assert(result_knapsack->GetWeight() >= result_cg->GetWeight());
+ }
+}
+
+FUZZ_TARGET(coin_grinder_is_optimal)
+{
+ FuzzedDataProvider fuzzed_data_provider{buffer.data(), buffer.size()};
+
+ FastRandomContext fast_random_context{ConsumeUInt256(fuzzed_data_provider)};
+ CoinSelectionParams coin_params{fast_random_context};
+ coin_params.m_subtract_fee_outputs = false;
+ // Set effective feerate up to MAX_MONEY sats per 1'000'000 vB (2'100'000'000 sat/vB = 21'000 BTC/kvB).
+ coin_params.m_effective_feerate = CFeeRate{ConsumeMoney(fuzzed_data_provider, MAX_MONEY), 1'000'000};
+ coin_params.m_min_change_target = ConsumeMoney(fuzzed_data_provider);
+
+ // Create some coins
+ CAmount max_spendable{0};
+ int next_locktime{0};
+ static constexpr unsigned max_output_groups{16};
+ std::vector<OutputGroup> group_pos;
+ LIMITED_WHILE(fuzzed_data_provider.ConsumeBool(), max_output_groups)
+ {
+ // With maximum m_effective_feerate and n_input_bytes = 1'000'000, input_fee <= MAX_MONEY.
+ const int n_input_bytes{fuzzed_data_provider.ConsumeIntegralInRange<int>(1, 1'000'000)};
+ // Only make UTXOs with positive effective value
+ const CAmount input_fee = coin_params.m_effective_feerate.GetFee(n_input_bytes);
+ // Ensure that each UTXO has at least an effective value of 1 sat
+ const CAmount eff_value{fuzzed_data_provider.ConsumeIntegralInRange<CAmount>(1, MAX_MONEY - max_spendable - max_output_groups + group_pos.size())};
+ const CAmount amount{eff_value + input_fee};
+ std::vector<COutput> temp_utxo_pool;
+
+ AddCoin(amount, /*n_input=*/0, n_input_bytes, ++next_locktime, temp_utxo_pool, coin_params.m_effective_feerate);
+ max_spendable += eff_value;
+
+ auto output_group = OutputGroup(coin_params);
+ output_group.Insert(std::make_shared<COutput>(temp_utxo_pool.at(0)), /*ancestors=*/0, /*descendants=*/0);
+ group_pos.push_back(output_group);
+ }
+ size_t num_groups = group_pos.size();
+ assert(num_groups <= max_output_groups);
+
+ // Only choose targets below max_spendable
+ const CAmount target{fuzzed_data_provider.ConsumeIntegralInRange<CAmount>(1, std::max(CAmount{1}, max_spendable - coin_params.m_min_change_target))};
+
+ // Brute force optimal solution
+ CAmount best_amount{MAX_MONEY};
+ int best_weight{std::numeric_limits<int>::max()};
+ for (uint32_t pattern = 1; (pattern >> num_groups) == 0; ++pattern) {
+ CAmount subset_amount{0};
+ int subset_weight{0};
+ for (unsigned i = 0; i < num_groups; ++i) {
+ if ((pattern >> i) & 1) {
+ subset_amount += group_pos[i].GetSelectionAmount();
+ subset_weight += group_pos[i].m_weight;
+ }
+ }
+ if ((subset_amount >= target + coin_params.m_min_change_target) && (subset_weight < best_weight || (subset_weight == best_weight && subset_amount < best_amount))) {
+ best_weight = subset_weight;
+ best_amount = subset_amount;
+ }
+ }
+
+ if (best_weight < std::numeric_limits<int>::max()) {
+ // Sufficient funds and acceptable weight: CoinGrinder should find at least one solution
+ int high_max_weight = fuzzed_data_provider.ConsumeIntegralInRange<int>(best_weight, std::numeric_limits<int>::max());
+
+ auto result_cg = CoinGrinder(group_pos, target, coin_params.m_min_change_target, high_max_weight);
+ assert(result_cg);
+ assert(result_cg->GetWeight() <= high_max_weight);
+ assert(result_cg->GetSelectedEffectiveValue() >= target + coin_params.m_min_change_target);
+ assert(best_weight < result_cg->GetWeight() || (best_weight == result_cg->GetWeight() && best_amount <= result_cg->GetSelectedEffectiveValue()));
+ if (result_cg->GetAlgoCompleted()) {
+ // If CoinGrinder exhausted the search space, it must return the optimal solution
+ assert(best_weight == result_cg->GetWeight());
+ assert(best_amount == result_cg->GetSelectedEffectiveValue());
+ }
+ }
+
+ // CoinGrinder cannot ever find a better solution than the brute-forced best, or there is none in the first place
+ int low_max_weight = fuzzed_data_provider.ConsumeIntegralInRange<int>(0, best_weight - 1);
+ auto result_cg = CoinGrinder(group_pos, target, coin_params.m_min_change_target, low_max_weight);
+ // Max_weight should have been exceeded, or there were insufficient funds
+ assert(!result_cg);
+}
+
FUZZ_TARGET(coinselection)
{
FuzzedDataProvider fuzzed_data_provider{buffer.data(), buffer.size()};
diff --git a/src/wallet/test/fuzz/notifications.cpp b/src/wallet/test/fuzz/notifications.cpp
index 203ab5f606..9a515828fe 100644
--- a/src/wallet/test/fuzz/notifications.cpp
+++ b/src/wallet/test/fuzz/notifications.cpp
@@ -3,7 +3,6 @@
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
#include <addresstype.h>
-#include <common/args.h>
#include <consensus/amount.h>
#include <interfaces/chain.h>
#include <kernel/chain.h>
@@ -89,8 +88,6 @@ void ImportDescriptors(CWallet& wallet, const std::string& seed_insecure)
* Wraps a descriptor wallet for fuzzing.
*/
struct FuzzedWallet {
- ArgsManager args;
- WalletContext context;
std::shared_ptr<CWallet> wallet;
FuzzedWallet(const std::string& name, const std::string& seed_insecure)
{
@@ -132,6 +129,14 @@ struct FuzzedWallet {
}
}
}
+ std::vector<CRecipient> recipients;
+ for (size_t idx = 0; idx < tx.vout.size(); idx++) {
+ const CTxOut& tx_out = tx.vout[idx];
+ CTxDestination dest;
+ ExtractDestination(tx_out.scriptPubKey, dest);
+ CRecipient recipient = {dest, tx_out.nValue, subtract_fee_from_outputs.count(idx) == 1};
+ recipients.push_back(recipient);
+ }
CCoinControl coin_control;
coin_control.m_allow_other_inputs = fuzzed_data_provider.ConsumeBool();
CallOneOf(
@@ -158,7 +163,10 @@ struct FuzzedWallet {
int change_position{fuzzed_data_provider.ConsumeIntegralInRange<int>(-1, tx.vout.size() - 1)};
bilingual_str error;
- (void)FundTransaction(*wallet, tx, change_position, /*lockUnspents=*/false, subtract_fee_from_outputs, coin_control);
+ // Clear tx.vout since it is not meant to be used now that we are passing outputs directly.
+ // This sets us up for a future PR to completely remove tx from the function signature in favor of passing inputs directly
+ tx.vout.clear();
+ (void)FundTransaction(*wallet, tx, recipients, change_position, /*lockUnspents=*/false, coin_control);
}
};
diff --git a/src/wallet/test/wallet_tests.cpp b/src/wallet/test/wallet_tests.cpp
index 65297054df..27a81b3669 100644
--- a/src/wallet/test/wallet_tests.cpp
+++ b/src/wallet/test/wallet_tests.cpp
@@ -445,9 +445,11 @@ BOOST_FIXTURE_TEST_CASE(LoadReceiveRequests, TestingSetup)
auto requests = wallet->GetAddressReceiveRequests();
auto erequests = {"val_rr11", "val_rr20"};
BOOST_CHECK_EQUAL_COLLECTIONS(requests.begin(), requests.end(), std::begin(erequests), std::end(erequests));
- WalletBatch batch{wallet->GetDatabase()};
- BOOST_CHECK(batch.WriteAddressPreviouslySpent(PKHash(), false));
- BOOST_CHECK(batch.EraseAddressData(ScriptHash()));
+ RunWithinTxn(wallet->GetDatabase(), /*process_desc*/"test", [](WalletBatch& batch){
+ BOOST_CHECK(batch.WriteAddressPreviouslySpent(PKHash(), false));
+ BOOST_CHECK(batch.EraseAddressData(ScriptHash()));
+ return true;
+ });
});
TestLoadWallet(name, format, [](std::shared_ptr<CWallet> wallet) EXCLUSIVE_LOCKS_REQUIRED(wallet->cs_wallet) {
BOOST_CHECK(!wallet->IsAddressPreviouslySpent(PKHash()));
@@ -888,7 +890,7 @@ BOOST_FIXTURE_TEST_CASE(CreateWalletWithoutChain, BasicTestingSetup)
UnloadWallet(std::move(wallet));
}
-BOOST_FIXTURE_TEST_CASE(ZapSelectTx, TestChain100Setup)
+BOOST_FIXTURE_TEST_CASE(RemoveTxs, TestChain100Setup)
{
m_args.ForceSetArg("-unsafesqlitesync", "1");
WalletContext context;
@@ -913,8 +915,8 @@ BOOST_FIXTURE_TEST_CASE(ZapSelectTx, TestChain100Setup)
BOOST_CHECK(wallet->HasWalletSpend(prev_tx));
BOOST_CHECK_EQUAL(wallet->mapWallet.count(block_hash), 1u);
- std::vector<uint256> vHashIn{ block_hash }, vHashOut;
- BOOST_CHECK_EQUAL(wallet->ZapSelectTx(vHashIn, vHashOut), DBErrors::LOAD_OK);
+ std::vector<uint256> vHashIn{ block_hash };
+ BOOST_CHECK(wallet->RemoveTxs(vHashIn));
BOOST_CHECK(!wallet->HasWalletSpend(prev_tx));
BOOST_CHECK_EQUAL(wallet->mapWallet.count(block_hash), 0u);
diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp
index e03f5532fc..26c5256f6f 100644
--- a/src/wallet/wallet.cpp
+++ b/src/wallet/wallet.cpp
@@ -555,7 +555,7 @@ void CWallet::UpgradeDescriptorCache()
SetWalletFlag(WALLET_FLAG_LAST_HARDENED_XPUB_CACHED);
}
-bool CWallet::Unlock(const SecureString& strWalletPassphrase, bool accept_no_keys)
+bool CWallet::Unlock(const SecureString& strWalletPassphrase)
{
CCrypter crypter;
CKeyingMaterial _vMasterKey;
@@ -568,7 +568,7 @@ bool CWallet::Unlock(const SecureString& strWalletPassphrase, bool accept_no_key
return false;
if (!crypter.Decrypt(pMasterKey.second.vchCryptedKey, _vMasterKey))
continue; // try another master key
- if (Unlock(_vMasterKey, accept_no_keys)) {
+ if (Unlock(_vMasterKey)) {
// Now that we've unlocked, upgrade the key metadata
UpgradeKeyMetadata();
// Now that we've unlocked, upgrade the descriptor cache
@@ -1571,11 +1571,22 @@ isminetype CWallet::IsMine(const CTxDestination& dest) const
isminetype CWallet::IsMine(const CScript& script) const
{
AssertLockHeld(cs_wallet);
- isminetype result = ISMINE_NO;
- for (const auto& spk_man_pair : m_spk_managers) {
- result = std::max(result, spk_man_pair.second->IsMine(script));
+
+ // Search the cache so that IsMine is called only on the relevant SPKMs instead of on everything in m_spk_managers
+ const auto& it = m_cached_spks.find(script);
+ if (it != m_cached_spks.end()) {
+ isminetype res = ISMINE_NO;
+ for (const auto& spkm : it->second) {
+ res = std::max(res, spkm->IsMine(script));
+ }
+ Assume(res == ISMINE_SPENDABLE);
+ return res;
}
- return result;
+
+ // Legacy wallet
+ if (IsLegacy()) return GetLegacyScriptPubKeyMan()->IsMine(script);
+
+ return ISMINE_NO;
}
bool CWallet::IsMine(const CTransaction& tx) const
@@ -2320,12 +2331,41 @@ DBErrors CWallet::LoadWallet()
return nLoadWalletRet;
}
-DBErrors CWallet::ZapSelectTx(std::vector<uint256>& vHashIn, std::vector<uint256>& vHashOut)
+util::Result<void> CWallet::RemoveTxs(std::vector<uint256>& txs_to_remove)
{
AssertLockHeld(cs_wallet);
- DBErrors nZapSelectTxRet = WalletBatch(GetDatabase()).ZapSelectTx(vHashIn, vHashOut);
- for (const uint256& hash : vHashOut) {
- const auto& it = mapWallet.find(hash);
+ WalletBatch batch(GetDatabase());
+ if (!batch.TxnBegin()) return util::Error{_("Error starting db txn for wallet transactions removal")};
+
+ // Check for transaction existence and remove entries from disk
+ using TxIterator = std::unordered_map<uint256, CWalletTx, SaltedTxidHasher>::const_iterator;
+ std::vector<TxIterator> erased_txs;
+ bilingual_str str_err;
+ for (const uint256& hash : txs_to_remove) {
+ auto it_wtx = mapWallet.find(hash);
+ if (it_wtx == mapWallet.end()) {
+ str_err = strprintf(_("Transaction %s does not belong to this wallet"), hash.GetHex());
+ break;
+ }
+ if (!batch.EraseTx(hash)) {
+ str_err = strprintf(_("Failure removing transaction: %s"), hash.GetHex());
+ break;
+ }
+ erased_txs.emplace_back(it_wtx);
+ }
+
+ // Roll back removals in case of an error
+ if (!str_err.empty()) {
+ batch.TxnAbort();
+ return util::Error{str_err};
+ }
+
+ // Dump changes to disk
+ if (!batch.TxnCommit()) return util::Error{_("Error committing db txn for wallet transactions removal")};
+
+ // Update the in-memory state and notify upper layers about the removals
+ for (const auto& it : erased_txs) {
+ const uint256 hash{it->first};
wtxOrdered.erase(it->second.m_it_wtxOrdered);
for (const auto& txin : it->second.tx->vin)
mapTxSpends.erase(txin.prevout);
@@ -2333,22 +2373,9 @@ DBErrors CWallet::ZapSelectTx(std::vector<uint256>& vHashIn, std::vector<uint256
NotifyTransactionChanged(hash, CT_DELETED);
}
- if (nZapSelectTxRet == DBErrors::NEED_REWRITE)
- {
- if (GetDatabase().Rewrite("\x04pool"))
- {
- for (const auto& spk_man_pair : m_spk_managers) {
- spk_man_pair.second->RewriteDB();
- }
- }
- }
-
- if (nZapSelectTxRet != DBErrors::LOAD_OK)
- return nZapSelectTxRet;
-
MarkDirty();
- return DBErrors::LOAD_OK;
+ return {}; // all good
}
bool CWallet::SetAddressBookWithDB(WalletBatch& batch, const CTxDestination& address, const std::string& strName, const std::optional<AddressPurpose>& new_purpose)
@@ -2359,22 +2386,32 @@ bool CWallet::SetAddressBookWithDB(WalletBatch& batch, const CTxDestination& add
{
LOCK(cs_wallet);
std::map<CTxDestination, CAddressBookData>::iterator mi = m_address_book.find(address);
- fUpdated = (mi != m_address_book.end() && !mi->second.IsChange());
- m_address_book[address].SetLabel(strName);
+ fUpdated = mi != m_address_book.end() && !mi->second.IsChange();
+
+ CAddressBookData& record = mi != m_address_book.end() ? mi->second : m_address_book[address];
+ record.SetLabel(strName);
is_mine = IsMine(address) != ISMINE_NO;
if (new_purpose) { /* update purpose only if requested */
- purpose = m_address_book[address].purpose = new_purpose;
- } else {
- purpose = m_address_book[address].purpose;
+ record.purpose = new_purpose;
}
+ purpose = record.purpose;
+ }
+
+ const std::string& encoded_dest = EncodeDestination(address);
+ if (new_purpose && !batch.WritePurpose(encoded_dest, PurposeToString(*new_purpose))) {
+ WalletLogPrintf("Error: fail to write address book 'purpose' entry\n");
+ return false;
+ }
+ if (!batch.WriteName(encoded_dest, strName)) {
+ WalletLogPrintf("Error: fail to write address book 'name' entry\n");
+ return false;
}
+
// In very old wallets, address purpose may not be recorded so we derive it from IsMine
NotifyAddressBookChanged(address, strName, is_mine,
purpose.value_or(is_mine ? AddressPurpose::RECEIVE : AddressPurpose::SEND),
(fUpdated ? CT_UPDATED : CT_NEW));
- if (new_purpose && !batch.WritePurpose(EncodeDestination(address), PurposeToString(*new_purpose)))
- return false;
- return batch.WriteName(EncodeDestination(address), strName);
+ return true;
}
bool CWallet::SetAddressBook(const CTxDestination& address, const std::string& strName, const std::optional<AddressPurpose>& purpose)
@@ -2385,7 +2422,14 @@ bool CWallet::SetAddressBook(const CTxDestination& address, const std::string& s
bool CWallet::DelAddressBook(const CTxDestination& address)
{
- WalletBatch batch(GetDatabase());
+ return RunWithinTxn(GetDatabase(), /*process_desc=*/"address book entry removal", [&](WalletBatch& batch){
+ return DelAddressBookWithDB(batch, address);
+ });
+}
+
+bool CWallet::DelAddressBookWithDB(WalletBatch& batch, const CTxDestination& address)
+{
+ const std::string& dest = EncodeDestination(address);
{
LOCK(cs_wallet);
// If we want to delete receiving addresses, we should avoid calling EraseAddressData because it will delete the previously_spent value. Could instead just erase the label so it becomes a change address, and keep the data.
@@ -2396,14 +2440,30 @@ bool CWallet::DelAddressBook(const CTxDestination& address)
return false;
}
// Delete data rows associated with this address
- batch.EraseAddressData(address);
+ if (!batch.EraseAddressData(address)) {
+ WalletLogPrintf("Error: cannot erase address book entry data\n");
+ return false;
+ }
+
+ // Delete purpose entry
+ if (!batch.ErasePurpose(dest)) {
+ WalletLogPrintf("Error: cannot erase address book entry purpose\n");
+ return false;
+ }
+
+ // Delete name entry
+ if (!batch.EraseName(dest)) {
+ WalletLogPrintf("Error: cannot erase address book entry name\n");
+ return false;
+ }
+
+ // finally, remove it from the map
m_address_book.erase(address);
}
+ // All good, signal changes
NotifyAddressBookChanged(address, "", /*is_mine=*/false, AddressPurpose::SEND, CT_DELETED);
-
- batch.ErasePurpose(EncodeDestination(address));
- return batch.EraseName(EncodeDestination(address));
+ return true;
}
size_t CWallet::KeypoolCountExternalKeys() const
@@ -3374,12 +3434,12 @@ bool CWallet::Lock()
return true;
}
-bool CWallet::Unlock(const CKeyingMaterial& vMasterKeyIn, bool accept_no_keys)
+bool CWallet::Unlock(const CKeyingMaterial& vMasterKeyIn)
{
{
LOCK(cs_wallet);
for (const auto& spk_man_pair : m_spk_managers) {
- if (!spk_man_pair.second->CheckDecryptionKey(vMasterKeyIn, accept_no_keys)) {
+ if (!spk_man_pair.second->CheckDecryptionKey(vMasterKeyIn)) {
return false;
}
}
@@ -3425,12 +3485,18 @@ ScriptPubKeyMan* CWallet::GetScriptPubKeyMan(const OutputType& type, bool intern
std::set<ScriptPubKeyMan*> CWallet::GetScriptPubKeyMans(const CScript& script) const
{
std::set<ScriptPubKeyMan*> spk_mans;
- SignatureData sigdata;
- for (const auto& spk_man_pair : m_spk_managers) {
- if (spk_man_pair.second->CanProvide(script, sigdata)) {
- spk_mans.insert(spk_man_pair.second.get());
- }
+
+ // Search the cache for relevant SPKMs instead of iterating m_spk_managers
+ const auto& it = m_cached_spks.find(script);
+ if (it != m_cached_spks.end()) {
+ spk_mans.insert(it->second.begin(), it->second.end());
}
+ SignatureData sigdata;
+ Assume(std::all_of(spk_mans.begin(), spk_mans.end(), [&script, &sigdata](ScriptPubKeyMan* spkm) { return spkm->CanProvide(script, sigdata); }));
+
+ // Legacy wallet
+ if (IsLegacy() && GetLegacyScriptPubKeyMan()->CanProvide(script, sigdata)) spk_mans.insert(GetLegacyScriptPubKeyMan());
+
return spk_mans;
}
@@ -3450,11 +3516,17 @@ std::unique_ptr<SigningProvider> CWallet::GetSolvingProvider(const CScript& scri
std::unique_ptr<SigningProvider> CWallet::GetSolvingProvider(const CScript& script, SignatureData& sigdata) const
{
- for (const auto& spk_man_pair : m_spk_managers) {
- if (spk_man_pair.second->CanProvide(script, sigdata)) {
- return spk_man_pair.second->GetSolvingProvider(script);
- }
+ // Search the cache for relevant SPKMs instead of iterating m_spk_managers
+ const auto& it = m_cached_spks.find(script);
+ if (it != m_cached_spks.end()) {
+ // All spkms for a given script must already be able to make a SigningProvider for the script, so just return the first one.
+ Assume(it->second.at(0)->CanProvide(script, sigdata));
+ return it->second.at(0)->GetSolvingProvider(script);
}
+
+ // Legacy wallet
+ if (IsLegacy() && GetLegacyScriptPubKeyMan()->CanProvide(script, sigdata)) return GetLegacyScriptPubKeyMan()->GetSolvingProvider(script);
+
return nullptr;
}
@@ -3513,9 +3585,10 @@ void CWallet::SetupLegacyScriptPubKeyMan()
AddScriptPubKeyMan(id, std::move(spk_manager));
}
-const CKeyingMaterial& CWallet::GetEncryptionKey() const
+bool CWallet::WithEncryptionKey(std::function<bool (const CKeyingMaterial&)> cb) const
{
- return vMasterKey;
+ LOCK(cs_wallet);
+ return cb(vMasterKey);
}
bool CWallet::HasEncryptionKeys() const
@@ -3532,15 +3605,16 @@ void CWallet::ConnectScriptPubKeyManNotifiers()
}
}
-void CWallet::LoadDescriptorScriptPubKeyMan(uint256 id, WalletDescriptor& desc)
+DescriptorScriptPubKeyMan& CWallet::LoadDescriptorScriptPubKeyMan(uint256 id, WalletDescriptor& desc)
{
+ DescriptorScriptPubKeyMan* spk_manager;
if (IsWalletFlagSet(WALLET_FLAG_EXTERNAL_SIGNER)) {
- auto spk_manager = std::unique_ptr<ScriptPubKeyMan>(new ExternalSignerScriptPubKeyMan(*this, desc, m_keypool_size));
- AddScriptPubKeyMan(id, std::move(spk_manager));
+ spk_manager = new ExternalSignerScriptPubKeyMan(*this, desc, m_keypool_size);
} else {
- auto spk_manager = std::unique_ptr<ScriptPubKeyMan>(new DescriptorScriptPubKeyMan(*this, desc, m_keypool_size));
- AddScriptPubKeyMan(id, std::move(spk_manager));
+ spk_manager = new DescriptorScriptPubKeyMan(*this, desc, m_keypool_size);
}
+ AddScriptPubKeyMan(id, std::unique_ptr<ScriptPubKeyMan>(spk_manager));
+ return *spk_manager;
}
void CWallet::SetupDescriptorScriptPubKeyMans(const CExtKey& master_key)
@@ -3863,7 +3937,11 @@ std::optional<MigrationData> CWallet::GetDescriptorsForLegacy(bilingual_str& err
AssertLockHeld(cs_wallet);
LegacyScriptPubKeyMan* legacy_spkm = GetLegacyScriptPubKeyMan();
- assert(legacy_spkm);
+ if (!Assume(legacy_spkm)) {
+ // This shouldn't happen
+ error = Untranslated(STR_INTERNAL_BUG("Error: Legacy wallet data missing"));
+ return std::nullopt;
+ }
std::optional<MigrationData> res = legacy_spkm->MigrateToDescriptor();
if (res == std::nullopt) {
@@ -3878,8 +3956,9 @@ bool CWallet::ApplyMigrationData(MigrationData& data, bilingual_str& error)
AssertLockHeld(cs_wallet);
LegacyScriptPubKeyMan* legacy_spkm = GetLegacyScriptPubKeyMan();
- if (!legacy_spkm) {
- error = _("Error: This wallet is already a descriptor wallet");
+ if (!Assume(legacy_spkm)) {
+ // This shouldn't happen
+ error = Untranslated(STR_INTERNAL_BUG("Error: Legacy wallet data missing"));
return false;
}
@@ -3890,6 +3969,8 @@ bool CWallet::ApplyMigrationData(MigrationData& data, bilingual_str& error)
if (ExtractDestination(script, dest)) not_migrated_dests.emplace(dest);
}
+ Assume(!m_cached_spks.empty());
+
for (auto& desc_spkm : data.desc_spkms) {
if (m_spk_managers.count(desc_spkm->GetID()) > 0) {
error = _("Error: Duplicate descriptors created during migration. Your wallet may be corrupted.");
@@ -3921,6 +4002,13 @@ bool CWallet::ApplyMigrationData(MigrationData& data, bilingual_str& error)
}
}
+ // Get best block locator so that we can copy it to the watchonly and solvables
+ CBlockLocator best_block_locator;
+ if (!WalletBatch(GetDatabase()).ReadBestBlock(best_block_locator)) {
+ error = _("Error: Unable to read wallet's best block locator record");
+ return false;
+ }
+
// Check if the transactions in the wallet are still ours. Either they belong here, or they belong in the watchonly wallet.
// We need to go through these in the tx insertion order so that lookups to spends works.
std::vector<uint256> txids_to_delete;
@@ -3931,32 +4019,47 @@ bool CWallet::ApplyMigrationData(MigrationData& data, bilingual_str& error)
LOCK(data.watchonly_wallet->cs_wallet);
data.watchonly_wallet->nOrderPosNext = nOrderPosNext;
watchonly_batch->WriteOrderPosNext(data.watchonly_wallet->nOrderPosNext);
+ // Write the best block locator to avoid rescanning on reload
+ if (!watchonly_batch->WriteBestBlock(best_block_locator)) {
+ error = _("Error: Unable to write watchonly wallet best block locator record");
+ return false;
+ }
+ }
+ if (data.solvable_wallet) {
+ // Write the best block locator to avoid rescanning on reload
+ if (!WalletBatch(data.solvable_wallet->GetDatabase()).WriteBestBlock(best_block_locator)) {
+ error = _("Error: Unable to write solvable wallet best block locator record");
+ return false;
+ }
}
for (const auto& [_pos, wtx] : wtxOrdered) {
- if (!IsMine(*wtx->tx) && !IsFromMe(*wtx->tx)) {
- // Check it is the watchonly wallet's
- // solvable_wallet doesn't need to be checked because transactions for those scripts weren't being watched for
- if (data.watchonly_wallet) {
- LOCK(data.watchonly_wallet->cs_wallet);
- if (data.watchonly_wallet->IsMine(*wtx->tx) || data.watchonly_wallet->IsFromMe(*wtx->tx)) {
- // Add to watchonly wallet
- const uint256& hash = wtx->GetHash();
- const CWalletTx& to_copy_wtx = *wtx;
- if (!data.watchonly_wallet->LoadToWallet(hash, [&](CWalletTx& ins_wtx, bool new_tx) EXCLUSIVE_LOCKS_REQUIRED(data.watchonly_wallet->cs_wallet) {
- if (!new_tx) return false;
- ins_wtx.SetTx(to_copy_wtx.tx);
- ins_wtx.CopyFrom(to_copy_wtx);
- return true;
- })) {
- error = strprintf(_("Error: Could not add watchonly tx %s to watchonly wallet"), wtx->GetHash().GetHex());
- return false;
- }
- watchonly_batch->WriteTx(data.watchonly_wallet->mapWallet.at(hash));
- // Mark as to remove from this wallet
+ // Check it is the watchonly wallet's
+ // solvable_wallet doesn't need to be checked because transactions for those scripts weren't being watched for
+ bool is_mine = IsMine(*wtx->tx) || IsFromMe(*wtx->tx);
+ if (data.watchonly_wallet) {
+ LOCK(data.watchonly_wallet->cs_wallet);
+ if (data.watchonly_wallet->IsMine(*wtx->tx) || data.watchonly_wallet->IsFromMe(*wtx->tx)) {
+ // Add to watchonly wallet
+ const uint256& hash = wtx->GetHash();
+ const CWalletTx& to_copy_wtx = *wtx;
+ if (!data.watchonly_wallet->LoadToWallet(hash, [&](CWalletTx& ins_wtx, bool new_tx) EXCLUSIVE_LOCKS_REQUIRED(data.watchonly_wallet->cs_wallet) {
+ if (!new_tx) return false;
+ ins_wtx.SetTx(to_copy_wtx.tx);
+ ins_wtx.CopyFrom(to_copy_wtx);
+ return true;
+ })) {
+ error = strprintf(_("Error: Could not add watchonly tx %s to watchonly wallet"), wtx->GetHash().GetHex());
+ return false;
+ }
+ watchonly_batch->WriteTx(data.watchonly_wallet->mapWallet.at(hash));
+ // Mark as to remove from the migrated wallet only if it does not also belong to it
+ if (!is_mine) {
txids_to_delete.push_back(hash);
- continue;
}
+ continue;
}
+ }
+ if (!is_mine) {
// Both not ours and not in the watchonly wallet
error = strprintf(_("Error: Transaction %s in wallet cannot be identified to belong to migrated wallets"), wtx->GetHash().GetHex());
return false;
@@ -3965,98 +4068,95 @@ bool CWallet::ApplyMigrationData(MigrationData& data, bilingual_str& error)
watchonly_batch.reset(); // Flush
// Do the removes
if (txids_to_delete.size() > 0) {
- std::vector<uint256> deleted_txids;
- if (ZapSelectTx(txids_to_delete, deleted_txids) != DBErrors::LOAD_OK) {
- error = _("Error: Could not delete watchonly transactions");
+ if (auto res = RemoveTxs(txids_to_delete); !res) {
+ error = _("Error: Could not delete watchonly transactions. ") + util::ErrorString(res);
return false;
}
- if (deleted_txids != txids_to_delete) {
- error = _("Error: Not all watchonly txs could be deleted");
+ }
+
+ // Pair external wallets with their corresponding db handler
+ std::vector<std::pair<std::shared_ptr<CWallet>, std::unique_ptr<WalletBatch>>> wallets_vec;
+ for (const auto& ext_wallet : {data.watchonly_wallet, data.solvable_wallet}) {
+ if (!ext_wallet) continue;
+
+ std::unique_ptr<WalletBatch> batch = std::make_unique<WalletBatch>(ext_wallet->GetDatabase());
+ if (!batch->TxnBegin()) {
+ error = strprintf(_("Error: database transaction cannot be executed for wallet %s"), ext_wallet->GetName());
return false;
}
- // Tell the GUI of each tx
- for (const uint256& txid : deleted_txids) {
- NotifyTransactionChanged(txid, CT_UPDATED);
- }
+ wallets_vec.emplace_back(ext_wallet, std::move(batch));
}
+ // Write address book entry to disk
+ auto func_store_addr = [](WalletBatch& batch, const CTxDestination& dest, const CAddressBookData& entry) {
+ auto address{EncodeDestination(dest)};
+ if (entry.purpose) batch.WritePurpose(address, PurposeToString(*entry.purpose));
+ if (entry.label) batch.WriteName(address, *entry.label);
+ for (const auto& [id, request] : entry.receive_requests) {
+ batch.WriteAddressReceiveRequest(dest, id, request);
+ }
+ if (entry.previously_spent) batch.WriteAddressPreviouslySpent(dest, true);
+ };
+
// Check the address book data in the same way we did for transactions
std::vector<CTxDestination> dests_to_delete;
- for (const auto& addr_pair : m_address_book) {
- // Labels applied to receiving addresses should go based on IsMine
- if (addr_pair.second.purpose == AddressPurpose::RECEIVE) {
- if (!IsMine(addr_pair.first)) {
- // Check the address book data is the watchonly wallet's
- if (data.watchonly_wallet) {
- LOCK(data.watchonly_wallet->cs_wallet);
- if (data.watchonly_wallet->IsMine(addr_pair.first)) {
- // Add to the watchonly. Copy the entire address book entry
- data.watchonly_wallet->m_address_book[addr_pair.first] = addr_pair.second;
- dests_to_delete.push_back(addr_pair.first);
- continue;
- }
- }
- if (data.solvable_wallet) {
- LOCK(data.solvable_wallet->cs_wallet);
- if (data.solvable_wallet->IsMine(addr_pair.first)) {
- // Add to the solvable. Copy the entire address book entry
- data.solvable_wallet->m_address_book[addr_pair.first] = addr_pair.second;
- dests_to_delete.push_back(addr_pair.first);
- continue;
- }
- }
+ for (const auto& [dest, record] : m_address_book) {
+ // Ensure "receive" entries that are no longer part of the original wallet are transferred to another wallet
+ // Entries for everything else ("send") will be cloned to all wallets.
+ bool require_transfer = record.purpose == AddressPurpose::RECEIVE && !IsMine(dest);
+ bool copied = false;
+ for (auto& [wallet, batch] : wallets_vec) {
+ LOCK(wallet->cs_wallet);
+ if (require_transfer && !wallet->IsMine(dest)) continue;
+
+ // Copy the entire address book entry
+ wallet->m_address_book[dest] = record;
+ func_store_addr(*batch, dest, record);
+
+ copied = true;
+ // Only delete 'receive' records that are no longer part of the original wallet
+ if (require_transfer) {
+ dests_to_delete.push_back(dest);
+ break;
+ }
+ }
- // Skip invalid/non-watched scripts that will not be migrated
- if (not_migrated_dests.count(addr_pair.first) > 0) {
- dests_to_delete.push_back(addr_pair.first);
- continue;
- }
+ // Fail immediately if we ever found an entry that was ours and cannot be transferred
+ // to any of the created wallets (watch-only, solvable).
+ // Means that no inferred descriptor maps to the stored entry. Which mustn't happen.
+ if (require_transfer && !copied) {
- // Not ours, not in watchonly wallet, and not in solvable
- error = _("Error: Address book data in wallet cannot be identified to belong to migrated wallets");
- return false;
- }
- } else {
- // Labels for everything else ("send") should be cloned to all
- if (data.watchonly_wallet) {
- LOCK(data.watchonly_wallet->cs_wallet);
- // Add to the watchonly. Copy the entire address book entry
- data.watchonly_wallet->m_address_book[addr_pair.first] = addr_pair.second;
- }
- if (data.solvable_wallet) {
- LOCK(data.solvable_wallet->cs_wallet);
- // Add to the solvable. Copy the entire address book entry
- data.solvable_wallet->m_address_book[addr_pair.first] = addr_pair.second;
+ // Skip invalid/non-watched scripts that will not be migrated
+ if (not_migrated_dests.count(dest) > 0) {
+ dests_to_delete.push_back(dest);
+ continue;
}
+
+ error = _("Error: Address book data in wallet cannot be identified to belong to migrated wallets");
+ return false;
}
}
- // Persist added address book entries (labels, purpose) for watchonly and solvable wallets
- auto persist_address_book = [](const CWallet& wallet) {
- LOCK(wallet.cs_wallet);
- WalletBatch batch{wallet.GetDatabase()};
- for (const auto& [destination, addr_book_data] : wallet.m_address_book) {
- auto address{EncodeDestination(destination)};
- if (addr_book_data.purpose) batch.WritePurpose(address, PurposeToString(*addr_book_data.purpose));
- if (addr_book_data.label) batch.WriteName(address, *addr_book_data.label);
- for (const auto& [id, request] : addr_book_data.receive_requests) {
- batch.WriteAddressReceiveRequest(destination, id, request);
- }
- if (addr_book_data.previously_spent) batch.WriteAddressPreviouslySpent(destination, true);
+ // Persist external wallets address book entries
+ for (auto& [wallet, batch] : wallets_vec) {
+ if (!batch->TxnCommit()) {
+ error = strprintf(_("Error: address book copy failed for wallet %s"), wallet->GetName());
+ return false;
}
- };
- if (data.watchonly_wallet) persist_address_book(*data.watchonly_wallet);
- if (data.solvable_wallet) persist_address_book(*data.solvable_wallet);
+ }
- // Remove the things to delete
+ // Remove the things to delete in this wallet
+ WalletBatch local_wallet_batch(GetDatabase());
+ local_wallet_batch.TxnBegin();
if (dests_to_delete.size() > 0) {
for (const auto& dest : dests_to_delete) {
- if (!DelAddressBook(dest)) {
+ if (!DelAddressBookWithDB(local_wallet_batch, dest)) {
error = _("Error: Unable to remove watchonly address book data");
return false;
}
}
}
+ local_wallet_batch.TxnCommit();
// Connect the SPKM signals
ConnectScriptPubKeyManNotifiers();
@@ -4188,11 +4288,13 @@ util::Result<MigrationResult> MigrateLegacyToDescriptor(const std::string& walle
std::vector<bilingual_str> warnings;
// If the wallet is still loaded, unload it so that nothing else tries to use it while we're changing it
+ bool was_loaded = false;
if (auto wallet = GetWallet(context, wallet_name)) {
if (!RemoveWallet(context, wallet, /*load_on_start=*/std::nullopt, warnings)) {
return util::Error{_("Unable to unload the wallet before migrating")};
}
UnloadWallet(std::move(wallet));
+ was_loaded = true;
}
// Load the wallet but only in the context of this function.
@@ -4213,8 +4315,20 @@ util::Result<MigrationResult> MigrateLegacyToDescriptor(const std::string& walle
return util::Error{Untranslated("Wallet loading failed.") + Untranslated(" ") + error};
}
+ // Helper to reload as normal for some of our exit scenarios
+ const auto& reload_wallet = [&](std::shared_ptr<CWallet>& to_reload) {
+ assert(to_reload.use_count() == 1);
+ std::string name = to_reload->GetName();
+ to_reload.reset();
+ to_reload = LoadWallet(context, name, /*load_on_start=*/std::nullopt, options, status, error, warnings);
+ return to_reload != nullptr;
+ };
+
// Before anything else, check if there is something to migrate.
- if (!local_wallet->GetLegacyScriptPubKeyMan()) {
+ if (local_wallet->IsWalletFlagSet(WALLET_FLAG_DESCRIPTORS)) {
+ if (was_loaded) {
+ reload_wallet(local_wallet);
+ }
return util::Error{_("Error: This wallet is already a descriptor wallet")};
}
@@ -4223,32 +4337,44 @@ util::Result<MigrationResult> MigrateLegacyToDescriptor(const std::string& walle
fs::path backup_filename = fs::PathFromString(strprintf("%s-%d.legacy.bak", wallet_name, GetTime()));
fs::path backup_path = this_wallet_dir / backup_filename;
if (!local_wallet->BackupWallet(fs::PathToString(backup_path))) {
+ if (was_loaded) {
+ reload_wallet(local_wallet);
+ }
return util::Error{_("Error: Unable to make a backup of your wallet")};
}
res.backup_path = backup_path;
bool success = false;
- {
- LOCK(local_wallet->cs_wallet);
- // Unlock the wallet if needed
- if (local_wallet->IsLocked() && !local_wallet->Unlock(passphrase)) {
- if (passphrase.find('\0') == std::string::npos) {
- return util::Error{Untranslated("Error: Wallet decryption failed, the wallet passphrase was not provided or was incorrect.")};
- } else {
- return util::Error{Untranslated("Error: Wallet decryption failed, the wallet passphrase entered was incorrect. "
- "The passphrase contains a null character (ie - a zero byte). "
- "If this passphrase was set with a version of this software prior to 25.0, "
- "please try again with only the characters up to — but not including — "
- "the first null character.")};
- }
+ // Unlock the wallet if needed
+ if (local_wallet->IsLocked() && !local_wallet->Unlock(passphrase)) {
+ if (was_loaded) {
+ reload_wallet(local_wallet);
+ }
+ if (passphrase.find('\0') == std::string::npos) {
+ return util::Error{Untranslated("Error: Wallet decryption failed, the wallet passphrase was not provided or was incorrect.")};
+ } else {
+ return util::Error{Untranslated("Error: Wallet decryption failed, the wallet passphrase entered was incorrect. "
+ "The passphrase contains a null character (ie - a zero byte). "
+ "If this passphrase was set with a version of this software prior to 25.0, "
+ "please try again with only the characters up to — but not including — "
+ "the first null character.")};
}
+ }
+ {
+ LOCK(local_wallet->cs_wallet);
// First change to using SQLite
if (!local_wallet->MigrateToSQLite(error)) return util::Error{error};
- // Do the migration, and cleanup if it fails
- success = DoMigration(*local_wallet, context, error, res);
+ // Do the migration of keys and scripts for non-blank wallets, and cleanup if it fails
+ success = local_wallet->IsWalletFlagSet(WALLET_FLAG_BLANK_WALLET);
+ if (!success) {
+ success = DoMigration(*local_wallet, context, error, res);
+ } else {
+ // Make sure that descriptors flag is actually set
+ local_wallet->SetWalletFlag(WALLET_FLAG_DESCRIPTORS);
+ }
}
// In case of reloading failure, we need to remember the wallet dirs to remove
@@ -4258,24 +4384,19 @@ util::Result<MigrationResult> MigrateLegacyToDescriptor(const std::string& walle
std::set<fs::path> wallet_dirs;
if (success) {
// Migration successful, unload all wallets locally, then reload them.
- const auto& reload_wallet = [&](std::shared_ptr<CWallet>& to_reload) {
- assert(to_reload.use_count() == 1);
- std::string name = to_reload->GetName();
- wallet_dirs.insert(fs::PathFromString(to_reload->GetDatabase().Filename()).parent_path());
- to_reload.reset();
- to_reload = LoadWallet(context, name, /*load_on_start=*/std::nullopt, options, status, error, warnings);
- return to_reload != nullptr;
- };
// Reload the main wallet
+ wallet_dirs.insert(fs::PathFromString(local_wallet->GetDatabase().Filename()).parent_path());
success = reload_wallet(local_wallet);
res.wallet = local_wallet;
res.wallet_name = wallet_name;
if (success && res.watchonly_wallet) {
// Reload watchonly
+ wallet_dirs.insert(fs::PathFromString(res.watchonly_wallet->GetDatabase().Filename()).parent_path());
success = reload_wallet(res.watchonly_wallet);
}
if (success && res.solvables_wallet) {
// Reload solvables
+ wallet_dirs.insert(fs::PathFromString(res.solvables_wallet->GetDatabase().Filename()).parent_path());
success = reload_wallet(res.solvables_wallet);
}
}
@@ -4333,4 +4454,17 @@ util::Result<MigrationResult> MigrateLegacyToDescriptor(const std::string& walle
}
return res;
}
+
+void CWallet::CacheNewScriptPubKeys(const std::set<CScript>& spks, ScriptPubKeyMan* spkm)
+{
+ for (const auto& script : spks) {
+ m_cached_spks[script].push_back(spkm);
+ }
+}
+
+void CWallet::TopUpCallback(const std::set<CScript>& spks, ScriptPubKeyMan* spkm)
+{
+ // Update scriptPubKey cache
+ CacheNewScriptPubKeys(spks, spkm);
+}
} // namespace wallet
diff --git a/src/wallet/wallet.h b/src/wallet/wallet.h
index 487921443f..8b0ee22276 100644
--- a/src/wallet/wallet.h
+++ b/src/wallet/wallet.h
@@ -302,7 +302,7 @@ class CWallet final : public WalletStorage, public interfaces::Chain::Notificati
private:
CKeyingMaterial vMasterKey GUARDED_BY(cs_wallet);
- bool Unlock(const CKeyingMaterial& vMasterKeyIn, bool accept_no_keys = false);
+ bool Unlock(const CKeyingMaterial& vMasterKeyIn);
std::atomic<bool> fAbortRescan{false};
std::atomic<bool> fScanningWallet{false}; // controlled by WalletRescanReserver
@@ -422,6 +422,9 @@ private:
// Same as 'AddActiveScriptPubKeyMan' but designed for use within a batch transaction context
void AddActiveScriptPubKeyManWithDb(WalletBatch& batch, uint256 id, OutputType type, bool internal);
+ //! Cache of descriptor ScriptPubKeys used for IsMine. Maps ScriptPubKey to set of spkms
+ std::unordered_map<CScript, std::vector<ScriptPubKeyMan*>, SaltedSipHasher> m_cached_spks;
+
/**
* Catch wallet up to current chain, scanning new blocks, updating the best
* block locator and m_last_block_processed, and registering for
@@ -578,7 +581,7 @@ public:
// Used to prevent deleting the passphrase from memory when it is still in use.
RecursiveMutex m_relock_mutex;
- bool Unlock(const SecureString& strWalletPassphrase, bool accept_no_keys = false);
+ bool Unlock(const SecureString& strWalletPassphrase);
bool ChangeWalletPassphrase(const SecureString& strOldWalletPassphrase, const SecureString& strNewWalletPassphrase);
bool EncryptWallet(const SecureString& strWalletPassphrase);
@@ -790,11 +793,14 @@ public:
void chainStateFlushed(ChainstateRole role, const CBlockLocator& loc) override;
DBErrors LoadWallet();
- DBErrors ZapSelectTx(std::vector<uint256>& vHashIn, std::vector<uint256>& vHashOut) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet);
+
+ /** Erases the provided transactions from the wallet. */
+ util::Result<void> RemoveTxs(std::vector<uint256>& txs_to_remove) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet);
bool SetAddressBook(const CTxDestination& address, const std::string& strName, const std::optional<AddressPurpose>& purpose);
bool DelAddressBook(const CTxDestination& address);
+ bool DelAddressBookWithDB(WalletBatch& batch, const CTxDestination& address);
bool IsAddressPreviouslySpent(const CTxDestination& dest) const EXCLUSIVE_LOCKS_REQUIRED(cs_wallet);
bool SetAddressPreviouslySpent(WalletBatch& batch, const CTxDestination& dest, bool used) EXCLUSIVE_LOCKS_REQUIRED(cs_wallet);
@@ -962,7 +968,8 @@ public:
//! Make a LegacyScriptPubKeyMan and set it for all types, internal, and external.
void SetupLegacyScriptPubKeyMan();
- const CKeyingMaterial& GetEncryptionKey() const override;
+ bool WithEncryptionKey(std::function<bool (const CKeyingMaterial&)> cb) const override;
+
bool HasEncryptionKeys() const override;
/** Get last block processed height */
@@ -990,7 +997,7 @@ public:
void ConnectScriptPubKeyManNotifiers();
//! Instantiate a descriptor ScriptPubKeyMan from the WalletDescriptor and load it
- void LoadDescriptorScriptPubKeyMan(uint256 id, WalletDescriptor& desc);
+ DescriptorScriptPubKeyMan& LoadDescriptorScriptPubKeyMan(uint256 id, WalletDescriptor& desc);
//! Adds the active ScriptPubKeyMan for the specified type and internal. Writes it to the wallet file
//! @param[in] id The unique id for the ScriptPubKeyMan
@@ -1041,6 +1048,11 @@ public:
//! Whether the (external) signer performs R-value signature grinding
bool CanGrindR() const;
+
+ //! Add scriptPubKeys for this ScriptPubKeyMan into the scriptPubKey cache
+ void CacheNewScriptPubKeys(const std::set<CScript>& spks, ScriptPubKeyMan* spkm);
+
+ void TopUpCallback(const std::set<CScript>& spks, ScriptPubKeyMan* spkm) override;
};
/**
diff --git a/src/wallet/walletdb.cpp b/src/wallet/walletdb.cpp
index 9820c7c0ee..3ebe4ee7c9 100644
--- a/src/wallet/walletdb.cpp
+++ b/src/wallet/walletdb.cpp
@@ -804,10 +804,10 @@ static DBErrors LoadDescriptorWalletRecords(CWallet* pwallet, DatabaseBatch& bat
strErr = strprintf("%s\nDetails: %s", strErr, e.what());
return DBErrors::UNKNOWN_DESCRIPTOR;
}
- pwallet->LoadDescriptorScriptPubKeyMan(id, desc);
+ DescriptorScriptPubKeyMan& spkm = pwallet->LoadDescriptorScriptPubKeyMan(id, desc);
// Prior to doing anything with this spkm, verify ID compatibility
- if (id != pwallet->GetDescriptorScriptPubKeyMan(desc)->GetID()) {
+ if (id != spkm.GetID()) {
strErr = "The descriptor ID calculated by the wallet differs from the one in DB";
return DBErrors::CORRUPT;
}
@@ -1230,88 +1230,33 @@ DBErrors WalletBatch::LoadWallet(CWallet* pwallet)
return result;
}
-DBErrors WalletBatch::FindWalletTxHashes(std::vector<uint256>& tx_hashes)
+static bool RunWithinTxn(WalletBatch& batch, std::string_view process_desc, const std::function<bool(WalletBatch&)>& func)
{
- DBErrors result = DBErrors::LOAD_OK;
-
- try {
- int nMinVersion = 0;
- if (m_batch->Read(DBKeys::MINVERSION, nMinVersion)) {
- if (nMinVersion > FEATURE_LATEST)
- return DBErrors::TOO_NEW;
- }
-
- // Get cursor
- std::unique_ptr<DatabaseCursor> cursor = m_batch->GetNewCursor();
- if (!cursor)
- {
- LogPrintf("Error getting wallet database cursor\n");
- return DBErrors::CORRUPT;
- }
+ if (!batch.TxnBegin()) {
+ LogPrint(BCLog::WALLETDB, "Error: cannot create db txn for %s\n", process_desc);
+ return false;
+ }
- while (true)
- {
- // Read next record
- DataStream ssKey{};
- DataStream ssValue{};
- DatabaseCursor::Status status = cursor->Next(ssKey, ssValue);
- if (status == DatabaseCursor::Status::DONE) {
- break;
- } else if (status == DatabaseCursor::Status::FAIL) {
- LogPrintf("Error reading next record from wallet database\n");
- return DBErrors::CORRUPT;
- }
+ // Run procedure
+ if (!func(batch)) {
+ LogPrint(BCLog::WALLETDB, "Error: %s failed\n", process_desc);
+ batch.TxnAbort();
+ return false;
+ }
- std::string strType;
- ssKey >> strType;
- if (strType == DBKeys::TX) {
- uint256 hash;
- ssKey >> hash;
- tx_hashes.push_back(hash);
- }
- }
- } catch (...) {
- result = DBErrors::CORRUPT;
+ if (!batch.TxnCommit()) {
+ LogPrint(BCLog::WALLETDB, "Error: cannot commit db txn for %s\n", process_desc);
+ return false;
}
- return result;
+ // All good
+ return true;
}
-DBErrors WalletBatch::ZapSelectTx(std::vector<uint256>& vTxHashIn, std::vector<uint256>& vTxHashOut)
+bool RunWithinTxn(WalletDatabase& database, std::string_view process_desc, const std::function<bool(WalletBatch&)>& func)
{
- // build list of wallet TX hashes
- std::vector<uint256> vTxHash;
- DBErrors err = FindWalletTxHashes(vTxHash);
- if (err != DBErrors::LOAD_OK) {
- return err;
- }
-
- std::sort(vTxHash.begin(), vTxHash.end());
- std::sort(vTxHashIn.begin(), vTxHashIn.end());
-
- // erase each matching wallet TX
- bool delerror = false;
- std::vector<uint256>::iterator it = vTxHashIn.begin();
- for (const uint256& hash : vTxHash) {
- while (it < vTxHashIn.end() && (*it) < hash) {
- it++;
- }
- if (it == vTxHashIn.end()) {
- break;
- }
- else if ((*it) == hash) {
- if(!EraseTx(hash)) {
- LogPrint(BCLog::WALLETDB, "Transaction was found for deletion but returned database error: %s\n", hash.GetHex());
- delerror = true;
- }
- vTxHashOut.push_back(hash);
- }
- }
-
- if (delerror) {
- return DBErrors::CORRUPT;
- }
- return DBErrors::LOAD_OK;
+ WalletBatch batch(database);
+ return RunWithinTxn(batch, process_desc, func);
}
void MaybeCompactWalletDB(WalletContext& context)
@@ -1376,47 +1321,11 @@ bool WalletBatch::WriteWalletFlags(const uint64_t flags)
bool WalletBatch::EraseRecords(const std::unordered_set<std::string>& types)
{
- // Begin db txn
- if (!m_batch->TxnBegin()) return false;
-
- // Get cursor
- std::unique_ptr<DatabaseCursor> cursor = m_batch->GetNewCursor();
- if (!cursor)
- {
- return false;
- }
-
- // Iterate the DB and look for any records that have the type prefixes
- while (true) {
- // Read next record
- DataStream key{};
- DataStream value{};
- DatabaseCursor::Status status = cursor->Next(key, value);
- if (status == DatabaseCursor::Status::DONE) {
- break;
- } else if (status == DatabaseCursor::Status::FAIL) {
- cursor.reset(nullptr);
- m_batch->TxnAbort(); // abort db txn
- return false;
- }
-
- // Make a copy of key to avoid data being deleted by the following read of the type
- const SerializeData key_data{key.begin(), key.end()};
-
- std::string type;
- key >> type;
-
- if (types.count(type) > 0) {
- if (!m_batch->Erase(Span{key_data})) {
- cursor.reset(nullptr);
- m_batch->TxnAbort();
- return false; // erase failed
- }
- }
- }
- // Finish db txn
- cursor.reset(nullptr);
- return m_batch->TxnCommit();
+ return RunWithinTxn(*this, "erase records", [&types](WalletBatch& self) {
+ return std::all_of(types.begin(), types.end(), [&self](const std::string& type) {
+ return self.m_batch->ErasePrefix(DataStream() << type);
+ });
+ });
}
bool WalletBatch::TxnBegin()
@@ -1498,20 +1407,26 @@ std::unique_ptr<WalletDatabase> MakeDatabase(const fs::path& path, const Databas
if (format == DatabaseFormat::SQLITE) {
#ifdef USE_SQLITE
- return MakeSQLiteDatabase(path, options, status, error);
-#else
- error = Untranslated(strprintf("Failed to open database path '%s'. Build does not support SQLite database format.", fs::PathToString(path)));
- status = DatabaseStatus::FAILED_BAD_FORMAT;
- return nullptr;
+ if constexpr (true) {
+ return MakeSQLiteDatabase(path, options, status, error);
+ } else
#endif
+ {
+ error = Untranslated(strprintf("Failed to open database path '%s'. Build does not support SQLite database format.", fs::PathToString(path)));
+ status = DatabaseStatus::FAILED_BAD_FORMAT;
+ return nullptr;
+ }
}
#ifdef USE_BDB
- return MakeBerkeleyDatabase(path, options, status, error);
-#else
- error = Untranslated(strprintf("Failed to open database path '%s'. Build does not support Berkeley DB database format.", fs::PathToString(path)));
- status = DatabaseStatus::FAILED_BAD_FORMAT;
- return nullptr;
+ if constexpr (true) {
+ return MakeBerkeleyDatabase(path, options, status, error);
+ } else
#endif
+ {
+ error = Untranslated(strprintf("Failed to open database path '%s'. Build does not support Berkeley DB database format.", fs::PathToString(path)));
+ status = DatabaseStatus::FAILED_BAD_FORMAT;
+ return nullptr;
+ }
}
} // namespace wallet
diff --git a/src/wallet/walletdb.h b/src/wallet/walletdb.h
index dad0b18a78..9474a59660 100644
--- a/src/wallet/walletdb.h
+++ b/src/wallet/walletdb.h
@@ -275,8 +275,6 @@ public:
bool EraseActiveScriptPubKeyMan(uint8_t type, bool internal);
DBErrors LoadWallet(CWallet* pwallet);
- DBErrors FindWalletTxHashes(std::vector<uint256>& tx_hashes);
- DBErrors ZapSelectTx(std::vector<uint256>& vHashIn, std::vector<uint256>& vHashOut);
//! write the hdchain model (external chain child index counter)
bool WriteHDChain(const CHDChain& chain);
@@ -296,6 +294,20 @@ private:
WalletDatabase& m_database;
};
+/**
+ * Executes the provided function 'func' within a database transaction context.
+ *
+ * This function ensures that all db modifications performed within 'func()' are
+ * atomically committed to the db at the end of the process. And, in case of a
+ * failure during execution, all performed changes are rolled back.
+ *
+ * @param database The db connection instance to perform the transaction on.
+ * @param process_desc A description of the process being executed, used for logging purposes in the event of a failure.
+ * @param func The function to be executed within the db txn context. It returns a boolean indicating whether to commit or roll back the txn.
+ * @return true if the db txn executed successfully, false otherwise.
+ */
+bool RunWithinTxn(WalletDatabase& database, std::string_view process_desc, const std::function<bool(WalletBatch&)>& func);
+
//! Compacts BDB state so that wallet.dat is self-contained (if there are changes)
void MaybeCompactWalletDB(WalletContext& context);